Skip to main content

Kitaru LangGraph adapter

Record and replay LangGraph agent runs with Kitaru.

Install

uv add kitaru-langgraph

Install kitaru-langgraph[deepagents] to also record agents built with deepagents.create_deep_agent through KitaruGraphRunner.from_agent_factory. The langchain.agents.create_agent factory and direct graph wrapping work without the extra.

Model providers

This distribution does not install any model-provider packages. Model strings passed to init_chat_model, such as "openai:gpt-5-nano", require the matching LangChain provider package (for example langchain-openai) in the agent environment. Install the provider package for each model your agent uses.

Use

import uuid

from langchain.agents import create_agent

from kitaru_langgraph import KitaruGraphRunner

runner = KitaruGraphRunner.from_agent_factory(
    create_agent,
    factory_kwargs={"model": "openai:gpt-5-nano", "tools": []},
    agent_id=uuid.UUID("018f0000-0000-7000-8000-000000000100"),
)
result = runner.invoke({"messages": [{"role": "user", "content": "Hello"}]})
print(result)

Wrap an existing compiled graph directly with KitaruGraphRunner(graph) when you build the graph yourself. The runner accepts the same invocation arguments as the wrapped runnable. Kitaru workers provide task, replay, and authentication context through the standard task environment.

Replay support depends on how the graph was constructed. See the LangGraph adapter guide and capability matrix for supported invocation methods, overrides, tool policies, interrupts, and failure behavior.

LangGraph trace policies can omit middleware span inputs before callbacks receive them. With Deep Agents 0.7.9 and later, some built-in middleware spans therefore record inputs: {}; this does not prove that the hook received empty state. Model and tool call inputs remain recorded. See the adapter guide for details.

Deep Agents runs its built-in middleware before custom middleware, including Kitaru's. A built-in rejection, such as a parallel write to the same file, therefore takes precedence over Kitaru's static or history tool policy. Keeping the same Deep Agents version when replaying avoids changes to these built-in rules across versions.

Tool attempts that return a native result without executing a tool are recorded with execution: short_circuited. An error ToolMessage remains a completed result with its native error status, so history replay can return it to the model rather than turn it into a raised exception.

Licensed under Apache-2.0.

Metadata

Release files for kitaru-langgraph 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kitaru-langgraph 0.3.0
File Size Uploaded
kitaru_langgraph-0.3.0.tar.gz 26.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kitaru-langgraph 0.3.0
File Interpreter ABI Platform
kitaru_langgraph-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 55.6 kB

Release files / kitaru_langgraph-0.3.0.tar.gz

Download URL kitaru_langgraph-0.3.0.tar.gz
Size 26.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3edbf9e57aa569d099c7785a3ea2579d1ae74a6ae7caffda55ac8467a9780124
BLAKE2b-256 checksum
How to use checksums
b940f72699d24dbee6a7d5df8e22ef2b804c3faa00486ffda1374a63a9f30095
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / kitaru_langgraph-0.3.0-py3-none-any.whl

Download URL kitaru_langgraph-0.3.0-py3-none-any.whl
Size 29.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f60ff9f7c04e274171d0430b2ea8da183d1885a2ba8604b00e43289086dbf3ef
BLAKE2b-256 checksum
How to use checksums
5ba58d92e2fcb4a786b0e12dca0c1e49d5bd6b33c22357114d66df7af5bc16df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page