Self-hosted audit trail for AI agents — one command or one dashboard click from any step back to root cause.
Overview
Self-hosted audit trail for AI agents — one command or one dashboard click from any step back to root cause.
README
Try it (60 seconds)
Requires Docker. First image pull may take 5–10 minutes.
curl -fsSL https://raw.githubusercontent.com/Zizka-ai/ZizkaDB/main/scripts/quickstart-remote.sh | bash
You should see:
tool_call · lookup_order · ORD-8842
└── llm_response · gpt-4o
└── user_message · Why was my order delayed?
Run again anytime: pip install zizkadb-sdk && zizkadb demo
Why?
Every agent team asks: Why did it say that? Why did it call that tool?
- Log agent steps with
parent_id(each step links to the one that caused it). - Ask why — terminal:
zizkadb whyor Python:(await db.why(event_id)).print() - See the chain — walk back to the user message, wrong tool, or bad context.
Dashboard (same chain): Activity → support-bot → click an event → Why? (causal) tab.
Connect (3 lines)
import asyncio
from zizkadb import ZizkaDB
async def main():
async with ZizkaDB(host="http://localhost:8000") as db:
user = await db.log(agent="my-bot", event="user_message", data={"text": "Why is my order late?"})
tool = await db.log(agent="my-bot", event="tool_call", data={"tool": "lookup_order"}, parent_id=user.event_id)
(await db.why(tool.event_id)).print()
asyncio.run(main())
Full guides: CONNECT.md · LangChain · CrewAI · MCP / Cursor
Integrations
| Python | TypeScript | LangChain | CrewAI | MCP | REST |
|---|---|---|---|---|---|
zizkadb-sdk |
zizkadb-sdk |
zizkadb-langchain |
zizkadb-crewai |
uvx zizkadb-mcp |
Swagger |
Scaffold a project: zizkadb init my-agent --template basic
AGPL-3.0 · MCP server MIT · Disable telemetry: export ZIZKADB_TELEMETRY=false
Install
This server does not publish a one-line install command.
Open the repository installation guide