npx skills add https://github.com/langchain-ai/langsmith-skills
jackjin1997/clawforge
langsmith-trace
Use this skill for ANY LangSmith/LangChain observability question. Covers two topics: (1) Adding tracing to your application (LangChain/LangGraph or vanilla Python/TS with @traceable), and (2) Querying traces for debugging, analyzing execution flow, and exporting trace data.
Installation
npx skills add jackjin1997/clawforge --skill langsmith-trace
Similar popular skills
Related neighbors and high-traction skills in the same topics — useful to compare before installing.
Browser automation CLI for AI agents. Use when the user needs to interact with websites, includ…
810.4K installsDebug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe …
568.9K installsPre-deployment validation for Azure readiness. Run deep checks on configuration, infrastructure…
567.7K installsConfigure Azure API Management as an AI Gateway for AI models, MCP tools, and agents. WHEN: sem…
566.3K installsAzure VM/VMSS router. WHEN: create / provision / deploy / spin-up VM, recommend VM size, compar…
510K installsPostgres best practices maintained by Supabase, for Postgres running anywhere. Load this skill …
391.6K installsAlso in this package
Other skills from jackjin1997/clawforge · top by installs.
npx skills add jackjin1997/clawforge
More details
Agent compatibility
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
Also listed on
Alternate registries and mirrors of this skill.
Repository health
main
Package contents
Files included with this skill beyond the listing page.
-
skill md
SKILL.md5,350 B -
docs
SUMMARY.md298 B
History
- First seen on skills.sh
- First recorded snapshot · 38 installs
SKILL.md
LangSmith Trace
Two main topics: adding tracing to your application, and querying traces for debugging and analysis.
Setup
Environment Variables
LANGSMITH_API_KEY=lsv2_pt_your_api_key_here # Required
LANGSMITH_PROJECT=your-project-name # Optional: default project
LANGSMITH_WORKSPACE_ID=your-workspace-id # Optional: for org-scoped keys
Dependencies
pip install langsmith click rich python-dotenv
Adding Tracing to Your Application
LangChain/LangGraph Apps
Just set environment variables — tracing is automatic:
export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY=<your-api-key>
export OPENAI_API_KEY=<your-openai-api-key> # or your LLM provider's key
Optional variables:
LANGSMITH_PROJECT- specify project name (defaults to "default")LANGCHAINCALLBACKSBACKGROUND=false- use for serverless to ensure traces complete before function exit
Non-LangChain/LangGraph Apps
Check the codebase first: If using OpenTelemetry, prefer the OTel integration (https://docs.langchain.com/langsmith/trace-with-opentelemetry). For Vercel AI SDK, LlamaIndex, Instructor, DSPy, or LiteLLM, see native integrations at https://docs.langchain.com/langsmith/integrations.
If not using an integration, use the @traceable decorator and wrap your LLM client:
Python:
from langsmith import traceable
from langsmith.wrappers import wrap_openai
from openai import OpenAI
client = wrap_openai(OpenAI())
@traceable
def my_llm_pipeline(question: str) -> str:
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": question}],
)
return resp.choices[0].message.content
Traces automatically appear in your LangSmith workspace.
Best Practices
- Apply
@traceableto all nested functions you want visible in LangSmith. Only decorated functions appear as separate spans in the trace hierarchy. - Wrapped clients auto-trace all calls —
wrap_openai()automatically records every LLM call without additional decorators. - Name your traces for easier filtering:
@traceable(name="retrievedocs")ortraceable(myFunc, { name: "retrievedocs" }) - Add metadata for searchability:
@traceable(metadata={"user_id": "123", "feature": "chat"})
# Example: nested tracing
@traceable
def rag_pipeline(question: str) -> str:
docs = retrieve_docs(question) # traced if @traceable applied
return generate_answer(question, docs) # traced if @traceable applied
@traceable(name="retrieve_docs")
def retrieve_docs(query: str) -> list[str]:
# retrieval logic
return docs
@traceable(name="generate_answer")
def generate_answer(question: str, docs: list[str]) -> str:
# LLM calls via wrapped client are auto-traced
return client.chat.completions.create(...)
Querying Traces
Use the scripts below to query, analyze, and export traces from LangSmith.
Navigate to skills/langsmith-trace/scripts/ to run commands.
Quick Reference
# Show recent traces
python query_traces.py recent --limit 10 --project my-project
# Show with metadata (timing, tokens, costs)
python query_traces.py recent --limit 10 --include-metadata
# Filter by time
python query_traces.py recent --last-n-minutes 60
python query_traces.py recent --since 2025-01-20T10:00:00Z
# Get specific trace details
python query_traces.py trace <trace-id> --show-hierarchy
# Export traces to directory (recommended for bulk collection)
python query_traces.py export ./traces --limit 50 --include-metadata
python query_traces.py export ./traces --limit 20 --include-io # With inputs/outputs
python query_traces.py export ./traces --limit 20 --full # Everything
# Filter by run type
python query_traces.py export ./traces --run-type tool # Only tool calls
python query_traces.py export ./traces --run-type llm # Only LLM calls
# Search by name pattern
python query_traces.py search "agent" --project my-project
# Output as JSON
python query_traces.py recent --format json --limit 5
Commands
recent - List recent traces (--limit, --project, --last-n-minutes, --include-metadata, --format)
trace <id> - Get specific trace (--show-hierarchy, --include-metadata, --output)
export <dir> - Bulk export to directory (--limit, --include-metadata, --include-io, --full, --run-type, --max-concurrent)
search <pattern> - Find runs by name (--limit, --last-n-minutes)
Tips
- Use
exportfor bulk data, always specify--project, use/tmpfor temp files - Include
--include-metadatafor performance/cost analysis - Increase
--max-concurrent 10for large exports - Use
--format jsonwith jq for analysis
Related skills
- Use langsmith-dataset skill to generate evaluation datasets from traces
- Use langsmith-evaluator skill to create evaluators and measure performance