zizkadb-sdk
PyPI: zizkadb-sdk 0.4.1
Python SDK for ZizkaDB — Why did your agent do that? Call db.why(event_id) or zizkadb why <id> after logging with parent_id.
Setup (managed cloud)
- Sign up at db.zizka.ai
- Dashboard → Create agent (e.g.
my-bot) — you get an API key for that agent - Use the same agent name in every
db.log()call - Set
ZIZKADB_API_KEY(or pass the key to the constructor)
Important: The
agentindb.log(agent="...", ...)must match the agent you created in the dashboard. A mismatch returns 403 AgentScopeError.
Install
pip install zizkadb-sdk
Note: There is an unrelated package called
agentdbon PyPI. Installzizkadb-sdk. Import:from zizkadb import ZizkaDB.
Scaffold a project
pip install zizkadb-sdk
zizkadb init my-agent --template basic
cd my-agent && cp .env.example .env # paste your key into ZIZKADB_API_KEY
pip install -r requirements.txt
python agent.py
Templates: basic, openai, langchain, crewai, mcp-cursor.
Framework packages (optional)
| Package | Install | Use case |
|---|---|---|
zizkadb-langchain |
pip install zizkadb-langchain |
LangChain callbacks |
zizkadb-crewai |
pip install zizkadb-crewai |
CrewAI crew logger |
zizkadb-livekit |
pip install zizkadb-livekit |
LiveKit voice → Sessions + Events |
See integrations/ and docs/integrations/livekit.md.
Quickstart
from zizkadb import ZizkaDB
# Key from Dashboard → Settings → API keys → create "my-bot" → copy key
db = ZizkaDB("zizkadb_live_xxxx")
async with db:
result = await db.log(
agent="my-bot", # must match dashboard agent name
event="tool_call",
data={"tool": "search", "query": "billing"},
)
chain = await db.why(result.event_id)
chain.print()
Multi-agent apps (ZizkaDB Cloud)
An API key works for one agent name. Running several agents — and agent-to-agent messaging between them — is a ZizkaDB Cloud feature; create each agent and its key in the dashboard.
Self-hosted ZizkaDB is single-agent: log everything under one agent name and use session_id to separate users or conversations. A second agent name is rejected with 409 agent_limit_reached.
Errors
| Exception | Meaning |
|---|---|
AuthError |
Invalid or revoked API key |
AgentScopeError |
Key is for agent A but you logged to agent B |
NotFoundError |
Event or agent not found |
Environment variables
| Variable | Purpose |
|---|---|
ZIZKADB_API_KEY |
Your cloud API key (preferred) |
AGENTDB_API_KEY |
Legacy alias for ZIZKADB_API_KEY |
ZIZKADB_AGENT |
Default agent name (used in templates/examples) |
ZIZKADB_HOST |
Self-hosted API URL. Used when the client gets no host argument, so with an API key it sends requests here instead of ZizkaDB Cloud (legacy alias AGENTDB_HOST) |
ZIZKADB_TELEMETRY |
Set false to opt out (anonymous ping on client construct) |
Self-host dashboard
bash scripts/setup-local.sh(API + dashboard on port 3001)- Open http://localhost:3001/login → Open my dashboard →
Links
Metadata
Release files for zizkadb-sdk 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| zizkadb_sdk-0.4.1.tar.gz | 51.7 kB | Without provenance | Details for zizkadb_sdk-0.4.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| zizkadb_sdk-0.4.1-py3-none-any.whl | Python 3 | none | any | Details for zizkadb_sdk-0.4.1-py3-none-any.whl |
Total release size: 100.9 kB
Release files / zizkadb_sdk-0.4.1.tar.gz
| Download URL | zizkadb_sdk-0.4.1.tar.gz |
|---|---|
| Size | 51.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b291e0ccd9148d8c1e232282f586728b6ec929718a07015690f0913f19019104
|
|
BLAKE2b-256 checksum How to use checksums |
15fde7ea060dda1418060f28963a27ee43c4cefbbc3481b2e056c7e7e205f373
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Release files / zizkadb_sdk-0.4.1-py3-none-any.whl
| Download URL | zizkadb_sdk-0.4.1-py3-none-any.whl |
|---|---|
| Size | 49.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e75737798d9306316a6631b754f1d0e38d2c01366d63673486f64a05eeaebdfd
|
|
BLAKE2b-256 checksum How to use checksums |
43d1e7e266dba940e5297879bb3938405536299619af917e72236b79dd30ee6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Security for zizkadb-sdk 0.4.1
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.