{"data":{"slug":"zenml-io-kitaru","name":"kitaru","tagline":"Record, replay, and improve AI agents in production, built on ZenML","github_url":"https://github.com/zenml-io/kitaru","owner":"zenml-io","repo":"kitaru","owner_avatar_url":"https://avatars.githubusercontent.com/u/88676955?v=4","primary_language":"Python","stars":297,"forks":25,"topics":["agent","agent-orchestration","agentic-ai","agents","ai-agents","checkpoints","durable-execution","llm","mcp","mlops","observability","pydantic","pydantic-ai","python","replay"],"archived":false,"github_pushed_at":"2026-09-29T05:16:49+00:00","maintenance_label":"Very active","stars_delta_30d":71,"url":"https://www.graphcanon.com/tools/zenml-io-kitaru","markdown_url":"https://www.graphcanon.com/tools/zenml-io-kitaru.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/zenml-io-kitaru","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=zenml-io-kitaru","description":"Agent traces you can run, not just read.","homepage_url":"https://kitaru.ai","license":"Apache-2.0","open_issues":48,"watchers":1,"ai_summary":"A toolset for managing the lifecycle of AI agents including recording, replaying, and improving performance in deployment settings.","readme_excerpt":"<p align=\"center\">\n  <a href=\"https://docs.zenml.io/kitaru\">\n    <img src=\"assets/kitaru_header.png\" alt=\"Kitaru — Traces you can run, not just read.\" width=\"900\">\n  </a>\n</p>\n\n<h3 align=\"center\">Traces you can run, not just read.</h3>\n\n<p align=\"center\">\n  Kitaru (来る, \"to arrive\") gives you replay-based evals for AI agents. Record or import production runs as sessions, replay them against your next model, prompt, or code change, and see what improved and what broke before you ship. Open source, self-hosted, Python and TypeScript. From the team behind <a href=\"https://zenml.io\">ZenML</a>.\n</p>\n\n<p align=\"center\">\n  <a href=\"https://pypi.org/project/kitaru/\"><img alt=\"PyPI\" src=\"https://img.shields.io/pypi/v/kitaru?color=blue\"></a>\n  <a href=\"https://pypi.org/project/kitaru/\"><img alt=\"Python\" src=\"https://img.shields.io/pypi/pyversions/kitaru\"></a>\n  <a href=\"https://github.com/zenml-io/kitaru/blob/main/LICENSE\"><img alt=\"License\" src=\"https://img.shields.io/github/license/zenml-io/kitaru\"></a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://docs.zenml.io/kitaru\">Docs</a> &middot;\n  <a href=\"https://youtu.be/aYLfzXEr2Rk\">Guided Tour</a> &middot;\n  <a href=\"#-get-started\">Get Started</a> &middot;\n  <a href=\"https://www.zenml.io/roadmap\">Roadmap</a> &middot;\n  <a href=\"https://kitaru.ai/slack\">Community</a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://youtu.be/aYLfzXEr2Rk\">\n    <img src=\"assets/guided-tour-thumbnail.jpg\" alt=\"Watch the 26-minute Kitaru guided tour\" width=\"900\">\n  </a>\n</p>\n\n---\n\n## 🎯 Why\n\nYour agent has already been tested thousands of times in production. Most of that evidence is sitting in a trace store as something you can read but not run. Then you change a prompt, swap a model, or refactor a tool, and the first strong signal comes from a user who found the regression.\n\nKitaru turns that history into something you can test:\n\n- **Every run becomes a session.** Wrap your agent once, or import the traces you already collect from Langfuse, LangSmith, Braintrust, Logfire, or Arize Phoenix. Your trace store stays your system of record.\n- **Replay re-executes your code.** Your real agent runs again, with tool calls answered from the recording, so no card gets refunded twice. An unchanged replay gives you the faithful baseline; a forked replay shows the effect of one change.\n- **Evaluation starts with human judgment.** Your coding assistant reviews the sessions that matter, interviews you against the evidence, and pins your answers to exact trace locations. Those judgments calibrate evaluators, cohorts freeze the population, and experiments replay the cohort against your change before it ships.\n\n## ⚡ Get started\n\n**1. Install.** Open a terminal in your agent's repository and run one line. It adds Kitaru to that project's environment with `uv` (the worker that replays your agent has to live next to its dependencies), installs the coding-agent skills, and registers the MCP server with Claude Code, Codex, Cursor, and Windsurf (that part is `kitaru setup`, re-run it after installing a new editor). It ends by printing the two ways to get a server: `kitaru login --local` (Docker or Podman, free) or `kitaru login` for the managed cloud (14-day trial, no credit card required).\n\n```bash\ncurl -fsSL https://kitaru.ai/install | bash\n```\n\nAlready in Claude Code, Codex, or Cursor? Open the repository there and paste this instead:\n\n```\nSet up Kitaru in this repository by following https://kitaru.ai/install.md. Use the one-line installer and tell me what it did.\n```\n\nPrefer to do it by hand? Add Kitaru to your project's environment, then choose managed cloud with `uv run kitaru login`, or provision the local FastAPI + Postgres server with Docker or Podman:\n\n```bash\nuv add \"kitaru[cli,worker,mcp]\" kitaru-pydantic-ai    # or: pip install\nuv run kitaru login                                   # managed cloud; 14-day trial, no credit card required\nuv run kitaru login --local                           # local server in Docker or Podman\n# or:","github_created_at":"2026-03-05T14:04:26+00:00","created_at":"2026-07-11T23:30:13.484614+00:00","updated_at":"2026-09-29T06:00:31.048922+00:00","categories":[{"slug":"ai-agents","name":"AI Agents","url":"https://www.graphcanon.com/categories/ai-agents","markdown_url":"https://www.graphcanon.com/categories/ai-agents.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/ai-agents"},{"slug":"evaluation-observability","name":"Evaluation & Observability","url":"https://www.graphcanon.com/categories/evaluation-observability","markdown_url":"https://www.graphcanon.com/categories/evaluation-observability.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/evaluation-observability"}],"tags":[{"slug":"agent-framework","name":"agent-framework"},{"slug":"ai-agents","name":"ai-agents"},{"slug":"checkpoints","name":"checkpoints"},{"slug":"durable-execution","name":"durable-execution"},{"slug":"llm","name":"llm"},{"slug":"mcp","name":"mcp"},{"slug":"mlops","name":"mlops"},{"slug":"observability","name":"observability"}],"trust":{"provenance":{"is_fork":false,"github_id":1173563711,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-29T06:00:30.225Z","maintenance":{"label":"Very active","score":96,"methodology":"github_public_v1","releases_90d":30,"days_since_push":0,"last_release_at":"2026-09-23T13:30:12Z","stars_delta_30d":71,"open_issues_delta_30d":-1},"security_summary":{"status":"ok","scanner":"mcp_manifest@v1","low_count":0,"high_count":0,"last_scan_at":"2026-07-11T23:30:18.638Z","medium_count":0,"scan_profile":"mcp_manifest","critical_count":0}},"capability_facts":{"mcp":{"source":"repo_scan","observed_at":"2026-09-29T06:00:30.686Z","server_manifest":false},"scan":{"source":"repo_scan","observed_at":"2026-09-29T06:00:30.686Z"},"deploy":{"source":"dockerfile:docker-compose.yml","self_host":true,"observed_at":"2026-09-29T06:00:30.686Z","managed_saas":false},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-09-29T06:00:30.686Z"},"languages":{"value":["python","javascript","typescript"],"source":"github.language+package.json+pyproject.toml","observed_at":"2026-09-29T06:00:30.686Z"},"has_docker":{"value":true,"source":"dockerfile:docker-compose.yml","observed_at":"2026-09-29T06:00:30.686Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-09-29T06:00:30.686Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":null,"constraints":null,"when_to_use":["- You need to ensure the continuous improvement of AI agents that are already deployed; Kitaru allows you to replay scenarios with different approaches to identify improvements.","- Your project leverages PydanticAI or similar frameworks and you require integration capabilities for recording and observing agent behavior over time;"],"when_not_to_use":["- If your project is in the early stages of development without a clear need for replaying historical data or improving upon past behaviors;","- When working outside Python, as Kitaru does not currently offer support for other programming languages."],"source":"enrich:decision_facts","observed_at":"2026-07-17T13:30:48.060Z"},"constraint_facets":null,"decision_summary":[{"label":"Adopt for","value":"Kitaru focuses on recording, replaying, and enhancing the performance of AI agents in production environments using technology from ZenML."}]}}