OpenTelemetry specification expertise for auditing, building, and reviewing OTel-adjacent projects. Use when working with OpenTelemetry SDKs, instrumentation libraries, collectors, exporters, or any project that implements or integrates with OpenTelemetry APIs.
The OpenTelemetry specification is the contract. Every SDK, instrumentation library, collector, and exporter either satisfies it or violates it. This skill equips you with a distilled knowledge base and structured workflows to apply that contract — whether auditing an existing implementation, building a new one, or reviewing changes.
The knowledge base is split into 8 focused reference files. Read only what the current task requires.
| File | When to Read | Contents |
|---|---|---|
skill/reference/overview.md | Always — first step for any task | Architecture & API/SDK split, error handling, performance, versioning, cross-signal patterns |
skill/reference/cross-cutting.md | When working with any signal | Context API, Propagators, Resource SDK, Common attributes, Instrumentation Scope |
skill/reference/traces.md | When working with traces | TracerProvider, Tracer, Span, SpanContext, Sampling, SpanProcessor, SpanExporter |
skill/reference/metrics.md |
| When working with metrics |
| MeterProvider, Meter, 7 instrument types, Views, Aggregation, Cardinality, Exemplars |
skill/reference/logs.md | When working with logs | LogRecord data model, LoggerProvider, Logger, LogRecordProcessor, bridge pattern |
skill/reference/baggage-and-configuration.md | When working with baggage or config | Baggage API, all OTEL_* env vars, declarative configuration |
skill/reference/compliance-checklist.md | When auditing for compliance | MUST/MUST NOT checkboxes organized by component (A.1–A.12) |
skill/reference/file-index.md | When navigating to original spec files | Compatibility areas, lower-priority signals, all 86 spec files with paths and line counts |
Tier system (used throughout the reference files):
[Source: path] — read source for full detailSource pointers: Every reference subsection has [Source: path] — follow these to the original spec files in the specification/ directory for full normative text.
The reference files are distilled from a specific commit of the upstream specification. They can become stale as the spec evolves.
Before relying on the reference content:
skill/reference/overview.md (recorded in its header)gh api repos/open-telemetry/opentelemetry-specification/compare/{source_commit}...HEAD or WebFetch to compare against latest HEADskill/reference/overview.md for architecture principlesskill/reference/cross-cutting.md + the relevant signal file(s) (traces.md / metrics.md / logs.md)skill/reference/compliance-checklist.md and work through the relevant component sections[Source: ...] pointers to the original spec filesskill/reference/overview.md — internalize API/SDK split, error handling rules, performance constraints, cross-signal patternsskill/reference/cross-cutting.md — Context, Resource, and Common types apply to all signalstraces.md / metrics.md / logs.md) for the component being builtskill/reference/baggage-and-configuration.md if the component handles baggage, env vars, or config files[Source: ...] pointers for implementation-level detail beyond Tier 1 summariesskill/reference/overview.md for foundational principlesThese are top-of-mind reminders — not replacements for the reference files:
Provider → Get(name, version, schema_url, attrs) → Signal instance → Processor → Exporteropentelemetry/semantic-conventions) — not covered in these reference filesForceFlush/Shutdown lifecycle on Processors and Exporters{otel.metric.overflow=true})SpanKind as optional — each value has specific semantics (CLIENT, SERVER, PRODUCER, CONSUMER, INTERNAL)SHOULD requirements as MUST — they carry different compliance weight[Source: ...] pointers when the reference summary is ambiguousSHOULD requirements as MUST — they carry different compliance weight