> Use this skill when the user is invoking `doca_spcx_cc` (the host-side CLI under /opt/mellanox/doca/tools/) to load, parameterize, start, observe, or stop a Programmable Congestion Control (SPCX) algorithm on a BlueField with a DPA processor against a live RDMA / RoCE fabric, or picking SPCX vs the established `doca-pcc` surface. Trigger even when the user does not say "DOCA SPCX" or "doca_spcx_cc" — typical implicit phrasings include "I want to write a custom RTT-based CC algorithm for my RoCE fabric", "my SPCX session loaded but throughput / latency didn't change", "doca_pcc status shows Active but factory CC seems to still be in charge", "DOCA_PCC_PS_ERROR on start", "is the programmable-CC surface available on my install", or "DPA-side algorithm image won't load". Refuse and route elsewhere for DPA-side algorithm authoring detail, factory PCC firmware configuration, read-only PCC counter inspection, raw DPA cycle profiling, RDMA library programming, or general DOCA install — those belong to other skills.
npx skills add https://github.com/NVIDIA/skills --skill doca-spcx-cc
Where to start: This is a tool skill for invoking
doca_spcx_cc — the documented host-side CLI that exercises
an SPCX-class Programmable Congestion Control algorithm on a
live RDMA / RoCE fabric driven by a BlueField with a DPA
processor. Open TASKS.md and start at
## configure for the
SPCX-vs-PCC-vs-factory-firmware decision tree (load-bearing
gate before any code), the role decision (RP / NP), the
DPA-side algorithm authoring vs consumption split, and the
live-link / contention precondition. Open
CAPABILITIES.md when the question is
*what does SPCX let me express that doca-pcc does not*,
*what is the SPCX-vs-PCC tradeoff*, *what runtime metrics
does the tool surface*, or *what is the safety posture for
loading a custom CC algorithm on a production fabric*. If
DOCA is not installed yet, route to
doca-setup first.
This skill is the next-gen programmable-CC surface.
doca-pcc is the established
PCC story; SPCX is the documented extension that authors
SPCX-class algorithms on the same DPA hardware substrate.
doca-pcc-ztr-rttcc-algo
is one shipped reference algorithm (zero-touch RTT-based
CC) that can be loaded through either the PCC or SPCX path
depending on the install and the user's algorithm choice;
the agent surfaces this decision tree explicitly per
CAPABILITIES.md ## Capabilities and modes.
The CLASSES of doca_spcx_cc 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.
doca-pcc for my custom CCalgorithm?"** — worked example: *"I want to write a new
RTT-based congestion-control algorithm for my RoCE
fabric — which surface do I target?"*. Answered by the
SPCX-vs-PCC-vs-factory-firmware decision tree in
CAPABILITIES.md ## Capabilities and modes
+ the
*"is SPCX the right surface on this install?"* gate in
TASKS.md ## configure step 1.
real RDMA link before letting it touch production?"** —
worked example: *"I have a DPACC-compiled SPCX algorithm
and a non-prod BlueField pair; how do I run a
contention-positive evaluation?"*. Answered by the
authoring vs consumption split + the live-link
precondition in
CAPABILITIES.md ## Capabilities and modes
+ the replica-first evaluation flow in
TASKS.md ## test.
link's throughput / latency curve is unchanged — what's
going on?"** — worked example: *"the host-side `doca_pcc
--status reports Active` and a stable session, but my
RoCE flows look like the factory algorithm is still in
charge"*. Answered by the live-link / contention rule
in
CAPABILITIES.md ## Capabilities and modes
+ the
*"algorithm has no signal under no contention"*
guidance in
TASKS.md ## test +
TASKS.md ## debug (route through
the layered error taxonomy before blaming the
algorithm).
the gate before I roll it forward to production?"** —
worked example: *"my CC algorithm works on the two
BlueField pairs in the lab; can I push it to the
fleet?"*. Answered by the safety overlay in
CAPABILITIES.md ## Safety policy
(heavily cross-linked to
doca-hardware-safety CAPABILITIES.md ## Safety policy):
blast-radius bounded, observability gate proven, OOB
reachable, factory-PCC rollback rehearsed, escalation
path documented before any production cutover.
doca_spcx_cc on my install, and is it pairedwith the matching doca-pcc library and DPACC compiler
version?"** — worked example: *"is the SPCX surface
available on my DOCA install?"*. Answered by the
version-overlay in
CAPABILITIES.md ## Version compatibility,
which redirects to the canonical
doca-version chain
and adds the *tool ↔ doca-pcc library ↔ DPACC
compiler ↔ firmware custom-PCC slot* match rule.
algorithm, the device, or the firmware?"** — worked
example: *"doca_spcx_cc exits with
DOCA_PCC_PS_ERROR on start"*. Answered by the
layered error taxonomy in
CAPABILITIES.md ## Error taxonomy
+ the layered walk in
TASKS.md ## debug.
This skill serves **external developers, platform
operators, and AI agents authoring, loading, and
evaluating an SPCX-class Programmable Congestion Control
algorithm on a BlueField with a DPA processor, against a
live RDMA / RoCE fabric**. Concretely:
SPCX-class DPA-side algorithm (or who is consuming a
documented shipped reference such as the zero-touch
RTT-based algorithm via
doca-pcc-ztr-rttcc-algo
on the SPCX path when the install + algorithm support
it) and needs the operator-side harness to load,
parameterize, start, observe, and stop the algorithm.
on a non-prod RDMA fabric to characterise the
algorithm's behaviour under controlled contention.
to roll forward"* answer honestly — with evidence
from a contention-positive evaluation, a documented
rollback to the factory PCC, and an explicit blast-
radius bound — instead of a guess from datasheet
prose.
It is not for users debugging the doca_spcx_cc
binary itself, not a substitute for the live public
DOCA SPCX / DOCA PCC programming guides, not the
right place for the DPA-side algorithm authoring detail
(that path goes through the public DOCA SPCX programming
guide and the
doca-pcc +
doca-dpa skills), and
not the right place for default factory PCC
configuration (no host-side library or SPCX tool needed;
route via
doca-public-knowledge-map).
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 is uniform across libraries,
services, and tools.
doca_spcx_cc is a C host-side CLI that links the
host-side doca-pcc
library and loads a DPA-side SPCX algorithm image built
by the DPACC compiler. The algorithm body is a separate
DPA-side translation unit written in the language DPACC
accepts. The skill keeps workflow guidance
language-neutral and routes per-language questions to
the public DOCA SPCX / DOCA PCC / DPACC guides via
doca-public-knowledge-map.
Load this skill when the user is — or the agent needs to
— invoke doca_spcx_cc on a real host with DOCA
installed, paired with a BlueField that has its DPA
processor exposed AND the firmware custom-PCC slot
enabled, against a port carrying RDMA / RoCE traffic with
actual contention. Concretely:
shipped reference) onto the BlueField via the SPCX
surface, parameterizing it, starting it, and observing
its effect on the live link.
before any production rollout — capturing the
contention-positive run as evidence.
doca-pcc paths for the samealgorithm class on the same install (where both paths
are available) and deciding which to commit to.
with the documented evidence + rollback plan, or
refusing the recommendation when the evidence /
rollback is missing per
CAPABILITIES.md ## Safety policy.
DOCA_PCC_PS_ERROR or a silent-no-effectsymptom against the layered error taxonomy.
Do not load this skill for general DOCA orientation,
DPA-side algorithm authoring detail, raw cycle profiling
of the DPA, the factory PCC algorithm shipped in the
firmware, or DOCA install. For those, route to
doca-public-knowledge-map,
doca-pcc,
doca-dpa, or
doca-setup.
This is a thin loader. Substantive material lives
in two companion files:
CAPABILITIES.md — what SPCX expresses that PCC doesnot (and where the surfaces overlap), the
SPCX-vs-PCC-vs-factory-firmware decision tree, the
authoring vs consumption split, the role decision
(RP / NP), the documented probe-packet format axis,
the live-link / contention precondition rule (the
load-bearing safety invariant — *"a CC algorithm has
no signal under no contention"*), the runtime
observability surface (per-port / per-flow trace
formats + the host-side status surface), the
triple-axis precondition rule
(doca-pcc: DPA-capable
BlueField + firmware custom-PCC slot enabled +
doca_pcc_cap_* agreement) extended with SPCX-specific
availability, the version overlay (tool ↔ library ↔
DPACC ↔ firmware), the layered error taxonomy
(install / device-binding / fw-slot / DPA-image /
algorithm-precondition / live-link-precondition /
runtime / version / cross-cutting), the observability
surface, and the heavily-overlaid safety posture (a
wrong CC algorithm on production can melt the
fabric).
TASKS.md — step-by-step workflows for the in-scopetask verbs: install (host-side DOCA install + DPA
prerequisites + firmware custom-PCC slot), configure
(SPCX-vs-PCC decision + role + algorithm + parameters
+ probe-packet format), build (route to install —
the host-side tool is shipped; the DPA-side algorithm
is user-built by DPACC), modify (refuse — do not
patch the binary; modify the invocation, algorithm,
and parameters), run (the
prepare → smoke → contention-positive evaluation
flow), test (iterative loop on the replica before
production), debug (walk the error taxonomy),
use (the *"safe to roll forward"* decision with
evidence + rollback + escalation), plus a `Deferred
task verbs` block.
The skill assumes a host where DOCA is already
installed, a BlueField with a DPA processor and the
firmware-level custom-PCC slot enabled is present and
visible, the DPACC compiler is installed at a version
matched to the host-side DOCA, the user already knows
how (at sketch level) to write the DPA-side SPCX
algorithm (or has a shipped reference algorithm to
consume), and a non-prod RDMA / RoCE fabric with
controllable contention is available for evaluation.
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:
*loads* an algorithm the user supplies; the skill
refuses to invent algorithm bodies and routes any
*"what algorithm should I write"* question to the
public DOCA SPCX / DOCA PCC programming guides and
to the user's own domain expertise.
curves, per-flow counter snapshots). Output is
device-, firmware-, fabric-topology-, and
workload-specific; pinning one would mislead
operators elsewhere.
probe-packet format tokens, or metric names beyond
what the public DOCA SPCX page and --help
document.** The SPCX surface is the newer of the
programmable-CC surfaces and the documented flag
set evolves; the installed --help is the
authoritative inventory.
that consume the 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.
single observation.** CC tuning on a live fabric
is high-stakes; the skill prescribes how to
*capture evidence and compare against the factory
PCC baseline* and refuses to translate a single
observation into a parameter-change recommendation
without the user's own domain analysis.
samples/ or reference/ subtree. This isa thin loader for a shipped CLI; substantive
material lives on the public page, in --help,
and in
doca-pcc +
doca-dpa.
SKILL.md first to confirm the user'squestion is in scope (SPCX-side custom CC work,
not factory firmware PCC, not raw DPA cycle
profiling, and not algorithm authoring detail).
vs consumption split, the live-link precondition,
the version overlay, the error taxonomy, the
observability surface, and the safety posture,
see CAPABILITIES.md.**
prepare → smoke → contention-positive evaluation
workflow — install, configure, build,
modify, run, test, debug, use — see
TASKS.md.**
doca-pcc — theestablished host-side library for Programmable
Congestion Control. The SPCX tool builds on and
links this library; the SPCX-vs-PCC decision tree
in
CAPABILITIES.md ## Capabilities and modes
is the load-bearing routing rule. Conflating the
two is the most common programmable-CC first-touch
error.
doca-pcc-ztr-rttcc-algo— the shipped reference zero-touch RTT-based CC
algorithm. When the user wants to deploy a
documented reference algorithm via the SPCX path
(rather than author one), this is the
algorithm-side skill paired with this tool's
operator-side workflow.
doca-dpa — thehost-side DPA control library the SPCX algorithm's
DPA-side body builds on. For DPA-level questions
(kernel-launch model, DPACC build flags, DPA-side
comms / verbs), this is the skill the agent loads
alongside.
doca-rdma — thelibrary whose RDMA / RoCE flows on the attached
BlueField port the SPCX algorithm is controlling.
Without RDMA traffic in flight and contention on
the fabric, the algorithm has no signal — surface
this precondition with the user before any
evaluation.
doca-pcc-counters —the sibling tool for read-only PCC counter
inspection. SPCX exposes its own runtime
observability surface; the PCC counter tool is the
cheaper *"is anything happening on this port"*
first step before / during an SPCX evaluation.
doca-hardware-safety— the bundle-wide hardware-safety meta-policy
(pre-flight inventory, OOB requirement,
replica-first, observability-before-workload,
rollback discipline, escalation). The `## Safety
policy` overlay in this skill is heavily layered
on the meta-policy; deploying a wrong CC algorithm
on a production fabric is a *meta-policy STOP*
case.
doca-public-knowledge-map— routing to the public DOCA SPCX programming
guide, the public DOCA PCC programming guide, the
public DOCA DPA / DPACC guides, and the rest of
the public DOCA documentation set.
doca-version —canonical DOCA version-handling rules. The
## Version compatibility section in
CAPABILITIES.md is a concise
overlay that redirects here for the body and adds
the *tool ↔ doca-pcc library ↔ DPACC ↔ firmware
custom-PCC slot* matching rule.
doca-setup — envpreparation, install verification, DPACC compiler
install / verification, BlueField firmware
configuration (custom-PCC slot enablement is a
firmware-level setting), and the *I have no
install yet* path with the public NGC DOCA
container.
doca-debug — thecross-cutting debug ladder. SPCX-specific debug
layers on top of that ladder; cross-link the
captured runtime evidence + counter snapshots
into a doca-debug session when the cause is
below DOCA.
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-programming-guide— general DOCA programming patterns shared by
every library / tool surface, including the
cross-library DOCA_ERROR_* taxonomy this
tool's host-side error layer overlays on top of.
The default factory PCC algorithms shipped inside
ConnectX firmware are not in scope for this skill —
those work without doca_spcx_cc and are configured
through firmware-level knobs, not through any host-side
library or tool API. Route via
doca-public-knowledge-map.
Conflating the factory PCC story with SPCX is the
single most common programmable-CC first-touch error.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
Build agentic applications with GitHub Copilot SDK. Use when embedding AI agents in apps, creating custom tools, implementing streaming responses, managing sessions, connecting to MCP servers, or creating custom agents. Triggers on Copilot SDK, GitHub SDK, agentic app, embed Copilot, programmable agent, MCP server, custom agent.
Coding Agent Session Search - unified CLI/TUI to index and search local coding agent history from Claude Code, Codex, Gemini, Cursor, Aider, ChatGPT, Pi-Agent, Factory, and more. Purpose-built for AI agent consumption with robot mode.
Destructive Command Guard - High-performance Rust hook for Claude Code that blocks dangerous commands before execution. SIMD-accelerated, modular pack system, whitelist-first architecture. Essential safety layer for agent workflows.
Makepad UI development skills for Rust apps: setup, patterns, shaders, packaging, and troubleshooting.
Secure environment variable management ensuring secrets are never exposed in Claude sessions, terminals, logs, or git commits
Prompt for generating an AGENTS.md file for a repository
Take nvidia/doca-spcx-cc 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.