langgraph-checkpoint-cli
A terminal CLI for browsing LangGraph checkpoints — list threads, walk state history, inspect and diff checkpoints. No code required.
Why
LangGraph's checkpointer (SqliteSaver, PostgresSaver, ...) is how your agent's state survives restarts, resumes after a NodeInterrupt, and supports time travel — but it's a programmatic API. There's no built-in way to answer "what threads exist in this database" or "what did the state look like three steps ago" without writing a throwaway script every time. langgraph-checkpoint-cli is that script, packaged once.
Install
pip install "langgraph-checkpoint-cli[sqlite]" # for SqliteSaver
pip install "langgraph-checkpoint-cli[postgres]" # for PostgresSaver
pip install "langgraph-checkpoint-cli[all]" # both
Usage
Point --db at the same connection string your app's checkpointer uses (or set LANGGRAPH_CHECKPOINT_DB once):
export LANGGRAPH_CHECKPOINT_DB=checkpoints.db # sqlite path
# or: export LANGGRAPH_CHECKPOINT_DB=postgresql://user:pass@host/db
List every thread
langgraph-checkpoint threads
threads (2)
┏━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ thread_id ┃ checkpoints ┃ last step ┃ last updated ┃
┡━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ thread-2 │ 3 │ 1 │ 2026-08-16T19:44:22.162503+00:00 │
│ thread-1 │ 6 │ 4 │ 2026-08-16T19:44:22.160969+00:00 │
└───────────┴─────────────┴───────────┴──────────────────────────────────┘
Walk a thread's checkpoint history
langgraph-checkpoint history thread-1
Show a checkpoint's state
langgraph-checkpoint show thread-1 # latest checkpoint
langgraph-checkpoint show thread-1 --checkpoint <id> # a specific one
Diff two checkpoints
langgraph-checkpoint diff thread-1 # last step vs its parent
langgraph-checkpoint diff thread-1 --from <id> --to <id> # any two checkpoints
1f199aae-0e23-6660-8003-3e7fefc1c2a2 → 1f199aae-0e23-6f0c-8004-ecda2f39382b
- branch:to:increment
~ count 5 → 6
Try it without your own database
git clone https://github.com/MrinalCom/langgraph-checkpoint-cli
cd langgraph-checkpoint-cli
uv sync --extra sqlite --group dev
uv run python examples/seed_demo.py
uv run langgraph-checkpoint threads --db examples/demo.db
Python API
Everything the CLI does is also a plain function, in case you want to script it:
from langgraph_checkpoint_cli import open_saver, list_threads, diff_state
with open_saver("checkpoints.db") as saver:
print(list_threads(saver))
License
MIT © Mrinal Anand
Metadata
Release files for langgraph-checkpoint-cli 0.1.0
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_checkpoint_cli-0.1.0.tar.gz | 6.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| langgraph_checkpoint_cli-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.4 kB
Release files / langgraph_checkpoint_cli-0.1.0.tar.gz
| Download URL | langgraph_checkpoint_cli-0.1.0.tar.gz |
|---|---|
| Size | 6.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e6411f8e141bd736a12b97cf297a491aeaf277ac819cdeba2dae3f8d706818a3
|
|
BLAKE2b-256 checksum How to use checksums |
03cb3aac49fcc906fb45211d05ef131aee24d1144d83b5041469df5ad5468bf7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / langgraph_checkpoint_cli-0.1.0-py3-none-any.whl
| Download URL | langgraph_checkpoint_cli-0.1.0-py3-none-any.whl |
|---|---|
| Size | 9.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7dc88478cda8798637c32735298dac58b8ecaa3675fe1d718caf33735d9d94c4
|
|
BLAKE2b-256 checksum How to use checksums |
d8cefb12032e7742fa69d261a1cecdee59aeca197aa18f703ad8018ed48c43df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|