<< All versions

Skill v1.0.0

currentAutomated scan100/100
mapletechlabs/maple/maple-agent-tracing
──Details
PublishedOctober 25, 2026 at 01:49 AM
Content Hashsha256:072e012105778c6c...
Git SHA0b19aee5830f
──Files
Files (1 file, 4.5 KB)
SKILL.md4.5 KBactive
SKILL.md · 61 lines · 4.5 KB

version: "1.0.0" name: maple-agent-tracing description: "Trace an AI agent or LLM app with Maple so each conversation shows up as one Agent Session with its transcript, model calls, tool calls, tokens, cost and failures. Detects the agent framework (Vercel AI SDK, eve, OpenAI Agents SDK, Mastra, LangChain/LangGraph, Claude Agent SDK, Pydantic AI, LlamaIndex, CrewAI, Google ADK, Strands, smolagents, Agno, DSPy, Haystack, Microsoft Agent Framework, Spring AI, LiteLLM, OpenRouter, raw provider SDKs) and installs the matching per-framework skill. Triggers on 'trace my agent', 'add agent observability', 'LLM tracing with Maple', 'set up Maple agent sessions', 'OpenTelemetry for my AI agent'."


Maple agent tracing (router)

This skill only picks the right per-framework skill.

Step 1: Find every agent in the repo

Look for LLM and agent dependencies in every app and service: package.json, pyproject.toml, requirements*.txt, uv.lock, pom.xml, build.gradle*, *.csproj, go.mod. A repo can have more than one; handle each one.

Step 2: Install the matching skill and follow it

Pick the first row that matches the service's dependencies. Install the skill with:

bash
npx skills add MapleTechLabs/maple/skills --skill <skill> -y

Then read the installed SKILL.md and follow it. If npx skills is unavailable, read the file directly from https://raw.githubusercontent.com/MapleTechLabs/maple/main/skills/<skill>/SKILL.md.

DependencySkill
@mastra/coremaple-agent-tracing-mastra
eve (Vercel's eve framework, an agent/ directory with agent.ts or instructions.md)maple-agent-tracing-eve, loaded with npx skills use MapleTechLabs/maple/skills --skill maple-agent-tracing-eve instead of skills add: in an eve project skills add installs into the eve agent's own agent/skills/
@openai/agents, openai-agentsmaple-agent-tracing-openai-agents
langchain, langgraph, langchain-core (Python)maple-agent-tracing-langchain
LangChain.js / LangGraph.js (langchain, @langchain/core, @langchain/langgraph)maple-agent-tracing-langchain (TypeScript: references/typescript.md)
@anthropic-ai/claude-agent-sdk, claude-agent-sdk, or the claude CLI itselfmaple-agent-tracing-claude-agent-sdk
agents, @cloudflare/ai-chat (Cloudflare Agents SDK, or the AI SDK inside a Worker / Durable Object)maple-agent-tracing-cloudflare-agents
ai (Vercel AI SDK)maple-agent-tracing-vercel-ai-sdk
genkit, @genkit-ai/* (TypeScript)maple-agent-tracing-genkit
pydantic-ai, pydantic-ai-slimmaple-agent-tracing-pydantic-ai
crewaimaple-agent-tracing-crewai
google-adk, @google/adkmaple-agent-tracing-google-adk
llama-index, llama-index-coremaple-agent-tracing-llamaindex
strands-agents, @strands-agents/sdkmaple-agent-tracing-strands
smolagentsmaple-agent-tracing-smolagents
agnomaple-agent-tracing-agno
dspymaple-agent-tracing-dspy
haystack-aimaple-agent-tracing-haystack
agent-framework, agent-framework-core, Microsoft.Agents.AI, semantic-kernel, Microsoft.SemanticKernelmaple-agent-tracing-microsoft-agent-framework
spring-ai-* (Maven/Gradle)maple-agent-tracing-spring-ai
litellm (SDK or proxy)maple-agent-tracing-litellm
Requests go through OpenRouter (openrouter.ai base URL) and the user wants gateway-side tracesmaple-agent-tracing-openrouter
Only a provider SDK: openai, @anthropic-ai/sdk, anthropic, google-genai, @google/genaimaple-agent-tracing-provider-sdks
Anything else, a hand-rolled agent loop, or another languagemaple-agent-tracing-opentelemetry

Order matters: a framework row wins over the provider-SDK row, because frameworks depend on provider SDKs and instrumenting both records every model call twice. Mastra and eve depend on ai and LangChain.js on openai too; match the framework first, and don't route a LangChain.js service to the provider-SDK skill.

Step 3: Hand-off

After the per-framework skill's own checks pass, tell the user:

  • which services you instrumented and with which skill;
  • that each conversation appears in Maple under Agent Sessions (https://app.maple.dev/agent-sessions, or app.eu.maple.dev for EU organizations) once one conversation has run;
  • anything the per-framework skill said is not captured for that framework (for example, cost or message content), so the gap is expected rather than a bug.
All versions