OpenInference is a set of conventions and instrumentation plugins for tracing AI applications with OpenTelemetry. It helps developers record language-model calls, retrieval from vector stores, and external tool use for analysis in compatible observability backends. The catalogue entries support instrumentation and use of these tracing conventions.
Borrowing it
Nothing to install: this file belongs to Arize-ai/openinference. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Arize-ai/openinference/main/.agents/skills/phoenix-verify/SKILL.mdgit clone --depth 1 https://github.com/Arize-ai/openinferenceWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/arize-ai/openinference/phoenix-verify)<a href="https://agentmods.dev/skills/arize-ai/openinference/phoenix-verify"><img src="https://agentmods.dev/badge/skills/arize-ai/openinference/phoenix-verify/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/arize-ai/openinference/phoenix-verify"><img src="https://agentmods.dev/badge/skills/arize-ai/openinference/phoenix-verify.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00120 | $0.02757 |
| Opus 5.5 | $0.00048 | $0.01103 |
| Sonnet 5.5 | $0.00024 | $0.00551 |
| Haiku 4.5 | $0.00012 | $0.00276 |
Grade A, and why
phoenix-verify scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Phoenix Verify
Unit tests gate the push. When a change alters what a user sees in the Phoenix UI, pair the
tests with a real round trip: run an example that exports to local Phoenix, read the spans
back, and check one specific claim. The output of that check is the evidence that goes in the
PR or summary. The workflow is the same for every language; only the environment setup differs, so read
exactly one language file: python.md, javascript.md, or
java.md. Two read-back paths return the same span JSON: the px CLI with jq
(readback-cli.md), or the Phoenix MCP server
(mcp__plugin_arize-phoenix_phoenix__execute, readback-mcp.md) when it is
connected. Read only the one you will use.
Prerequisites
- Phoenix reachable. CLI:
px project list --format raw --no-progress > /dev/null && echo "phoenix ok at ${PHOENIX_HOST:-http://localhost:6006}"must print the ok line. MCP:call_tool("getProjects", {})must returndata. If either errors (fetch failed), stop and report NOT VERIFIED (template in step 7).px auth statusalso works as a check: it exits 5 and reports"status":"unverified"when the server is unreachable, but its output mixes auth state with connectivity, so theproject listline is the simpler yes/no. Default host ishttp://localhost:6006(OTLP HTTP on/v1/traces, gRPC on4317); setPHOENIX_HOSTfor px if different, and point the example's exporter at the same host. Start one withuvx arize-phoenix serve(ordocker run -p 6006:6006 -p 4317:4317 arizephoenix/phoenix:latest). pxandjqon PATH (npx @arizeai/phoenix-clialso works), or the Phoenix MCP server connected.--attributefilters need Phoenix server >= 14.9.0.- Provider API keys exported when the example calls a model. Prefer an offline example (canned replies, tool-only) when the claim does not depend on model output. Some packages have none; say so rather than inventing one.
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 94 lines · 120 tokens per session scan A 66f73f115333
phoenix-verify is a skill published in the GitHub repository Arize-ai/openinference (1,291 stars, last pushed today), licensed Apache-2.0. It adds 120 tokens to every session and 2,757 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-12.
Other skills, from other repositories
trulens-instrumentation
Instrument LLM apps with TruLens OTEL-based tracing - from setup to debugging and optimization.
playwright-test-diagnosis
Analyze playwright test results.
reproduce-bug
Reproduce a reported bug in googleapis/mcp-toolbox and decide whether it is real, delivering an evidence-backed verdict: confirmed, already fixed, misconfiguration, client-side, works as intended, not reproducible, or blocked. Use whenever a maintainer asks you to reproduce, verify, confirm, or investigate a bug…
verify-omnigent
Drive Omnigent the way a user does and prove a behavior with recorded evidence, using an isolated server, runner, and mock model plus a feature map of every user entry point. Load before reproducing a user-facing bug, before claiming a fix works, or when reviewing whether a change covered every surface (session vs.…
code-review
Reviews code for bugs, security issues, and best practices.
langsmith-observability
LLM observability platform for tracing, evaluation, and monitoring. Use when debugging LLM applications, evaluating model outputs against datasets, monitoring production systems, or building systematic testing pipelines for AI applications.