/doca-pcc
Use this skill when the user is doing hands-on host-side DOCA PCC work to load a CUSTOM Programmable Congestion Control algorithm onto a BlueField DPU — creating per-port `doca_pcc` contexts, loading a `dpacc`-compiled `doca_pcc_app` onto the `doca_dev` for the RoCE-bearing
$ npx -y skills add NVIDIA/skills --skill doca-pcc --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/doca-pcc
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill when the user is doing hands-on host-side DOCA PCC work to load a CUSTOM Programmable Congestion Control algorithm onto a BlueField DPU — creating per-port `doca_pcc` contexts, loading a `dpacc`-compiled `doca_pcc_app` onto the `doca_dev` for the RoCE-bearing
SKILL.md
doca-pcc.SKILL.mdlicense: Apache-2.0
name: doca-pcc
description: >
Use this skill when the user is doing hands-on host-side DOCA
PCC work to load a CUSTOM Programmable Congestion Control
algorithm onto a BlueField DPU — creating per-port `doca_pcc`
contexts, loading a `dpacc`-compiled `doca_pcc_app` onto the
`doca_dev` for the RoCE-bearing port, parameterizing it,
walking triple-axis capability discovery (DOCA cap-query +
DPA-capable BlueField + firmware custom-PCC slot enabled), or
debugging `DOCA_ERROR_*` from `doca_pcc_*`. Trigger even
without explicit "DOCA PCC" phrasing — implicit forms include
"loading my own congestion control onto a BF port",
"DOCA_ERROR_NOT_PERMITTED on algorithm load",
"DOCA_ERROR_DRIVER when I attach my custom algorithm", "my
custom rate-update isn't affecting RoCE traffic", or "load
succeeds but no on-wire change". Refuse and route elsewhere
for DPA-side algorithm-body design, the `pcc_counters`
CLI, default factory PCC in ConnectX firmware, or setting up
the RDMA / RoCE traffic — those belong to other skills.
metadata:
kind: library
compatibility: >
Requires DOCA SDK installed at /opt/mellanox/doca on Linux
(Ubuntu 22.04/24.04 or RHEL/SLES) with a BlueField DPU whose
DPA processor is exposed to the host AND whose firmware has
the custom-PCC slot enabled. Also requires the DPACC compiler
installed at a version matched to DOCA per the DOCA
Compatibility Policy. Reads the user's local install via
`pkg-config doca-pcc` and inspects
/opt/mellanox/doca/{lib,include,samples,applications}.DOCA PCC
**Where to start:** This skill assumes DOCA is already installed, the user's BlueField has a DPA processor that the host can see through DOCA, the BlueField firmware has the custom-PCC slot enabled, and the user is doing **hands-on custom PCC work from the host side** — i.e. using `doca-pcc` to load a DPA-side congestion control algorithm onto the BlueField, attach it to a port handling RDMA / RoCE traffic, and parameterize it from the host. Open [`TASKS.md`](TASKS.md) if the user wants to *do* something (configure / build / modify / run / test / debug); open [`CAPABILITIES.md`](CAPABILITIES.md) when the question is *what can the host-side PCC API express* on this version + this BlueField generation + this firmware. If the user has not installed DOCA yet, route to [`doca-setup`](../../doca-setup/SKILL.md) first; if the user is asking how to *write* the DPA-side congestion-control algorithm itself (the code that runs on the DPA processor, compiled by `dpacc`), that is a different scope — route via [`doca-public-knowledge-map`](../../doca-public-knowledge-map/SKILL.md) to the public DOCA PCC programming guide and to [`doca-dpa`](../doca-dpa/SKILL.md) for the host-side DPA lifecycle this skill builds on. If the user only wants to *inspect* PCC counters at runtime without writing a custom algorithm, that is the `pcc_counters` CLI tool — route via [`doca-public-knowledge-map ## DOCA tools`](../../doca-public-knowledge-map/SKILL.md#doca-tools); this skill is for *custom* algorithms only.
Example questions this skill answers well
The CLASSES of PCC questions this skill is built to answer, each with one worked example. The agent should treat the *class* as the load-bearing piece — the worked example is a single instance.
- **"How do I deploy my own custom congestion control algorithm
onto a BlueField port carrying RDMA / RoCE traffic?"** — worked example: *"load a small DPA-side PCC algorithm and attach it to the BlueField port that handles my RoCE traffic"*. Answered by the two-side-program model + the host-side load-and-attach workflow in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the bring-up steps in
[`TASKS.md ## configure`](TASKS.md#configure).
- **"Does this BlueField + firmware actually allow a custom PCC
algorithm, and which PCC features does my DOCA install expose?"** — worked example: *"my host has a BlueField and the default factory PCC works; can I drop in a custom algorithm instead?"*. Answered by the triple-axis precondition rule (BlueField generation must carry a DPA, firmware must have the custom-PCC slot enabled, `doca_pcc_cap_*` against the active `doca_devinfo` must agree) in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the env-precondition checklist in
[`TASKS.md ## configure`](TASKS.md#configure) step 1.
- **"Why does my custom PCC fail with `DOCA_ERROR_NOT_PERMITTED`
even though I have `doca_dev` access?"** — worked example: *"the BlueField firmware in this host has the custom-PCC slot disabled"*. Answered by the permission matrix in [`CAPABILITIES.md ## Safety policy`](CAPABILITIES.md#safety-policy)
- the firmware-side env fix in
[`TASKS.md ## configure`](TASKS.md#configure) step 1.
- **"Is this `doca-pcc` library the right tool for what I want,
or do I want the default firmware PCC or the `pcc_counters` CLI?"** — worked example: *"I just want to read PCC counters without touching the algorithm"*. Answered by the path-selection rule in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the deferred-topic boundaries in
[`CAPABILITIES.md ## Deferred topic boundaries`](CAPABILITIES.md#deferred-topic-boundaries) which route to [`doca-public-knowledge-map ## DOCA tools`](../../doca-public-knowledge-map/SKILL.md#doca-tools) for the counter tool.
- **"Is the host-side PCC API I'm reading about on my installed
DOCA?"** — worked example: *"is the host-side load helper I see in the docs available against the DOCA + DPACC versions on this host?"*. Answered by the version-compatibility overlay in [`CAPABILITIES.md ## Version compatibility`](CAPABILITIES.md#version-compatibility) which cross-links the canonical detection chain in [`doca-version`](../../doca-version/SKILL.md) and adds the PCC-specific *DOCA must ma
Read more
license: Apache-2.0
name: doca-pcc
description: >
Use this skill when the user is doing hands-on host-side DOCA
PCC work to load a CUSTOM Programmable Congestion Control
algorithm onto a BlueField DPU — creating per-port `doca_pcc`
contexts, loading a `dpacc`-compiled `doca_pcc_app` onto the
`doca_dev` for the RoCE-bearing port, parameterizing it,
walking triple-axis capability discovery (DOCA cap-query +
DPA-capable BlueField + firmware custom-PCC slot enabled), or
debugging `DOCA_ERROR_*` from `doca_pcc_*`. Trigger even
without explicit "DOCA PCC" phrasing — implicit forms include
"loading my own congestion control onto a BF port",
"DOCA_ERROR_NOT_PERMITTED on algorithm load",
"DOCA_ERROR_DRIVER when I attach my custom algorithm", "my
custom rate-update isn't affecting RoCE traffic", or "load
succeeds but no on-wire change". Refuse and route elsewhere
for DPA-side algorithm-body design, the `pcc_counters`
CLI, default factory PCC in ConnectX firmware, or setting up
the RDMA / RoCE traffic — those belong to other skills.
metadata:
kind: library
compatibility: >
Requires DOCA SDK installed at /opt/mellanox/doca on Linux
(Ubuntu 22.04/24.04 or RHEL/SLES) with a BlueField DPU whose
DPA processor is exposed to the host AND whose firmware has
the custom-PCC slot enabled. Also requires the DPACC compiler
installed at a version matched to DOCA per the DOCA
Compatibility Policy. Reads the user's local install via
`pkg-config doca-pcc` and inspects
/opt/mellanox/doca/{lib,include,samples,applications}.DOCA PCC
**Where to start:** This skill assumes DOCA is already installed, the user's BlueField has a DPA processor that the host can see through DOCA, the BlueField firmware has the custom-PCC slot enabled, and the user is doing **hands-on custom PCC work from the host side** — i.e. using `doca-pcc` to load a DPA-side congestion control algorithm onto the BlueField, attach it to a port handling RDMA / RoCE traffic, and parameterize it from the host. Open [`TASKS.md`](TASKS.md) if the user wants to *do* something (configure / build / modify / run / test / debug); open [`CAPABILITIES.md`](CAPABILITIES.md) when the question is *what can the host-side PCC API express* on this version + this BlueField generation + this firmware. If the user has not installed DOCA yet, route to [`doca-setup`](../../doca-setup/SKILL.md) first; if the user is asking how to *write* the DPA-side congestion-control algorithm itself (the code that runs on the DPA processor, compiled by `dpacc`), that is a different scope — route via [`doca-public-knowledge-map`](../../doca-public-knowledge-map/SKILL.md) to the public DOCA PCC programming guide and to [`doca-dpa`](../doca-dpa/SKILL.md) for the host-side DPA lifecycle this skill builds on. If the user only wants to *inspect* PCC counters at runtime without writing a custom algorithm, that is the `pcc_counters` CLI tool — route via [`doca-public-knowledge-map ## DOCA tools`](../../doca-public-knowledge-map/SKILL.md#doca-tools); this skill is for *custom* algorithms only.
Example questions this skill answers well
The CLASSES of PCC questions this skill is built to answer, each with one worked example. The agent should treat the *class* as the load-bearing piece — the worked example is a single instance.
- **"How do I deploy my own custom congestion control algorithm
onto a BlueField port carrying RDMA / RoCE traffic?"** — worked example: *"load a small DPA-side PCC algorithm and attach it to the BlueField port that handles my RoCE traffic"*. Answered by the two-side-program model + the host-side load-and-attach workflow in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the bring-up steps in
[`TASKS.md ## configure`](TASKS.md#configure).
- **"Does this BlueField + firmware actually allow a custom PCC
algorithm, and which PCC features does my DOCA install expose?"** — worked example: *"my host has a BlueField and the default factory PCC works; can I drop in a custom algorithm instead?"*. Answered by the triple-axis precondition rule (BlueField generation must carry a DPA, firmware must have the custom-PCC slot enabled, `doca_pcc_cap_*` against the active `doca_devinfo` must agree) in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the env-precondition checklist in
[`TASKS.md ## configure`](TASKS.md#configure) step 1.
- **"Why does my custom PCC fail with `DOCA_ERROR_NOT_PERMITTED`
even though I have `doca_dev` access?"** — worked example: *"the BlueField firmware in this host has the custom-PCC slot disabled"*. Answered by the permission matrix in [`CAPABILITIES.md ## Safety policy`](CAPABILITIES.md#safety-policy)
- the firmware-side env fix in
[`TASKS.md ## configure`](TASKS.md#configure) step 1.
- **"Is this `doca-pcc` library the right tool for what I want,
or do I want the default firmware PCC or the `pcc_counters` CLI?"** — worked example: *"I just want to read PCC counters without touching the algorithm"*. Answered by the path-selection rule in [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)
- the deferred-topic boundaries in
[`CAPABILITIES.md ## Deferred topic boundaries`](CAPABILITIES.md#deferred-topic-boundaries) which route to [`doca-public-knowledge-map ## DOCA tools`](../../doca-public-knowledge-map/SKILL.md#doca-tools) for the counter tool.
- **"Is the host-side PCC API I'm reading about on my installed
DOCA?"** — worked example: *"is the host-side load helper I see in the docs available against the DOCA + DPACC versions on this host?"*. Answered by the version-compatibility overlay in [`CAPABILITIES.md ## Version compatibility`](CAPABILITIES.md#version-compatibility) which cross-links the canonical detection chain in [`doca-version`](../../doca-version/SKILL.md) and adds the PCC-specific *DOCA must ma
Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.
Other skills on nvidia-skills.
- /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 products, hardware, software, SDKs, GPUs, Jetson/JetPack/L4T/BSP/SDK Manager/driver/flashing/setup, CUDA, NIM, NeMo, Omniverse/OpenUSD/SimReady,
Open skill - /accelerated-computing-cudf
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
Open skill - /aiq-deploy
Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.
Open skill - /aiq-research
Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.
Open skill - /amc-run-sample-calibration
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
Open skill - /amc-run-video-calibration
Calibrate a new dataset from pre-recorded video files via the AutoMagicCalib REST API. Use when user has local MP4s and says 'calibrate my videos', 'run AMC on these videos', or similar. For RTSP/live streams, use amc-run-rtsp-calibration instead.
Open skill

