freshcrate
Home > Prompt Engineering > langgraph-cli

langgraph-cli

CLI for interacting with LangGraph API

Description

# LangGraph CLI The official command-line interface for LangGraph, providing tools to create, develop, and deploy LangGraph applications. ## Installation Install via pip: ```bash pip install langgraph-cli ``` For development mode with hot reloading: ```bash pip install "langgraph-cli[inmem]" ``` ## Commands ### `langgraph new` 🌱 Create a new LangGraph project from a template ```bash langgraph new [PATH] --template TEMPLATE_NAME ``` ### `langgraph dev` 🏃‍♀️ Run LangGraph API server in development mode with hot reloading ```bash langgraph dev [OPTIONS] --host TEXT Host to bind to (default: 127.0.0.1) --port INTEGER Port to bind to (default: 2024) --no-reload Disable auto-reload --debug-port INTEGER Enable remote debugging --no-browser Skip opening browser window -c, --config FILE Config file path (default: langgraph.json) ``` ### `langgraph up` 🚀 Launch LangGraph API server in Docker ```bash langgraph up [OPTIONS] -p, --port INTEGER Port to expose (default: 8123) --wait Wait for services to start --watch Restart on file changes --verbose Show detailed logs -c, --config FILE Config file path -d, --docker-compose Additional services file ``` ### `langgraph build` Build a Docker image for your LangGraph application ```bash langgraph build -t IMAGE_TAG [OPTIONS] --platform TEXT Target platforms (e.g., linux/amd64,linux/arm64) --pull / --no-pull Use latest/local base image -c, --config FILE Config file path ``` ### `langgraph dockerfile` Generate a Dockerfile for custom deployments ```bash langgraph dockerfile SAVE_PATH [OPTIONS] -c, --config FILE Config file path ``` ## Configuration The CLI uses a `langgraph.json` configuration file with these key settings: ```json { "dependencies": ["langchain_openai", "./your_package"], // Required: Package dependencies "graphs": { "my_graph": "./your_package/file.py:graph" // Required: Graph definitions }, "env": "./.env", // Optional: Environment variables "python_version": "3.11", // Optional: Python version (3.11/3.12) "pip_config_file": "./pip.conf", // Optional: pip configuration "dockerfile_lines": [] // Optional: Additional Dockerfile commands } ``` See the [full documentation](https://langchain-ai.github.io/langgraph/cloud/reference/cli/) for detailed configuration options. ## Development To develop the CLI itself: 1. Clone the repository 2. Navigate to the CLI directory: `cd libs/cli` 3. Install development dependencies: `uv pip install` 4. Make your changes to the CLI code 5. Test your changes: ```bash # Run CLI commands directly uv run langgraph --help # Or use the examples cd examples uv pip install uv run langgraph dev # or other commands ``` ## License This project is licensed under the terms specified in the repository's LICENSE file.

Release History

VersionChangesUrgencyDate
0.4.23Imported from PyPI (0.4.23)Low4/21/2026
1.1.9Changes since 1.1.8 * chore(langgraph): bump version 1.1.8 -> 1.1.9 (#7563) * fix(langgraph): don't propagate ReplayState to subgraphs on plain resume (#7561) * chore(langgraph): undo unnecessary changes in stream handler (#7536)High4/21/2026
1.1.8Changes since 1.1.7 * release(langgraph): 1.1.8 (#7545) * fix(langgraph): remove strict add_handler type check that breaks OTel instrumentation (#7544) * release(prebuilt): 1.0.10 (#7541) * release(cli): 0.4.23 (#7542)High4/17/2026
prebuilt==1.0.10Changes since prebuilt==1.0.9 * release(prebuilt): 1.0.10 (#7541) * release(langgraph): 1.1.7 (#7540) * fix(prebuilt): handle injected NotRequired keys (#7392) * chore(deps): bump langsmith from 0.6.4 to 0.7.31 in /libs/prebuilt (#7530) * release(checkpoint): 4.0.2 (#7518) * chore(deps): bump pytest from 9.0.2 to 9.0.3 in /libs/prebuilt (#7505) * release(langgraph): 1.1.7a2 (#7511) * chore: allow passing some metadata only for tracing purposes (#7383) * release(langgraph): 1.1.7a1 (#7476) * choHigh4/17/2026
cli==0.4.23Changes since cli==0.4.22 * release(cli): 0.4.23 (#7542)High4/17/2026
1.1.7Changes since 1.1.7a2 * release(langgraph): 1.1.7 (#7540) * fix: time travel when going back to interrupt node (#7498) * chore(deps): bump langsmith from 0.6.4 to 0.7.31 in /libs/langgraph (#7526) * release(checkpoint): 4.0.2 (#7518)High4/17/2026
cli==0.4.22Changes since cli==0.4.21 * CLI bump * chore: start tracking cli deploy source (#7520) * chore(deps): bump langsmith from 0.7.26 to 0.7.31 in /libs/cli (#7529) * chore(deps): bump the uv group across 2 directories with 1 update (#7531) * chore(deps): bump langsmith from 0.5.18 to 0.5.20 in /libs/cli/js-examples (#7522) * chore(deps): bump langsmith from 0.5.18 to 0.5.20 in /libs/cli/js-monorepo-example (#7521) * chore(deps): bump langchain-core from 1.2.27 to 1.2.28 in /libs/cli (#7450) * choreHigh4/16/2026
checkpoint==4.0.2Changes since checkpoint==4.0.1 * release(checkpoint): 4.0.2 (#7518) * docs: document LANGGRAPH_STRICT_MSGPACK for checkpoint security (#7517) * chore(deps): bump pytest from 9.0.2 to 9.0.3 in /libs/checkpoint (#7506) * chore(deps): bump langchain-core from 1.2.23 to 1.2.28 in /libs/checkpoint (#7453) * chore(deps): bump the minor-and-patch group in /libs/checkpoint with 3 updates (#7373) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/checkpoint (#7348) * chore(deps): bump the minoHigh4/15/2026
1.1.7a2Changes since 1.1.7a1 * chore(deps): bump pytest from 9.0.2 to 9.0.3 in /libs/langgraph (#7507) * release(langgraph): 1.1.7a2 (#7511) * chore: allow passing some metadata only for tracing purposes (#7383) * fix: populate assistant_id from config configurable instead of metadata (#7468)Medium4/14/2026
1.1.7a1Changes since 1.1.6 * release(langgraph): 1.1.7a1 (#7476) * test(langgraph): use monotonic clock in flaky streaming test (#7477) * feat(langgraph): add graph lifecycle callback handlers (#7429) * chore(deps): bump cryptography from 46.0.6 to 46.0.7 in /libs/langgraph (#7457) * chore: update conformance lint (#7459) * chore: uv lock resolution (#7342)Medium4/10/2026
cli==0.4.21Changes since cli==0.4.20 * chore(cli): add validate command (#7438)Medium4/8/2026
cli==0.4.20Changes since cli==0.4.19 * release(cli): lockfile (#7436) * chore: uv lock resolution (#7342) * chore: bump langgraph version to 1.1.5 in CI and examples (#7435) * chore(deps-dev): bump the minor-and-patch group in /libs/cli with 2 updates (#7378) * chore(deps): bump the minor-and-patch group in /libs/cli/js-examples with 4 updates (#7372) * chore(deps): bump the minor-and-patch group across 1 directory with 5 updates (#7375) * feat(cli): add remote build support for langgraph deploy (#7234) Medium4/8/2026
sdk==0.3.13Changes since sdk==0.3.12 * chore: validate reconnect url (#7434) * feat(sdk-py): add langsmith_tracing param to runs.create/stream/wait (#7431) * release: langgraph 1.1.6 (#7407) * release: prebuilt 1.0.9 and langgraph 1.1.5 (#7401) * release(langgraph): 1.1.4 (#7356) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/sdk-py (#7351) * chore(deps): bump langchain-core from 1.2.20 to 1.2.22 in /libs/sdk-py (#7321) * chore(deps): bump starlette from 0.52.1 to 1.0.0 in /libs/sdk-py (#7294Medium4/7/2026
1.1.6Changes since 1.1.5 * release: langgraph 1.1.6 (#7407) * fix: execution info patching (#7406)Medium4/3/2026
1.1.5Changes since 1.1.4 * release: prebuilt 1.0.9 and langgraph 1.1.5 (#7401) * feat: enhance runtime w/ more execution information (#7363) * Revert "chore: update configurable metadata" (#7393) * feat(cli): add remote build support for langgraph deploy (#7234) * chore: fix URL (#7385) * fix(langgraph): update readme (#7384) * chore: update configurable metadata (#7367)Medium4/3/2026
prebuilt==1.0.9Changes since prebuilt==1.0.8 * release: prebuilt 1.0.9 and langgraph 1.1.5 (#7401) * feat: enhance runtime w/ more execution information (#7363) * fix: tool node injection bug (#7391) * release(langgraph): 1.1.4 (#7356) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/prebuilt (#7354) * chore(deps): bump langchain-core from 1.2.20 to 1.2.22 in /libs/prebuilt in the minor-and-patch group (#7289) * chore(deps): bump requests from 2.32.5 to 2.33.0 in /libs/prebuilt (#7281) * chore(depsMedium4/3/2026
1.1.4Changes since 1.1.3 * release(langgraph): 1.1.4 (#7356) * fix(langgraph): avoid recursion limit default sentinel collision (#7355) * feat: Add LangSmith integration metadata to langgraph (#7203) * chore(deps): bump pygments from 2.19.2 to 2.20.0 in /libs/langgraph (#7353) * chore(deps): bump cryptography from 46.0.5 to 46.0.6 in /libs/langgraph (#7324) * chore(deps): bump types-requests from 2.32.4.20260107 to 2.32.4.20260324 in /libs/langgraph (#7297) * chore(deps): bump the minor-and-patch grMedium3/31/2026
cli==0.4.19Changes since cli==0.4.18 * release: Create new release for CLI version 0.4.19. (#7232) * feat(cli): Add `deploy revisions list` command (#7142) * chore(deps): bump the all-dependencies group in /libs/cli/js-monorepo-example with 5 updates (#7192) * chore(deps): bump the all-dependencies group in /libs/cli with 2 updates (#7199) * chore(deps): bump the all-dependencies group in /libs/cli/js-examples with 5 updates (#7195) * chore(deps): bump langgraph to 1.1.2 in cli example fixtures (#7211) * Low3/20/2026
1.1.3Changes since 1.1.2 * release(checkpoint-postgres): 3.0.5 (#7221) * release(langgraph): 1.1.3 (#7215) * feat: add execution info to runtime (#7143) * chore(deps): bump the all-dependencies group in /libs/sdk-py with 2 updates (#7197) * chore(deps): bump the all-dependencies group in /libs/langgraph with 2 updates (#7200) * chore(deps): bump pyjwt from 2.10.1 to 2.12.0 in /libs/langgraph (#7189) * chore(deps): bump orjson from 3.11.5 to 3.11.6 in /libs/langgraph (#7147)Low3/18/2026
sdk==0.3.12Changes since sdk==0.3.11 * release(sdk-py): 0.3.12 (#7224) * release(langgraph): 1.1.3 (#7215) * chore(deps): bump the all-dependencies group in /libs/sdk-py with 2 updates (#7197) * release(langgraph): 1.1.2 (#7135) * release(langgraph): 1.1.1 (#7120)Low3/18/2026
checkpointpostgres==3.0.5Changes since checkpointpostgres==3.0.4 * release(checkpoint-postgres): 3.0.5 (#7221) * fix: re-use connection (#7220) * chore(deps): bump ruff from 0.15.5 to 0.15.6 in /libs/checkpoint-postgres in the all-dependencies group (#7194) * chore(deps): bump the all-dependencies group across 1 directory with 2 updates (#7071) * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) * chore: update defaults (#6953) * release: rc2 (#6949) * release: Candidate (#6947) * Merge commit from Low3/18/2026
cli==0.4.18Changes since cli==0.4.17 * release(cli): 0.4.18 (#7186) * chore: update error message (#7185)Low3/15/2026
cli==0.4.17Changes since cli==0.4.16 * release(cli): 0.4.17 (#7166) * feat(cli): new deep agent templates (#7165)Low3/13/2026
cli==0.4.16Changes since cli==0.4.15 * release(cli): 0.4.16 (#7151) * fix(cli): use --tag for langgraph deploy (#7148) * fix(cli): cleanup client creation code (#7140) * feat(cli): add langgraph deploy logs subcommand (#7100) * feat(cli): add deploy list and deploy delete subcommands (#7118) * fix: Revert "feat(cli): Add `deploy list` and `deploy delete` subcommands" (#7116) * feat(cli): Add `deploy list` and `deploy delete` subcommands (#7106) * feat(cli): add distributed runtime support to langgraph cliLow3/12/2026
1.1.2Changes since 1.1.1 * release(langgraph): 1.1.2 (#7135) * fix: stream part generic order (#7134) * feat: add context for remote graph api (#7132) * chore: fix typo (#7131) * chore(deps): bump tornado from 6.5.4 to 6.5.5 in /libs/langgraph (#7122)Low3/12/2026
1.1.1Changes since 1.1.0 * release(langgraph): 1.1.1 (#7120) * fix: replay bug, direct to subgraphs (#7115) * chore: remove md notes (#7103)Low3/11/2026
sdk==0.3.11Changes since sdk==0.3.10 * chore(sdk-py): cron tz support (#7108) * release(langgraph): 1.1 (#7102) * chore(deps): bump the all-dependencies group across 1 directory with 3 updates (#7072)Low3/11/2026
1.1.0Changes since 1.0.10 * release(langgraph): 1.1 (#7102) * fix: replay behavior for parent + subgraphs! (#7038) * feat: type safe stream/invoke w/ proper output type coercion (#6961) ## Type-Safe Streaming & Invoke LangGraph 1.1 introduces `version="v2"` — a new opt-in streaming format that brings full type safety to `stream()`, `astream()`, `invoke()`, and `ainvoke()`. ### What's changing **v1 (default, unchanged):** `stream()` yields bare tuples like `(stream_mode, data)` or jusLow3/10/2026
cli==0.4.15Changes since cli==0.4.14 * release(cli): 0.4.15 (#7095) * feat(cli): add langgraph deploy (#7004) * chore(deps): bump the all-dependencies group in /libs/cli with 2 updates (#7075) * chore(deps): bump the all-dependencies group in /libs/cli/js-examples with 6 updates (#6992) * chore(deps): bump the all-dependencies group in /libs/cli/js-monorepo-example with 7 updates (#6991) * fix(cli): block shell injection chars in build/install commands (#7044)Low3/10/2026
sdk==0.3.10Changes since sdk==0.3.9 * chore: Add cache (#7092) * feat: type safe stream/invoke w/ proper output type coercion (#6961) * release(langgraph) 1.0.10 (#6967) * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) * chore: update defaults (#6953) * release: rc2 (#6949) * release: Candidate (#6947) * docs(sdk-py): update auth docstrings to default-deny pattern (#6933)Low3/9/2026
cli==0.4.14Changes since cli==0.4.12 * chore(cli): pass checkpointer config to CLI (#7003) * fix: bump minimatch to resolve CVE-2026-26996, CVE-2026-27903, CVE-2026-27904 (#6968) * Merge commit from fork * chore(deps): bump the all-dependencies group in /libs/cli with 2 updates (#6920) * chore(deps): bump the all-dependencies group in /libs/cli/js-monorepo-example with 4 updates (#6914) * chore(deps): bump the all-dependencies group in /libs/cli/js-examples with 3 updates (#6912) * fix(cli): update graph Low3/2/2026
checkpoint==4.0.1Changes since checkpoint==4.0.1rc3 * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954)Low2/27/2026
1.0.10Changes since 1.0.10rc1 * release(langgraph) 1.0.10 (#6967) * release(checkpoint): 0.4.1 (#6966) * chore: add serde events (#6954) * chore: update defaults (#6953) * release: rc2 (#6949) * chore(deps-dev): bump the all-dependencies group across 1 directory with 3 updates (#6946)Low2/27/2026
checkpoint==4.0.1rc3Changes since checkpoint==4.0.1rc2 * chore: update defaults (#6953) * chore: support workflow dispatch on ci (#6952)Low2/26/2026
checkpoint==4.0.1rc2Changes since checkpoint==4.0.1rc1 * release: rc2 (#6949) * chore: improve subclass handling (#6948)Low2/26/2026
checkpoint==4.0.1rc1Changes since checkpoint==4.0.0 * release: Candidate (#6947) * Merge commit from fork * chore(deps): bump the all-dependencies group in /libs/checkpoint with 2 updates (#6918) * chore: add `make type` target for type checking (#6748) * chore(deps): bump the all-dependencies group in /libs/checkpoint with 2 updates (#6850) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/checkpoint with 4 updates (#6812) * docs: add clarity to use of `thread_id` (#6515Low2/26/2026
1.0.10rc1Changes since 1.0.9 * release: Candidate (#6947) * Merge commit from fork * chore: add tests to confirm expected subgraph persistence behavior (#6943) * fix(langgraph): correct ParentCommand bubbling when checkpoint_ns includes numeric task segments (#6864) * chore: add `make type` target for type checking (#6748)Low2/26/2026
sdk==0.3.9Changes since sdk==0.3.8 * release(sdk-py): 0.3.9 (#6932) * feat(sdk-py): add extract parameter to threads.search() (#6880) * chore: add `make type` target for type checking (#6748)Low2/24/2026
sdk==0.3.8Changes since sdk==0.3.7 * release(sdk-py): 0.3.8 (#6873) * feat(sdk-py): add stream_mode, stream_subgraphs, stream_resumable, durability to crons (#6876) * release: langgraph + prebuilt (#6875) * feat(sdk-py): improve store auth type safety and docstrings (#6867)Low2/19/2026
1.0.9Changes since 1.0.8 * release: langgraph + prebuilt (#6875) * fix: sequential interrupt handling w/ functional API (#6863) * chore: state_updated_at sort by (#6857) * chore: bump orjson (#6852) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/langgraph with 6 updates (#6815) * chore(deps): bump protobuf from 6.33.4 to 6.33.5 in /libs/langgraph (#6833) * chore(deps): bump cryptography from 46.0.3 to 46.0.5 in /libs/langgraph (#6837) * chore(deps): bumpLow2/19/2026
prebuilt==1.0.8Changes since prebuilt==1.0.7 * release: langgraph + prebuilt (#6875) * fix: inject ToolRuntime for dynamically registered tools (#6874) * chore: bump orjson (#6852) * chore(deps): bump langchain-core from 1.2.12 to 1.2.13 in /libs/prebuilt in the all-dependencies group (#6849) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/prebuilt with 3 updates (#6810) * chore: server runtime type (#6774) * docs(prebuilt): update warning for `create_react_agent` Low2/19/2026
sdk==0.3.7Changes since sdk==0.3.6 * fix(sdk-py): allow reset of config/context in assistants update (#6862) * chore: state_updated_at sort by (#6857) * chore: bump orjson (#6852) * chore: conformance testing (#6842) * chore(deps): bump the all-dependencies group in /libs/sdk-py with 4 updates (#6809) * chore(deps): bump langchain-core from 1.2.10 to 1.2.11 in /libs/sdk-py (#6829)Low2/18/2026
sdk==0.3.6Changes since sdk==0.3.5 * release(sdk-py): 0.3.6 (#6805) * chore: update to add prune method (#6804) * chore: Re-organize client files. (#6787)Low2/14/2026
sdk==0.3.5Changes since sdk==0.3.4 * chore: server runtime type (#6774)Low2/10/2026
1.0.8Changes since 1.0.7 * release(langgraph): 1.0.8 (#6757) * chore: shallow copy futures (#6755) * fix: pydantic messages double streaming (#6753) * chore(deps-dev): bump ruff from 0.14.7 to 0.14.11 in /libs/sdk-py (#6673) * chore: Omit lock when using connection pool (#6734) * docs: enhance `Runtime` and `ToolRuntime` class descriptions for clarity (#6689) * docs: add clarity to use of `thread_id` (#6515) * docs: add docstrings to `add_node` overloads (#6514) * docs: update notebook links and addLow2/6/2026
sdk==0.3.4Changes since sdk==0.3.3 * chore: release python sdk (#6754) * feat(sdk-py): add update method for crons client (#6742) * feat(sdk-py): add support for enabling/disabling crons (#6740) * chore(deps-dev): bump ruff from 0.14.7 to 0.14.11 in /libs/sdk-py (#6673) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * docs: clarify cron job schedule interpretation in UTC (#6692) * chore: update twitter URLs (#6683)Low2/6/2026
checkpointpostgres==3.0.4Changes since checkpointpostgres==3.0.3 * chore: Omit lock when using connection pool (#6734) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683)Low1/31/2026
cli==0.4.12Changes since cli==0.4.11 * release(cli): 0.4.12 (#6716) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683)Low1/23/2026
1.0.7Changes since 1.0.6 * release: langgraph and prebuilt 1.0.7 (#6712) * fix: aiosqlite's breaking change (#6699) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683)Low1/22/2026
prebuilt==1.0.7Changes since prebuilt==1.0.6 * release: langgraph and prebuilt 1.0.7 (#6712) * feat: support dynamic tool calling via `tool` override in `wrap_model_call` (#6711) * fix: aiosqlite's breaking change (#6699) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683)Low1/22/2026
checkpointsqlite==3.0.3Changes since checkpointsqlite==3.0.2 * fix: aiosqlite's breaking change (#6699) * chore(deps): upgrade dependencies with `uv lock --upgrade` (#6671) * chore: update twitter URLs (#6683)Low1/19/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

opentelemetry-instrumentation-anthropicOpenTelemetry Anthropic instrumentation0.60.0
opentelemetry-instrumentation-vertexaiOpenTelemetry Vertex AI instrumentation0.60.0
prompt-toolkitLibrary for building powerful interactive command lines in Python3.0.52
ptyprocessRun a subprocess in a pseudo terminal0.7.0
pre-commitA framework for managing and maintaining multi-language pre-commit hooks.v4.6.0