Skip to content

Add agent observability with Monocle - #31

Open
imohammedansari wants to merge 1 commit into
qx-labs:mainfrom
imohammedansari:monocle-instrumentation
Open

Add agent observability with Monocle#31
imohammedansari wants to merge 1 commit into
qx-labs:mainfrom
imohammedansari:monocle-instrumentation

Conversation

@imohammedansari

@imohammedansari imohammedansari commented Jul 9, 2026

Copy link
Copy Markdown

Summary

Adds Monocle observability to this deep-research agent. Monocle is an OpenTelemetry-based tracer for LLM applications. With it enabled, each run is recorded as a structured trace: the agent invocations, LLM inferences, token usage, and timings. The change is additive and does not alter application logic.

What this adds

Instrumentation is one setup call plus one dependency:

  • requirements.txt: adds monocle_apptrace.
  • deep_researcher/main.py: calls setup_monocle_telemetry(workflow_name="openai-agents-deep-research") at startup, and wraps the research run in a single trace scope so the multi-agent pipeline records as one trace instead of many disconnected ones.

That setup call auto-instruments the frameworks already in use (the OpenAI Agents SDK and the LLM clients), so there is no per-agent or per-call wiring to maintain. Traces are written to .monocle/ by default.

What you get

Each run produces a trace of all the agents that were triggered and the LLM inferences they made. In effect, it's the path the run took to produce the report. This is useful for developers building the agent, since they can see how it actually behaved on a run. The same traces are also a good basis for a behavioral test suite, an integration test that asserts on that behavior, and I've opened a companion PR that shows how that works: behavioral test suite. You can open the trace files directly, view them in the Monocle VS Code extension, or send them to Okahu for analysis across many runs.


Example trace (Okahu VS Code Extension)

The OpenAI Agents SDK deep-research pipeline, with its agents captured as trace spans.

image

PS: if Monocle looks useful, a ⭐ helps the project (https://github.com/monocle2ai/monocle). And if you want to turn these traces into tests, that's the companion PR (#32).

@imohammedansari
imohammedansari force-pushed the monocle-instrumentation branch from 1f217bb to 20b0d1e Compare July 15, 2026 23:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant