Skip to main content

Choose a setup method

Start with one method for a call path. Combining SDK tracking with framework OpenTelemetry on the same call can create duplicate interactions.
Recommended. Choose this path when you want your coding agent to inspect the project, select a supported transport, make the smallest instrumentation change, send a test event, and verify that it reached Agnost AI.
Install the skill once in your coding-agent environment:
Run the framework-specific prompt below from the application root. Review the resulting diff before deploying it.

Manual setup: Agnost AI SDK

Call agnost.shutdown() once when the application exits, not after each request.

Manual setup: OpenTelemetry

Install

Setup

You get agent / handoff / guardrail spans plus the underlying LLM call spans with full message and tool data (llm.input_messages.*, llm.output_messages.*, tool.name, tool.parameters, llm.token_count.*).

Caveats

Do not call set_tracing_disabled(True): it disables the trace objects that the OpenInference instrumentor observes. Use set_trace_processors([]) before the first run when Agnost AI should be the only trace destination. Omit that line if you intentionally want traces in both Agnost AI and OpenAI’s hosted dashboard.

Verify

Run one Runner.run call, then open Events in Agnost AI. Confirm agent, handoff, guardrail, and LLM spans are present.

Troubleshooting

  • Keep SDK tracing enabled. Replace the default trace processors if you do not want dual-send to OpenAI’s hosted trace backend.
  • Confirm OTEL_EXPORTER_OTLP_HEADERS contains X-Agnost-Org-ID=<your-org-id>.
  • Confirm using_attributes wraps the call you want grouped.

References

Next steps

  • Conversations: review the complete agent run.
  • Events: inspect model calls, handoffs, guardrails, and tools.
  • Intents: organize production conversations by what users wanted.