nvidia/doca-comm-channel-admin
> Use this skill to enumerate host↔DPU DOCA comch (formerly Comm Channel) servers and connections via the shipped doca_comm_channel_admin binary — listing comch-capable devices and decoding the per-device server / connection table (server name, PID, in-use / max, PCIe address). The shipped binary is a SINGLE-SHOT SCAN-AND-PRINT tool with no registered arguments — NO list / inspect / drain / restart subcommands; one inventory pass over every comch-capable doca_dev on this side. Channel reset / drain / restart go to doca-comch (program side), doca-setup / doca-hardware-safety (driver reload), or BFB / RShim — NOT to this binary. Trigger on phrasings like "list comch servers", "which channels are active on this BlueField", or "verify admin tool sees same channel as program." Refuse and route elsewhere for the comch programming API, library install, protocol design, channel reset, or general orientation.
npx skills add https://github.com/NVIDIA/skills --skill doca-comm-channel-admin
> Actual binary contract. doca_comm_channel_admin is one
> zero-application-argument, read-only scan-and-print operation.
> It scans every comch-capable doca_dev on the current side via
> resourcedump (MFT) and prints SERVERS and CONNECTIONS tables.
> It has no list, inspect, device-scope, drain, restart, or other
> application operation. This skill does not retain conceptual
> workflows under invented command names.
Where to start: This is a tool skill for invoking the DOCA Comm
Channel Admin Tool — the read-only inventory CLI counterpart
to the doca-comch library. The
shipped doca_comm_channel_admin binary takes **no arguments
beyond ARGP defaults** (--help, --version, --log-level,
--sdk-log-level, --json) and performs one inventory pass
per invocation: it walks every doca_dev on this side, filters
to comch-capable devices, shells out to resourcedump (MFT) on
each, and prints two ASCII tables (SERVERS and CONNECTIONS).
There is no list subcommand, no inspect subcommand, no
drain flag, and no restart flag — those are not part of the
tool's surface. Open TASKS.md and start at
## run for the single-shot invocation, or
## debug when the user reports the tool sees
a different channel set than the program. Open
CAPABILITIES.md when the question is *what
the printed tables actually mean* and *what is not in this
tool's scope*. If the user has not installed DOCA yet, route to
doca-setup first; if the user
needs MFT (resourcedump on PATH with the privilege documented
for the installed release), doca-setup + doca-public-knowledge-map
cover that. If the user is holding pre-2.5 docs that mention
"Comm Channel", route to
doca-comch CAPABILITIES.md ## Version compatibility
for the rename rule. If the user wants to *change* channel
state, route to the program-side
reconnect lifecycle in doca-comch
or to BlueField mode / driver reload in
doca-setup +
doca-hardware-safety — not
to this tool.
The CLASSES of admin-tool questions this skill is built to answer,
each with one worked example. The class is the load-bearing piece;
the worked example is one instance.
worked example: *"print every server and connection row visible
on this side"*. Answered by the scan-and-print surface in
CAPABILITIES.md ## Capabilities and modes
+ the single invocation in
TASKS.md ## run.
locate the matching row in the SERVERS or CONNECTIONS table;
there is no second per-channel query. Answered by
CAPABILITIES.md ## Capabilities and modes
+ TASKS.md ## run.
program sees?"** — worked example: *"the program reports
CONNECTED but the admin tool lists zero channels"*. Answered by
the cross-checking pattern in
TASKS.md ## test and the representor-binding
layer in
CAPABILITIES.md ## Error taxonomy.
match the comch library version?"** — worked example: *"is the
tool available on DOCA 2.4"*. Answered by the overlay in
CAPABILITIES.md ## Version compatibility,
which redirects to the canonical
doca-version rules and adds the
Comm Channel Admin Tool specifics.
genuinely no channel?"** — worked example: *"list returned an
empty result on a host with a known-good Comch client"*.
Answered by the empty-output interpretation rules in
TASKS.md ## debug +
CAPABILITIES.md ## Error taxonomy.
This skill serves **external operators and AI agents who need to
inventory a host-DPU comch channel from the outside**
— after the doca-comch library
has been used to create the channel from a program. Concretely:
and needs to confirm the channel is healthy before declaring the
service ready.
DOCA_ERROR_AGAIN or asilent stall on the program side and wants to read the channel's
state from outside the program rather than guessing.
recommending a program-side code or lifecycle change.
It is not for users debugging the admin tool itself, not a
substitute for the live public DOCA Comm Channel Admin Tool guide,
and not the right place for users learning the comch API —
that audience belongs in
doca-comch.
The tool is shipped as a CLI binary under
/opt/mellanox/doca/tools/, not a library you link against. The
skill uses the same kind: tool three-file shape as the rest of
the bundle so the agent's task-verb contract
(configure / build / modify / run / test / debug) is uniform
across libraries, services, and tools.
Load this skill when the user is — or the agent needs to — invoke
the DOCA Comm Channel Admin Tool on a real host or BlueField Arm
with DOCA installed (or inside the public NGC DOCA container with
the right device passthrough). Concretely:
complete zero-argument scan.
connection callback state when the two appear to disagree.
evidence for a later debug session that crosses program /
channel / driver layers.
Do not load this skill for general DOCA orientation, the comch
programming API, library install, or comch protocol design. For
those, route to
doca-public-knowledge-map,
doca-comch, or
doca-setup.
This is a thin loader. Substantive material lives in two
companion files:
CAPABILITIES.md — what the Comm Channel Admin Tool reports:the two read-only tables, the version-availability overlay
that redirects to doca-version,
the layered error taxonomy (tool-not-installed / device-binding
/ channel-discovery / channel-state-stuck / permission /
version / cross-cutting), the tool's role as an observability
primitive for doca-comch
debug sessions, and the read-only safety policy.
TASKS.md — step-by-step workflows for the in-scope task verbs:configure (route to install), build (route to install),
modify (refuse), run (one scan-and-print), test
(cross-check the printed rows), debug (the layered
diagnosis ladder), plus a Deferred task verbs block and a
Command appendix that honors the bundle's
doca-structured-tools-contract
preamble.
The skill assumes a host or BlueField where DOCA is already
installed (or the public NGC DOCA container is running with the
right device passthrough) and the operator has whatever privileges
the public DOCA Comm Channel Admin Tool guide requires.
This skill is agent guidance, not a samples or scripts bundle.
To keep the boundary clean, it deliberately does not contain — and
pull requests should not add:
names.** The public DOCA Comm Channel Admin Tool guide on
docs.nvidia.com and the installed --help on the user's
version are the joint source of truth; copying them here pins
the skill to one release and silently rots when the tool
evolves. The skill routes the agent at those sources instead.
channel-state-specific. A captured example will mislead an
operator on a different platform / state.
the admin tool's output. The output format is documented; users
who want to script against it should read the live guide and
write the parser against their installed version.
samples/ or reference/ subtree. This is a thin loaderfor a documented CLI; substantive material lives on the public
page and in --help.
SKILL.md first to confirm the user's question is inscope (the user wants to inventory a comch
channel from the outside, not learn the comch API).
observability, and safety posture, see
CAPABILITIES.md.**
workflow — configure, build, modify, run, test,
debug, plus the Command appendix — see
TASKS.md.**
doca-comch — the librarywhose channels this tool inventories. Pair them in every
triage session: the program-side connection callback and the
admin tool's channel state are the two halves of the same
picture.
doca-public-knowledge-map— routing to the public DOCA Comm Channel Admin Tool guide and
the rest of the public DOCA documentation set.
doca-version — canonical DOCAversion-handling rules. The ## Version compatibility section
in CAPABILITIES.md is a concise overlay
that redirects here for the body.
doca-structured-tools-contract— the bundle's detect → prefer → fall back → report contract for
structured helper tools. The Command appendix in
TASKS.md honors this contract.
doca-setup — env preparation,install verification, representor visibility checks, and the
*I have no install yet* path with the public NGC DOCA
container. This skill assumes its preconditions are satisfied.
doca-debug — the cross-cuttingdebug ladder. The Comm Channel Admin Tool slots in at the
*runtime* layer as the read-only inventory surface before any
code change is recommended.
Take nvidia/doca-comm-channel-admin from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.