# OpenTelemetry Trace Export

Exports OpenTelemetry traces from AI apps to Confident AI's Observatory.

- Repository: https://github.com/confident-ai/deepeval (19230 stars)
- Category: DevOps
- License: Apache-2.0
- Last updated: 2026-11-01
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add confident-ai/deepeval --skill deepeval-otel -g -a claude-code -y`
Codex: `npx skills add confident-ai/deepeval --skill deepeval-otel -g -a codex -y`
Cursor: `npx skills add confident-ai/deepeval --skill deepeval-otel -g -a cursor -y`
Gemini CLI: `npx skills add confident-ai/deepeval --skill deepeval-otel -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add confident-ai/deepeval`

## Description

Export raw OpenTelemetry traces from an AI application to Confident AI's Observatory. TRIGGER when the user wants to send OpenTelemetry or OTLP traces/spans from an LLM app, agent, RAG pipeline, or chatbot to Confident AI; configure the Confident AI OTLP endpoint; set confident.span.* or confident.trace.* attributes; export AI-app traces without the deepeval Python package; wire an OTLPSpanExporter, OpenTelemetry Collector, or vendor-neutral OTel SDK to Confident AI; or pick the US vs EU OTLP endpoint. Language-agnostic: the mechanism is OTLP attribute keys plus an exporter endpoint. DO NOT TRIGGER for building DeepEval pytest eval suites, datasets, goldens, metrics, or deepeval test run (use the `deepeval` skill); for instrumenting with the DeepEval SDK's @observe decorator or framework integrations (use the `deepeval-tracing` skill); or for non-AI software such as web servers, CRUD backends, or infrastructure: the confident.* attributes describe AI components only.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# DeepEval OpenTelemetry Export

Use this skill to instrument an **AI application**, an LLM app, agent, RAG
pipeline, or chatbot, with **raw OpenTelemetry** so its traces land in
**Confident AI's Observatory**. No `deepeval` package is needed, it works with
any OTLP-capable OpenTelemetry SDK. The job is exactly two things: export to
the correct Confident AI OTLP endpoint, and set the `confident.*` attributes
Confident AI reads off each span.

## Scope: AI Applications Only

This skill instruments **AI applications only**. The `confident.*` attributes
and span types, `agent`, `llm`, `retriever`, `tool`, describe AI components,
and Confident AI's Observatory is built to evaluate and monitor AI behavior.

Instrument only the AI parts of the system: agent loops and planning, LLM
calls, retrieval / vector search, and tool calls. Do **not** apply `confident.*`
attributes to non-AI software (web servers, CRUD backends, database layers,
infrastructure) or to non-AI spans inside an otherwise-AI app, that data does
not belong in Confident AI and will not render meaningfully. If the target has
no LLM, agent, retrieval, or tool-calling component, this skill does not apply.

## When to Use vs the `deepeval` Skill

Use **this skill** for vendor-neutral OTLP export to Confident AI, pointing an
OpenTelemetry exporter at Confident AI and setting `confident.*` attributes.

Use the **`deepeval` skill** when the user wants to build a Python pytest eval
suite, generate datasets or goldens, write metrics, run `deepeval test run`, or
instrument with the `deepeval` SDK's `@observe` decorator. The two skills are
complementary, not alternatives.

## Prerequisites

- A Confident AI account and a `CONFIDENT_API_KEY`.
- An OpenTelemetry SDK for the application's language. For Python:
  `opentelemetry-sdk` and `opentelemetry-exporter-otlp-proto-http`.
- The Confident AI OTLP endpoint accepts **HTTP only**, never gRPC.

## How It Works

The rest: https://github.com/confident-ai/deepeval/blob/HEAD/docs/public/.well-known/agent-skills/deepeval-otel/SKILL.md
