plugins marketplace
← All plugins

dash0-agent-plugin

v0.1.22

OpenTelemetry 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-plugin

Clone 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
    }
  }
}