arize-instrumentation
Adds Arize AX tracing to an LLM application for the first time. Follows a two-phase agent-assisted flow to analyze the codebase then implement instrumentation after user confirmation. Use when the user wants to instrument their app, add tracing from scratch, set up LLM observability, integrate OpenTelemetry or openinference, or get started with Arize tracing.
npx skills add github/awesome-copilot --skill arize-instrumentation --agent copilot
Same command for any agent — swap --agent for claude-code, codex, cursor.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Directs an agent to add Arize AX tracing to an LLM application using a two-phase flow: phase 1 analyzes the codebase and phase 2 implements instrumentation after user confirmation. It supports Python, TypeScript/JavaScript, Java, and Go apps, with specific wiring for environments, credentials, and OpenTelemetry integration. It emphasizes inspecting the codebase first, not mutating logic, preferring auto-instrumentation, and creating a centralized instrumentation module that initializes tracing before LLM clients are created.
How it works
- Phase 0: Environment preflight to determine scope, runtime surface, and verification needs; do not run ax installation yet.
- Phase 1: Analysis (read-only): detect language, package manager, LLM providers, frameworks, and existing tracing, identify scope, and decide integration routing. Return a Phase 1 summary; proceed to Phase 2 only with user confirmation.
- Phase 2: Implementation:
- Fetch and follow installation/instrumentation steps from matched docs.
- Install packages per language before coding, e.g., Python:
pip install arize-otelplusopeninference-instrumentation-{name}; TypeScript/JS: install@opentelemetry/sdk-trace-nodeand@arizeai/openinference-*; Java: OpenTelemetry SDK andopeninference-instrumentation-*in build files; Go: required otel packages and explicit exporter wiring withotlptracehttp.WithEndpoint(...)andWithHeaders(...). - Ensure credentials: use environment variables for ARIZE_API_KEY and ARIZE_SPACE, check
ax profiles show, or guide throughax profiles createand point to Arize settings page for keys. - Create a single central instrumentation module (e.g.,
instrumentation.py/.ts/.go) initialized before LLM client creation. - If an existing TracerProvider exists, attach Arize as an additional exporter rather than replacing setup.
- Implementation rules: prefer auto-instrumentation first, respect project conventions, fail gracefully on missing env vars, and ensure correct import order. Enrich traces with manual CHAIN and TOOL spans when tool execution is involved.
When to use it
Use when the user wants to instrument an app from scratch, set up LLM observability, integrate OpenTelemetry or OpenInference, or begin Arize tracing, especially for Python and TypeScript/JavaScript projects. Trigger Phase 1 analysis first and proceed to Phase 2 only after user confirmation.
What it can touch
- Auto-instrumentation surface where available (language-specific tooling).
- Manual instrumentation points for tool/chain spans if the framework instrumentors do not expose internal tool results.
- Centralized instrumentation module files created at implementation time.
Caveats
- Requires environment variables for ARIZE_API_KEY and ARIZE_SPACE; raw credentials must not be embedded in code.
- For Go, OpenTelemetry setup requires Go ≥ 1.23 and explicit attribute setting for project name in resources.
- If a user’s app uses multiple services in a monorepo, scope must be identified to avoid instrumenting the entire repo.
- CLI/script apps should flush exporters before exit to ensure traces are exported.
# Arize Instrumentation Skill Use this skill when the user wants to **add Arize AX tracing** to their application. Follow the **two-phase, agent-assisted flow** from the [Agent-Assisted Tracing Setup](https://arize.com/docs/ax/alyx/tracing-assistant) and the [Arize AX Tracing — Agent Setup Prompt](https://arize.com/docs/PROMPT.md). ## Quick start (for the user) If the user asks you to "set up tracing" or "instrument my app with Arize", you can start with: > Follow the instructions from https://arize.com/docs/PROMPT.md and ask me questions as needed. Then execute the two phases below. ## Core principles - **Prefer inspection over mutation** — understand the codebase before changing it. - **Do not change business logic** — tracing is purely additive. - **Use auto-instrumentation where available** — add manual spans only for custom logic not covered by integrations. - **Follow existing code style** and project conventions. - **Keep output concise and production-focused** — do not generate extra documentation or summary files. - **NEVER embed literal credential values in generated code** — always reference environment variables (e.g., `os.environ["ARIZE_API_KEY"]`, `process.env.ARIZE_A
- Quick start (for the user)
- Core principles
- Phase 0: Environment preflight
- Phase 1: Analysis (read-only)
- Steps
- What to identify
- Phase 1 output
- Integration routing and docs
- Phase 2: Implementation
- Implementation rules
- Enriching traces: manual spans for tool use and agent loops
- Why doesn't the auto-instrumentor do this?
- Verification
- Leveraging the Tracing Assistant (MCP)
What does the arize-instrumentation skill do?
Adds Arize AX tracing to an LLM application for the first time. Follows a two-phase agent-assisted flow to analyze the codebase then implement instrumentation after user confirmation. Use when the user wants to instrument their app, add tracing from scratch, set up LLM observability, integrate OpenTelemetry or openinference, or get started with Arize tracing.
How do I install it?
Run `npx skills add github/awesome-copilot --skill arize-instrumentation --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From github/awesome-copilot, a repository with 37,432 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.