ZizkaDB tells you when your agent stops behaving like itself. Causal lineage, time travel and behavioral baselines for any AI agent.
Project description
agentdb-sdk
Python SDK for AgentDB — the operational database for AI agents.
Install
pip install agentdb-sdk
Note: There is an unrelated package called
agentdbon PyPI. Make sure to installagentdb-sdk(this package). The import is stillfrom agentdb import AgentDB.
Quickstart
from agentdb import AgentDB
# Cloud (agentdb.zizka.ai)
db = AgentDB("agdb_live_xxxx")
# Self-hosted
db = AgentDB(host="http://localhost:8000")
Log an event
result = await db.log(
agent="my-bot",
event="tool_call",
data={"tool": "search_web", "query": "competitor pricing"},
)
print(result.event_id)
Link events causally
# Log the user message
msg = await db.log(agent="my-bot", event="user_message",
data={"text": "why is my bill $200?"})
# Log the tool call that happened BECAUSE of the message
tool = await db.log(agent="my-bot", event="tool_call",
data={"tool": "get_billing"},
parent_id=msg.event_id) # <-- causal link
# Log the response that happened BECAUSE of the tool call
await db.log(agent="my-bot", event="agent_response",
data={"text": "I found an anomaly in your account"},
parent_id=tool.event_id)
Why did something happen?
chain = await db.why(tool.event_id)
chain.print()
# user_message: {'text': 'why is my bill $200?'} [14:32:01]
# └── tool_call: {'tool': 'get_billing'} [14:32:02]
# └── agent_response: {'text': '...'} [14:32:03]
Semantic search
results = await db.search("customer angry about billing")
for event in results:
print(event.event, event.data)
Time travel
from datetime import datetime
state = await db.at("my-bot", datetime(2026, 5, 1, 15, 0))
print(state.state)
Query events
events = await db.query("my-bot", limit=100, event_type="tool_call")
Self-host
git clone https://github.com/Zizka-ai/agentdb
cd agentdb && cp .env.example .env
docker-compose -f infra/docker-compose.yml up
License
AGPL-3.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zizkadb_sdk-0.2.1.tar.gz.
File metadata
- Download URL: zizkadb_sdk-0.2.1.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a993363367955f62b12e72faa490686743a408c229c3d442576bcddf846e3cf
|
|
| MD5 |
6d012be0e4f57d14671c436f0447c122
|
|
| BLAKE2b-256 |
078cf7c4cd0e1a2d50829a12d2c28fa0c70238a5a7073b2eb3c4f39513703200
|
File details
Details for the file zizkadb_sdk-0.2.1-py3-none-any.whl.
File metadata
- Download URL: zizkadb_sdk-0.2.1-py3-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6722b0582f5e09c77dce1cf7cb89f30b710d83b957380c238cea5cf4f728579b
|
|
| MD5 |
7016b57847bf73bc1b9b8599e8a581bb
|
|
| BLAKE2b-256 |
1975f908189c5c32d193d0074c7affa250a4f1d0048d324503158fa6d3b3335f
|