deepagents-trace (Python server + CLI)
PyPI distribution name: deepagents-trace (the agenttrace name is
already taken on PyPI by an unrelated project — TensorStax's own agent-tracing
tool — so this package is published under a different name; the importable
module, the CLI command, and the product itself are still called
agenttrace/AgentTrace).
pip install deepagents-trace && agenttrace ui — starts the AgentTrace web
API (and a /ws live-stream) with zero Node/Bun process, mlflow ui-style.
For local development against this checkout: pip install -e python-server.
This is Phase 1 + 3 of the Python migration plan: a FastAPI backend that
is a 1:1 contract port of the Next.js API (src/app/api/* in the main repo),
plus the CLI. Phase 2 is not done yet — there is no bundled frontend, so
/ currently serves a placeholder page confirming the API is up; use the API
directly (/api/*) or the existing Next.js dashboard against this backend's
data once Phase 2 lands.
Install & run
pip install deepagents-trace # or `pip install -e python-server` against this checkout
agenttrace ui # http://127.0.0.1:3000, SQLite by default (./agenttrace.db)
agenttrace ui --database-url postgresql://user:pass@localhost:5432/agenttrace
agenttrace ui --port 8080 --host 0.0.0.0
agenttrace db init creates the schema explicitly (also runs automatically
on agenttrace ui startup) — schema-push style (Base.metadata.create_all),
matching how this repo already runs prisma db push rather than migrations.
What's ported
Next.js (src/) |
Python (agenttrace/server/) |
|---|---|
prisma/schema.prisma |
models.py (SQLAlchemy) — same User/Project/Run/Event/ApiKey shape |
src/lib/auth.ts (NextAuth) |
routes/auth.py + security.py — signed-cookie session (not NextAuth wire-compatible) |
src/lib/api-auth.ts, src/lib/keys.ts |
deps.py, security.py — same atr_<32 hex> key format/hash |
src/app/api/**/route.ts |
routes/{projects,runs,events,keys,stats}.py — same JSON shapes |
mini-services/socket-service (Socket.IO) |
realtime.py (/ws, plain JSON protocol — see its docstring) |
The POST /api/events contract (the one integrations/agenttrace-langchain
depends on) is unchanged: same fields, same atr_ key auth, same event
types.
Tests
pip install -e "python-server[dev]"
pytest python-server/tests
Releasing a new version
Published: pypi.org/project/deepagents-trace — Trusted Publishing (OIDC) is set up, no API token stored as a GitHub secret.
To ship a new version:
- Bump
versioninpyproject.toml. - Commit, then push a tag matching
python-server-v*(e.g.python-server-v0.1.2) —.github/workflows/publish-pypi.ymlbuilds and publishes automatically. A GitHub Release (publishedevent) also triggers it, or run the workflow manually (workflow_dispatch). - Locally, verify before tagging:
python -m build && twine check dist/*in this directory.
Trusted publisher config on pypi.org (Publishing → Trusted publishers), for
reference/if it ever needs re-registering: project deepagents-trace, owner
CouLiBaLy-B, repo agenttrace, workflow publish-pypi.yml, environment
pypi.
Known gaps vs. the Next.js backend (tracked for later phases)
- No frontend bundle yet (Phase 2).
- No demo-account seeding on signup (the Next.js version seeds 3 sample projects — intentionally skipped here to keep this phase scoped to the API contract).
- Realtime wire protocol is plain JSON over
/ws, not the Socket.IO protocol — the current React frontend'ssocket.io-clientwon't talk to it until Phase 2 adapts it.
Metadata
Release files for deepagents-trace 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| deepagents_trace-0.1.5.tar.gz | 546.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| deepagents_trace-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.1 MB
Release files / deepagents_trace-0.1.5.tar.gz
| Download URL | deepagents_trace-0.1.5.tar.gz |
|---|---|
| Size | 546.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
13342270ff5a235eab88cbba498cfaa826bd54aed61491e8dc678a0f268c8c56
|
|
BLAKE2b-256 checksum How to use checksums |
3e076fc0e4d600c3bf901f85789a6dd86aceb14ddcaae5d34f256fd9528ddc7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.
Transparency logRelease files / deepagents_trace-0.1.5-py3-none-any.whl
| Download URL | deepagents_trace-0.1.5-py3-none-any.whl |
|---|---|
| Size | 569.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6b1addb3c624f2314237a57af5cd3c39ea297d43168f659d5c573101e364d730
|
|
BLAKE2b-256 checksum How to use checksums |
b581e2f908d59a7e12eabd69f1c02521ef51ea55a39632e926984dd01e4d2d08
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.
Transparency log