The official command-line interface for LangGraph, providing tools to create, develop, and deploy LangGraph applications.
Install via pip:
pip install langgraph-cli
For development mode with hot reloading:
pip install "langgraph-cli[inmem]"
langgraph new 🌱Create a new LangGraph project from a template
langgraph new [PATH] --template TEMPLATE_NAME
langgraph dev 🏃♀️Run LangGraph API server in development mode with hot reloading
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
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 buildBuild a Docker image for your LangGraph application
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 dockerfileGenerate a Dockerfile for custom deployments
langgraph dockerfile SAVE_PATH [OPTIONS]
-c, --config FILE Config file path
The CLI uses a langgraph.json configuration file with these key settings:
{
"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 for detailed configuration options.
To develop the CLI itself:
cd libs/cliuv pip install# Run CLI commands directly
uv run langgraph --help
# Or use the examples
cd examples
uv pip install
uv run langgraph dev # or other commands
This project is licensed under the terms specified in the repository's LICENSE file.
A container for referencing and managing local Python dependencies.
Raised when the host backend returns an error response.
Minimal JSON HTTP client for the host backend deployment service.
Click group that shows one level of nested subcommands in top-level help.
Captures the outcome of a build stage so the shared wait tail can be
Click group that shows one level of nested subcommands in top-level help.
Group that treats leading '-' args as passthrough docker flags.
Configuration for TTL (time-to-live) behavior in the store.
Configuration for indexing documents for semantic search in the store.
Configuration for the built-in long-term memory store.
Configure a default TTL for checkpointed data within threads.
Configuration for the built-in serde, which handles checkpointing of state.
Configuration for the built-in checkpointer, which handles checkpointing of state.
Configuration for OpenAPI security definitions and requirements.
Configuration for custom authentication logic and how it integrates into the OpenAPI spec.
Configuration for custom at-rest encryption logic.
Specifies Cross-Origin Resource Sharing (CORS) rules for your server.
Customize which headers to include as configurable values in your runs.
Configuration for the built-in HTTP server that powers your deployment's routes and endpoints.
Definition of a graph with additional metadata.
Deployment source rooted at a uv project or workspace.
Top-level config for langgraph-cli or similar deployment tooling.
Check if a command string contains disallowed characters or patterns.
Validate a configuration dictionary.
Return warnings for unrecognized top-level keys (typos, etc.).
Load and validate a configuration file.
Generate a Dockerfile from the configuration.
CLI entrypoint for running the LangGraph API server.
Create a new LangGraph project from a template.
Prepare the arguments and stdin for running the LangGraph API server.
Ensure either deployment_id or name is provided.
Validate optional deploy commands for disallowed content.
Return deployment ID for an exact name match, or None if not found.
Sanitize a deployment/directory name into a valid deployment name.
Validate and return a Docker image tag.
Convert a timestamp (epoch ms or string) to a readable string.
Format a single log entry for display.
Return click color for a log level.
Create a new LangGraph project at the specified PATH using the chosen TEMPLATE.
Context manager that creates a .tar.gz archive of the project source.
Return whether local deployment builds can run on this machine.
Convert a dictionary to a YAML string.
Create a docker compose file as a dictionary in YML style.
Create a docker compose file as a string.
Build a Docker image from a LangGraph config.
Show warning if image_distro is not set to 'wolfi'.
HTTP client for LangGraph host backend deployments.
CLI entrypoint for LangGraph API server.
Deploy command and subcommands for the LangGraph CLI.
Create a tarball of project source for remote builds.
Main entrypoint into package.
General-purpose utilities shared across the LangGraph CLI.