Agent skill · NVIDIA

doca-firefly

Use this skill when the user is operating the DOCA Firefly Service container on BlueField — picking the four PTP configuration axes (role / profile / domain / interface), wiring the BlueField PHC + host follower + consumer workload pairing, deciding whether PTP-grade time is even needed (vs. chrony / NTP), or debugging a Firefly deployment where PTP isn't syncing or the host clock isn't following. Trigger even when the user does not explicitly mention "DOCA Firefly" or "PTP" — typical implicit phrasings include "container green but PTP never advances past LISTENING", "Firefly says synced but the host clock still drifts", "sync acquired but offset is tens of microseconds", "my Rivermax SMPTE workload needs PTP", or "is chrony good enough". Refuse and route elsewhere for installing DOCA, host-side chrony / ptp4l config bodies, PTP topology / boundary-clock design, building DOCA apps that read the disciplined PHC, or other DOCA services (DMS, Flow-Inspector, HBN) — those belong to other skills.

What it needs

About 10k tokens when loaded.

What this skill does

DOCA Firefly Service Subsystem inventory (Run-12 correction, verified Run-13). DOCA Firefly is NOT just "a PTP daemon." The shipped docafirefly.yaml exposes six PTP-stack subsystems via environment variables, each with its own STATE, CONFIGFILE, and (where relevant) INTERFACE / DEVICE knobs (the count is six because the PTP Monitor subsystem ships an internal phc2sys monitor client that is distinct from the standalone PHC2SYS subsystem — both ship in the same container image): 1. PTP (PTPSTATE, PTPINTERFACE, PTPCONFIGFILE) — the ptp4l daemon (or master, depending on profile) that drives the BlueField PHC. 2. PTP Monitor (MONITORSTATE, MONITORCONFIGFILE, MONITORCLIENTTYPE, MONITORCLIENTPHC2SYSINTERFACE, MONITORCLIENTCONNECTIONTIMEOUT) — the monitor server + client surface; the internal phc2sys monitor client (MONITORCLIENTTYPE=phc2sys) is a real subsystem inside Firefly, not just a host-side concern. 3. PHC2SYS (PHC2SYSSTATE, PHC2SYSARGS, PHC2SYSCONFIGFILE) — the container-internal phc2sys instance; the bundle previously framed phc2sys as host-only, which is wrong. 4. PPS (PPSSTATE, PPSDEVICE) — the Pulse-Per-Second output (with the additional enablewhilerunning and donothing states beyond plain enable/disable). 5. SyncE (SYNCESTATE, SYNCEINTERFACE, SYNCECONFIGFILE) — Synchronous Ethernet frequency distribution; orthogonal to PTP. 6. Firefly Servo (SERVOSTATE, SERVOCONFIGFILE) — the proprietary Firefly servo loop (alternative to the upstream linuxptp servo). The valid PROFILE values are exactly default / media / telco-l2 / custom (per docafirefly.yaml comments) — the agent must not invent additional values. Subsystems configured as definedbyprofile are controlled by the active PROFILE. Configuration-override env vars follow the pattern CONF<SUBSYSTEM><section><key> (e.g. CONFPTPglobalpriority1, CONFSYNCEglobalbackend, CONFMONITORglobaltelemetryexport); these are the documented surface for overriding individual config keys without shipping a full custom config file. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills NVIDIA/doca-firefly

View the source on GitHub

Browse the @skills marketplace