CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

maple-agent-tracing-langchain

Trace LangChain and LangGraph agents (Python, and LangChain.js / LangGraph.js in TypeScript) with Maple: export OpenInference LangChain spans with GenAI attributes so each thread is one Maple Agent Session with transcript, tool calls, sub-agent lanes and tokens. Triggers on 'trace my langchain agent', 'trace my langgraph agent', 'add Maple to langchain', 'add Maple to langgraph', 'agent sessions for langchain', 'OpenTelemetry for langgraph', 'trace langchain.js', 'trace langgraph.js', 'createAgent tracing'.

76

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, dense, highly actionable skill: complete executable code, a clearly sequenced workflow with an explicit verification checklist and feedback loops, and a well-signaled TS reference. The only weaknesses are a handful of run-on passages that could be tightened and an inline edge-case block that would fit better in a reference file.

Suggestions

Move the 'More details (edge cases)' block (SKILL.md:195-204) into a references/edge-cases.md file, linked the same way references/typescript.md is, to slim the main file and match the established bundle pattern.

Break the long multi-clause bullets — the Step 1 key-handling bullet (SKILL.md:33) and the Step 2 stream_usage paragraph (SKILL.md:105) — into shorter scannable lines or a small table (streaming provider → whether to set stream_usage).

Trim the LangSmith OTel paragraph (SKILL.md:204) to its conclusion ('Don't recommend it') plus the two or three decisive reasons, moving the tested-version detail to the edge-cases reference.

DimensionReasoningScore

Conciseness

The body is dense and telegraphic with essentially no padding — it never explains concepts Claude already knows (no 'what is LangChain/OTel' prose) and every line carries Maple/instrumentor-specific gotchas (e.g. "Pin openinference-instrumentation>=0.1.66 explicitly (the langchain instrumentor allows 0.1.61, which may lack the GenAI dual-write)"). However, a few run-on passages (the key-handling bullet in Step 1, the stream_usage paragraph in Step 2, the trailing edge-case list) could be tightened or relocated, which keeps it between the 'efficient; minor instances' anchor and the 'every token earns its place' anchor — noticeably above the midpoint but not flawless.

4 / 5

Actionability

Fully executable guidance throughout: pinned pip install commands, a complete copy-paste tracing.py, invoke/Command(resume=) call signatures, a working wrap_tool_call middleware, flush commands per runtime (Lambda, Celery, scripts), and the exact env-var block. Specific examples cover the common cases including existing TracerProvider, missing key, and LangGraph Server.

5 / 5

Workflow Clarity

Steps 0–7 are clearly sequenced (Detect → Key/region → Install+init → Session id → Content → Tools/errors/sub-agents → Flush → Verify), and Step 7 is an explicit 9-item verification checklist plus a no-Maple-access fallback ('the run exits with no export errors on stderr AND a temporary SimpleSpanProcessor(ConsoleSpanExporter()) shows ... gen_ai.conversation.id identical'). The checklist even encodes a feedback loop ('a higher count means a tool node is missing from STEP_NAMES'), matching the anchor with explicit validation and error-recovery guidance.

5 / 5

Progressive Disclosure

The TypeScript path is appropriately split into a real, one-level-deep, clearly signaled reference ([references/typescript.md] linked in the intro and Step 0), and the Python main path is sensibly inline. However, the ~10-line 'More details (edge cases)' block at the end remains inline in SKILL.md where the established references/ pattern would fit, leaving minor organization gaps — good structure, but not the fully appropriate split of the top anchor.

4 / 5

Total

18

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: it states concrete capabilities in third person, explicitly names what the skill produces (sessions, transcript, tool calls, sub-agent lanes, tokens), and provides an explicit, comprehensive trigger list covering Python and TypeScript phrasings. It fully satisfies the what/when requirement with no padding or over-claims.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — "export OpenInference LangChain spans with GenAI attributes", "each thread is one Maple Agent Session with transcript, tool calls, sub-agent lanes and tokens" — covering languages, frameworks, and outcomes comprehensively, matching the 'multiple specific concrete actions; comprehensive coverage' anchor. It is not a 4 because there are no gaps: both Python and TypeScript variants, the mechanism, and the resulting session structure are all explicitly named.

5 / 5

Completeness

Both 'what' ("Trace LangChain and LangGraph agents ... with Maple: export OpenInference LangChain spans with GenAI attributes so each thread is one Maple Agent Session...") and 'when' (explicit "Triggers on '...'" clause with concrete phrases) are clearly and explicitly answered. Not a 4, because the 'when' is fully explicit with concrete trigger phrases rather than merely present or loosely worded.

5 / 5

Trigger Term Quality

Nine explicit natural trigger phrases ('trace my langchain agent', 'add Maple to langgraph', 'trace langchain.js', 'createAgent tracing', etc.) cover the natural phrasings a user would say, including Python/JS synonyms and framework variations. This matches the 'comprehensive coverage of natural terms including synonyms' anchor; nothing common is missing.

5 / 5

Distinctiveness Conflict Risk

Clear niche — Maple tracing for LangChain/LangGraph specifically — with triggers naming the frameworks (langchain, langgraph, langchain.js, createAgent) and the vendor (Maple). Only 'OpenTelemetry for langgraph' and 'createAgent tracing' are slightly generic, but they remain confined to agent tracing, so conflict risk is minimal; this fits the 'clear niche with distinct triggers' anchor better than the 'minor overlap risk' anchor.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

MapleTechLabs/maple

Path

skills/maple-agent-tracing-langchain/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.