site_name: "LangGraph"
site_description: Build reliable, stateful AI systems, without giving up control
site_url: https://langchain-ai.github.io/langgraph/
repo_url: https://github.com/langchain-ai/langgraph
edit_uri: edit/main/docs/docs/
theme:
name: material
custom_dir: overrides
logo_dark_mode: static/wordmark_light.svg
logo_light_mode: static/wordmark_dark.svg
favicon: static/favicon.png
icon:
repo: fontawesome/brands/git-alt
features:
- announce.dismiss
- content.code.annotate
- content.code.copy
- content.code.select
- content.tabs.link
- content.action.edit
- content.tooltips
- header.autohide
- navigation.indexes
- navigation.footer
- navigation.instant
- navigation.sections
- navigation.instant.prefetch
- navigation.instant.progress
- navigation.path
- navigation.tabs
- navigation.tabs.sticky
- navigation.top
- navigation.prune
- navigation.tracking
- search.highlight
- search.share
- search.suggest
palette:
- scheme: default
primary: white
accent: gray
toggle:
icon: material/brightness-7
name: Switch to dark mode
- scheme: slate
primary: grey
accent: white
toggle:
icon: material/brightness-4
name: Switch to light mode
font:
text: "Public Sans"
code: "Roboto Mono"
plugins:
- search:
separator: '[\s\u200b\-,:!=\[\]()"`/]+|\.(?!\d)|&[lg]t;'
- autorefs
- tags
- mkdocstrings:
custom_templates: templates
handlers:
python:
import:
- https://docs.python.org/3/objects.inv
- https://python.langchain.com/api_reference/objects.inv
options:
preload_modules:
- langchain
- langchain_core
enable_inventory: true
members_order: source
allow_inspection: true
heading_level: 2
show_bases: true
show_source: false
summary: true
inherited_members: true
selection:
docstring_style: google
docstring_section_style: table
show_root_toc_entry: false
show_signature: true
show_signature_annotations: true
separate_signature: true
line_length: 60
show_symbol_type_heading: true
show_symbol_type_toc: true
signature_crossrefs: true
options:
filters:
- "!^_"
nav:
- Guides:
- index.md
- Get started:
- Quickstart: agents/agents.md
- LangGraph basics:
- concepts/why-langgraph.md
- Build a basic chatbot: tutorials/get-started/1-build-basic-chatbot.md
- tutorials/get-started/2-add-tools.md
- tutorials/get-started/3-add-memory.md
- Add human-in-the-loop: tutorials/get-started/4-human-in-the-loop.md
- tutorials/get-started/5-customize-state.md
- tutorials/get-started/6-time-travel.md
- Deployment: tutorials/deployment.md
- Prebuilt agents:
- Overview: agents/overview.md
- agents/run_agents.md
- agents/streaming.md
- agents/models.md
- agents/tools.md
- agents/mcp.md
- agents/context.md
- agents/memory.md
- agents/human-in-the-loop.md
- agents/multi-agent.md
- agents/evals.md
- agents/deployment.md
- agents/ui.md
- LangGraph framework:
- Agent architectures:
- Overview: concepts/agentic_concepts.md
- Workflows & agents: tutorials/workflows.md
- Graphs:
- Overview: concepts/low_level.md
- Runtime overview: concepts/pregel.md
- Use the Graph API: how-tos/graph-api.ipynb
- Streaming:
- Overview: concepts/streaming.md
- "Stream outputs": how-tos/streaming.md
- Persistence:
- Overview: concepts/persistence.md
- concepts/durable_execution.md
- how-tos/persistence.ipynb
- Memory:
- Overview: concepts/memory.md
- Manage memory: how-tos/memory.ipynb
- Human-in-the-loop:
- Overview: concepts/human_in_the_loop.md
- how-tos/human_in_the_loop/add-human-in-the-loop.md
- Breakpoints:
- Overview: concepts/breakpoints.md
- how-tos/human_in_the_loop/breakpoints.ipynb
- Time travel:
- Overview: concepts/time-travel.md
- how-tos/human_in_the_loop/time-travel.ipynb
- Tools:
- Overview: concepts/tools.md
- how-tos/tool-calling.ipynb
- Subgraphs:
- Overview: concepts/subgraphs.md
- how-tos/subgraph.ipynb
- Multi-agent:
- Overview: concepts/multi_agent.md
- how-tos/multi_agent.ipynb
- Functional API:
- Overview: concepts/functional_api.md
- how-tos/use-functional-api.md
- LangGraph Platform:
- Overview: concepts/langgraph_platform.md
- Get started:
- Quickstart: tutorials/langgraph-platform/local-server.md
- Deployment quickstart: cloud/quick_start.md
- Components:
- Overview: concepts/langgraph_components.md
- LangGraph Server:
- Overview: concepts/langgraph_server.md
- Application structure:
- Overview: concepts/application_structure.md
- cloud/deployment/setup.md
- cloud/deployment/setup_pyproject.md
- cloud/deployment/setup_javascript.md
- cloud/deployment/custom_docker.md
- LangGraph CLI: concepts/langgraph_cli.md
- LangGraph Studio:
- Overview: concepts/langgraph_studio.md
- Quickstart: cloud/how-tos/studio/quick_start.md
- cloud/how-tos/invoke_studio.md
- cloud/how-tos/threads_studio.md
- cloud/how-tos/datasets_studio.md
- cloud/how-tos/iterate_graph_studio.md
- cloud/how-tos/clone_traces_studio.md
- cloud/how-tos/studio/faqs.md
- LangGraph SDK: concepts/sdk.md
- Data management:
- Add semantic search: cloud/deployment/semantic_search.md
- Add TTLs: how-tos/ttl/configure_ttl.md
- Authentication & access control:
- Overview: concepts/auth.md
- how-tos/auth/custom_auth.md
- how-tos/auth/openapi_security.md
- Assistants:
- Overview: concepts/assistants.md
- cloud/how-tos/configuration_cloud.md
- Threads:
- Overview: cloud/concepts/threads.md
- cloud/how-tos/use_threads.md
- Runs:
- Overview: cloud/concepts/runs.md
- cloud/how-tos/background_run.md
- cloud/how-tos/same-thread.md
- cloud/how-tos/cron_jobs.md
- cloud/how-tos/stateless_runs.md
- cloud/how-tos/configurable_headers.md
- Streaming:
- Overview: cloud/concepts/streaming.md
- cloud/how-tos/streaming.md
- Human-in-the-loop: cloud/how-tos/add-human-in-the-loop.md
- Breakpoints: cloud/how-tos/human_in_the_loop_breakpoint.md
- Time travel: cloud/how-tos/human_in_the_loop_time_travel.md
- MCP: concepts/server-mcp.md
- Double-texting:
- Overview: concepts/double_texting.md
- cloud/how-tos/interrupt_concurrent.md
- cloud/how-tos/rollback_concurrent.md
- cloud/how-tos/reject_concurrent.md
- cloud/how-tos/enqueue_concurrent.md
- Webhooks:
- Overview: cloud/concepts/webhooks.md
- cloud/how-tos/webhooks.md
- Cron jobs:
- Overview: cloud/concepts/cron_jobs.md
- cloud/how-tos/cron_jobs.md
- Server customization:
- how-tos/http/custom_lifespan.md
- how-tos/http/custom_middleware.md
- how-tos/http/custom_routes.md
- Deployment:
- Overview: concepts/deployment_options.md
- Data plane: concepts/langgraph_data_plane.md
- Control plane: concepts/langgraph_control_plane.md
- Deployment options:
- Cloud SaaS:
- Overview: concepts/langgraph_cloud.md
- Deploy Cloud SaaS: cloud/deployment/cloud.md
- Self-Hosted Data Plane:
- Overview: concepts/langgraph_self_hosted_data_plane.md
- Deploy Self-Hosted Data Plane: cloud/deployment/self_hosted_data_plane.md
- Self-Hosted Control Plane:
- Overview: concepts/langgraph_self_hosted_control_plane.md
- Deploy Self-Hosted Control Plane: cloud/deployment/self_hosted_control_plane.md
- Standalone Container:
- Overview: concepts/langgraph_standalone_container.md
- Deploy Standalone Container: cloud/deployment/standalone_container.md
- Scalability & resilience: concepts/scalability_and_resilience.md
- Plans & pricing: concepts/plans.md
- Reference:
- reference/index.md
- LangGraph:
- Graphs: reference/graphs.md
- Functional API: reference/func.md
- Pregel: reference/pregel.md
- Checkpointing: reference/checkpoints.md
- Storage: reference/store.md
- Types: reference/types.md
- Config: reference/config.md
- Errors: reference/errors.md
- Constants: reference/constants.md
- Channels: reference/channels.md
- Prebuilt:
- Agents: reference/agents.md
- Supervisor: reference/supervisor.md
- Swarm: reference/swarm.md
- MCP Adapters: reference/mcp.md
- LangGraph Platform:
- Server API: cloud/reference/api/api_ref.md
- CLI: cloud/reference/cli.md
- SDK (Python): cloud/reference/sdk/python_sdk_ref.md
- SDK (JS/TS): cloud/reference/sdk/js_ts_sdk_ref.md
- RemoteGraph: reference/remote_graph.md
- Environment variables: cloud/reference/env_var.md
- Examples:
- Agentic RAG: tutorials/rag/langgraph_agentic_rag.ipynb
- Agent Supervisor: tutorials/multi_agent/agent_supervisor.ipynb
- SQL agent: tutorials/sql-agent.ipynb
- Run a graph asynchronously: how-tos/async.ipynb
# We want to push async higher (need to check the content inside it)
# and convert it into a concept rather than a how-to page.
- Graph runs in LangSmith: how-tos/run-id-langsmith.ipynb
- LangGraph Platform:
- Authentication:
- tutorials/auth/getting_started.md
- tutorials/auth/resource_auth.md
- tutorials/auth/add_auth_server.md
- Rebuild graph at runtime: cloud/deployment/graph_rebuild.md
- Use RemoteGraph: how-tos/use-remote-graph.md
- Deploy CrewAI, AutoGen, and other frameworks: how-tos/autogen-langgraph-platform.ipynb
# combine with how-tos/autogen-integration.ipynb
- Front-end and generative UI:
- Integrate LangGraph into a React app: cloud/how-tos/use_stream_react.md
- Implement generative UI with LangGraph: cloud/how-tos/generative_ui_react.md
- Resources:
- concepts/faq.md
- Template applications: concepts/template_applications.md # TODO: make tutorial
- llms.txt: llms-txt-overview.md
- agents/prebuilt.md # NOTE: prebuilt.md is auto-generated by `make build-prebuilt`
- Troubleshooting:
- Errors:
- troubleshooting/errors/index.md
- troubleshooting/errors/GRAPH_RECURSION_LIMIT.md
- troubleshooting/errors/INVALID_CONCURRENT_GRAPH_UPDATE.md
- troubleshooting/errors/INVALID_GRAPH_NODE_RETURN_VALUE.md
- troubleshooting/errors/MULTIPLE_SUBGRAPHS.md
- troubleshooting/errors/INVALID_CHAT_HISTORY.md
- troubleshooting/errors/INVALID_LICENSE.md
- LangGraph Studio: troubleshooting/studio.md
- Learn:
- LangGraph Academy course: https://academy.langchain.com/courses/intro-to-langgraph
- Case studies: adopters.md
markdown_extensions:
- abbr
- admonition
- pymdownx.details
- attr_list
- def_list
- footnotes
- md_in_html
- pymdownx.superfences
- pymdownx.tabbed:
alternate_style: true
- toc:
permalink: true
- pymdownx.arithmatex:
generic: true
- pymdownx.betterem:
smart_enable: all
- pymdownx.caret
- pymdownx.details
- pymdownx.emoji:
emoji_generator: !!python/name:material.extensions.emoji.to_svg
emoji_index: !!python/name:material.extensions.emoji.twemoji
- pymdownx.highlight:
anchor_linenums: true
line_spans: __span
use_pygments: true
pygments_lang_class: true
- pymdownx.inlinehilite
- pymdownx.keys
- pymdownx.magiclink:
normalize_issue_symbols: true
repo_url_shorthand: true
user: langchain-ai
repo: langgraph
- pymdownx.mark
- pymdownx.smartsymbols
- pymdownx.snippets:
auto_append:
- includes/mkdocs.md
- pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_code_format
- pymdownx.tabbed:
alternate_style: true
combine_header_slug: true
- pymdownx.tasklist:
custom_checkbox: true
- markdown_include.include:
base_path: ./
- github-callouts
hooks:
- _scripts/notebook_hooks.py
extra:
consent:
title: Cookie consent
actions:
- accept
- reject
description: >-
We use cookies to recognize your repeated visits and preferences, as well
as to measure the effectiveness of our documentation and whether users
find what they're searching for. Clicking "Accept" makes our
documentation better. Thank you! ❤️
social:
- icon: fontawesome/brands/js
link: https://langchain-ai.github.io/langgraphjs/
- icon: fontawesome/brands/github
link: https://github.com/langchain-ai/langgraph
- icon: fontawesome/brands/twitter
link: https://twitter.com/LangChainAI
analytics:
provider: google
property: G-G8X6ELZYE0
feedback:
title: Was this page helpful?
ratings:
- icon: material/emoticon-happy-outline
name: This page was helpful
data: 1
note: >-
Thanks for your feedback!
- icon: material/emoticon-sad-outline
name: This page could be improved
data: 0
note: >-
Thanks for your feedback! Please help us improve this page by adding to the discussion below.
shared_analytics:
provider: google
property: G-47WX3HKKY2
validation:
# https://www.mkdocs.org/user-guide/configuration/
# We are still raising for omitted files because they determine the breadcrumbs for pages.
omitted_files: info
absolute_links: warn
unrecognized_links: warn
anchors: warn
# this is needed to handle headers with anchors for nav
not_found: info
copyright: >
Copyright © 2025 LangChain, Inc | Consent Preferences
extra_css:
- stylesheets/navigation_title_ovverides.css
- stylesheets/version_admonitions.css
- stylesheets/logos.css
- stylesheets/sticky_navigation.css