Agent Observatory
See what your agents are doing, live. Agent Observatory watches local Codex and Claude Code sessions, receives OpenTelemetry from instrumented agents, and brings tasks, model calls, MCP tools, traces, tokens, errors, and host activity into one terminal cockpit and local web dashboard.
Short demo using synthetic example data. No real session logs or user prompts are included.
Start in one command
Requires Python 3.11+. Install uv if needed, then:
uvx --from agent-observatory-cli agent-observatory
To keep the command installed:
uv tool install agent-observatory-cli
agent-observatory
Or install it into the active Python environment with python -m pip install agent-observatory-cli.
The terminal cockpit discovers recent local Codex and Claude Code sessions automatically. Press b to open the local web dashboard. It listens on 127.0.0.1:14318.
Your first minute
- Open Agents to see sessions, projects, current tasks, and recent work.
- Open Activity or MCP Calls, select a row, and press Enter to inspect its recorded input and output. Press e for a wider view.
- Press b for the browser dashboard, or use Older / Newer / Latest to explore stored activity in the terminal.
No sessions yet? Start a local Codex or Claude Code session and perform a task. Other agent runtimes need instrumentation or OTLP export. Available details depend on what the agent records; unsupported clients and unrecorded calls do not appear automatically.
Already cloned the repository? Run the installer for your shell:
./scripts/install.sh
.\scripts\install.ps1
These install the checkout as an isolated uv tool. Re-run the script after pulling an update. No administrator access is needed.
What you get
- Agents: distinct sessions, project, current task, model, recent actions, and activity state.
- Activity: readable user/assistant messages, shell commands, file changes, browser events, model use, and tool results.
- MCP: server and tool calls with readable arguments and results, an Errors filter, latency, and direct links to the execution span.
- Traces: parent/child spans, model usage, errors, and evidence for each operation.
- Host: known local agent processes and basic resource use, shown separately from sessions.
- Web dashboard: searchable live activity with the same local receiver.
The cockpit adapts from compact terminals to wide workspaces. Search stays with each view, Enter inspects a row, e expands the details, and Esc returns to the list. Drag to highlight inspector text and press Ctrl+C to copy it; c copies the current details. Activity, MCP Calls, and Traces include Older / Newer / Latest controls for stored history, and Alt+Left returns from a linked trace to the event you were reading.
The receiver stores data in a local SQLite file. Native session capture is bounded and redacts recognizable credentials on a best-effort basis. Choose metadata-only capture with --metadata-only. See Privacy and capture boundaries.
Connect other agents
Send OpenTelemetry traces, logs, and metrics over OTLP/HTTP, or use the Python and JavaScript clients:
- Python setup and automatic SDK capture
- Node.js client
- OTLP, receiver, and deployment configuration
- Complete usage guide and examples
For MCP clients that need to query saved traces conversationally, see SpanHound, a local MCP server for trace failures, approvals, token usage, and run comparisons. SpanHound reads JSONL and OTLP JSON files and can capture supported Python library calls.
Help improve agent observability
Tell us about your first run: which agent you use, what you expected to see, and what was missing or confusing. Share a redacted example when reporting a capture or formatting problem.
Develop
git clone https://github.com/abhishekash/agent-observatory.git
cd agent-observatory
uv tool install --editable .
python -m unittest discover -s tests -v
Contributions and bug reports are welcome. See CONTRIBUTING.md and open an issue.
Maintainers can follow the PyPI publishing guide to release a version with Trusted Publishing.
License
Agent Observatory is distributed under the MIT License.
Metadata
Release files for agent-observatory-cli 0.1.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 | |
|---|---|---|---|
| agent_observatory_cli-0.1.1.tar.gz | 123.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agent_observatory_cli-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 244.1 kB
Release files / agent_observatory_cli-0.1.1.tar.gz
| Download URL | agent_observatory_cli-0.1.1.tar.gz |
|---|---|
| Size | 123.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d2cf3270734c77de66a5f583c59e98b384e6c6e222d25845f45c42604b1eeebe
|
|
BLAKE2b-256 checksum How to use checksums |
e696c3f95567b6aa11fab657fcaf07c4f84037974991fa811bba099030214606
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.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 Oct 15, 2026.
Transparency logRelease files / agent_observatory_cli-0.1.1-py3-none-any.whl
| Download URL | agent_observatory_cli-0.1.1-py3-none-any.whl |
|---|---|
| Size | 120.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a37e39c1e487c6cf27aa8c314781a9c710417278b029cb428d056104e2048c52
|
|
BLAKE2b-256 checksum How to use checksums |
202ebdaeb42ff3f284cb74b4233d76ac693c57409781d74812c2e498eeee4771
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.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 Oct 15, 2026.
Transparency log