Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
No. 1222Tools index

Previous survey · No. 1208 ·

Type
TOOL
Use case
Security & Identity
Interfaces
MCP · Client SDK
GitHub
155 stars
Latest release
v0.5.0
Date

About

ZizkaDB is an audit-trail database for AI agents that stores tamper-evident, checksum-backed decision logs with session replay and time-travel debugging, built to support EU AI Act Article 12 record-keeping requirements. It adds drift detection, an MCP server, and Python and TypeScript SDKs, and can be self-hosted or run as a cloud service.

What it does

ZizkaDB is a flight recorder for AI agents. Your agent sends each step it takes (a user message, a model reply, a tool call) to a FastAPI service on Postgres, and each step can name the step that caused it. From that record you can ask why a step happened and get the chain back to its root, rebuild what the agent knew at a past moment, and pull a ranked block of past context to paste into the next prompt. Each record is hash-chained to the one before it.

Why it's ranked here

The causal link is the distinguishing idea. Tracing tools show what an agent did in order; ZizkaDB stores which step caused which, so the question behind most agent debugging gets one call instead of a scroll. The hash chain gives a check that history was not edited, which matters to teams answering EU AI Act record-keeping. The project backs this with unusually concrete operating policy: a written telemetry disclosure, fix deadlines for vulnerabilities, and a server that refuses to boot with published default secrets.

What's good

Production startup fails loudly on a default dev key, a published JWT secret or an admin token under 16 characters. The telemetry page lists every outbound call; the server and dashboard send nothing, and each client package sends one anonymous install ping that a single environment variable turns off. Search works with keywords and no OpenAI key, adding vector search when embeddings are on. If the vector store goes down, event logging keeps working and the index can be rebuilt from Postgres.

Tradeoffs

Self-hosting is limited to one agent with one API key; multiple agents, fleets and agent-to-agent messaging are reserved for the hosted cloud. The license is AGPL-3.0, a copyleft license written for network server software. With embeddings on, event text goes to OpenAI, and each event stores roughly 6 KB of embedding in Postgres. Production CORS allows every origin unless you set it. Only the latest minor release line gets security fixes.

How to use it well

Pick ZizkaDB if you run one production agent and need to explain its decisions after the fact, or to show an auditor an unaltered log. The one-command Docker quickstart starts Postgres, the API and a dashboard with a demo chain to click through. Then log your own agent through the Python SDK, the TypeScript SDK, or the MCP server, and pass the parent step on every event so the causal links exist. For a server deployment, set production mode, an admin token and allowed CORS origins.

Technical notes+

core/main.py is a FastAPI app (API_VERSION 0.5.0) whose lifespan calls validate_production_startup, rejecting the dev keys zizkadb_dev_local and agdb_dev_local, a set of published JWT secrets, and admin tokens shorter than _MIN_SELFHOST_ADMIN_TOKEN_LEN = 16; it also starts a retention loop and serves a deep health check across Postgres, Redis and Qdrant. CORS falls back to allow_origins ["*"] with credentials off when CORS_ALLOWED_ORIGINS is unset. mcp/zizkadb_mcp/server.py uses FastMCP, defaults ZIZKADB_HOST to the hosted cloud, auto-chains parent_id from session state, and exposes log_event, search_memory, verify_chain, get_context, why, query_events, time_travel, get_baseline and get_token_usage; its install ping posts to the vendor telemetry endpoint unless ZIZKADB_TELEMETRY is false. docs/adr/002-dual-write-postgres-qdrant.md makes Postgres the primary write and Qdrant best-effort. pyproject.toml holds only ruff config; LICENSE is AGPL-3.0.

Observed

License
AGPL-3.0 (SECURITY.md notes MIT for the MCP server directory)
Language
Python (FastAPI server, SDK, MCP server), plus a TypeScript SDK
Storage
Postgres primary, Qdrant optional for vector search, Redis
Install surface
Single Docker image on GHCR, full Docker Compose stack, pip and npm SDKs, uvx MCP server
Interfaces
REST API with Swagger, Python SDK, TypeScript SDK, MCP server, web dashboard
Self-hosted limit
One agent and one API key
Telemetry
One anonymous install ping per client process, opt-out via ZIZKADB_TELEMETRY=false (docs/telemetry.md)
Security policy
Private email reporting, fix deadlines by severity (SECURITY.md)

Read from README.md, pyproject.toml, docs/README.md, mcp/zizkadb_mcp/server.py, core/main.py, sdk/python/zizkadb/__init__.py, docs/adr/002-dual-write-postgres-qdrant.md, docs/telemetry.md, LICENSE, SECURITY.md.

Tags

audit-trailai-agentseu-ai-actcompliancemcp

Tech Stack

Python

Media

ZizkaDB

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.