Install
$ agentstack add skill-using-system-oddyssey-otel-guides ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
OpenTelemetry Language Guides
A selection map over the official OpenTelemetry docs (https://opentelemetry.io/docs/languages/). Pick the language of the code you are instrumenting, read its reference file, then fetch the linked official pages you need — links ending in index.md return the page as raw markdown (the rest are external redirects), so read them directly instead of paraphrasing from memory.
Pick the language
| Language | Reference | | --- | --- | | C++ | [references/cpp.md](references/cpp.md) | | .NET | [references/dotnet.md](references/dotnet.md) | | Erlang/Elixir | [references/erlang.md](references/erlang.md) | | Go | [references/go.md](references/go.md) | | Java | [references/java.md](references/java.md) | | JavaScript / Node.js | [references/js.md](references/js.md) | | Kotlin | [references/kotlin.md](references/kotlin.md) | | PHP | [references/php.md](references/php.md) | | Python | [references/python.md](references/python.md) | | Ruby | [references/ruby.md](references/ruby.md) | | Rust | [references/rust.md](references/rust.md) | | Swift | [references/swift.md](references/swift.md) | | Anything else | [references/other.md](references/other.md) |
Each reference file lists every section of that language's official docs — what it covers and what to do with it when planning instrumentation (getting started, traces, metrics, logs, instrumentation libraries, zero-code instrumentation where it exists, exporters, resources, sampling, API references, registry).
Cross-language references
Three things are the same whatever the language: the environment variables that configure the SDK (OTEL_SERVICE_NAME, OTEL_EXPORTER_OTLP_ENDPOINT, OTEL_RESOURCE_ATTRIBUTES, ...), the conventions that name what you emit (resource, HTTP, database, messaging, RPC, ...), and the option of putting a Collector between the app and the backend (agent, gateway, or neither).
| Topic | Reference | | --- | --- | | SDK configuration | [references/sdk-configuration.md](references/sdk-configuration.md) | | Semantic conventions | [references/semconv.md](references/semconv.md) | | Collector | [references/collector.md](references/collector.md) |
Open the semantic conventions reference for every domain you name things in, and the Collector reference before deciding between direct OTLP export and a Collector.
Rules
- Always confirm against the fetched official page before recommending a
package name, API call, or env var — the linked docs are the source of truth, not memory.
- Prefer zero-code/automatic instrumentation and existing instrumentation
libraries over manual spans; check the language's registry section before writing any manual instrumentation.
- The registry pages render client-side, so a text fetch of them often
returns nothing. When that happens, fall back in order: the language's contrib repository on GitHub (opentelemetry--contrib — for Java it is opentelemetry-java-instrumentation — whose README lists the instrumentation packages), then the package index search (pip index, npm search @opentelemetry, Maven Central, NuGet, crates.io). If a page cannot be fetched at all, say so and mark whatever you derived from it as unverified — never present an unfetched claim as sourced.
- The planning notes in each reference file are a snapshot (last verified
2026-08); the fetched official page always overrides them — re-verify any stability or version claim you rely on.
- The local stack is one
odd_stack_upaway: OTLP on
http://localhost:4317 (gRPC) / :4318 (HTTP). localhost holds only for host processes — a containerized app needs the host reachable from inside the container (e.g. host.docker.internal).
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: using-system
- Source: using-system/oddyssey
- License: MIT
- Homepage: https://github.com/using-system/oddyssey#readme
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.