[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-doca-rmax":3,"mdc-9aol0i-key":31,"related-repo-nvidia-doca-rmax":1585,"related-org-nvidia-doca-rmax":1691},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":20,"repoUrl":21,"updatedAt":22,"license":23,"forks":24,"topics":25,"repo":26,"sourceUrl":29,"mdContent":30},"doca-rmax","configure DOCA Rivermax media streaming sessions","Use this skill when the user is doing hands-on DOCA Rivermax work on a BlueField DPU or ConnectX host — standing up `doca_rmax_in_stream` (receive) sessions for timing-precise media-over-IP (SMPTE ST 2110 video\u002Faudio, market data, scientific feeds), confirming the Rivermax SDK + license precondition before any DOCA-side code, running `doca_rmax_get_*_supported` capability queries, pairing with `doca-eth` queues and `doca-flow` steering, or debugging `DOCA_ERROR_*` from a Rivermax call. Trigger even when the user does not explicitly mention \"DOCA Rivermax\" or \"rmax\" — implicit phrasings include \"ST 2110 receive isn't getting frames\", \"sub-microsecond jitter on BlueField\", \"NOT_SUPPORTED from doca_rmax_init\", \"no recv events after stream start\", or \"license check failing on a media receiver\". Refuse and route elsewhere for installing the Rivermax SDK or its license, programming the underlying queue (`doca-eth`), steering rules (`doca-flow`), or best-effort packet I\u002FO — those belong to other skills.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"nvidia","NVIDIA","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fnvidia.png",[12,16,17],{"name":13,"slug":14,"type":15},"Media","media","tag",{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"Engineering","engineering",2473,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills","2026-07-30T05:28:48.486897","Apache-2.0",281,[],{"repoUrl":21,"stars":20,"forks":24,"topics":27,"description":28},[],"AI agent skills published by NVIDIA","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fdoca-rmax","---\nlicense: Apache-2.0\nname: doca-rmax\ndescription: >\n  Use this skill when the user is doing hands-on DOCA Rivermax work on\n  a BlueField DPU or ConnectX host — standing up `doca_rmax_in_stream`\n  (receive) sessions for timing-precise\n  media-over-IP (SMPTE ST 2110 video\u002Faudio, market data, scientific\n  feeds), confirming the Rivermax SDK + license precondition before\n  any DOCA-side code, running `doca_rmax_get_*_supported` capability queries,\n  pairing with `doca-eth` queues and `doca-flow` steering, or\n  debugging `DOCA_ERROR_*` from a Rivermax call. Trigger even when the\n  user does not explicitly mention \"DOCA Rivermax\" or \"rmax\" —\n  implicit phrasings include \"ST 2110 receive isn't getting frames\",\n  \"sub-microsecond jitter on BlueField\", \"NOT_SUPPORTED from\n  doca_rmax_init\", \"no recv events after stream start\", or \"license\n  check failing on a media receiver\". Refuse and route elsewhere for\n  installing the Rivermax SDK or its license, programming the\n  underlying queue (`doca-eth`), steering rules (`doca-flow`), or\n  best-effort packet I\u002FO — those belong to other skills.\nmetadata:\n  kind: library\ncompatibility: >\n  Requires DOCA SDK at \u002Fopt\u002Fmellanox\u002Fdoca on Linux (Ubuntu 22.04\u002F24.04 or\n  RHEL\u002FSLES) with a BlueField DPU or ConnectX NIC, AND the separately-\n  installed NVIDIA Rivermax SDK with a valid Rivermax license readable by\n  the user — DOCA does NOT bundle Rivermax. Reads the local install via\n  `pkg-config doca-rmax`; route Rivermax SDK install\u002Flicense questions to\n  the public Rivermax guide.\n\n---\n\n# DOCA Rivermax\n\n**Where to start:** This skill assumes DOCA is already installed,\n**AND** that the NVIDIA Rivermax SDK is separately installed with a\nvalid Rivermax license present on the host. The agent's FIRST\naction on any Rivermax question is to confirm both — without\nRivermax SDK + license, `doca-rmax` cannot function regardless\nof how clean the DOCA-side code is, and this is the #1 first-app\nconfusion (DOCA does *not* bundle Rivermax; it wraps it). Open\n[`TASKS.md`](TASKS.md) if the user wants to *do* something\n(configure \u002F build \u002F modify \u002F run \u002F test \u002F debug); open\n[`CAPABILITIES.md`](CAPABILITIES.md) when the question is *what\ncan DOCA Rivermax express* on this version + this Rivermax\ninstall. If the user has not installed DOCA yet, route to\n[`doca-setup`](..\u002F..\u002Fdoca-setup\u002FSKILL.md) first; for the Rivermax\nSDK + license install itself, route to the public DOCA Rivermax\nguide (slug `DOCA-Rivermax`) via\n[`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md).\nIf the user is asking *\"how do I get packets to land on my\nRivermax input stream at all\"*, the answer is layered:\n`doca-rmax` is the *Rivermax integration* surface,\n[`doca-eth`](..\u002Fdoca-eth\u002FSKILL.md) is the *queue* surface that\ncarries the packets, and [`doca-flow`](..\u002Fdoca-flow\u002FSKILL.md)\nis the *steering* surface that directs them.\n\n## Example questions this skill answers well\n\nThe CLASSES of DOCA Rivermax questions this skill is built to\nanswer, each with one worked example. The agent should treat the\n*class* as the load-bearing piece — the worked example is a\nsingle instance.\n\n- **\"Can I even use `doca-rmax` on this host?\"** — worked\n  example: *\"the public docs mention `doca-rmax`; is it\n  usable without doing anything else?\"*. Answered by the\n  Rivermax-SDK + license precondition rule in\n  [`CAPABILITIES.md ## Safety policy`](CAPABILITIES.md#safety-policy)\n  + the env-prep checklist in\n  [`TASKS.md ## configure`](TASKS.md#configure) step 1, which\n  routes the install-side question to the public Rivermax guide\n  via\n  [`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md)\n  and refuses to recommend a fallback to `doca-eth` alone that\n  would silently lose the timing properties.\n- **\"How do I set up a SMPTE ST 2110 video receive stream?\"** —\n  worked example: *\"line up an inbound Rivermax stream on a\n  representor of a BlueField port for first-run testing\"*.\n  Answered by the per-stream object lifecycle in\n  [`TASKS.md ## configure`](TASKS.md#configure) +\n  [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)\n  input stream capability table.\n- **\"Which `doca_rmax_get_*_supported` query do I have to call before\n  picking a PTP clock or hardware packet-placement order?\"** — worked\n  example: *\"can this device + this Rivermax install use\n  ST 2110-20 sequence-number placement?\"*. Answered by the\n  capability-query rule in\n  [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)\n  + step 3 in\n  [`TASKS.md ## configure`](TASKS.md#configure).\n- **\"My stream is set up but no packets arrive — why?\"** —\n  worked example: *\"the Rivermax stream object started cleanly\n  but no recv events fire\"*. Answered by the precondition matrix\n  in\n  [`CAPABILITIES.md ## Safety policy`](CAPABILITIES.md#safety-policy)\n  + the env-prep checklist in\n  [`TASKS.md ## configure`](TASKS.md#configure) step 1, which\n  routes the steering side to\n  [`doca-flow`](..\u002Fdoca-flow\u002FSKILL.md), the queue side to\n  [`doca-eth`](..\u002Fdoca-eth\u002FSKILL.md), and the license side\n  back to the Rivermax-side precondition.\n- **\"Is this Rivermax integration capability available on my\n  device + my installed DOCA + my Rivermax SDK?\"** — worked\n  example: *\"does this device + this Rivermax version advertise\n  the PTP clock or placement mode I need\"*. Answered by the capability-query\n  rule in\n  [`CAPABILITIES.md ## Capabilities and modes`](CAPABILITIES.md#capabilities-and-modes)\n  + the version-and-device overlay in\n  [`CAPABILITIES.md ## Version compatibility`](CAPABILITIES.md#version-compatibility),\n  which adds the *Rivermax-side version is a second axis* rule\n  on top of the canonical DOCA version-handling chain in\n  [`doca-version`](..\u002F..\u002Fdoca-version\u002FSKILL.md).\n- **\"What does this `DOCA_ERROR_*` from a Rivermax call mean and\n  which layer caused it?\"** — worked example:\n  *\"`DOCA_ERROR_NOT_SUPPORTED` from `doca_rmax_init()`\"*.\n  Answered by the Rivermax overlay on the\n  cross-library taxonomy in\n  [`CAPABILITIES.md ## Error taxonomy`](CAPABILITIES.md#error-taxonomy)\n  + the layered ladder in\n  [`TASKS.md ## debug`](TASKS.md#debug) that escalates to\n  [`doca-debug`](..\u002F..\u002Fdoca-debug\u002FSKILL.md), and which preserves\n  the installed header's call-specific mapping: init-time\n  `_NOT_SUPPORTED` routes first to Rivermax SDK \u002F license checks;\n  later errors are interpreted from the exact failing call rather\n  than generalized into a license diagnosis.\n\n## Audience\n\nThis skill serves **external developers building applications\nthat consume the DOCA Rivermax integration** — i.e., users whose\ncode calls `doca_rmax_*` (directly in C\u002FC++, or through\nFFI\u002Fbindings from another language) to drive timing-precise\nmedia-over-IP streams (SMPTE ST 2110, real-time market data,\nhigh-throughput scientific instrument streams) on top of a\nseparately-installed NVIDIA Rivermax SDK on a BlueField or\nConnectX host. It is *not* for NVIDIA developers contributing to\nDOCA Rivermax itself, and it is *not* for users who want\nbest-effort packet I\u002FO — for that, route to\n[`doca-eth`](..\u002Fdoca-eth\u002FSKILL.md) directly.\n\n**Language scope.** DOCA Rivermax ships as a C library with\n`pkg-config` module name `doca-rmax`. The shipped samples\nlive under `\u002Fopt\u002Fmellanox\u002Fdoca\u002Fsamples\u002Fdoca_rmax\u002F` and are\nwritten in C. C and C++ consumers are the canonical case; the\nworked examples in `TASKS.md` assume that path. Other-language\nconsumers (Rust, Go, Python, …) consume the same `*.so` through\nFFI or language-specific bindings; the skill's contribution in\nthat case is to keep the precondition rule (Rivermax SDK +\nlicense), per-stream lifecycle, capability-discovery,\npermission, scheduling-discipline, and error-taxonomy guidance\nlanguage-neutral, and to route the agent to the public C ABI as\nthe authoritative surface that any wrapper will eventually call.\n\n## When to load this skill\n\nLoad this skill when the user is doing hands-on DOCA Rivermax\nwork, in any language. Concretely:\n\n- Confirming that the NVIDIA Rivermax SDK and a valid Rivermax\n  license are present on the host before any DOCA-side code is\n  written — this is a **mandatory precondition**, not an error\n  path; without it the answer is *\"`doca-rmax` cannot be\n  used; pick a different library\"*, not *\"let's try and see what\n  fails\"*.\n- Initializing the global DOCA Rivermax engine with\n  `doca_rmax_init()` \u002F `doca_rmax_release()`, then creating a\n  `doca_rmax_in_stream` (receive) context with\n  `doca_rmax_in_stream_create()` on a `doca_dev` opened against a\n  physical port, a representor, or an SF, and converting it via\n  `doca_rmax_in_stream_as_ctx()` before `doca_ctx_start()`. The\n  public DOCA Rivermax API is receive-only — there is no\n  transmit\u002Foutput stream object.\n- Configuring a Rivermax input stream for SMPTE ST 2110 audio +\n  video over IP, real-time market data feeds, or a scientific\n  instrument stream — with awareness that PTP-clock and\n  hardware packet-placement-order support are device- and\n  Rivermax-conditional and gate on the matching\n  `doca_rmax_get_*_supported` query.\n- Reading or setting Rivermax stream properties via\n  `doca_rmax_in_stream_set_*` and querying device + Rivermax\n  capability via the `doca_rmax_get_*_supported` family before\n  assuming PTP-clock or hardware packet-placement-order support.\n- Pairing the Rivermax stream with the `doca-eth` queue surface\n  that carries the packets and the `doca-flow` rules that\n  steer them — Rivermax does not program steering itself.\n- Designing the real-time scheduling discipline for the\n  streaming threads (the underlying Rivermax stack expects\n  real-time priority for sub-microsecond jitter; the canonical\n  scheduling guidance lives in the Rivermax SDK docs reachable\n  through\n  [`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md)).\n- Debugging a `DOCA_ERROR_*` returned from a Rivermax call\n  (lifecycle vs. license \u002F permission vs. capability vs.\n  driver-below) where the cause may live in the DOCA-side\n  wrapper, the underlying Rivermax stack, or the licensing\n  layer.\n- Designing or extending non-C bindings (Rust, Go, Python, …)\n  that wrap the DOCA Rivermax C ABI — for the precondition\n  rule, lifecycle, capability, permission, and scheduling rules\n  the wrapper must honor.\n\nDo **not** load this skill for general DOCA orientation, for\ninstalling DOCA itself, for installing the Rivermax SDK or\nmanaging the Rivermax license file (those live in the public\nRivermax SDK guide reachable through\n[`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md)),\nfor best-effort packet I\u002FO without timing requirements (use\n[`doca-eth`](..\u002Fdoca-eth\u002FSKILL.md) directly), or for pure\nhost-side data processing without networking. For DOCA\ndocumentation orientation, use\n[`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md).\n\n## What this skill provides\n\nThis is a **thin loader**. The body keeps only the orientation\nneeded to pick the right next file. The substantive\nRivermax-specific material lives in two companion files:\n\n- `CAPABILITIES.md` — what DOCA Rivermax can express on this\n  version *and this Rivermax SDK install*: the\n  Rivermax-as-hard-dependency rule, the receive-only\n  `doca_rmax_in_stream` object model, the capability-query surface\n  (`doca_rmax_get_*_supported`), the Rivermax error taxonomy\n  (mapped onto the cross-library `DOCA_ERROR_*` set, with\n  Rivermax-specific causes called out per row), the\n  observability surface (per-stream progress engine events,\n  capability snapshots, Rivermax-side license + driver state),\n  and the safety policy that gates the Rivermax-SDK-present \u002F\n  license-present \u002F device-access \u002F scheduling-discipline\n  preconditions.\n- `TASKS.md` — step-by-step workflows for the six in-scope\n  Rivermax verbs: `configure`, `build`, `modify`, `run`,\n  `test`, `debug`. Plus a `Deferred task verbs` block that\n  points out-of-scope questions (installing Rivermax,\n  managing the license, programming steering, programming the\n  underlying queue) at the right next skill, and a `Command\n  appendix` of the recurring commands the agent reaches for.\n\nThe skill assumes a host or BlueField where DOCA is already\ninstalled at the standard location, the NVIDIA Rivermax SDK is\ninstalled at its expected location with a valid license, and\nthe user has the privileges their public install profile\nexpects (typically sudo or `mlnx`-group membership to open a\n`doca_dev` against a port). It does not cover installing DOCA —\nthat path goes through\n[`doca-setup`](..\u002F..\u002Fdoca-setup\u002FSKILL.md). It does not cover\ninstalling Rivermax or its license — that path goes through the\npublic Rivermax SDK guide reachable through\n[`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md).\n\n## What this skill deliberately does not ship\n\nThis skill is **agent guidance**, not a samples or templates\nbundle. To keep the boundary clean, it deliberately does not\ncontain — and pull requests should not add:\n\n- **Pre-written DOCA Rivermax application source code, in any\n  language.** The verified Rivermax source code is the shipped\n  C samples at `\u002Fopt\u002Fmellanox\u002Fdoca\u002Fsamples\u002Fdoca_rmax\u002F\u003Cname>\u002F`.\n  The agent's job is to route the user to those files and\n  prescribe a minimum-diff modification on them via the\n  universal modify-a-sample workflow in\n  [`doca-programming-guide`](..\u002F..\u002Fdoca-programming-guide\u002FSKILL.md),\n  layered with the Rivermax-specific overrides in\n  [`TASKS.md ## modify`](TASKS.md#modify).\n- **Standalone build manifests** (`meson.build`,\n  `CMakeLists.txt`, `Cargo.toml`, …) parked inside the skill.\n  The agent constructs the build manifest *in the user's\n  project directory* against the user's installed DOCA, where\n  `pkg-config --modversion doca-rmax` is the source of\n  truth.\n- **Quoted Rivermax symbol names beyond the public family\n  pattern (`doca_rmax_get_*_supported` for capability discovery,\n  receive-only `doca_rmax_in_stream` session objects driven by the\n  standard DOCA Core context lifecycle).** Exact Rivermax\n  symbol names are install-bound and Rivermax-SDK-version-\n  bound; the agent should read them from the installed headers\n  at $(pkg-config --variable=includedir doca-common) and from the\n  public DOCA Rivermax guide rather than rely on agent memory.\n- **A `samples\u002F`, `bindings\u002F`, or `reference\u002F` subtree** of\n  any kind. A mock or incomplete artifact in this skill's\n  tree, even one labeled *\"reference\"*, is misleading: users\n  will read it as buildable.\n\n## Loading order\n\n1. Read this `SKILL.md` first to confirm the user's question is\n   in scope **and** that the Rivermax-SDK + license\n   precondition has been considered.\n2. **For the Rivermax capability matrix, the receive-only input\n   stream model, capability-query rules, error taxonomy,\n   observability, and safety policy, see\n   [CAPABILITIES.md](CAPABILITIES.md).**\n3. **For step-by-step workflows — configure, build, modify,\n   run, test, debug — see [TASKS.md](TASKS.md).**\n\nBoth companion files cross-link to each other,\n[`doca-version`](..\u002F..\u002Fdoca-version\u002FSKILL.md) for the canonical\nDOCA version-handling rules (Rivermax adds a Rivermax-SDK-\nversion axis on top),\n[`doca-eth`](..\u002Fdoca-eth\u002FSKILL.md) for the queue surface\nthat carries the packets,\n[`doca-flow`](..\u002Fdoca-flow\u002FSKILL.md) for the steering side\nthat decides which packets land on which queue, and\n[`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md)\nwhenever the right answer is *\"look it up in the public\nRivermax SDK guide or the installed package layout\"* rather\nthan *\"Rivermax-integration-specific guidance\"*.\n\n## Related skills\n\n- [`doca-public-knowledge-map`](..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md) —\n  the routing table for every public DOCA documentation source\n  and the on-disk layout of an installed DOCA package. The\n  Rivermax URL slug is `DOCA-Rivermax`; the public Rivermax SDK\n  guide (separate product) is reachable from the same routing\n  table when the user asks how to install Rivermax or its\n  license.\n- [`doca-setup`](..\u002F..\u002Fdoca-setup\u002FSKILL.md) — env preparation,\n  install verification, port-state checks (`devlink dev show`,\n  `ip link`), permission and group-membership requirements for\n  opening a `doca_dev`. This skill assumes its preconditions\n  are satisfied; the Rivermax-SDK + license preconditions are\n  layered on top.\n- [`doca-version`](..\u002F..\u002Fdoca-version\u002FSKILL.md) — canonical\n  DOCA version-handling rules. This skill's `## Version\n  compatibility` cross-links the four-way match rule and adds\n  the Rivermax-specific overlay (Rivermax SDK version is a\n  second axis; the capability set on this host is the\n  intersection of DOCA-side cap-query results and\n  Rivermax-side capabilities).\n- [`doca-structured-tools-contract`](..\u002F..\u002Fdoca-structured-tools-contract\u002FSKILL.md) —\n  the bundle's structured-tools precedence rule (detect \u002F\n  prefer \u002F fall back \u002F report). The Command appendix in\n  [TASKS.md](TASKS.md) honors this contract.\n- [`doca-programming-guide`](..\u002F..\u002Fdoca-programming-guide\u002FSKILL.md) —\n  general DOCA programming patterns shared by every library:\n  the canonical `pkg-config` + meson build pattern, the\n  universal modify-a-shipped-sample first-app workflow, the\n  universal lifecycle, the cross-library `DOCA_ERROR_*`\n  taxonomy, and the program-side debug order. This skill\n  layers Rivermax specifics on top.\n- [`doca-eth`](..\u002Fdoca-eth\u002FSKILL.md) — the queue surface\n  that carries the packets a Rivermax stream produces or\n  consumes. DOCA Rivermax does *not* program the underlying\n  queue itself; it integrates with the queue programmed via\n  `doca-eth`. The two skills' lifecycles are independent.\n- [`doca-flow`](..\u002Fdoca-flow\u002FSKILL.md) — the steering\n  surface that decides which packets land on which queue.\n  DOCA Rivermax does *not* program steering itself; an empty\n  Rivermax input stream almost always means a missing or wrong\n  Flow rule (or a missing Rivermax license), not a Rivermax\n  bug.\n- [`doca-debug`](..\u002F..\u002Fdoca-debug\u002FSKILL.md) — the\n  cross-cutting debug ladder (install \u002F version \u002F build \u002F\n  link \u002F runtime \u002F program \u002F driver). Rivermax-specific debug\n  (license precondition gaps, stream-type \u002F packet-rate\n  capability mismatches, scheduling-discipline jitter\n  symptoms) overlays on top of that ladder.\n\n",{"data":32,"body":36},{"license":23,"name":4,"description":6,"metadata":33,"compatibility":35},{"kind":34},"library","Requires DOCA SDK at \u002Fopt\u002Fmellanox\u002Fdoca on Linux (Ubuntu 22.04\u002F24.04 or RHEL\u002FSLES) with a BlueField DPU or ConnectX NIC, AND the separately- installed NVIDIA Rivermax SDK with a valid Rivermax license readable by the user — DOCA does NOT bundle Rivermax. Reads the local install via `pkg-config doca-rmax`; route Rivermax SDK install\u002Flicense questions to the public Rivermax guide.\n",{"type":37,"children":38},"root",[39,48,210,217,229,614,620,662,710,716,721,898,938,944,956,1068,1107,1113,1125,1280,1286,1336,1394,1400],{"type":40,"tag":41,"props":42,"children":44},"element","h1",{"id":43},"doca-rivermax",[45],{"type":46,"value":47},"text","DOCA Rivermax",{"type":40,"tag":49,"props":50,"children":51},"p",{},[52,58,60,65,67,73,75,81,83,93,95,100,102,111,113,118,120,130,132,138,140,150,152,157,159,164,166,171,173,183,184,189,191,201,203,208],{"type":40,"tag":53,"props":54,"children":55},"strong",{},[56],{"type":46,"value":57},"Where to start:",{"type":46,"value":59}," This skill assumes DOCA is already installed,\n",{"type":40,"tag":53,"props":61,"children":62},{},[63],{"type":46,"value":64},"AND",{"type":46,"value":66}," that the NVIDIA Rivermax SDK is separately installed with a\nvalid Rivermax license present on the host. The agent's FIRST\naction on any Rivermax question is to confirm both — without\nRivermax SDK + license, ",{"type":40,"tag":68,"props":69,"children":71},"code",{"className":70},[],[72],{"type":46,"value":4},{"type":46,"value":74}," cannot function regardless\nof how clean the DOCA-side code is, and this is the #1 first-app\nconfusion (DOCA does ",{"type":40,"tag":76,"props":77,"children":78},"em",{},[79],{"type":46,"value":80},"not",{"type":46,"value":82}," bundle Rivermax; it wraps it). Open\n",{"type":40,"tag":84,"props":85,"children":87},"a",{"href":86},"TASKS.md",[88],{"type":40,"tag":68,"props":89,"children":91},{"className":90},[],[92],{"type":46,"value":86},{"type":46,"value":94}," if the user wants to ",{"type":40,"tag":76,"props":96,"children":97},{},[98],{"type":46,"value":99},"do",{"type":46,"value":101}," something\n(configure \u002F build \u002F modify \u002F run \u002F test \u002F debug); open\n",{"type":40,"tag":84,"props":103,"children":105},{"href":104},"CAPABILITIES.md",[106],{"type":40,"tag":68,"props":107,"children":109},{"className":108},[],[110],{"type":46,"value":104},{"type":46,"value":112}," when the question is ",{"type":40,"tag":76,"props":114,"children":115},{},[116],{"type":46,"value":117},"what\ncan DOCA Rivermax express",{"type":46,"value":119}," on this version + this Rivermax\ninstall. If the user has not installed DOCA yet, route to\n",{"type":40,"tag":84,"props":121,"children":123},{"href":122},"..\u002F..\u002Fdoca-setup\u002FSKILL.md",[124],{"type":40,"tag":68,"props":125,"children":127},{"className":126},[],[128],{"type":46,"value":129},"doca-setup",{"type":46,"value":131}," first; for the Rivermax\nSDK + license install itself, route to the public DOCA Rivermax\nguide (slug ",{"type":40,"tag":68,"props":133,"children":135},{"className":134},[],[136],{"type":46,"value":137},"DOCA-Rivermax",{"type":46,"value":139},") via\n",{"type":40,"tag":84,"props":141,"children":143},{"href":142},"..\u002F..\u002Fdoca-public-knowledge-map\u002FSKILL.md",[144],{"type":40,"tag":68,"props":145,"children":147},{"className":146},[],[148],{"type":46,"value":149},"doca-public-knowledge-map",{"type":46,"value":151},".\nIf the user is asking ",{"type":40,"tag":76,"props":153,"children":154},{},[155],{"type":46,"value":156},"\"how do I get packets to land on my\nRivermax input stream at all\"",{"type":46,"value":158},", the answer is layered:\n",{"type":40,"tag":68,"props":160,"children":162},{"className":161},[],[163],{"type":46,"value":4},{"type":46,"value":165}," is the ",{"type":40,"tag":76,"props":167,"children":168},{},[169],{"type":46,"value":170},"Rivermax integration",{"type":46,"value":172}," surface,\n",{"type":40,"tag":84,"props":174,"children":176},{"href":175},"..\u002Fdoca-eth\u002FSKILL.md",[177],{"type":40,"tag":68,"props":178,"children":180},{"className":179},[],[181],{"type":46,"value":182},"doca-eth",{"type":46,"value":165},{"type":40,"tag":76,"props":185,"children":186},{},[187],{"type":46,"value":188},"queue",{"type":46,"value":190}," surface that\ncarries the packets, and ",{"type":40,"tag":84,"props":192,"children":194},{"href":193},"..\u002Fdoca-flow\u002FSKILL.md",[195],{"type":40,"tag":68,"props":196,"children":198},{"className":197},[],[199],{"type":46,"value":200},"doca-flow",{"type":46,"value":202},"\nis the ",{"type":40,"tag":76,"props":204,"children":205},{},[206],{"type":46,"value":207},"steering",{"type":46,"value":209}," surface that directs them.",{"type":40,"tag":211,"props":212,"children":214},"h2",{"id":213},"example-questions-this-skill-answers-well",[215],{"type":46,"value":216},"Example questions this skill answers well",{"type":40,"tag":49,"props":218,"children":219},{},[220,222,227],{"type":46,"value":221},"The CLASSES of DOCA Rivermax questions this skill is built to\nanswer, each with one worked example. The agent should treat the\n",{"type":40,"tag":76,"props":223,"children":224},{},[225],{"type":46,"value":226},"class",{"type":46,"value":228}," as the load-bearing piece — the worked example is a\nsingle instance.",{"type":40,"tag":230,"props":231,"children":232},"ul",{},[233,312,351,401,462,524],{"type":40,"tag":234,"props":235,"children":236},"li",{},[237,249,251,263,265,275],{"type":40,"tag":53,"props":238,"children":239},{},[240,242,247],{"type":46,"value":241},"\"Can I even use ",{"type":40,"tag":68,"props":243,"children":245},{"className":244},[],[246],{"type":46,"value":4},{"type":46,"value":248}," on this host?\"",{"type":46,"value":250}," — worked\nexample: ",{"type":40,"tag":76,"props":252,"children":253},{},[254,256,261],{"type":46,"value":255},"\"the public docs mention ",{"type":40,"tag":68,"props":257,"children":259},{"className":258},[],[260],{"type":46,"value":4},{"type":46,"value":262},"; is it\nusable without doing anything else?\"",{"type":46,"value":264},". Answered by the\nRivermax-SDK + license precondition rule in\n",{"type":40,"tag":84,"props":266,"children":268},{"href":267},"CAPABILITIES.md#safety-policy",[269],{"type":40,"tag":68,"props":270,"children":272},{"className":271},[],[273],{"type":46,"value":274},"CAPABILITIES.md ## Safety policy",{"type":40,"tag":230,"props":276,"children":277},{},[278],{"type":40,"tag":234,"props":279,"children":280},{},[281,283,293,295,303,305,310],{"type":46,"value":282},"the env-prep checklist in\n",{"type":40,"tag":84,"props":284,"children":286},{"href":285},"TASKS.md#configure",[287],{"type":40,"tag":68,"props":288,"children":290},{"className":289},[],[291],{"type":46,"value":292},"TASKS.md ## configure",{"type":46,"value":294}," step 1, which\nroutes the install-side question to the public Rivermax guide\nvia\n",{"type":40,"tag":84,"props":296,"children":297},{"href":142},[298],{"type":40,"tag":68,"props":299,"children":301},{"className":300},[],[302],{"type":46,"value":149},{"type":46,"value":304},"\nand refuses to recommend a fallback to ",{"type":40,"tag":68,"props":306,"children":308},{"className":307},[],[309],{"type":46,"value":182},{"type":46,"value":311}," alone that\nwould silently lose the timing properties.",{"type":40,"tag":234,"props":313,"children":314},{},[315,320,322,327,329,337,339,349],{"type":40,"tag":53,"props":316,"children":317},{},[318],{"type":46,"value":319},"\"How do I set up a SMPTE ST 2110 video receive stream?\"",{"type":46,"value":321}," —\nworked example: ",{"type":40,"tag":76,"props":323,"children":324},{},[325],{"type":46,"value":326},"\"line up an inbound Rivermax stream on a\nrepresentor of a BlueField port for first-run testing\"",{"type":46,"value":328},".\nAnswered by the per-stream object lifecycle in\n",{"type":40,"tag":84,"props":330,"children":331},{"href":285},[332],{"type":40,"tag":68,"props":333,"children":335},{"className":334},[],[336],{"type":46,"value":292},{"type":46,"value":338}," +\n",{"type":40,"tag":84,"props":340,"children":342},{"href":341},"CAPABILITIES.md#capabilities-and-modes",[343],{"type":40,"tag":68,"props":344,"children":346},{"className":345},[],[347],{"type":46,"value":348},"CAPABILITIES.md ## Capabilities and modes",{"type":46,"value":350},"\ninput stream capability table.",{"type":40,"tag":234,"props":352,"children":353},{},[354,367,368,373,375,383],{"type":40,"tag":53,"props":355,"children":356},{},[357,359,365],{"type":46,"value":358},"\"Which ",{"type":40,"tag":68,"props":360,"children":362},{"className":361},[],[363],{"type":46,"value":364},"doca_rmax_get_*_supported",{"type":46,"value":366}," query do I have to call before\npicking a PTP clock or hardware packet-placement order?\"",{"type":46,"value":250},{"type":40,"tag":76,"props":369,"children":370},{},[371],{"type":46,"value":372},"\"can this device + this Rivermax install use\nST 2110-20 sequence-number placement?\"",{"type":46,"value":374},". Answered by the\ncapability-query rule in\n",{"type":40,"tag":84,"props":376,"children":377},{"href":341},[378],{"type":40,"tag":68,"props":379,"children":381},{"className":380},[],[382],{"type":46,"value":348},{"type":40,"tag":230,"props":384,"children":385},{},[386],{"type":40,"tag":234,"props":387,"children":388},{},[389,391,399],{"type":46,"value":390},"step 3 in\n",{"type":40,"tag":84,"props":392,"children":393},{"href":285},[394],{"type":40,"tag":68,"props":395,"children":397},{"className":396},[],[398],{"type":46,"value":292},{"type":46,"value":400},".",{"type":40,"tag":234,"props":402,"children":403},{},[404,409,410,415,417,425],{"type":40,"tag":53,"props":405,"children":406},{},[407],{"type":46,"value":408},"\"My stream is set up but no packets arrive — why?\"",{"type":46,"value":321},{"type":40,"tag":76,"props":411,"children":412},{},[413],{"type":46,"value":414},"\"the Rivermax stream object started cleanly\nbut no recv events fire\"",{"type":46,"value":416},". Answered by the precondition matrix\nin\n",{"type":40,"tag":84,"props":418,"children":419},{"href":267},[420],{"type":40,"tag":68,"props":421,"children":423},{"className":422},[],[424],{"type":46,"value":274},{"type":40,"tag":230,"props":426,"children":427},{},[428],{"type":40,"tag":234,"props":429,"children":430},{},[431,432,440,442,450,452,460],{"type":46,"value":282},{"type":40,"tag":84,"props":433,"children":434},{"href":285},[435],{"type":40,"tag":68,"props":436,"children":438},{"className":437},[],[439],{"type":46,"value":292},{"type":46,"value":441}," step 1, which\nroutes the steering side to\n",{"type":40,"tag":84,"props":443,"children":444},{"href":193},[445],{"type":40,"tag":68,"props":446,"children":448},{"className":447},[],[449],{"type":46,"value":200},{"type":46,"value":451},", the queue side to\n",{"type":40,"tag":84,"props":453,"children":454},{"href":175},[455],{"type":40,"tag":68,"props":456,"children":458},{"className":457},[],[459],{"type":46,"value":182},{"type":46,"value":461},", and the license side\nback to the Rivermax-side precondition.",{"type":40,"tag":234,"props":463,"children":464},{},[465,470,471,476,478,486],{"type":40,"tag":53,"props":466,"children":467},{},[468],{"type":46,"value":469},"\"Is this Rivermax integration capability available on my\ndevice + my installed DOCA + my Rivermax SDK?\"",{"type":46,"value":250},{"type":40,"tag":76,"props":472,"children":473},{},[474],{"type":46,"value":475},"\"does this device + this Rivermax version advertise\nthe PTP clock or placement mode I need\"",{"type":46,"value":477},". Answered by the capability-query\nrule in\n",{"type":40,"tag":84,"props":479,"children":480},{"href":341},[481],{"type":40,"tag":68,"props":482,"children":484},{"className":483},[],[485],{"type":46,"value":348},{"type":40,"tag":230,"props":487,"children":488},{},[489],{"type":40,"tag":234,"props":490,"children":491},{},[492,494,504,506,511,513,523],{"type":46,"value":493},"the version-and-device overlay in\n",{"type":40,"tag":84,"props":495,"children":497},{"href":496},"CAPABILITIES.md#version-compatibility",[498],{"type":40,"tag":68,"props":499,"children":501},{"className":500},[],[502],{"type":46,"value":503},"CAPABILITIES.md ## Version compatibility",{"type":46,"value":505},",\nwhich adds the ",{"type":40,"tag":76,"props":507,"children":508},{},[509],{"type":46,"value":510},"Rivermax-side version is a second axis",{"type":46,"value":512}," rule\non top of the canonical DOCA version-handling chain in\n",{"type":40,"tag":84,"props":514,"children":516},{"href":515},"..\u002F..\u002Fdoca-version\u002FSKILL.md",[517],{"type":40,"tag":68,"props":518,"children":520},{"className":519},[],[521],{"type":46,"value":522},"doca-version",{"type":46,"value":400},{"type":40,"tag":234,"props":525,"children":526},{},[527,540,542,562,564,574],{"type":40,"tag":53,"props":528,"children":529},{},[530,532,538],{"type":46,"value":531},"\"What does this ",{"type":40,"tag":68,"props":533,"children":535},{"className":534},[],[536],{"type":46,"value":537},"DOCA_ERROR_*",{"type":46,"value":539}," from a Rivermax call mean and\nwhich layer caused it?\"",{"type":46,"value":541}," — worked example:\n",{"type":40,"tag":76,"props":543,"children":544},{},[545,547,553,555,561],{"type":46,"value":546},"\"",{"type":40,"tag":68,"props":548,"children":550},{"className":549},[],[551],{"type":46,"value":552},"DOCA_ERROR_NOT_SUPPORTED",{"type":46,"value":554}," from ",{"type":40,"tag":68,"props":556,"children":558},{"className":557},[],[559],{"type":46,"value":560},"doca_rmax_init()",{"type":46,"value":546},{"type":46,"value":563},".\nAnswered by the Rivermax overlay on the\ncross-library taxonomy in\n",{"type":40,"tag":84,"props":565,"children":567},{"href":566},"CAPABILITIES.md#error-taxonomy",[568],{"type":40,"tag":68,"props":569,"children":571},{"className":570},[],[572],{"type":46,"value":573},"CAPABILITIES.md ## Error taxonomy",{"type":40,"tag":230,"props":575,"children":576},{},[577],{"type":40,"tag":234,"props":578,"children":579},{},[580,582,592,594,604,606,612],{"type":46,"value":581},"the layered ladder in\n",{"type":40,"tag":84,"props":583,"children":585},{"href":584},"TASKS.md#debug",[586],{"type":40,"tag":68,"props":587,"children":589},{"className":588},[],[590],{"type":46,"value":591},"TASKS.md ## debug",{"type":46,"value":593}," that escalates to\n",{"type":40,"tag":84,"props":595,"children":597},{"href":596},"..\u002F..\u002Fdoca-debug\u002FSKILL.md",[598],{"type":40,"tag":68,"props":599,"children":601},{"className":600},[],[602],{"type":46,"value":603},"doca-debug",{"type":46,"value":605},", and which preserves\nthe installed header's call-specific mapping: init-time\n",{"type":40,"tag":68,"props":607,"children":609},{"className":608},[],[610],{"type":46,"value":611},"_NOT_SUPPORTED",{"type":46,"value":613}," routes first to Rivermax SDK \u002F license checks;\nlater errors are interpreted from the exact failing call rather\nthan generalized into a license diagnosis.",{"type":40,"tag":211,"props":615,"children":617},{"id":616},"audience",[618],{"type":46,"value":619},"Audience",{"type":40,"tag":49,"props":621,"children":622},{},[623,625,630,632,638,640,644,646,650,652,660],{"type":46,"value":624},"This skill serves ",{"type":40,"tag":53,"props":626,"children":627},{},[628],{"type":46,"value":629},"external developers building applications\nthat consume the DOCA Rivermax integration",{"type":46,"value":631}," — i.e., users whose\ncode calls ",{"type":40,"tag":68,"props":633,"children":635},{"className":634},[],[636],{"type":46,"value":637},"doca_rmax_*",{"type":46,"value":639}," (directly in C\u002FC++, or through\nFFI\u002Fbindings from another language) to drive timing-precise\nmedia-over-IP streams (SMPTE ST 2110, real-time market data,\nhigh-throughput scientific instrument streams) on top of a\nseparately-installed NVIDIA Rivermax SDK on a BlueField or\nConnectX host. It is ",{"type":40,"tag":76,"props":641,"children":642},{},[643],{"type":46,"value":80},{"type":46,"value":645}," for NVIDIA developers contributing to\nDOCA Rivermax itself, and it is ",{"type":40,"tag":76,"props":647,"children":648},{},[649],{"type":46,"value":80},{"type":46,"value":651}," for users who want\nbest-effort packet I\u002FO — for that, route to\n",{"type":40,"tag":84,"props":653,"children":654},{"href":175},[655],{"type":40,"tag":68,"props":656,"children":658},{"className":657},[],[659],{"type":46,"value":182},{"type":46,"value":661}," directly.",{"type":40,"tag":49,"props":663,"children":664},{},[665,670,672,678,680,685,687,693,695,700,702,708],{"type":40,"tag":53,"props":666,"children":667},{},[668],{"type":46,"value":669},"Language scope.",{"type":46,"value":671}," DOCA Rivermax ships as a C library with\n",{"type":40,"tag":68,"props":673,"children":675},{"className":674},[],[676],{"type":46,"value":677},"pkg-config",{"type":46,"value":679}," module name ",{"type":40,"tag":68,"props":681,"children":683},{"className":682},[],[684],{"type":46,"value":4},{"type":46,"value":686},". The shipped samples\nlive under ",{"type":40,"tag":68,"props":688,"children":690},{"className":689},[],[691],{"type":46,"value":692},"\u002Fopt\u002Fmellanox\u002Fdoca\u002Fsamples\u002Fdoca_rmax\u002F",{"type":46,"value":694}," and are\nwritten in C. C and C++ consumers are the canonical case; the\nworked examples in ",{"type":40,"tag":68,"props":696,"children":698},{"className":697},[],[699],{"type":46,"value":86},{"type":46,"value":701}," assume that path. Other-language\nconsumers (Rust, Go, Python, …) consume the same ",{"type":40,"tag":68,"props":703,"children":705},{"className":704},[],[706],{"type":46,"value":707},"*.so",{"type":46,"value":709}," through\nFFI or language-specific bindings; the skill's contribution in\nthat case is to keep the precondition rule (Rivermax SDK +\nlicense), per-stream lifecycle, capability-discovery,\npermission, scheduling-discipline, and error-taxonomy guidance\nlanguage-neutral, and to route the agent to the public C ABI as\nthe authoritative surface that any wrapper will eventually call.",{"type":40,"tag":211,"props":711,"children":713},{"id":712},"when-to-load-this-skill",[714],{"type":46,"value":715},"When to load this skill",{"type":40,"tag":49,"props":717,"children":718},{},[719],{"type":46,"value":720},"Load this skill when the user is doing hands-on DOCA Rivermax\nwork, in any language. Concretely:",{"type":40,"tag":230,"props":722,"children":723},{},[724,755,815,827,847,866,881,893],{"type":40,"tag":234,"props":725,"children":726},{},[727,729,734,736,747,749,754],{"type":46,"value":728},"Confirming that the NVIDIA Rivermax SDK and a valid Rivermax\nlicense are present on the host before any DOCA-side code is\nwritten — this is a ",{"type":40,"tag":53,"props":730,"children":731},{},[732],{"type":46,"value":733},"mandatory precondition",{"type":46,"value":735},", not an error\npath; without it the answer is ",{"type":40,"tag":76,"props":737,"children":738},{},[739,740,745],{"type":46,"value":546},{"type":40,"tag":68,"props":741,"children":743},{"className":742},[],[744],{"type":46,"value":4},{"type":46,"value":746}," cannot be\nused; pick a different library\"",{"type":46,"value":748},", not ",{"type":40,"tag":76,"props":750,"children":751},{},[752],{"type":46,"value":753},"\"let's try and see what\nfails\"",{"type":46,"value":400},{"type":40,"tag":234,"props":756,"children":757},{},[758,760,765,767,773,775,781,783,789,791,797,799,805,807,813],{"type":46,"value":759},"Initializing the global DOCA Rivermax engine with\n",{"type":40,"tag":68,"props":761,"children":763},{"className":762},[],[764],{"type":46,"value":560},{"type":46,"value":766}," \u002F ",{"type":40,"tag":68,"props":768,"children":770},{"className":769},[],[771],{"type":46,"value":772},"doca_rmax_release()",{"type":46,"value":774},", then creating a\n",{"type":40,"tag":68,"props":776,"children":778},{"className":777},[],[779],{"type":46,"value":780},"doca_rmax_in_stream",{"type":46,"value":782}," (receive) context with\n",{"type":40,"tag":68,"props":784,"children":786},{"className":785},[],[787],{"type":46,"value":788},"doca_rmax_in_stream_create()",{"type":46,"value":790}," on a ",{"type":40,"tag":68,"props":792,"children":794},{"className":793},[],[795],{"type":46,"value":796},"doca_dev",{"type":46,"value":798}," opened against a\nphysical port, a representor, or an SF, and converting it via\n",{"type":40,"tag":68,"props":800,"children":802},{"className":801},[],[803],{"type":46,"value":804},"doca_rmax_in_stream_as_ctx()",{"type":46,"value":806}," before ",{"type":40,"tag":68,"props":808,"children":810},{"className":809},[],[811],{"type":46,"value":812},"doca_ctx_start()",{"type":46,"value":814},". The\npublic DOCA Rivermax API is receive-only — there is no\ntransmit\u002Foutput stream object.",{"type":40,"tag":234,"props":816,"children":817},{},[818,820,825],{"type":46,"value":819},"Configuring a Rivermax input stream for SMPTE ST 2110 audio +\nvideo over IP, real-time market data feeds, or a scientific\ninstrument stream — with awareness that PTP-clock and\nhardware packet-placement-order support are device- and\nRivermax-conditional and gate on the matching\n",{"type":40,"tag":68,"props":821,"children":823},{"className":822},[],[824],{"type":46,"value":364},{"type":46,"value":826}," query.",{"type":40,"tag":234,"props":828,"children":829},{},[830,832,838,840,845],{"type":46,"value":831},"Reading or setting Rivermax stream properties via\n",{"type":40,"tag":68,"props":833,"children":835},{"className":834},[],[836],{"type":46,"value":837},"doca_rmax_in_stream_set_*",{"type":46,"value":839}," and querying device + Rivermax\ncapability via the ",{"type":40,"tag":68,"props":841,"children":843},{"className":842},[],[844],{"type":46,"value":364},{"type":46,"value":846}," family before\nassuming PTP-clock or hardware packet-placement-order support.",{"type":40,"tag":234,"props":848,"children":849},{},[850,852,857,859,864],{"type":46,"value":851},"Pairing the Rivermax stream with the ",{"type":40,"tag":68,"props":853,"children":855},{"className":854},[],[856],{"type":46,"value":182},{"type":46,"value":858}," queue surface\nthat carries the packets and the ",{"type":40,"tag":68,"props":860,"children":862},{"className":861},[],[863],{"type":46,"value":200},{"type":46,"value":865}," rules that\nsteer them — Rivermax does not program steering itself.",{"type":40,"tag":234,"props":867,"children":868},{},[869,871,879],{"type":46,"value":870},"Designing the real-time scheduling discipline for the\nstreaming threads (the underlying Rivermax stack expects\nreal-time priority for sub-microsecond jitter; the canonical\nscheduling guidance lives in the Rivermax SDK docs reachable\nthrough\n",{"type":40,"tag":84,"props":872,"children":873},{"href":142},[874],{"type":40,"tag":68,"props":875,"children":877},{"className":876},[],[878],{"type":46,"value":149},{"type":46,"value":880},").",{"type":40,"tag":234,"props":882,"children":883},{},[884,886,891],{"type":46,"value":885},"Debugging a ",{"type":40,"tag":68,"props":887,"children":889},{"className":888},[],[890],{"type":46,"value":537},{"type":46,"value":892}," returned from a Rivermax call\n(lifecycle vs. license \u002F permission vs. capability vs.\ndriver-below) where the cause may live in the DOCA-side\nwrapper, the underlying Rivermax stack, or the licensing\nlayer.",{"type":40,"tag":234,"props":894,"children":895},{},[896],{"type":46,"value":897},"Designing or extending non-C bindings (Rust, Go, Python, …)\nthat wrap the DOCA Rivermax C ABI — for the precondition\nrule, lifecycle, capability, permission, and scheduling rules\nthe wrapper must honor.",{"type":40,"tag":49,"props":899,"children":900},{},[901,903,907,909,917,919,927,929,937],{"type":46,"value":902},"Do ",{"type":40,"tag":53,"props":904,"children":905},{},[906],{"type":46,"value":80},{"type":46,"value":908}," load this skill for general DOCA orientation, for\ninstalling DOCA itself, for installing the Rivermax SDK or\nmanaging the Rivermax license file (those live in the public\nRivermax SDK guide reachable through\n",{"type":40,"tag":84,"props":910,"children":911},{"href":142},[912],{"type":40,"tag":68,"props":913,"children":915},{"className":914},[],[916],{"type":46,"value":149},{"type":46,"value":918},"),\nfor best-effort packet I\u002FO without timing requirements (use\n",{"type":40,"tag":84,"props":920,"children":921},{"href":175},[922],{"type":40,"tag":68,"props":923,"children":925},{"className":924},[],[926],{"type":46,"value":182},{"type":46,"value":928}," directly), or for pure\nhost-side data processing without networking. For DOCA\ndocumentation orientation, use\n",{"type":40,"tag":84,"props":930,"children":931},{"href":142},[932],{"type":40,"tag":68,"props":933,"children":935},{"className":934},[],[936],{"type":46,"value":149},{"type":46,"value":400},{"type":40,"tag":211,"props":939,"children":941},{"id":940},"what-this-skill-provides",[942],{"type":46,"value":943},"What this skill provides",{"type":40,"tag":49,"props":945,"children":946},{},[947,949,954],{"type":46,"value":948},"This is a ",{"type":40,"tag":53,"props":950,"children":951},{},[952],{"type":46,"value":953},"thin loader",{"type":46,"value":955},". The body keeps only the orientation\nneeded to pick the right next file. The substantive\nRivermax-specific material lives in two companion files:",{"type":40,"tag":230,"props":957,"children":958},{},[959,997],{"type":40,"tag":234,"props":960,"children":961},{},[962,967,969,974,976,981,983,988,990,995],{"type":40,"tag":68,"props":963,"children":965},{"className":964},[],[966],{"type":46,"value":104},{"type":46,"value":968}," — what DOCA Rivermax can express on this\nversion ",{"type":40,"tag":76,"props":970,"children":971},{},[972],{"type":46,"value":973},"and this Rivermax SDK install",{"type":46,"value":975},": the\nRivermax-as-hard-dependency rule, the receive-only\n",{"type":40,"tag":68,"props":977,"children":979},{"className":978},[],[980],{"type":46,"value":780},{"type":46,"value":982}," object model, the capability-query surface\n(",{"type":40,"tag":68,"props":984,"children":986},{"className":985},[],[987],{"type":46,"value":364},{"type":46,"value":989},"), the Rivermax error taxonomy\n(mapped onto the cross-library ",{"type":40,"tag":68,"props":991,"children":993},{"className":992},[],[994],{"type":46,"value":537},{"type":46,"value":996}," set, with\nRivermax-specific causes called out per row), the\nobservability surface (per-stream progress engine events,\ncapability snapshots, Rivermax-side license + driver state),\nand the safety policy that gates the Rivermax-SDK-present \u002F\nlicense-present \u002F device-access \u002F scheduling-discipline\npreconditions.",{"type":40,"tag":234,"props":998,"children":999},{},[1000,1005,1007,1013,1015,1021,1022,1028,1029,1035,1037,1043,1044,1050,1052,1058,1060,1066],{"type":40,"tag":68,"props":1001,"children":1003},{"className":1002},[],[1004],{"type":46,"value":86},{"type":46,"value":1006}," — step-by-step workflows for the six in-scope\nRivermax verbs: ",{"type":40,"tag":68,"props":1008,"children":1010},{"className":1009},[],[1011],{"type":46,"value":1012},"configure",{"type":46,"value":1014},", ",{"type":40,"tag":68,"props":1016,"children":1018},{"className":1017},[],[1019],{"type":46,"value":1020},"build",{"type":46,"value":1014},{"type":40,"tag":68,"props":1023,"children":1025},{"className":1024},[],[1026],{"type":46,"value":1027},"modify",{"type":46,"value":1014},{"type":40,"tag":68,"props":1030,"children":1032},{"className":1031},[],[1033],{"type":46,"value":1034},"run",{"type":46,"value":1036},",\n",{"type":40,"tag":68,"props":1038,"children":1040},{"className":1039},[],[1041],{"type":46,"value":1042},"test",{"type":46,"value":1014},{"type":40,"tag":68,"props":1045,"children":1047},{"className":1046},[],[1048],{"type":46,"value":1049},"debug",{"type":46,"value":1051},". Plus a ",{"type":40,"tag":68,"props":1053,"children":1055},{"className":1054},[],[1056],{"type":46,"value":1057},"Deferred task verbs",{"type":46,"value":1059}," block that\npoints out-of-scope questions (installing Rivermax,\nmanaging the license, programming steering, programming the\nunderlying queue) at the right next skill, and a ",{"type":40,"tag":68,"props":1061,"children":1063},{"className":1062},[],[1064],{"type":46,"value":1065},"Command appendix",{"type":46,"value":1067}," of the recurring commands the agent reaches for.",{"type":40,"tag":49,"props":1069,"children":1070},{},[1071,1073,1079,1081,1086,1088,1096,1098,1106],{"type":46,"value":1072},"The skill assumes a host or BlueField where DOCA is already\ninstalled at the standard location, the NVIDIA Rivermax SDK is\ninstalled at its expected location with a valid license, and\nthe user has the privileges their public install profile\nexpects (typically sudo or ",{"type":40,"tag":68,"props":1074,"children":1076},{"className":1075},[],[1077],{"type":46,"value":1078},"mlnx",{"type":46,"value":1080},"-group membership to open a\n",{"type":40,"tag":68,"props":1082,"children":1084},{"className":1083},[],[1085],{"type":46,"value":796},{"type":46,"value":1087}," against a port). It does not cover installing DOCA —\nthat path goes through\n",{"type":40,"tag":84,"props":1089,"children":1090},{"href":122},[1091],{"type":40,"tag":68,"props":1092,"children":1094},{"className":1093},[],[1095],{"type":46,"value":129},{"type":46,"value":1097},". It does not cover\ninstalling Rivermax or its license — that path goes through the\npublic Rivermax SDK guide reachable through\n",{"type":40,"tag":84,"props":1099,"children":1100},{"href":142},[1101],{"type":40,"tag":68,"props":1102,"children":1104},{"className":1103},[],[1105],{"type":46,"value":149},{"type":46,"value":400},{"type":40,"tag":211,"props":1108,"children":1110},{"id":1109},"what-this-skill-deliberately-does-not-ship",[1111],{"type":46,"value":1112},"What this skill deliberately does not ship",{"type":40,"tag":49,"props":1114,"children":1115},{},[1116,1118,1123],{"type":46,"value":1117},"This skill is ",{"type":40,"tag":53,"props":1119,"children":1120},{},[1121],{"type":46,"value":1122},"agent guidance",{"type":46,"value":1124},", not a samples or templates\nbundle. To keep the boundary clean, it deliberately does not\ncontain — and pull requests should not add:",{"type":40,"tag":230,"props":1126,"children":1127},{},[1128,1169,1216,1240],{"type":40,"tag":234,"props":1129,"children":1130},{},[1131,1136,1138,1144,1146,1156,1158,1168],{"type":40,"tag":53,"props":1132,"children":1133},{},[1134],{"type":46,"value":1135},"Pre-written DOCA Rivermax application source code, in any\nlanguage.",{"type":46,"value":1137}," The verified Rivermax source code is the shipped\nC samples at ",{"type":40,"tag":68,"props":1139,"children":1141},{"className":1140},[],[1142],{"type":46,"value":1143},"\u002Fopt\u002Fmellanox\u002Fdoca\u002Fsamples\u002Fdoca_rmax\u002F\u003Cname>\u002F",{"type":46,"value":1145},".\nThe agent's job is to route the user to those files and\nprescribe a minimum-diff modification on them via the\nuniversal modify-a-sample workflow in\n",{"type":40,"tag":84,"props":1147,"children":1149},{"href":1148},"..\u002F..\u002Fdoca-programming-guide\u002FSKILL.md",[1150],{"type":40,"tag":68,"props":1151,"children":1153},{"className":1152},[],[1154],{"type":46,"value":1155},"doca-programming-guide",{"type":46,"value":1157},",\nlayered with the Rivermax-specific overrides in\n",{"type":40,"tag":84,"props":1159,"children":1161},{"href":1160},"TASKS.md#modify",[1162],{"type":40,"tag":68,"props":1163,"children":1165},{"className":1164},[],[1166],{"type":46,"value":1167},"TASKS.md ## modify",{"type":46,"value":400},{"type":40,"tag":234,"props":1170,"children":1171},{},[1172,1177,1179,1185,1186,1192,1193,1199,1201,1206,1208,1214],{"type":40,"tag":53,"props":1173,"children":1174},{},[1175],{"type":46,"value":1176},"Standalone build manifests",{"type":46,"value":1178}," (",{"type":40,"tag":68,"props":1180,"children":1182},{"className":1181},[],[1183],{"type":46,"value":1184},"meson.build",{"type":46,"value":1036},{"type":40,"tag":68,"props":1187,"children":1189},{"className":1188},[],[1190],{"type":46,"value":1191},"CMakeLists.txt",{"type":46,"value":1014},{"type":40,"tag":68,"props":1194,"children":1196},{"className":1195},[],[1197],{"type":46,"value":1198},"Cargo.toml",{"type":46,"value":1200},", …) parked inside the skill.\nThe agent constructs the build manifest ",{"type":40,"tag":76,"props":1202,"children":1203},{},[1204],{"type":46,"value":1205},"in the user's\nproject directory",{"type":46,"value":1207}," against the user's installed DOCA, where\n",{"type":40,"tag":68,"props":1209,"children":1211},{"className":1210},[],[1212],{"type":46,"value":1213},"pkg-config --modversion doca-rmax",{"type":46,"value":1215}," is the source of\ntruth.",{"type":40,"tag":234,"props":1217,"children":1218},{},[1219,1238],{"type":40,"tag":53,"props":1220,"children":1221},{},[1222,1224,1229,1231,1236],{"type":46,"value":1223},"Quoted Rivermax symbol names beyond the public family\npattern (",{"type":40,"tag":68,"props":1225,"children":1227},{"className":1226},[],[1228],{"type":46,"value":364},{"type":46,"value":1230}," for capability discovery,\nreceive-only ",{"type":40,"tag":68,"props":1232,"children":1234},{"className":1233},[],[1235],{"type":46,"value":780},{"type":46,"value":1237}," session objects driven by the\nstandard DOCA Core context lifecycle).",{"type":46,"value":1239}," Exact Rivermax\nsymbol names are install-bound and Rivermax-SDK-version-\nbound; the agent should read them from the installed headers\nat $(pkg-config --variable=includedir doca-common) and from the\npublic DOCA Rivermax guide rather than rely on agent memory.",{"type":40,"tag":234,"props":1241,"children":1242},{},[1243,1271,1273,1278],{"type":40,"tag":53,"props":1244,"children":1245},{},[1246,1248,1254,1255,1261,1263,1269],{"type":46,"value":1247},"A ",{"type":40,"tag":68,"props":1249,"children":1251},{"className":1250},[],[1252],{"type":46,"value":1253},"samples\u002F",{"type":46,"value":1014},{"type":40,"tag":68,"props":1256,"children":1258},{"className":1257},[],[1259],{"type":46,"value":1260},"bindings\u002F",{"type":46,"value":1262},", or ",{"type":40,"tag":68,"props":1264,"children":1266},{"className":1265},[],[1267],{"type":46,"value":1268},"reference\u002F",{"type":46,"value":1270}," subtree",{"type":46,"value":1272}," of\nany kind. A mock or incomplete artifact in this skill's\ntree, even one labeled ",{"type":40,"tag":76,"props":1274,"children":1275},{},[1276],{"type":46,"value":1277},"\"reference\"",{"type":46,"value":1279},", is misleading: users\nwill read it as buildable.",{"type":40,"tag":211,"props":1281,"children":1283},{"id":1282},"loading-order",[1284],{"type":46,"value":1285},"Loading order",{"type":40,"tag":1287,"props":1288,"children":1289},"ol",{},[1290,1310,1323],{"type":40,"tag":234,"props":1291,"children":1292},{},[1293,1295,1301,1303,1308],{"type":46,"value":1294},"Read this ",{"type":40,"tag":68,"props":1296,"children":1298},{"className":1297},[],[1299],{"type":46,"value":1300},"SKILL.md",{"type":46,"value":1302}," first to confirm the user's question is\nin scope ",{"type":40,"tag":53,"props":1304,"children":1305},{},[1306],{"type":46,"value":1307},"and",{"type":46,"value":1309}," that the Rivermax-SDK + license\nprecondition has been considered.",{"type":40,"tag":234,"props":1311,"children":1312},{},[1313],{"type":40,"tag":53,"props":1314,"children":1315},{},[1316,1318,1322],{"type":46,"value":1317},"For the Rivermax capability matrix, the receive-only input\nstream model, capability-query rules, error taxonomy,\nobservability, and safety policy, see\n",{"type":40,"tag":84,"props":1319,"children":1320},{"href":104},[1321],{"type":46,"value":104},{"type":46,"value":400},{"type":40,"tag":234,"props":1324,"children":1325},{},[1326],{"type":40,"tag":53,"props":1327,"children":1328},{},[1329,1331,1335],{"type":46,"value":1330},"For step-by-step workflows — configure, build, modify,\nrun, test, debug — see ",{"type":40,"tag":84,"props":1332,"children":1333},{"href":86},[1334],{"type":46,"value":86},{"type":46,"value":400},{"type":40,"tag":49,"props":1337,"children":1338},{},[1339,1341,1349,1351,1359,1361,1369,1371,1379,1381,1386,1388,1393],{"type":46,"value":1340},"Both companion files cross-link to each other,\n",{"type":40,"tag":84,"props":1342,"children":1343},{"href":515},[1344],{"type":40,"tag":68,"props":1345,"children":1347},{"className":1346},[],[1348],{"type":46,"value":522},{"type":46,"value":1350}," for the canonical\nDOCA version-handling rules (Rivermax adds a Rivermax-SDK-\nversion axis on top),\n",{"type":40,"tag":84,"props":1352,"children":1353},{"href":175},[1354],{"type":40,"tag":68,"props":1355,"children":1357},{"className":1356},[],[1358],{"type":46,"value":182},{"type":46,"value":1360}," for the queue surface\nthat carries the packets,\n",{"type":40,"tag":84,"props":1362,"children":1363},{"href":193},[1364],{"type":40,"tag":68,"props":1365,"children":1367},{"className":1366},[],[1368],{"type":46,"value":200},{"type":46,"value":1370}," for the steering side\nthat decides which packets land on which queue, and\n",{"type":40,"tag":84,"props":1372,"children":1373},{"href":142},[1374],{"type":40,"tag":68,"props":1375,"children":1377},{"className":1376},[],[1378],{"type":46,"value":149},{"type":46,"value":1380},"\nwhenever the right answer is ",{"type":40,"tag":76,"props":1382,"children":1383},{},[1384],{"type":46,"value":1385},"\"look it up in the public\nRivermax SDK guide or the installed package layout\"",{"type":46,"value":1387}," rather\nthan ",{"type":40,"tag":76,"props":1389,"children":1390},{},[1391],{"type":46,"value":1392},"\"Rivermax-integration-specific guidance\"",{"type":46,"value":400},{"type":40,"tag":211,"props":1395,"children":1397},{"id":1396},"related-skills",[1398],{"type":46,"value":1399},"Related skills",{"type":40,"tag":230,"props":1401,"children":1402},{},[1403,1423,1458,1479,1500,1527,1553,1572],{"type":40,"tag":234,"props":1404,"children":1405},{},[1406,1414,1416,1421],{"type":40,"tag":84,"props":1407,"children":1408},{"href":142},[1409],{"type":40,"tag":68,"props":1410,"children":1412},{"className":1411},[],[1413],{"type":46,"value":149},{"type":46,"value":1415}," —\nthe routing table for every public DOCA documentation source\nand the on-disk layout of an installed DOCA package. The\nRivermax URL slug is ",{"type":40,"tag":68,"props":1417,"children":1419},{"className":1418},[],[1420],{"type":46,"value":137},{"type":46,"value":1422},"; the public Rivermax SDK\nguide (separate product) is reachable from the same routing\ntable when the user asks how to install Rivermax or its\nlicense.",{"type":40,"tag":234,"props":1424,"children":1425},{},[1426,1434,1436,1442,1443,1449,1451,1456],{"type":40,"tag":84,"props":1427,"children":1428},{"href":122},[1429],{"type":40,"tag":68,"props":1430,"children":1432},{"className":1431},[],[1433],{"type":46,"value":129},{"type":46,"value":1435}," — env preparation,\ninstall verification, port-state checks (",{"type":40,"tag":68,"props":1437,"children":1439},{"className":1438},[],[1440],{"type":46,"value":1441},"devlink dev show",{"type":46,"value":1036},{"type":40,"tag":68,"props":1444,"children":1446},{"className":1445},[],[1447],{"type":46,"value":1448},"ip link",{"type":46,"value":1450},"), permission and group-membership requirements for\nopening a ",{"type":40,"tag":68,"props":1452,"children":1454},{"className":1453},[],[1455],{"type":46,"value":796},{"type":46,"value":1457},". This skill assumes its preconditions\nare satisfied; the Rivermax-SDK + license preconditions are\nlayered on top.",{"type":40,"tag":234,"props":1459,"children":1460},{},[1461,1469,1471,1477],{"type":40,"tag":84,"props":1462,"children":1463},{"href":515},[1464],{"type":40,"tag":68,"props":1465,"children":1467},{"className":1466},[],[1468],{"type":46,"value":522},{"type":46,"value":1470}," — canonical\nDOCA version-handling rules. This skill's ",{"type":40,"tag":68,"props":1472,"children":1474},{"className":1473},[],[1475],{"type":46,"value":1476},"## Version compatibility",{"type":46,"value":1478}," cross-links the four-way match rule and adds\nthe Rivermax-specific overlay (Rivermax SDK version is a\nsecond axis; the capability set on this host is the\nintersection of DOCA-side cap-query results and\nRivermax-side capabilities).",{"type":40,"tag":234,"props":1480,"children":1481},{},[1482,1492,1494,1498],{"type":40,"tag":84,"props":1483,"children":1485},{"href":1484},"..\u002F..\u002Fdoca-structured-tools-contract\u002FSKILL.md",[1486],{"type":40,"tag":68,"props":1487,"children":1489},{"className":1488},[],[1490],{"type":46,"value":1491},"doca-structured-tools-contract",{"type":46,"value":1493}," —\nthe bundle's structured-tools precedence rule (detect \u002F\nprefer \u002F fall back \u002F report). The Command appendix in\n",{"type":40,"tag":84,"props":1495,"children":1496},{"href":86},[1497],{"type":46,"value":86},{"type":46,"value":1499}," honors this contract.",{"type":40,"tag":234,"props":1501,"children":1502},{},[1503,1511,1513,1518,1520,1525],{"type":40,"tag":84,"props":1504,"children":1505},{"href":1148},[1506],{"type":40,"tag":68,"props":1507,"children":1509},{"className":1508},[],[1510],{"type":46,"value":1155},{"type":46,"value":1512}," —\ngeneral DOCA programming patterns shared by every library:\nthe canonical ",{"type":40,"tag":68,"props":1514,"children":1516},{"className":1515},[],[1517],{"type":46,"value":677},{"type":46,"value":1519}," + meson build pattern, the\nuniversal modify-a-shipped-sample first-app workflow, the\nuniversal lifecycle, the cross-library ",{"type":40,"tag":68,"props":1521,"children":1523},{"className":1522},[],[1524],{"type":46,"value":537},{"type":46,"value":1526},"\ntaxonomy, and the program-side debug order. This skill\nlayers Rivermax specifics on top.",{"type":40,"tag":234,"props":1528,"children":1529},{},[1530,1538,1540,1544,1546,1551],{"type":40,"tag":84,"props":1531,"children":1532},{"href":175},[1533],{"type":40,"tag":68,"props":1534,"children":1536},{"className":1535},[],[1537],{"type":46,"value":182},{"type":46,"value":1539}," — the queue surface\nthat carries the packets a Rivermax stream produces or\nconsumes. DOCA Rivermax does ",{"type":40,"tag":76,"props":1541,"children":1542},{},[1543],{"type":46,"value":80},{"type":46,"value":1545}," program the underlying\nqueue itself; it integrates with the queue programmed via\n",{"type":40,"tag":68,"props":1547,"children":1549},{"className":1548},[],[1550],{"type":46,"value":182},{"type":46,"value":1552},". The two skills' lifecycles are independent.",{"type":40,"tag":234,"props":1554,"children":1555},{},[1556,1564,1566,1570],{"type":40,"tag":84,"props":1557,"children":1558},{"href":193},[1559],{"type":40,"tag":68,"props":1560,"children":1562},{"className":1561},[],[1563],{"type":46,"value":200},{"type":46,"value":1565}," — the steering\nsurface that decides which packets land on which queue.\nDOCA Rivermax does ",{"type":40,"tag":76,"props":1567,"children":1568},{},[1569],{"type":46,"value":80},{"type":46,"value":1571}," program steering itself; an empty\nRivermax input stream almost always means a missing or wrong\nFlow rule (or a missing Rivermax license), not a Rivermax\nbug.",{"type":40,"tag":234,"props":1573,"children":1574},{},[1575,1583],{"type":40,"tag":84,"props":1576,"children":1577},{"href":596},[1578],{"type":40,"tag":68,"props":1579,"children":1581},{"className":1580},[],[1582],{"type":46,"value":603},{"type":46,"value":1584}," — the\ncross-cutting debug ladder (install \u002F version \u002F build \u002F\nlink \u002F runtime \u002F program \u002F driver). Rivermax-specific debug\n(license precondition gaps, stream-type \u002F packet-rate\ncapability mismatches, scheduling-discipline jitter\nsymptoms) overlays on top of that ladder.",{"items":1586,"total":1690},[1587,1604,1618,1632,1644,1661,1676],{"slug":1588,"name":1588,"fn":1589,"description":1590,"org":1591,"tags":1592,"stars":20,"repoUrl":21,"updatedAt":1603},"accelerated-computing-cudf","accelerate data processing with cuDF","Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV\u002FParquet I\u002FO, nullable semantics, and multi-GPU DataFrame workloads.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1593,1596,1599,1600],{"name":1594,"slug":1595,"type":15},"Data Analysis","data-analysis",{"name":1597,"slug":1598,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":1601,"slug":1602,"type":15},"Performance","performance","2026-07-14T05:28:43.176466",{"slug":1605,"name":1605,"fn":1606,"description":1607,"org":1608,"tags":1609,"stars":20,"repoUrl":21,"updatedAt":1617},"aiq-deploy","deploy and manage NVIDIA AI-Q infrastructure","Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1610,1613,1616],{"name":1611,"slug":1612,"type":15},"Deployment","deployment",{"name":1614,"slug":1615,"type":15},"Infrastructure","infrastructure",{"name":9,"slug":8,"type":15},"2026-07-14T05:29:06.667109",{"slug":1619,"name":1619,"fn":1620,"description":1621,"org":1622,"tags":1623,"stars":20,"repoUrl":21,"updatedAt":1631},"aiq-research","conduct deep research with AI-Q","Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1624,1627,1628],{"name":1625,"slug":1626,"type":15},"Agents","agents",{"name":9,"slug":8,"type":15},{"name":1629,"slug":1630,"type":15},"Research","research","2026-07-14T05:28:06.816956",{"slug":1633,"name":1633,"fn":1634,"description":1635,"org":1636,"tags":1637,"stars":20,"repoUrl":21,"updatedAt":1643},"amc-run-sample-calibration","run AMC sample dataset 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'.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1638,1639,1640],{"name":1594,"slug":1595,"type":15},{"name":9,"slug":8,"type":15},{"name":1641,"slug":1642,"type":15},"Testing","testing","2026-07-17T05:29:03.913266",{"slug":1645,"name":1645,"fn":1646,"description":1647,"org":1648,"tags":1649,"stars":20,"repoUrl":21,"updatedAt":1660},"amc-run-video-calibration","calibrate video datasets with AutoMagicCalib","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\u002Flive streams, use amc-run-rtsp-calibration instead.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1650,1653,1656,1657],{"name":1651,"slug":1652,"type":15},"Automation","automation",{"name":1654,"slug":1655,"type":15},"Imaging","imaging",{"name":9,"slug":8,"type":15},{"name":1658,"slug":1659,"type":15},"Video","video","2026-07-17T05:28:53.905004",{"slug":1662,"name":1662,"fn":1663,"description":1664,"org":1665,"tags":1666,"stars":20,"repoUrl":21,"updatedAt":1675},"amc-setup-calibration-stack","deploy AutoMagicCalib microservice with Docker","Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1667,1668,1671,1672],{"name":1611,"slug":1612,"type":15},{"name":1669,"slug":1670,"type":15},"Docker","docker",{"name":9,"slug":8,"type":15},{"name":1673,"slug":1674,"type":15},"Operations","operations","2026-07-17T05:28:56.913999",{"slug":1677,"name":1677,"fn":1678,"description":1679,"org":1680,"tags":1681,"stars":20,"repoUrl":21,"updatedAt":1689},"cudaq-guide","develop quantum applications with CUDA-Q","CUDA-Q onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1682,1683,1686],{"name":9,"slug":8,"type":15},{"name":1684,"slug":1685,"type":15},"Quantum Computing","quantum-computing",{"name":1687,"slug":1688,"type":15},"Simulation","simulation","2026-07-14T05:26:58.898253",305,{"items":1692,"total":1843},[1693,1711,1727,1738,1750,1764,1777,1791,1802,1811,1825,1834],{"slug":1694,"name":1694,"fn":1695,"description":1696,"org":1697,"tags":1698,"stars":1708,"repoUrl":1709,"updatedAt":1710},"nemoclaw-user-guide","retrieve NemoClaw documentation and configuration","Guides human users' AI agents to the NemoClaw docs MCP server and canonical Fern documentation in Markdown form. Use when users ask how to install, configure, operate, troubleshoot, secure, or learn NemoClaw with an AI coding assistant. Trigger keywords - nemoclaw docs, use nemoclaw with ai agent, nemoclaw mcp docs, nemoclaw install help, nemoclaw quickstart, nemoclaw markdown docs, llms.txt, agent skills.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1699,1702,1705],{"name":1700,"slug":1701,"type":15},"Documentation","documentation",{"name":1703,"slug":1704,"type":15},"MCP","mcp",{"name":1706,"slug":1707,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":1712,"name":1712,"fn":1713,"description":1714,"org":1715,"tags":1716,"stars":1724,"repoUrl":1725,"updatedAt":1726},"mcore-build-and-dependency","manage Megatron-LM development environments","Container-based dev environment setup and dependency management for Megatron-LM. Covers acquiring and launching the CI container, uv package management, and updating uv.lock.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1717,1720,1721],{"name":1718,"slug":1719,"type":15},"Containers","containers",{"name":1611,"slug":1612,"type":15},{"name":1722,"slug":1723,"type":15},"Python","python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":1728,"name":1728,"fn":1729,"description":1730,"org":1731,"tags":1732,"stars":1724,"repoUrl":1725,"updatedAt":1737},"mcore-bump-base-image","update NVIDIA PyTorch base images","Bump the NVIDIA PyTorch base image (`nvcr.io\u002Fnvidia\u002Fpytorch:YY.MM-py3`) used by Megatron-LM CI. Covers the two pin sites (GitHub CI in `docker\u002F.ngc_version.dev` and GitLab CI in `.gitlab\u002Fstages\u002F01.build.yml`), the post-bump CI loop (re-run functional tests, refresh golden values, mark broken tests), and the gotchas that bit PRs",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1733,1736],{"name":1734,"slug":1735,"type":15},"CI\u002FCD","ci-cd",{"name":1611,"slug":1612,"type":15},"2026-07-14T05:25:59.97109",{"slug":1739,"name":1739,"fn":1740,"description":1741,"org":1742,"tags":1743,"stars":1724,"repoUrl":1725,"updatedAt":1749},"mcore-cicd","manage CI\u002FCD pipelines for Megatron-LM","CI\u002FCD reference for Megatron-LM. Covers CI pipeline structure, PR scope labels, triggering internal GitLab CI (which force-pushes the current branch to a pull-request\u002FBRANCH ref — always dry-run and verify the destination first; never run against shared or protected branches), and CI failure investigation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1744,1745,1746],{"name":1734,"slug":1735,"type":15},{"name":1611,"slug":1612,"type":15},{"name":1747,"slug":1748,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":1751,"name":1751,"fn":1752,"description":1753,"org":1754,"tags":1755,"stars":1724,"repoUrl":1725,"updatedAt":1763},"mcore-create-issue","investigate CI failures and create issues","Investigate a failing GitHub Actions run or job and create a GitHub issue for the failure.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1756,1759,1760],{"name":1757,"slug":1758,"type":15},"Debugging","debugging",{"name":1747,"slug":1748,"type":15},{"name":1761,"slug":1762,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":1765,"name":1765,"fn":1766,"description":1767,"org":1768,"tags":1769,"stars":1724,"repoUrl":1725,"updatedAt":1776},"mcore-linting-and-formatting","lint and format Megatron-LM code","Linting and formatting for Megatron-LM. Covers running autoformat.sh, tools (ruff, black, isort, pylint, mypy), and code style rules.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1770,1773],{"name":1771,"slug":1772,"type":15},"Best Practices","best-practices",{"name":1774,"slug":1775,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":1778,"name":1778,"fn":1779,"description":1780,"org":1781,"tags":1782,"stars":1724,"repoUrl":1725,"updatedAt":1790},"mcore-migrate-gpt-to-hybrid","migrate Megatron-LM models to HybridModel","Migration guide for moving Megatron Core GPTModel checkpoints, model providers, training commands, and layer mappings to HybridModel.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1783,1786,1789],{"name":1784,"slug":1785,"type":15},"Machine Learning","machine-learning",{"name":1787,"slug":1788,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":1792,"name":1792,"fn":1793,"description":1794,"org":1795,"tags":1796,"stars":1724,"repoUrl":1725,"updatedAt":1801},"mcore-onboard-gb200-1node-tests","onboard functional tests for GB200","Onboard 1-node GitHub MR functional tests for GB200 from existing mr-scoped 2-node tests.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1797,1800],{"name":1798,"slug":1799,"type":15},"QA","qa",{"name":1641,"slug":1642,"type":15},"2026-07-14T05:25:53.673039",{"slug":1803,"name":1803,"fn":1804,"description":1805,"org":1806,"tags":1807,"stars":1724,"repoUrl":1725,"updatedAt":1810},"mcore-run-on-slurm","launch distributed training jobs on SLURM","How to launch distributed Megatron-LM training jobs on a SLURM cluster. Covers a minimal sbatch skeleton, environment-variable setup for torch.distributed.run, CUDA_DEVICE_MAX_CONNECTIONS rules across hardware and parallelism modes, container conventions, monitoring, and per-rank failure diagnosis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1808,1809],{"name":1611,"slug":1612,"type":15},{"name":1614,"slug":1615,"type":15},"2026-07-14T05:25:49.362534",{"slug":1812,"name":1812,"fn":1813,"description":1814,"org":1815,"tags":1816,"stars":1724,"repoUrl":1725,"updatedAt":1824},"mcore-split-pr","split pull requests to reduce review load","Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1817,1820,1821],{"name":1818,"slug":1819,"type":15},"Code Review","code-review",{"name":1747,"slug":1748,"type":15},{"name":1822,"slug":1823,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":1826,"name":1826,"fn":1827,"description":1828,"org":1829,"tags":1830,"stars":1724,"repoUrl":1725,"updatedAt":1833},"mcore-testing","run and manage Megatron-LM tests","Test system for Megatron-LM. Covers test layout, recipe YAML structure, adding and running unit and functional tests, golden values, marker filters, and CI parity.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1831,1832],{"name":1798,"slug":1799,"type":15},{"name":1641,"slug":1642,"type":15},"2026-07-14T05:25:54.928983",{"slug":1835,"name":1835,"fn":1836,"description":1837,"org":1838,"tags":1839,"stars":1724,"repoUrl":1725,"updatedAt":1842},"nightly-sync","manage nightly main-to-dev sync workflows","Domain knowledge for the nightly main-to-dev sync workflow. Covers merge strategy, CI architecture, failure investigation, and known issues.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1840,1841],{"name":1651,"slug":1652,"type":15},{"name":1734,"slug":1735,"type":15},"2026-07-30T05:29:03.275638",496]