Borrowing it
Nothing to install: this file belongs to yaalalabs/agent-kernel. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/yaalalabs/agent-kernel/develop/.agents/skills/ak-dev-new-tracing-provider/SKILL.mdgit clone --depth 1 https://github.com/yaalalabs/agent-kernelWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/yaalalabs/agent-kernel/ak-dev-new-tracing-provider)<a href="https://agentmods.dev/skills/yaalalabs/agent-kernel/ak-dev-new-tracing-provider"><img src="https://agentmods.dev/badge/skills/yaalalabs/agent-kernel/ak-dev-new-tracing-provider.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00078 | $0.02713 |
| Opus 5 | $0.00039 | $0.01357 |
| Sonnet 5 | $0.00016 | $0.00543 |
| Haiku 4.5 | $0.00008 | $0.00271 |
Grade A, and why
ak-dev-new-tracing-provider scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 300 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Adding a New Tracing Provider
This guide walks through adding a new observability/tracing provider to Agent Kernel. Use the Langfuse implementation (ak-py/src/agentkernel/trace/langfuse/) as the canonical reference.
Architecture Overview
Agent Kernel's tracing system:
BaseTrace(trace/base.py) defines the interface — one method per supported framework that returns a tracedRunner(orNone)Trace(trace/trace.py) is a factory that creates the appropriate trace instance based onAKConfig.trace.type- Each framework Module checks for a trace runner at initialization — if tracing is enabled, it uses the traced runner instead of the default
- Traced runners extend the base framework runner and wrap execution with spans/traces
Step-by-Step
1. Create the Trace Provider Directory
ak-py/src/agentkernel/trace/<provider>/
├── __init__.py
├── <provider>.py # Main trace class
├── openai.py # Traced OpenAI runner
├── langgraph.py # Traced LangGraph runner
├── crewai.py # Traced CrewAI runner
├── adk.py # Traced Google ADK runner
├── smolagents.py # Traced Smolagents runner
└── pydanticai.py # Traced Pydantic AI runner
2. Implement the Main Trace Class
In the main trace class, there should be a method each agentic framework. Each method should return a traced Runner if the framework is supported, or None if not. The traced Runner should extend the base Runner for that framework and wrap execution with tracing spans.
# ak-py/src/agentkernel/trace/<provider>/<provider>.py
import logging
from agentkernel.core.base import Runner
from agentkernel.trace.base import BaseTrace
logger = logging.getLogger("ak.trace.<provider>")
class <Provider>(BaseTrace):
"""<Provider> tracing implementation for Agent Kernel."""
def __init__(self):
logger.info("Initializing <Provider> tracing")
# Initialize the tracing client/SDK
# e.g., self._client = ProviderClient()
def init(self):
"""Initialize the tracing backend. Called once at startup."""
# Set up any global instrumentation
# e.g., self._client.configure(api_key=os.getenv("PROVIDER_API_KEY"))
pass
def openai(self) -> Runner | None:
"""Return a traced runner for OpenAI framework, or None if not supported."""
try:
from .openai import <Provider>OpenAIRunner
return <Provider>OpenAIRunner(self._client)
except ImportError:
logger.warning("OpenAI tracing dependencies not available")
return None
def langgraph(self) -> Runner | None:
try:
from .langgraph import <Provider>LangGraphRunner
return <Provider>LangGraphRunner(self._client)
except ImportError:
return None
def crewai(self) -> Runner | None:
try:
from .crewai import <Provider>CrewAIRunner
return <Provider>CrewAIRunner(self._client)
except ImportError:
return None
def adk(self) -> Runner | None:
try:
from .adk import <Provider>ADKRunner
return <Provider>ADKRunner(self._client)
except ImportError:
return None
def smolagents(self) -> Runner:
from .smolagents import <Provider>SmolagentsRunner
return <Provider>SmolagentsRunner(self._client)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 300 lines · 78 tokens per session scan A e1b8b5e1f551
ak-dev-new-tracing-provider is a skill published in the GitHub repository yaalalabs/agent-kernel (166 stars, last pushed yesterday), licensed Apache-2.0. It adds 78 tokens to every session and 2,713 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
notion
Notion workspace integration for searching pages, managing databases, creating postmortems, and exporting RCA findings.
datadog
Datadog monitoring integration for querying logs, metrics, monitors, events, traces, hosts, and incidents during RCA investigations.
scaleway
Scaleway cloud integration for managing instances, Kapsule Kubernetes clusters, object storage, and managed databases via CLI and Terraform.
isaac-automator
Deploy and operate a cloud Isaac Workstation with Isaac Automator: provision a GPU VM running Isaac Sim, Isaac Lab, and/or Isaac Lab Arena on AWS, GCP, Azure, or Alibaba Cloud, connect to it, move data in and out, control cost with stop/start, repair, import existing deployments, and destroy. Use when the user wants a…
bitbucket
Bitbucket code repository integration for managing repos, branches, PRs, issues, and CI/CD pipelines.
cloudbees
CloudBees CI integration for investigating builds, deployments, pipeline stages, and test results during RCA.