This release is a pre-release and may not be stable for production use.
LangGraph API
This package implements the LangGraph API for rapid development and testing. Build and iterate on LangGraph agents with a tight feedback loop. The server is backed by a predominently in-memory data store that is persisted to local disk when the server is restarted.
For production use, see the various deployment options for the LangGraph API, which are backed by a production-grade database.
Installation
Install the langgraph-cli package with the inmem extra. Your CLI version must be no lower than 0.1.55.
pip install -U "langgraph-cli[inmem]"
Quickstart
-
(Optional) Clone a starter template:
langgraph new --template new-langgraph-project-python ./my-project cd my-project
(Recommended) Use a virtual environment and install dependencies:
python -m venv .venv source .venv/bin/activate python -m pip install .
-
Start the development server:
langgraph dev --config ./langgraph.json
-
The server will launch, opening a browser window with the graph UI. Interact with your graph or make code edits; the server automatically reloads on changes.
Usage
Start the development server:
langgraph dev
Your agent's state (threads, runs, assistants) persists in memory while the server is running - perfect for development and testing. Each run's state is tracked and can be inspected, making it easy to debug and improve your agent's behavior.
A2A task history scope
An A2A context can contain multiple tasks. By default, SendMessage, GetTask,
and ListTasks return the full context history. Set historyScope to task to
return only messages that belong to the requested task.
For SendMessage, set it in configuration:
{
"jsonrpc": "2.0",
"id": "1",
"method": "SendMessage",
"params": {
"message": {
"role": "ROLE_USER",
"parts": [{"text": "Second request"}],
"messageId": "message-2",
"contextId": "8b1f0e5c-9a3d-4f27-b0c8-2e6a5d4c1b7a"
},
"configuration": {"historyScope": "task"}
}
}
For GetTask and ListTasks, set it directly in params. If changing the
request body is not possible, send LangGraph-A2A-History-Scope: task instead.
An explicit request value takes precedence over the header.
{
"jsonrpc": "2.0",
"id": "2",
"method": "GetTask",
"params": {"id": "<taskId>", "historyScope": "task"}
}
{
"jsonrpc": "2.0",
"id": "3",
"method": "ListTasks",
"params": {"contextId": "<contextId>", "historyScope": "task"}
}
The agent card advertises support through the
https://langchain.com/a2a/extensions/history-scope/v1 extension.
How-To
Attaching a debugger
Debug mode lets you attach your IDE's debugger to the LangGraph API server to set breakpoints and step through your code line-by-line.
-
Install debugpy:
pip install debugpy
-
Start the server in debug mode:
langgraph dev --debug-port 5678
-
Configure your IDE:
- VS Code: Add this launch configuration:
{ "name": "Attach to LangGraph", "type": "debugpy", "request": "attach", "connect": { "host": "0.0.0.0", "port": 5678 }, }
- PyCharm: Use "Attach to Process" and select the langgraph process
- VS Code: Add this launch configuration:
-
Set breakpoints in your graph code and start debugging.
CLI options
langgraph dev [OPTIONS]
Options:
--debug-port INTEGER Enable remote debugging on specified port
--no-browser Skip opening browser on startup
--n-jobs-per-worker INTEGER Maximum concurrent jobs per worker process
--config PATH Custom configuration file path
--no-reload Disable code hot reloading
--port INTEGER HTTP server port (default: 8000)
--host TEXT HTTP server host (default: localhost)
License
This project is licensed under the Elastic License 2.0 - see the LICENSE file for details.
Release files for langgraph-api 0.16.0.dev7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| langgraph_api-0.16.0.dev7.tar.gz | 843.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| langgraph_api-0.16.0.dev7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / langgraph_api-0.16.0.dev7.tar.gz
| Download URL | langgraph_api-0.16.0.dev7.tar.gz |
|---|---|
| Size | 843.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
71858df25b3bf643e1714f969847a26fe586f536371d67406be8528f3d22e544
|
|
BLAKE2b-256 checksum How to use checksums |
97934c6b8f9ce56192fec8f57a7ca9a5ba223269fa553d6c3635d01aaf678f8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / langgraph_api-0.16.0.dev7-py3-none-any.whl
| Download URL | langgraph_api-0.16.0.dev7-py3-none-any.whl |
|---|---|
| Size | 644.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dc6e5fb766f46d846f9b76aeb1f0dd4bf665212d9847547280876ee38bf82b93
|
|
BLAKE2b-256 checksum How to use checksums |
d00d42ed1d5e4ed6c9527e5562da46fd5c623956b5515d91c11dee350c872fc4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|