Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.trodo.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

New to Trodo? Trodo is an observability platform for AI agents. Every agent execution becomes a trace — a structured record of timing, inputs, outputs, LLM calls, and tool invocations — so you can understand exactly what your agent did and where it went wrong. Learn more about the concepts →

Agentic setup

Install the Trodo AI skill to let your coding agent integrate Trodo automatically. It detects your framework, picks the right integration path, and knows the common pitfalls.
Point your agent at the skill repository and ask it to add tracing:
Install the Trodo AI skill from github.com/trodoai/skills
and use it to add tracing to this application.
The skill works with Cursor, Claude Code, Windsurf, and any other assistant that can read files in your repo or fetch from GitHub.
The agent will install the SDK, wire up trodo.init(), wrap your agent entry point with wrapAgent, and tell you which env var to set.

Manual setup

Prefer to do it by hand? Three steps.

1. Install

npm install trodo-node
Grab your site ID from app.trodo.ai → Settings → Sites and set it as TRODO_SITE_ID in your environment.

2. Initialise once at boot

Call init at your app entry point, before any provider client (OpenAI, Anthropic, LangChain, etc.) is imported. That’s how auto-instrumentation attaches itself to their SDKs.
import trodo from 'trodo-node';
trodo.init({ siteId: process.env.TRODO_SITE_ID });

3. Wrap your agent

wrapAgent records everything inside the callback as one run. LLM calls, tool calls, retrieval — all captured as child spans with zero extra code.
import trodo, { wrapAgent } from 'trodo-node';
import { openai } from '@ai-sdk/openai';
import { generateText } from 'ai';

trodo.init({ siteId: process.env.TRODO_SITE_ID });

const supportBot = (userId: string, threadId: string, question: string) =>
  wrapAgent('support-bot', async (run) => {
    run.setInput({ question });
    const result = await generateText({ model: openai('gpt-4o'), prompt: question });
    run.setOutput({ answer: result.text });
    return result.text;
  }, { distinctId: userId, conversationId: threadId });

const { result, runId } = await supportBot('user-42', 'thread-abc', 'What is the capital of France?');

See your trace in Trodo

Open the Trodo dashboard and navigate to Agent Analytics → Runs. Your run appears within a few seconds — click it to see timing, input, output, and every child span from provider instrumentation.

Next steps