vorlo-trace
The debugger for AI agents. Add 2 lines of code to see exactly which step of your agent failed, the plain-English root cause, and the exact fix — in 30 seconds.
Works with LangChain and the OpenAI Agents SDK.
Quick Start
pip install vorlo-trace
LangChain
import vorlo_trace
from langchain.agents import create_tool_calling_agent, AgentExecutor
# 1. Initialize Vorlo (or set VORLO_API_KEY env var)
vorlo_trace.init(api_key="vrlo_your_key_here", agent_name="my-agent")
# 2. Add the handler to your agent
handler = vorlo_trace.get_handler()
result = agent_executor.invoke(
{"input": "Check my latest emails"},
config={"callbacks": [handler]}
)
OpenAI Agents SDK
import vorlo_trace
from agents import Agent, Runner
# 1. Initialize Vorlo (or set VORLO_API_KEY env var)
vorlo_trace.init(api_key="vrlo_your_key_here", agent_name="my-agent")
# 2. Instrument once — every Runner.run() is traced from here on
vorlo_trace.instrument_openai_agents()
result = await Runner.run(agent, "Check my latest emails")
Tool calls, handoffs between agents, and triggered guardrails all appear as numbered steps — failures carry a plain-English diagnosis and fix.
That's it. Open vorlo.dev to see every step your agent took, with:
- Step Replay — chronological view of every tool call
- Root Cause — plain English explanation, not raw HTTP errors
- Fix Hints — specific, actionable steps to resolve the issue
- LLM Reasoning — why the agent made each decision
What You See
Without Vorlo:
ToolError: 403
With Vorlo:
Stripe token expired after retry chain caused stale auth context.
Your Stripe OAuth token was issued 23h ago — Stripe tokens expire at 24h.
Fix: Reconnect your Stripe account in Settings → Integrations.
How It Works
Vorlo wraps your agent's callback system. It captures:
- Every tool call (input, output, latency)
- Every LLM reasoning step (chain of thought)
- Every error (translated to plain English with fix hints)
- Cross-step context (what data flowed between steps)
All sends are fire-and-forget — Vorlo never slows or crashes your agent, even if the Vorlo server is unreachable.
Features
- 2-line integration — works with any LangChain agent or the OpenAI Agents SDK
- Sensor/Actuator classification — reads vs writes, clearly labeled
- Cross-step root cause — understands data flow between steps
- OTel-compatible — trace_id, span_id for enterprise export
- Zero impact — async sends, daemon threads, silent failures
MCP server — debug from inside your editor
The package ships an MCP server (vorlo-mcp), so Claude Code / Cursor / any
MCP client can ask Vorlo "why did my last run fail?" without leaving the editor:
pip install vorlo-trace
claude mcp add vorlo --env VORLO_API_KEY=vrlo_... -- vorlo-mcp
# or without installing first:
claude mcp add vorlo --env VORLO_API_KEY=vrlo_... -- uvx --from vorlo-trace vorlo-mcp
Tools: why_did_my_last_run_fail, get_session_diagnosis,
list_recent_sessions, get_failure_clusters, propose_fix, confirm_fix.
The autofix loop: ask your coding assistant to fix your agent — it calls
propose_fix (a ready-to-apply briefing: diagnosis, confidence, context,
instructions), applies the fix in your code, re-runs, and reports back with
confirm_fix. A confirmed fix is promoted to verified and served to every
developer who hits the same failure next.
Configuration
vorlo_trace.init(
api_key="vrlo_...", # or set VORLO_API_KEY env var
server_url="https://...", # or set VORLO_SERVER_URL env var
agent_name="order-processor", # shown in dashboard
verify_ssl=True, # or set VORLO_VERIFY_SSL=false for local proxy testing
)
Environment Variables
| Variable | Description |
|---|---|
VORLO_API_KEY |
Your Vorlo API key |
VORLO_SERVER_URL |
Custom server URL (default: production) |
VORLO_VERIFY_SSL |
Set to false only for local corporate proxy testing |
VORLO_DEBUG |
Set to 1 for debug logging to stderr |
License
MIT — see LICENSE
Metadata
Release files for vorlo-trace 0.5.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 | |
|---|---|---|---|---|
| vorlo_trace-0.5.1.tar.gz | 50.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vorlo_trace-0.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 85.9 kB
Release files / vorlo_trace-0.5.1.tar.gz
| Download URL | vorlo_trace-0.5.1.tar.gz |
|---|---|
| Size | 50.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8558bdf0250d97bd6ee5d49f154bfd0025ca5a648b4df68925a01e397ca5ac9f
|
|
BLAKE2b-256 checksum How to use checksums |
ebfbd1173b652e7aa596ca4a7e72225cc5c84e23a2607ee0934a9ad99cc132fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.0
|
Release files / vorlo_trace-0.5.1-py3-none-any.whl
| Download URL | vorlo_trace-0.5.1-py3-none-any.whl |
|---|---|
| Size | 35.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
51ad34e59ecbb03527f3a2f9601a26bc25c434b7fdaab36b11e04c1d44d9d9bf
|
|
BLAKE2b-256 checksum How to use checksums |
0ce330c20553081bf89c123177210410b742fdfc204f116f6c8d45512b258c4b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.0
|
Security for vorlo-trace 0.5.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.