← All plugins
dash0-agent-plugin
v0.1.22OpenTelemetry observability for OpenAI Codex sessions. Captures prompts, tool calls, MCP calls, sub-agent activity, and token usage as OTel traces.
CodexClaude Code
by Dash0Apache-2.04updated 2 hours ago
Source
git clone https://github.com/dash0hq/dash0-agent-pluginClone the source, then follow the repository's marketplace instructions for your runtime. The repository root is the plugin root.
Layout
dash0-agent-plugin/
├── .codex-plugin/plugin.json└── .claude-plugin/plugin.json
Manifests2
.codex-plugin/plugin.json
{
"name": "dash0-agent-plugin",
"version": "0.1.22",
"description": "OpenTelemetry observability for OpenAI Codex sessions. Captures prompts, tool calls, MCP calls, sub-agent activity, and token usage as OTel traces.",
"author": {
"name": "Dash0"
},
"homepage": "https://dash0.com",
"repository": "https://github.com/dash0hq/dash0-agent-plugin",
"license": "Apache-2.0",
"keywords": [
"observability",
"tracing",
"opentelemetry",
"dash0",
"otel"
],
"hooks": "./codex/hooks.json",
"interface": {
"displayName": "Dash0 Observability",
"shortDescription": "OpenTelemetry observability for your Codex sessions",
"longDescription": "Emit Codex agent activity as OpenTelemetry traces to your Dash0 endpoint — prompts and responses, tool calls, MCP calls, and sub-agent activity, with shared trace context and token usage per turn.",
"developerName": "Dash0",
"category": "Developer Tools",
"capabilities": [
"Read"
],
"websiteURL": "https://dash0.com",
"privacyPolicyURL": "https://www.dash0.com/privacy-policy",
"termsOfServiceURL": "https://www.dash0.com/terms-of-service"
}
}.claude-plugin/plugin.json
{
"name": "dash0-agent-plugin",
"version": "0.1.22",
"description": "OpenTelemetry observability for Claude Code sessions. Captures tool calls, LLM invocations, token usage, and errors as OTel traces.",
"author": {
"name": "Dash0"
},
"homepage": "https://dash0.com",
"repository": "https://github.com/dash0hq/dash0-agent-plugin",
"license": "Apache-2.0",
"keywords": [
"observability",
"tracing",
"opentelemetry",
"dash0",
"otel"
],
"commands": [
"./claude/commands/open-session.md"
],
"skills": "./claude/skills/",
"userConfig": {
"OTLP_URL": {
"title": "OTLP Endpoint URL",
"description": "Dash0 OTLP endpoint URL (e.g. https://ingress.us1.dash0.com)",
"type": "string",
"sensitive": false
},
"AUTH_TOKEN": {
"title": "Auth Token",
"description": "Dash0 authentication token",
"type": "string",
"sensitive": true
},
"DATASET": {
"title": "Dataset",
"description": "Dash0 dataset name (optional)",
"type": "string",
"sensitive": false
},
"AGENT_NAME": {
"title": "Agent Name",
"description": "Agent name, used as service.name (optional, defaults to claude-code)",
"type": "string",
"sensitive": false
},
"OMIT_USER_INFO": {
"title": "Anonymize User Identity",
"description": "When true, hashes user.name and omits user.email. Default: false (real identity is sent).",
"type": "string",
"sensitive": false
},
"OMIT_IO": {
"title": "Omit Prompts & Tool I/O",
"description": "When true (default), omits prompt content and tool call inputs/outputs. Set to false to include full content.",
"type": "string",
"sensitive": false
},
"TEAM_NAME": {
"title": "Team Name",
"description": "Team name (optional). When set, all spans are tagged with the dash0.team.name attribute.",
"type": "string",
"sensitive": false
},
"SHOW_SESSION_LINK": {
"title": "Show Session Link Per Turn",
"description": "When true, prints the session URL after every turn. Default: false (URL shown once at session start).",
"type": "string",
"sensitive": false
}
}
}