Catalyst instruments the ElevenLabs Agents SDK in TypeScript and Python. Initialize tracing before starting a conversation so the SDK conversation lifecycle and client-tool callbacks are patched before the session begins. Use this guide for applications that useDocumentation Index
Fetch the complete documentation index at: https://docs.inference.net/llms.txt
Use this file to discover all available pages before exploring further.
@elevenlabs/client or the Python
elevenlabs.conversational_ai.conversation APIs.
What Is Captured
- One AGENT span named
ElevenLabs Conversationfor each conversation session - User and agent transcript messages as OpenInference message attributes
- ElevenLabs metadata such as agent ID, conversation ID, user ID, auth mode, and text-only mode
- TOOL child spans for registered client tools, including tool name, arguments, result, and errors
- Error status and exception details when session startup, tool execution, or shutdown fails
Install
TypeScript Conversation Session
Pass the ElevenLabs SDK namespace intosetup() before calling
Conversation.startSession().
TypeScript
signedUrl or
conversationToken options that your ElevenLabs app already uses. Catalyst
keeps the same outer ElevenLabs Conversation span shape.
Python Conversation Session
Callsetup() before constructing and starting the Conversation. This patches
the installed ElevenLabs SDK and records the session lifecycle automatically.
Python
audio_interface=None keeps the example text-only. For voice conversations, use
your normal ElevenLabs audio interface; the instrumentation records the same
conversation span and transcript callbacks.
Verify In Catalyst
Filter traces byservice.name=voice-support. A successful session should show
an ElevenLabs Conversation AGENT span with nested TOOL spans when your agent
calls lookupAppointment.
For short-lived scripts, always call tracing.shutdown() before process exit so
batched spans are flushed to Catalyst.