Skip to content
Development
Skill

/doca-telemetry

Use this skill to read DOCA hardware-counter events from a `doca_dev` through the per-domain Telemetry reader libraries: `doca_telemetry_pcc`, `_dpa`, `_diag`, `_adp_retx`, `_phy`, and `_pci`. It covers capability checks, context creation, startup, and per-domain reads or

From plugin
skills
3.8k200 skills

Claude Code

$ npx -y skills add NVIDIA/skills --skill doca-telemetry --agent claude-code

SKILL.md

doca-telemetry.SKILL.md
license: Apache-2.0
name: doca-telemetry
description: >
  Use this skill to read DOCA hardware-counter events from a `doca_dev`
  through the per-domain Telemetry reader libraries:
  `doca_telemetry_pcc`, `_dpa`, `_diag`, `_adp_retx`, `_phy`, and
  `_pci`. It covers capability checks, context creation, startup, and
  per-domain reads or samples. Trigger for implicit requests such as
  "read PCC counters from my BlueField app", "sample DPA counter
  exports", or "expose PHY, PCI, or DIAG counters from this doca_dev".
  This is the counter-reader surface, not a NetFlow, IPFIX, or
  local-socket collector. Route publishing and export to
  `doca-telemetry-exporter`; route the deployed DOCA Telemetry Service
  to `doca-dts`, and collectors and plain stdout logging elsewhere.
metadata:
  author: NVIDIA <doca-feedback@nvidia.com>
  kind: library
  doca_version: "3.5"
  tags:
    - doca
    - telemetry
    - counters
compatibility: >
  Requires DOCA SDK installed at /opt/mellanox/doca on Linux (Ubuntu
  22.04/24.04 or RHEL/SLES) with a BlueField DPU or ConnectX NIC
  attached. Reads the user's local install via `pkg-config
  doca-telemetry` and inspects
  /opt/mellanox/doca/{lib,include,samples,applications}. The validation
  steps require a live DOCA install.

DOCA Telemetry

Examples

  • **"Build a second program that RECEIVES the events my exporter app

publishes."** No DOCA library consumes exporter events, and this skill is not that library: `doca-telemetry` reads a device's hardware counters. The app links `doca-telemetry-exporter` to publish; the receiver is the DOCA Telemetry Service over IPC (`doca-dts`), or the exporter's file output for a local smoke. Do not invent a consume or collector API. Then: the publishing app owns the schema; check the IPC path with `doca_telemetry_exporter_check_ipc_status`; smoke one event with field values intact (file output) before bulk; when reporting cannot keep up, drop or aggregate on the hot path, never block.

  • **"Read PCC counters from my BlueField app."** — this is in

scope. Use the per-domain Telemetry reader; do not stand up DTS or an exporter here. Sequence: `doca_telemetry_pcc_cap_is_supported` on the device, create the PCC context on the open `doca_dev` (`doca_telemetry_pcc_rep_create` for a representor), start it, read once with `doca_telemetry_pcc_get_counters`, then stop and destroy. Reads before start return `DOCA_ERROR_BAD_STATE`.

  • **"Sample DPA counter exports."** — stay on

`doca_telemetry_dpa` reads. Publishing those samples belongs to the exporter skill.

Instructions

Follow Loading order below. Open the tasks companion for configure / read / debug. Open the capabilities companion for the per-domain readers. Do not open every companion file.

**Where to start:** This skill assumes DOCA is already installed and the user is doing **hands-on hardware-counter-reader work** — opening a per-domain `doca_telemetry_<domain>` context against a `doca_dev` and reading the latest hardware-counter snapshot for that domain. The library is the **counter-READER** half of DOCA telemetry; it is NOT a NetFlow / IPFIX collector and NOT a generic schema-event consumer (there is no NetFlow / IPFIX / local-socket transport surface in the public header). Open the tasks companion if the user wants to *do* something (configure / build / modify / run / test / debug); open the capabilities companion when the question is *which hardware-counter domains can this device read* on this install (PCC, DPA, DIAG, ADP_RETX, PHY, PCI). If the user has not installed DOCA yet, route to `doca-setup/SKILL.md` first. If the user is confused about whether they want this library (HW-counter reader on a `doca_dev`) or `doca-telemetry-exporter/SKILL.md` (the publisher / export side, which is a separate library and publishes structured telemetry / labeled metrics / OTLP logs), read the reader-vs-exporter role split in the capabilities companion BEFORE configuring anything; mixing the two is the load-bearing first-app failure for this skill. If the user is asking about **DOCA Telemetry Service (DTS) as deployed**, route to `doca-dts`.

Audience

This skill serves **external developers building applications that READ DOCA hardware counters from a `doca_dev` through one or more of the six per-domain DOCA Telemetry reader libraries** (`doca_telemetry_pcc` / `_dpa` / `_diag` / `_adp_retx` / `_phy` / `_pci`) — i.e., users whose application code calls `doca_telemetry_<domain>_*` (directly in C/C++, or through FFI / bindings from another language) to open a per-domain context on a `doca_dev`, configure the per-domain sample window, and read the hardware-counter snapshot for that domain. It is *not* for NVIDIA developers contributing to DOCA Telemetry itself, and it is *not* for users writing the **publishing / export** side — that is `doca-telemetry-exporter/SKILL.md`, a separate library and a separate skill.

**Language scope.** DOCA Telemetry's per-domain reader libraries ship as a C surface with `pkg-config` module name `doca-telemetry`. The shipped samples are written in C. C and C++ readers are the canonical case; the worked examples in the tasks companion assume that path. Other-language readers (Rust, Go, Python, …) consume the same `*.so` through FFI or language-specific bindings; the skill's contribution in that case is to keep the reader-vs-exporter distinction, the per- domain cap-query-first discipline, the per-domain DOCA Core lifecycle on the `doca_dev`, the sample-window discipline, and the error-taxonomy guidance language-neutral, and to route the agent to the public per-domain C ABI as the authoritative surface that any wrapper will eventually call.

When to load this skill

Load this skill when the user is doing hands-on DOCA Telemetry **hardware-counter-reader** work, in any language. Concretely:

  • Picking the right per-domain header for the counters the user

wants (`doca_telemetry_pcc.h` for Programmable Conges

Read more
@nvidia
Ships withskills

Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.

3.8k200 skills
Get the whole plugin

Stars on GitHub

Momentum

stars in total
3.8k
Star history of NVIDIA/skills on GitHub, a chart by star-history.com

Other skills on skills.

nvidia-skill-finder

nvidia-skill-finder

Use for NVIDIA-related requests where an NVIDIA skill might help, even if the user did not ask for a skill. Trigger on NVIDIA…

@nvidia@nvidiaInstall Skill
accelerated-computing-cudf

accelerated-computing-…

Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby,…

@nvidia@nvidiaInstall Skill
amc-run-rtsp-calibration

amc-run-rtsp-calibrati…

Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use when the user provides RTSP URLs or…

@nvidia@nvidiaInstall Skill
amc-run-sample-calibration

amc-run-sample-calibra…

Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice.…

@nvidia@nvidiaInstall Skill
amc-run-video-calibration

amc-run-video-calibrat…

Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for user-supplied local MP4s; route live…

@nvidia@nvidiaInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about doca-telemetry.

Which coding agents can use doca-telemetry?
doca-telemetry installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.