Local-First Forensics
Built for Developers
Who Treat AI like Software
AI agents fail in highly complex, non-deterministic ways. We built Orchid to make AI behavior as debuggable and testable as normal code.
The Story
In late 2025, we were building multi-agent systems. Whenever an output went off the rails, or a validation schema failed, we spent hours digging through JSON logs and trace streams. Existing tools required intrusive and time-consuming code instrumentation, littering our codebase with custom decorators, client overrides, and telemetry boilerplate that felt entirely decoupled from clean application logic.
We realized the solution was simple: use an intercepting proxy. By routing local traffic through a lightweight proxy engine, we could capture inputs, outputs, and token counts without intrusive SDK lines or AST rewriting.
Orchid was born. It separates payload recording from runtime execution, storing trace runs locally in SQLite for offline playback. Traces can be explored dynamically through the web visualizer, audited via the `orchid-cli-rs` TUI, or queried programmatically using the built-in MCP server.
First Principles
Zero-Intrusion Telemetry
The Python Thin SDK initializes with one line, hooking http transport layers directly. No manual decorators or custom client wrappers required.
Local-First SQLite Cache
All traces persist locally in SQLite. Telemetry remains completely in your control, operating with zero latency and 100% security boundary integrity.
Deterministic Playback & Test
Export JSON fixtures, override sessions, and run offline playback runs in CI/CD with zero API cost using native pytest decorators.
Dual UI & MCP Integration
Inspect runs with a Web Visualizer or the Rust terminal TUI. Integrate the MCP server directly into your IDE agent to query trace details.