Skip to main content
Bitfab provides automatic tracing for popular AI frameworks. Instead of manually wrapping every function with withSpan or @span, use a framework-specific handler that hooks into the framework’s execution lifecycle and captures spans automatically.

Framework Support

Choose a Framework

LangGraph / LangChain

Callback handler that captures graph nodes, LLM calls, tool invocations, and retriever queries as traced spans.

OpenAI Agents SDK

Trace processor that captures agent runs, tool calls, and handoffs from the OpenAI Agents SDK, plus a run wrapper that records a replayable root.

BAML

Auto-capture rendered prompts and LLM metadata (model, tokens, duration) from BAML function calls.

Claude Agent SDK

Handler that captures LLM turns, tool invocations, and subagent execution from the Claude Agent SDK.

Vercel AI SDK

Language model middleware that captures every generateText / streamText / generateObject / streamObject call, with full streaming support.

How It Works

Each framework handler integrates with Bitfab’s tracing pipeline:
  1. Create a handler via the Bitfab client (e.g., bitfab.getLangGraphCallbackHandler("my-agent"))
  2. Pass the handler to the framework (as a callback, processor, or hook)
  3. Spans are created automatically for each execution step (LLM calls, tool invocations, etc.)
  4. Add core tracing only around real surrounding work - callback handlers such as LangGraph / LangChain already create a replayable root for the framework invocation. Use a same-key withSpan or @span outer root only when input prep, non-framework retrieval, post-processing, persistence, or downstream calls should be part of the same trace.
All framework handlers are fire-and-forget - they never throw errors or affect your application’s execution.