Skip to main content

Lightweight tracing SDK for AI agents. Capture decisions, tool calls, and LLM events with one context manager.

Project description

Agent Debugger

See why your AI agent did that. This package gives you a tracing SDK for custom agents plus integration points for PydanticAI and LangChain.

What This Package Gives You

  • TraceContext for explicit tracing
  • decorators for agent, tool, and LLM boundaries
  • adapter entry points for supported frameworks
  • configuration for local or cloud-oriented transport settings

Quick Start

pip install peaky-peek
import asyncio

from agent_debugger_sdk import TraceContext, init

init()  # Local mode by default


async def main() -> None:
    async with TraceContext(agent_name="demo_agent", framework="custom") as ctx:
        await ctx.record_decision(
            reasoning="Need external information",
            confidence=0.9,
            chosen_action="call_search_tool",
            evidence=[{"source": "user_input", "content": "What is the weather?"}],
        )


asyncio.run(main())

Run the backend locally if you want to receive and inspect events:

pip install peaky-peek-server
uvicorn api.main:app --reload --port 8000

Configuration

from agent_debugger_sdk import init

init(
    api_key="ad_live_...",            # optional
    endpoint="https://api.agentdebugger.dev",
    enabled=True,
    sample_rate=1.0,
    redact_prompts=False,
)

If no API key is set, the SDK stays in local mode and defaults to http://localhost:8000.

Integration Options

TraceContext

Use TraceContext when you want explicit control over recorded events.

import asyncio

from agent_debugger_sdk import TraceContext, init

init()


async def main() -> None:
    async with TraceContext(agent_name="my_agent", framework="custom") as ctx:
        await ctx.record_tool_call("weather_api", {"location": "SF"})
        result = {"forecast": "sunny"}
        await ctx.record_tool_result("weather_api", result=result, duration_ms=150)


asyncio.run(main())

Decorators

Use decorators when your code already has clear boundaries:

from agent_debugger_sdk import init, trace_agent, trace_tool

init()

@trace_tool(name="search_docs")
async def search_docs(query: str) -> list[str]:
    return [query]

@trace_agent(name="docs_agent", framework="custom")
async def docs_agent(query: str) -> list[str]:
    return await search_docs(query)

Adapters

PydanticAI

from pydantic_ai import Agent

from agent_debugger_sdk import init
from agent_debugger_sdk.adapters import PydanticAIAdapter

init()

agent = Agent("openai:gpt-4o")
adapter = PydanticAIAdapter(agent, agent_name="support_agent")

LangChain

from agent_debugger_sdk import TraceContext, init
from agent_debugger_sdk.adapters import LangChainTracingHandler

init()

context = TraceContext(session_id="demo", agent_name="langchain_agent", framework="langchain")
handler = LangChainTracingHandler(session_id="demo")
handler.set_context(context)

Important:

  • the current LangChain path is handler-based
  • init() does not currently auto-patch LangChain for zero-code instrumentation

Environment Variables

Variable Default Description
AGENT_DEBUGGER_API_KEY - API key for cloud-oriented mode
AGENT_DEBUGGER_URL http://localhost:8000 Collector endpoint
AGENT_DEBUGGER_ENABLED true Enable or disable tracing
AGENT_DEBUGGER_SAMPLE_RATE 1.0 Sampling rate
AGENT_DEBUGGER_REDACT_PROMPTS false Redact prompts before storage
AGENT_DEBUGGER_MAX_PAYLOAD_KB 100 Max payload size for emitted events

More Docs

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

peaky_peek-0.1.16.tar.gz (36.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

peaky_peek-0.1.16-py3-none-any.whl (127.1 kB view details)

Uploaded Python 3

File details

Details for the file peaky_peek-0.1.16.tar.gz.

File metadata

  • Download URL: peaky_peek-0.1.16.tar.gz
  • Upload date:
  • Size: 36.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for peaky_peek-0.1.16.tar.gz
Algorithm Hash digest
SHA256 a9d86b6e0c2109943060c8c369f91e17d6ad9bf2c81d9fbf30aefb29fa2d58e0
MD5 a63f0e52ea87e46d8400eb153a4c3d66
BLAKE2b-256 a95bb1054bfb6ae2800a4d2f9fdbae59cbe480b479164940ed684ab4b7ce0d67

See more details on using hashes here.

Provenance

The following attestation bundles were made for peaky_peek-0.1.16.tar.gz:

Publisher: publish.yml on acailic/agent_debugger

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file peaky_peek-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: peaky_peek-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 127.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for peaky_peek-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 f631df036b52131388a33a421c6fb6582ab432830c955a65b569879e8042e77e
MD5 1ae8e3aee62dd91acdd1eaed951a286a
BLAKE2b-256 2e5b2eb4b312d3a797aa5989f4f305f3f04069dee70fb995f30e4ed09e5bbeff

See more details on using hashes here.

Provenance

The following attestation bundles were made for peaky_peek-0.1.16-py3-none-any.whl:

Publisher: publish.yml on acailic/agent_debugger

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page