[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-physical-ai-infrastructure-setup-and-resilient-scaling":3,"mdc--swch36-key":37,"related-repo-nvidia-physical-ai-infrastructure-setup-and-resilient-scaling":1296,"related-org-nvidia-physical-ai-infrastructure-setup-and-resilient-scaling":1399},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":26,"repoUrl":27,"updatedAt":28,"license":29,"forks":30,"topics":31,"repo":32,"sourceUrl":35,"mdContent":36},"physical-ai-infrastructure-setup-and-resilient-scaling","scale NVIDIA physical AI infrastructure","Use when the user wants to set up, scale, validate, or harden NVIDIA physical AI infrastructure for synthetic data generation workflows across local MicroK8s or Azure AKS, including Kubernetes clusters, inference endpoint deployment, OSMO deployment, workload submission readiness, and infrastructure failure recovery. Trigger keywords: physical ai infrastructure, resilient scaling, SDG infrastructure, microk8s, azure aks, NVCF deployment, NIM Operator, OSMO deploy, workflow scaling. Don't trigger for: OSMO log summarization or workload-only operations unless infrastructure setup, scaling, validation, or recovery is requested.",{"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,19,20,23],{"name":13,"slug":14,"type":15},"Azure","azure","tag",{"name":17,"slug":18,"type":15},"Automation","automation",{"name":9,"slug":8,"type":15},{"name":21,"slug":22,"type":15},"AI Infrastructure","ai-infrastructure",{"name":24,"slug":25,"type":15},"Kubernetes","kubernetes",2473,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills","2026-07-14T05:29:54.37865","Apache-2.0",281,[],{"repoUrl":27,"stars":26,"forks":30,"topics":33,"description":34},[],"AI agent skills published by NVIDIA","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fphysical-ai-infrastructure-setup-and-resilient-scaling","---\nname: physical-ai-infrastructure-setup-and-resilient-scaling\ndescription: >-\n  Use when the user wants to set up, scale, validate, or harden NVIDIA\n  physical AI infrastructure for synthetic data generation workflows across\n  local MicroK8s or Azure AKS, including Kubernetes clusters, inference endpoint\n  deployment, OSMO deployment, workload submission readiness, and infrastructure\n  failure recovery. Trigger keywords: physical ai infrastructure, resilient\n  scaling, SDG infrastructure, microk8s, azure aks, NVCF deployment,\n  NIM Operator, OSMO deploy, workflow scaling. Don't trigger for: OSMO log\n  summarization or workload-only operations unless infrastructure setup, scaling,\n  validation, or recovery is requested.\nlicense: Apache-2.0\nversion: \"1.0.0\"\ntools:\n  - Read\n  - Shell\ncompatibility: >-\n  Requires the selected component prerequisites, usually kubectl plus either\n  MicroK8s or Azure CLI\u002FTerraform, and OSMO or inference credentials for the\n  chosen target.\nmetadata:\n  author: NVIDIA Physical AI\n  tags:\n    - physical-ai\n    - infrastructure\n    - kubernetes\n    - azure\n    - microk8s\n    - osmo\n    - nim-operator\n    - scaling\n  domain: ai-ml\n  languages:\n    - bash\n    - hcl\n    - yaml\n---\n\n# Physical AI Infrastructure Setup And Resilient Scaling\n\nCanonical skill for the Physical AI infrastructure stack. Use it to compose cluster,\ninference, OSMO, and workload stages into a reproducible Physical AI SDG\nenvironment, then keep the environment observable and recoverable.\n\n## Operating Rules\n\n- Read only the component references needed for the selected target. Do not\n  load every component by default.\n- Keep the repo as the durable artifact. Fix checked-in config or scripts, then\n  rerun. Do not recover a failed install with untracked one-off changes.\n- Run mutating cluster, OSMO, Helm, Terraform, or Azure operations through\n  checked-in scripts when a script exists. Read-only diagnostics are allowed.\n- Stop at the first red gate. Fix the lowest owning layer in this order:\n  config, script, then skill guidance.\n- Derive values from the environment when possible. Ask only for values that\n  cannot be inferred, such as API keys, target choice, or quota tradeoffs.\n- Store secrets in `${REPO_ROOT}\u002F.env`. Cluster-derived values such as storage,\n  database, Redis, and endpoint names come from Terraform outputs or platform\n  queries, not `.env`.\n- Preflight means no deployed state: no cluster API, Terraform outputs, Helm\n  releases, OSMO pools, or workflow state. Those belong to deploy\u002Fverify gates.\n- Never print, echo, or paste raw keys into commands, YAML, logs, or\n  transcripts. Prefer credential handles, Kubernetes `secretKeyRef`, and\n  runtime-only secret injection. Scan raw transcript exports with\n  `scripts\u002Fscan_transcript_secrets.py` before sharing.\n- Use absolute paths. Derive repo root with `git rev-parse --show-toplevel`.\n\n## Component References\n\nEach component lives inside this skill so the stack has one canonical trigger.\nLoad the component reference only when the selected target needs that slice.\n\n| Concern | Load | Assets |\n| --- | --- | --- |\n| Stage matrix and old driver notes | `components\u002Fdriver\u002Freference.md` | None |\n| MicroK8s cluster | `components\u002Fcluster-microk8s\u002Freference.md` | `components\u002Fcluster-microk8s\u002Fscripts\u002F`, `components\u002Fcluster-microk8s\u002Fruntimeclass-nvidia-runc.yaml` |\n| Azure AKS cluster | `components\u002Fcluster-azure\u002Freference.md` | `components\u002Fcluster-azure\u002Fscripts\u002F`, `components\u002Fcluster-azure\u002Fterraform\u002F` |\n| NIM Operator inference | `components\u002Finference-nim-operator\u002Freference.md` | `components\u002Finference-nim-operator\u002Fscripts\u002F`, `components\u002Finference-nim-operator\u002Fnims\u002F` |\n| NVCF inference | `components\u002Finference-nvcf\u002Freference.md` | `components\u002Finference-nvcf\u002Fscripts\u002F` |\n| Azure AI Foundry inference | `components\u002Finference-azure\u002Freference.md` | `components\u002Finference-azure\u002Fscripts\u002F` |\n| MicroK8s OSMO | `components\u002Fosmo-k8s\u002Freference.md` | `components\u002Fosmo-k8s\u002Fscripts\u002F`, upstream OSMO deploy scripts |\n| Azure OSMO | `components\u002Fosmo-azure\u002Freference.md` | `components\u002Fosmo-azure\u002Fscripts\u002F`, upstream OSMO deploy scripts plus Azure TF outputs |\n| Azure access setup | `components\u002Fazure-access\u002Freference.md` | None |\n| OSMO CLI and workflow operations | `components\u002Fosmo-cli\u002Freference.md` | `components\u002Fosmo-cli\u002Fscripts\u002F`, `components\u002Fosmo-cli\u002Freferences\u002F`, `components\u002Fosmo-cli\u002Fagents\u002F`, `components\u002Fosmo-cli\u002Ftests\u002F` |\n| OpenClaw Azure device login | `components\u002Fopenclaw-azure-login\u002Freference.md` | None |\n\n### OSMO CLI Support Files\n\nThe OSMO CLI component has second-level support files because its command and\nworkflow surface is large. Load these directly only for the stated case.\n\n| File | Read when |\n| --- | --- |\n| `components\u002Fosmo-cli\u002Fagents\u002Fworkflow-expert.md` | Spawning a workflow-generation or workflow-failure subagent. |\n| `components\u002Fosmo-cli\u002Fagents\u002Flogs-reader.md` | Spawning a log summarization subagent for OSMO workflow failures. |\n| `components\u002Fosmo-cli\u002Freferences\u002Fcli-commands.md` | Exact OSMO CLI flags, payloads, or command syntax are needed. |\n| `components\u002Fosmo-cli\u002Freferences\u002Fworkflow-spec.md` | Workflow YAML schema, credentials, outputs, or provider fields are needed. |\n| `components\u002Fosmo-cli\u002Freferences\u002Fworkflow-patterns.md` | Multi-task, data dependency, Jinja, serial, or parallel workflow design is needed. |\n| `components\u002Fosmo-cli\u002Freferences\u002Fadvanced-patterns.md` | Checkpointing, retry\u002Fexit behavior, or node exclusion is needed. |\n| `components\u002Fosmo-cli\u002Ftests\u002Forchestrator-runtime-failure.md` | Validating or debugging the OSMO orchestration review pattern. |\n\n## Target Selection\n\nPick exactly one option per stage. Stage 2 follows stage 1.\n\n1. Kubernetes: `MicroK8s` or `Azure`\n2. OSMO: `MicroK8s OSMO` when Kubernetes is MicroK8s, `Azure OSMO` when\n   Kubernetes is Azure\n3. Inference: `NIM Operator`, `NVCF`, `Azure AI Foundry`, or `None`\n4. Workload: Video Data Augmentation, Defect Image Generation, NuRec Carline\n   Adaptation, NRE, NCore, Asset Harvester, or custom workflow YAML\n\nReject invalid combinations before provisioning:\n\n| Cluster | NIM Operator | NVCF | Azure AI Foundry |\n| --- | --- | --- | --- |\n| MicroK8s | yes | yes | no, Foundry requires Azure identities |\n| Azure | yes | yes | yes |\n\nFor OpenClaw or any chat-only environment that cannot open a browser, read\n`components\u002Fopenclaw-azure-login\u002Freference.md` before Azure prerequisites.\nFor any Azure target, read `components\u002Fazure-access\u002Freference.md` before Azure\ncomponent preflights.\n\n## Setup Flow\n\n1. Confirm target choices and workload compute requirements.\n2. Load the selected component references.\n3. Resolve prerequisites up front, including API keys, Azure access, caller\n   CIDR, GPU quota, storage class, and OSMO login requirements.\n4. Run `scripts\u002Fpreflight.sh` for every selected infrastructure component plus\n   any OSMO CLI\u002Fworkload preflight before provisioning; build the implementation\n   plan from the results and stop on red preflight.\n5. Deploy Kubernetes first. Nothing else starts until the cluster gate is green.\n6. Deploy OSMO and inference after Kubernetes. These can proceed in parallel\n   once the cluster exists, but workload submission waits for both selected\n   gates.\n7. Submit the workload only after OSMO, storage credentials, compute pool, and\n   selected inference endpoints are verified. For VDA, this includes\n   `preflight_credentials.sh`, `pre_submit_guard.py` with resolved `--set`\n   values, non-empty model-cache prefixes, and workflow-namespace endpoint\n   smoke checks.\n8. Monitor through completion. On failed workflow state, inspect events and logs\n   from `components\u002Fosmo-cli\u002Freference.md`; do not resubmit blindly.\n\n## Inference Discovery\n\nAvoid over-deploying expensive endpoints.\n\n1. Scan the chosen workflow spec and default values for endpoint references:\n   `*.osmo-nims.svc.cluster.local`, `api.nvcf.nvidia.com\u002F*`,\n   `*.inference.ai.azure.com`, or `*.cognitiveservices.azure.com`.\n2. Map each reference to the selected backend:\n   - NIM Operator: service name must match a directory under\n     `components\u002Finference-nim-operator\u002Fnims\u002F`.\n   - NVCF: function URL or function ID must be supplied by the environment.\n   - Azure AI Foundry: endpoint name must be deployed through\n     `components\u002Finference-azure\u002Fscripts\u002Finstall.sh`.\n3. If the workflow needs a capability the selected backend lacks, stop and\n   report the mismatch. Do not silently substitute another model.\n\n## Verification Gates\n\nEach stage has its own Verify section in the component reference. These gates\nare mandatory:\n\n| Stage | Gate |\n| --- | --- |\n| Kubernetes | Cluster API reachable, nodes Ready, GPU capacity advertised for GPU paths, and CPU+NVCF paths have `runtimeclass\u002Fnvidia` mapped to `runc`. |\n| Inference | Every endpoint referenced by the workload is reachable. NIM readiness uses `\u002Fv1\u002Fhealth\u002Fready`; NVCF and Foundry still need task-specific authenticated checks. |\n| OSMO | OSMO pods Ready, pool ONLINE, port-forward watchdogs alive, storage credentials configured, and verify-hello workflow COMPLETED. |\n| Workload | Selected workload pre-submit guards pass before submit. `osmo workflow query \u003Cid>` reports `COMPLETED` and every task is green. Failed terminal states require events and logs before retry. |\n\n## Resilient Scaling\n\n- Size the cluster from workload needs before provisioning. For Azure, check CPU\n  and GPU quota for the selected VM families before `terraform apply`.\n- For NIM Operator, deploy only the NIMServices referenced by the workload.\n  Each service pins GPU and model-cache storage for the lifetime of the cluster.\n- Keep OSMO storage URL schemes aligned with the active backend. Local MicroK8s\n  uses MinIO, Azure uses Blob-backed configuration.\n- Treat Pending, Unknown, ImagePullBackOff, unbound PVCs, or 0 Ready replicas as\n  layer failures. Investigate scheduling, storage, image credentials, and\n  adjacent platform state before retrying the same command.\n- For long deploys or workflow watches, provide heartbeat updates with current\n  state, elapsed time, last useful observation, and next check.\n\n## Workload Routing\n\n- Video Data Augmentation: use `skills\u002Fphysical-ai-video-data-augmentation\u002FSKILL.md`.\n- Defect Image Generation: use `skills\u002Fphysical-ai-defect-image-generation\u002FSKILL.md`.\n- NuRec carline adaptation: use `skills\u002Fcarline-adaptation\u002FSKILL.md`.\n- NRE, NCore, and Asset Harvester live in the canonical NuRec catalog listed in\n  `skills\u002FINDEX.md`.\n- Custom workload: submit the provided workflow YAML through OSMO after checking\n  resource requests, image credentials, data credentials, and inference URLs.\n\n## Evaluation Prompts And Results\n\n- Positive trigger: \"Set up resilient Physical AI infrastructure for VDA on\n  Azure AKS with NIM Operator.\"\n  Expected: use this skill.\n- Negative trigger: \"Summarize recent OSMO workflow logs for this workflow ID.\"\n  Expected: do not use this infrastructure setup skill unless the request also\n  involves setup, scaling, validation, or recovery of the infrastructure stack.\n\nLatest static review: 2026-05-26, description keywords match the expected\nroutes above.\n",{"data":38,"body":58},{"name":4,"description":6,"license":29,"version":39,"tools":40,"compatibility":43,"metadata":44},"1.0.0",[41,42],"Read","Shell","Requires the selected component prerequisites, usually kubectl plus either MicroK8s or Azure CLI\u002FTerraform, and OSMO or inference credentials for the chosen target.",{"author":45,"tags":46,"domain":53,"languages":54},"NVIDIA Physical AI",[47,48,25,14,49,50,51,52],"physical-ai","infrastructure","microk8s","osmo","nim-operator","scaling","ai-ml",[55,56,57],"bash","hcl","yaml",{"type":59,"children":60},"root",[61,69,75,82,172,178,183,535,542,547,688,694,699,777,782,851,870,876,957,963,968,1046,1052,1057,1169,1175,1210,1216,1272,1278,1291],{"type":62,"tag":63,"props":64,"children":65},"element","h1",{"id":4},[66],{"type":67,"value":68},"text","Physical AI Infrastructure Setup And Resilient Scaling",{"type":62,"tag":70,"props":71,"children":72},"p",{},[73],{"type":67,"value":74},"Canonical skill for the Physical AI infrastructure stack. Use it to compose cluster,\ninference, OSMO, and workload stages into a reproducible Physical AI SDG\nenvironment, then keep the environment observable and recoverable.",{"type":62,"tag":76,"props":77,"children":79},"h2",{"id":78},"operating-rules",[80],{"type":67,"value":81},"Operating Rules",{"type":62,"tag":83,"props":84,"children":85},"ul",{},[86,92,97,102,107,112,134,139,160],{"type":62,"tag":87,"props":88,"children":89},"li",{},[90],{"type":67,"value":91},"Read only the component references needed for the selected target. Do not\nload every component by default.",{"type":62,"tag":87,"props":93,"children":94},{},[95],{"type":67,"value":96},"Keep the repo as the durable artifact. Fix checked-in config or scripts, then\nrerun. Do not recover a failed install with untracked one-off changes.",{"type":62,"tag":87,"props":98,"children":99},{},[100],{"type":67,"value":101},"Run mutating cluster, OSMO, Helm, Terraform, or Azure operations through\nchecked-in scripts when a script exists. Read-only diagnostics are allowed.",{"type":62,"tag":87,"props":103,"children":104},{},[105],{"type":67,"value":106},"Stop at the first red gate. Fix the lowest owning layer in this order:\nconfig, script, then skill guidance.",{"type":62,"tag":87,"props":108,"children":109},{},[110],{"type":67,"value":111},"Derive values from the environment when possible. Ask only for values that\ncannot be inferred, such as API keys, target choice, or quota tradeoffs.",{"type":62,"tag":87,"props":113,"children":114},{},[115,117,124,126,132],{"type":67,"value":116},"Store secrets in ",{"type":62,"tag":118,"props":119,"children":121},"code",{"className":120},[],[122],{"type":67,"value":123},"${REPO_ROOT}\u002F.env",{"type":67,"value":125},". Cluster-derived values such as storage,\ndatabase, Redis, and endpoint names come from Terraform outputs or platform\nqueries, not ",{"type":62,"tag":118,"props":127,"children":129},{"className":128},[],[130],{"type":67,"value":131},".env",{"type":67,"value":133},".",{"type":62,"tag":87,"props":135,"children":136},{},[137],{"type":67,"value":138},"Preflight means no deployed state: no cluster API, Terraform outputs, Helm\nreleases, OSMO pools, or workflow state. Those belong to deploy\u002Fverify gates.",{"type":62,"tag":87,"props":140,"children":141},{},[142,144,150,152,158],{"type":67,"value":143},"Never print, echo, or paste raw keys into commands, YAML, logs, or\ntranscripts. Prefer credential handles, Kubernetes ",{"type":62,"tag":118,"props":145,"children":147},{"className":146},[],[148],{"type":67,"value":149},"secretKeyRef",{"type":67,"value":151},", and\nruntime-only secret injection. Scan raw transcript exports with\n",{"type":62,"tag":118,"props":153,"children":155},{"className":154},[],[156],{"type":67,"value":157},"scripts\u002Fscan_transcript_secrets.py",{"type":67,"value":159}," before sharing.",{"type":62,"tag":87,"props":161,"children":162},{},[163,165,171],{"type":67,"value":164},"Use absolute paths. Derive repo root with ",{"type":62,"tag":118,"props":166,"children":168},{"className":167},[],[169],{"type":67,"value":170},"git rev-parse --show-toplevel",{"type":67,"value":133},{"type":62,"tag":76,"props":173,"children":175},{"id":174},"component-references",[176],{"type":67,"value":177},"Component References",{"type":62,"tag":70,"props":179,"children":180},{},[181],{"type":67,"value":182},"Each component lives inside this skill so the stack has one canonical trigger.\nLoad the component reference only when the selected target needs that slice.",{"type":62,"tag":184,"props":185,"children":186},"table",{},[187,211],{"type":62,"tag":188,"props":189,"children":190},"thead",{},[191],{"type":62,"tag":192,"props":193,"children":194},"tr",{},[195,201,206],{"type":62,"tag":196,"props":197,"children":198},"th",{},[199],{"type":67,"value":200},"Concern",{"type":62,"tag":196,"props":202,"children":203},{},[204],{"type":67,"value":205},"Load",{"type":62,"tag":196,"props":207,"children":208},{},[209],{"type":67,"value":210},"Assets",{"type":62,"tag":212,"props":213,"children":214},"tbody",{},[215,238,272,305,338,364,390,418,446,467,514],{"type":62,"tag":192,"props":216,"children":217},{},[218,224,233],{"type":62,"tag":219,"props":220,"children":221},"td",{},[222],{"type":67,"value":223},"Stage matrix and old driver notes",{"type":62,"tag":219,"props":225,"children":226},{},[227],{"type":62,"tag":118,"props":228,"children":230},{"className":229},[],[231],{"type":67,"value":232},"components\u002Fdriver\u002Freference.md",{"type":62,"tag":219,"props":234,"children":235},{},[236],{"type":67,"value":237},"None",{"type":62,"tag":192,"props":239,"children":240},{},[241,246,255],{"type":62,"tag":219,"props":242,"children":243},{},[244],{"type":67,"value":245},"MicroK8s cluster",{"type":62,"tag":219,"props":247,"children":248},{},[249],{"type":62,"tag":118,"props":250,"children":252},{"className":251},[],[253],{"type":67,"value":254},"components\u002Fcluster-microk8s\u002Freference.md",{"type":62,"tag":219,"props":256,"children":257},{},[258,264,266],{"type":62,"tag":118,"props":259,"children":261},{"className":260},[],[262],{"type":67,"value":263},"components\u002Fcluster-microk8s\u002Fscripts\u002F",{"type":67,"value":265},", ",{"type":62,"tag":118,"props":267,"children":269},{"className":268},[],[270],{"type":67,"value":271},"components\u002Fcluster-microk8s\u002Fruntimeclass-nvidia-runc.yaml",{"type":62,"tag":192,"props":273,"children":274},{},[275,280,289],{"type":62,"tag":219,"props":276,"children":277},{},[278],{"type":67,"value":279},"Azure AKS cluster",{"type":62,"tag":219,"props":281,"children":282},{},[283],{"type":62,"tag":118,"props":284,"children":286},{"className":285},[],[287],{"type":67,"value":288},"components\u002Fcluster-azure\u002Freference.md",{"type":62,"tag":219,"props":290,"children":291},{},[292,298,299],{"type":62,"tag":118,"props":293,"children":295},{"className":294},[],[296],{"type":67,"value":297},"components\u002Fcluster-azure\u002Fscripts\u002F",{"type":67,"value":265},{"type":62,"tag":118,"props":300,"children":302},{"className":301},[],[303],{"type":67,"value":304},"components\u002Fcluster-azure\u002Fterraform\u002F",{"type":62,"tag":192,"props":306,"children":307},{},[308,313,322],{"type":62,"tag":219,"props":309,"children":310},{},[311],{"type":67,"value":312},"NIM Operator inference",{"type":62,"tag":219,"props":314,"children":315},{},[316],{"type":62,"tag":118,"props":317,"children":319},{"className":318},[],[320],{"type":67,"value":321},"components\u002Finference-nim-operator\u002Freference.md",{"type":62,"tag":219,"props":323,"children":324},{},[325,331,332],{"type":62,"tag":118,"props":326,"children":328},{"className":327},[],[329],{"type":67,"value":330},"components\u002Finference-nim-operator\u002Fscripts\u002F",{"type":67,"value":265},{"type":62,"tag":118,"props":333,"children":335},{"className":334},[],[336],{"type":67,"value":337},"components\u002Finference-nim-operator\u002Fnims\u002F",{"type":62,"tag":192,"props":339,"children":340},{},[341,346,355],{"type":62,"tag":219,"props":342,"children":343},{},[344],{"type":67,"value":345},"NVCF inference",{"type":62,"tag":219,"props":347,"children":348},{},[349],{"type":62,"tag":118,"props":350,"children":352},{"className":351},[],[353],{"type":67,"value":354},"components\u002Finference-nvcf\u002Freference.md",{"type":62,"tag":219,"props":356,"children":357},{},[358],{"type":62,"tag":118,"props":359,"children":361},{"className":360},[],[362],{"type":67,"value":363},"components\u002Finference-nvcf\u002Fscripts\u002F",{"type":62,"tag":192,"props":365,"children":366},{},[367,372,381],{"type":62,"tag":219,"props":368,"children":369},{},[370],{"type":67,"value":371},"Azure AI Foundry inference",{"type":62,"tag":219,"props":373,"children":374},{},[375],{"type":62,"tag":118,"props":376,"children":378},{"className":377},[],[379],{"type":67,"value":380},"components\u002Finference-azure\u002Freference.md",{"type":62,"tag":219,"props":382,"children":383},{},[384],{"type":62,"tag":118,"props":385,"children":387},{"className":386},[],[388],{"type":67,"value":389},"components\u002Finference-azure\u002Fscripts\u002F",{"type":62,"tag":192,"props":391,"children":392},{},[393,398,407],{"type":62,"tag":219,"props":394,"children":395},{},[396],{"type":67,"value":397},"MicroK8s OSMO",{"type":62,"tag":219,"props":399,"children":400},{},[401],{"type":62,"tag":118,"props":402,"children":404},{"className":403},[],[405],{"type":67,"value":406},"components\u002Fosmo-k8s\u002Freference.md",{"type":62,"tag":219,"props":408,"children":409},{},[410,416],{"type":62,"tag":118,"props":411,"children":413},{"className":412},[],[414],{"type":67,"value":415},"components\u002Fosmo-k8s\u002Fscripts\u002F",{"type":67,"value":417},", upstream OSMO deploy scripts",{"type":62,"tag":192,"props":419,"children":420},{},[421,426,435],{"type":62,"tag":219,"props":422,"children":423},{},[424],{"type":67,"value":425},"Azure OSMO",{"type":62,"tag":219,"props":427,"children":428},{},[429],{"type":62,"tag":118,"props":430,"children":432},{"className":431},[],[433],{"type":67,"value":434},"components\u002Fosmo-azure\u002Freference.md",{"type":62,"tag":219,"props":436,"children":437},{},[438,444],{"type":62,"tag":118,"props":439,"children":441},{"className":440},[],[442],{"type":67,"value":443},"components\u002Fosmo-azure\u002Fscripts\u002F",{"type":67,"value":445},", upstream OSMO deploy scripts plus Azure TF outputs",{"type":62,"tag":192,"props":447,"children":448},{},[449,454,463],{"type":62,"tag":219,"props":450,"children":451},{},[452],{"type":67,"value":453},"Azure access setup",{"type":62,"tag":219,"props":455,"children":456},{},[457],{"type":62,"tag":118,"props":458,"children":460},{"className":459},[],[461],{"type":67,"value":462},"components\u002Fazure-access\u002Freference.md",{"type":62,"tag":219,"props":464,"children":465},{},[466],{"type":67,"value":237},{"type":62,"tag":192,"props":468,"children":469},{},[470,475,484],{"type":62,"tag":219,"props":471,"children":472},{},[473],{"type":67,"value":474},"OSMO CLI and workflow operations",{"type":62,"tag":219,"props":476,"children":477},{},[478],{"type":62,"tag":118,"props":479,"children":481},{"className":480},[],[482],{"type":67,"value":483},"components\u002Fosmo-cli\u002Freference.md",{"type":62,"tag":219,"props":485,"children":486},{},[487,493,494,500,501,507,508],{"type":62,"tag":118,"props":488,"children":490},{"className":489},[],[491],{"type":67,"value":492},"components\u002Fosmo-cli\u002Fscripts\u002F",{"type":67,"value":265},{"type":62,"tag":118,"props":495,"children":497},{"className":496},[],[498],{"type":67,"value":499},"components\u002Fosmo-cli\u002Freferences\u002F",{"type":67,"value":265},{"type":62,"tag":118,"props":502,"children":504},{"className":503},[],[505],{"type":67,"value":506},"components\u002Fosmo-cli\u002Fagents\u002F",{"type":67,"value":265},{"type":62,"tag":118,"props":509,"children":511},{"className":510},[],[512],{"type":67,"value":513},"components\u002Fosmo-cli\u002Ftests\u002F",{"type":62,"tag":192,"props":515,"children":516},{},[517,522,531],{"type":62,"tag":219,"props":518,"children":519},{},[520],{"type":67,"value":521},"OpenClaw Azure device login",{"type":62,"tag":219,"props":523,"children":524},{},[525],{"type":62,"tag":118,"props":526,"children":528},{"className":527},[],[529],{"type":67,"value":530},"components\u002Fopenclaw-azure-login\u002Freference.md",{"type":62,"tag":219,"props":532,"children":533},{},[534],{"type":67,"value":237},{"type":62,"tag":536,"props":537,"children":539},"h3",{"id":538},"osmo-cli-support-files",[540],{"type":67,"value":541},"OSMO CLI Support Files",{"type":62,"tag":70,"props":543,"children":544},{},[545],{"type":67,"value":546},"The OSMO CLI component has second-level support files because its command and\nworkflow surface is large. Load these directly only for the stated case.",{"type":62,"tag":184,"props":548,"children":549},{},[550,566],{"type":62,"tag":188,"props":551,"children":552},{},[553],{"type":62,"tag":192,"props":554,"children":555},{},[556,561],{"type":62,"tag":196,"props":557,"children":558},{},[559],{"type":67,"value":560},"File",{"type":62,"tag":196,"props":562,"children":563},{},[564],{"type":67,"value":565},"Read when",{"type":62,"tag":212,"props":567,"children":568},{},[569,586,603,620,637,654,671],{"type":62,"tag":192,"props":570,"children":571},{},[572,581],{"type":62,"tag":219,"props":573,"children":574},{},[575],{"type":62,"tag":118,"props":576,"children":578},{"className":577},[],[579],{"type":67,"value":580},"components\u002Fosmo-cli\u002Fagents\u002Fworkflow-expert.md",{"type":62,"tag":219,"props":582,"children":583},{},[584],{"type":67,"value":585},"Spawning a workflow-generation or workflow-failure subagent.",{"type":62,"tag":192,"props":587,"children":588},{},[589,598],{"type":62,"tag":219,"props":590,"children":591},{},[592],{"type":62,"tag":118,"props":593,"children":595},{"className":594},[],[596],{"type":67,"value":597},"components\u002Fosmo-cli\u002Fagents\u002Flogs-reader.md",{"type":62,"tag":219,"props":599,"children":600},{},[601],{"type":67,"value":602},"Spawning a log summarization subagent for OSMO workflow failures.",{"type":62,"tag":192,"props":604,"children":605},{},[606,615],{"type":62,"tag":219,"props":607,"children":608},{},[609],{"type":62,"tag":118,"props":610,"children":612},{"className":611},[],[613],{"type":67,"value":614},"components\u002Fosmo-cli\u002Freferences\u002Fcli-commands.md",{"type":62,"tag":219,"props":616,"children":617},{},[618],{"type":67,"value":619},"Exact OSMO CLI flags, payloads, or command syntax are needed.",{"type":62,"tag":192,"props":621,"children":622},{},[623,632],{"type":62,"tag":219,"props":624,"children":625},{},[626],{"type":62,"tag":118,"props":627,"children":629},{"className":628},[],[630],{"type":67,"value":631},"components\u002Fosmo-cli\u002Freferences\u002Fworkflow-spec.md",{"type":62,"tag":219,"props":633,"children":634},{},[635],{"type":67,"value":636},"Workflow YAML schema, credentials, outputs, or provider fields are needed.",{"type":62,"tag":192,"props":638,"children":639},{},[640,649],{"type":62,"tag":219,"props":641,"children":642},{},[643],{"type":62,"tag":118,"props":644,"children":646},{"className":645},[],[647],{"type":67,"value":648},"components\u002Fosmo-cli\u002Freferences\u002Fworkflow-patterns.md",{"type":62,"tag":219,"props":650,"children":651},{},[652],{"type":67,"value":653},"Multi-task, data dependency, Jinja, serial, or parallel workflow design is needed.",{"type":62,"tag":192,"props":655,"children":656},{},[657,666],{"type":62,"tag":219,"props":658,"children":659},{},[660],{"type":62,"tag":118,"props":661,"children":663},{"className":662},[],[664],{"type":67,"value":665},"components\u002Fosmo-cli\u002Freferences\u002Fadvanced-patterns.md",{"type":62,"tag":219,"props":667,"children":668},{},[669],{"type":67,"value":670},"Checkpointing, retry\u002Fexit behavior, or node exclusion is needed.",{"type":62,"tag":192,"props":672,"children":673},{},[674,683],{"type":62,"tag":219,"props":675,"children":676},{},[677],{"type":62,"tag":118,"props":678,"children":680},{"className":679},[],[681],{"type":67,"value":682},"components\u002Fosmo-cli\u002Ftests\u002Forchestrator-runtime-failure.md",{"type":62,"tag":219,"props":684,"children":685},{},[686],{"type":67,"value":687},"Validating or debugging the OSMO orchestration review pattern.",{"type":62,"tag":76,"props":689,"children":691},{"id":690},"target-selection",[692],{"type":67,"value":693},"Target Selection",{"type":62,"tag":70,"props":695,"children":696},{},[697],{"type":67,"value":698},"Pick exactly one option per stage. Stage 2 follows stage 1.",{"type":62,"tag":700,"props":701,"children":702},"ol",{},[703,721,740,772],{"type":62,"tag":87,"props":704,"children":705},{},[706,708,714,716],{"type":67,"value":707},"Kubernetes: ",{"type":62,"tag":118,"props":709,"children":711},{"className":710},[],[712],{"type":67,"value":713},"MicroK8s",{"type":67,"value":715}," or ",{"type":62,"tag":118,"props":717,"children":719},{"className":718},[],[720],{"type":67,"value":13},{"type":62,"tag":87,"props":722,"children":723},{},[724,726,731,733,738],{"type":67,"value":725},"OSMO: ",{"type":62,"tag":118,"props":727,"children":729},{"className":728},[],[730],{"type":67,"value":397},{"type":67,"value":732}," when Kubernetes is MicroK8s, ",{"type":62,"tag":118,"props":734,"children":736},{"className":735},[],[737],{"type":67,"value":425},{"type":67,"value":739}," when\nKubernetes is Azure",{"type":62,"tag":87,"props":741,"children":742},{},[743,745,751,752,758,759,765,767],{"type":67,"value":744},"Inference: ",{"type":62,"tag":118,"props":746,"children":748},{"className":747},[],[749],{"type":67,"value":750},"NIM Operator",{"type":67,"value":265},{"type":62,"tag":118,"props":753,"children":755},{"className":754},[],[756],{"type":67,"value":757},"NVCF",{"type":67,"value":265},{"type":62,"tag":118,"props":760,"children":762},{"className":761},[],[763],{"type":67,"value":764},"Azure AI Foundry",{"type":67,"value":766},", or ",{"type":62,"tag":118,"props":768,"children":770},{"className":769},[],[771],{"type":67,"value":237},{"type":62,"tag":87,"props":773,"children":774},{},[775],{"type":67,"value":776},"Workload: Video Data Augmentation, Defect Image Generation, NuRec Carline\nAdaptation, NRE, NCore, Asset Harvester, or custom workflow YAML",{"type":62,"tag":70,"props":778,"children":779},{},[780],{"type":67,"value":781},"Reject invalid combinations before provisioning:",{"type":62,"tag":184,"props":783,"children":784},{},[785,808],{"type":62,"tag":188,"props":786,"children":787},{},[788],{"type":62,"tag":192,"props":789,"children":790},{},[791,796,800,804],{"type":62,"tag":196,"props":792,"children":793},{},[794],{"type":67,"value":795},"Cluster",{"type":62,"tag":196,"props":797,"children":798},{},[799],{"type":67,"value":750},{"type":62,"tag":196,"props":801,"children":802},{},[803],{"type":67,"value":757},{"type":62,"tag":196,"props":805,"children":806},{},[807],{"type":67,"value":764},{"type":62,"tag":212,"props":809,"children":810},{},[811,832],{"type":62,"tag":192,"props":812,"children":813},{},[814,818,823,827],{"type":62,"tag":219,"props":815,"children":816},{},[817],{"type":67,"value":713},{"type":62,"tag":219,"props":819,"children":820},{},[821],{"type":67,"value":822},"yes",{"type":62,"tag":219,"props":824,"children":825},{},[826],{"type":67,"value":822},{"type":62,"tag":219,"props":828,"children":829},{},[830],{"type":67,"value":831},"no, Foundry requires Azure identities",{"type":62,"tag":192,"props":833,"children":834},{},[835,839,843,847],{"type":62,"tag":219,"props":836,"children":837},{},[838],{"type":67,"value":13},{"type":62,"tag":219,"props":840,"children":841},{},[842],{"type":67,"value":822},{"type":62,"tag":219,"props":844,"children":845},{},[846],{"type":67,"value":822},{"type":62,"tag":219,"props":848,"children":849},{},[850],{"type":67,"value":822},{"type":62,"tag":70,"props":852,"children":853},{},[854,856,861,863,868],{"type":67,"value":855},"For OpenClaw or any chat-only environment that cannot open a browser, read\n",{"type":62,"tag":118,"props":857,"children":859},{"className":858},[],[860],{"type":67,"value":530},{"type":67,"value":862}," before Azure prerequisites.\nFor any Azure target, read ",{"type":62,"tag":118,"props":864,"children":866},{"className":865},[],[867],{"type":67,"value":462},{"type":67,"value":869}," before Azure\ncomponent preflights.",{"type":62,"tag":76,"props":871,"children":873},{"id":872},"setup-flow",[874],{"type":67,"value":875},"Setup Flow",{"type":62,"tag":700,"props":877,"children":878},{},[879,884,889,894,907,912,917,945],{"type":62,"tag":87,"props":880,"children":881},{},[882],{"type":67,"value":883},"Confirm target choices and workload compute requirements.",{"type":62,"tag":87,"props":885,"children":886},{},[887],{"type":67,"value":888},"Load the selected component references.",{"type":62,"tag":87,"props":890,"children":891},{},[892],{"type":67,"value":893},"Resolve prerequisites up front, including API keys, Azure access, caller\nCIDR, GPU quota, storage class, and OSMO login requirements.",{"type":62,"tag":87,"props":895,"children":896},{},[897,899,905],{"type":67,"value":898},"Run ",{"type":62,"tag":118,"props":900,"children":902},{"className":901},[],[903],{"type":67,"value":904},"scripts\u002Fpreflight.sh",{"type":67,"value":906}," for every selected infrastructure component plus\nany OSMO CLI\u002Fworkload preflight before provisioning; build the implementation\nplan from the results and stop on red preflight.",{"type":62,"tag":87,"props":908,"children":909},{},[910],{"type":67,"value":911},"Deploy Kubernetes first. Nothing else starts until the cluster gate is green.",{"type":62,"tag":87,"props":913,"children":914},{},[915],{"type":67,"value":916},"Deploy OSMO and inference after Kubernetes. These can proceed in parallel\nonce the cluster exists, but workload submission waits for both selected\ngates.",{"type":62,"tag":87,"props":918,"children":919},{},[920,922,928,929,935,937,943],{"type":67,"value":921},"Submit the workload only after OSMO, storage credentials, compute pool, and\nselected inference endpoints are verified. For VDA, this includes\n",{"type":62,"tag":118,"props":923,"children":925},{"className":924},[],[926],{"type":67,"value":927},"preflight_credentials.sh",{"type":67,"value":265},{"type":62,"tag":118,"props":930,"children":932},{"className":931},[],[933],{"type":67,"value":934},"pre_submit_guard.py",{"type":67,"value":936}," with resolved ",{"type":62,"tag":118,"props":938,"children":940},{"className":939},[],[941],{"type":67,"value":942},"--set",{"type":67,"value":944},"\nvalues, non-empty model-cache prefixes, and workflow-namespace endpoint\nsmoke checks.",{"type":62,"tag":87,"props":946,"children":947},{},[948,950,955],{"type":67,"value":949},"Monitor through completion. On failed workflow state, inspect events and logs\nfrom ",{"type":62,"tag":118,"props":951,"children":953},{"className":952},[],[954],{"type":67,"value":483},{"type":67,"value":956},"; do not resubmit blindly.",{"type":62,"tag":76,"props":958,"children":960},{"id":959},"inference-discovery",[961],{"type":67,"value":962},"Inference Discovery",{"type":62,"tag":70,"props":964,"children":965},{},[966],{"type":67,"value":967},"Avoid over-deploying expensive endpoints.",{"type":62,"tag":700,"props":969,"children":970},{},[971,1005,1041],{"type":62,"tag":87,"props":972,"children":973},{},[974,976,982,983,989,991,997,998,1004],{"type":67,"value":975},"Scan the chosen workflow spec and default values for endpoint references:\n",{"type":62,"tag":118,"props":977,"children":979},{"className":978},[],[980],{"type":67,"value":981},"*.osmo-nims.svc.cluster.local",{"type":67,"value":265},{"type":62,"tag":118,"props":984,"children":986},{"className":985},[],[987],{"type":67,"value":988},"api.nvcf.nvidia.com\u002F*",{"type":67,"value":990},",\n",{"type":62,"tag":118,"props":992,"children":994},{"className":993},[],[995],{"type":67,"value":996},"*.inference.ai.azure.com",{"type":67,"value":766},{"type":62,"tag":118,"props":999,"children":1001},{"className":1000},[],[1002],{"type":67,"value":1003},"*.cognitiveservices.azure.com",{"type":67,"value":133},{"type":62,"tag":87,"props":1006,"children":1007},{},[1008,1010],{"type":67,"value":1009},"Map each reference to the selected backend:\n",{"type":62,"tag":83,"props":1011,"children":1012},{},[1013,1024,1029],{"type":62,"tag":87,"props":1014,"children":1015},{},[1016,1018,1023],{"type":67,"value":1017},"NIM Operator: service name must match a directory under\n",{"type":62,"tag":118,"props":1019,"children":1021},{"className":1020},[],[1022],{"type":67,"value":337},{"type":67,"value":133},{"type":62,"tag":87,"props":1025,"children":1026},{},[1027],{"type":67,"value":1028},"NVCF: function URL or function ID must be supplied by the environment.",{"type":62,"tag":87,"props":1030,"children":1031},{},[1032,1034,1040],{"type":67,"value":1033},"Azure AI Foundry: endpoint name must be deployed through\n",{"type":62,"tag":118,"props":1035,"children":1037},{"className":1036},[],[1038],{"type":67,"value":1039},"components\u002Finference-azure\u002Fscripts\u002Finstall.sh",{"type":67,"value":133},{"type":62,"tag":87,"props":1042,"children":1043},{},[1044],{"type":67,"value":1045},"If the workflow needs a capability the selected backend lacks, stop and\nreport the mismatch. Do not silently substitute another model.",{"type":62,"tag":76,"props":1047,"children":1049},{"id":1048},"verification-gates",[1050],{"type":67,"value":1051},"Verification Gates",{"type":62,"tag":70,"props":1053,"children":1054},{},[1055],{"type":67,"value":1056},"Each stage has its own Verify section in the component reference. These gates\nare mandatory:",{"type":62,"tag":184,"props":1058,"children":1059},{},[1060,1076],{"type":62,"tag":188,"props":1061,"children":1062},{},[1063],{"type":62,"tag":192,"props":1064,"children":1065},{},[1066,1071],{"type":62,"tag":196,"props":1067,"children":1068},{},[1069],{"type":67,"value":1070},"Stage",{"type":62,"tag":196,"props":1072,"children":1073},{},[1074],{"type":67,"value":1075},"Gate",{"type":62,"tag":212,"props":1077,"children":1078},{},[1079,1106,1127,1140],{"type":62,"tag":192,"props":1080,"children":1081},{},[1082,1086],{"type":62,"tag":219,"props":1083,"children":1084},{},[1085],{"type":67,"value":24},{"type":62,"tag":219,"props":1087,"children":1088},{},[1089,1091,1097,1099,1105],{"type":67,"value":1090},"Cluster API reachable, nodes Ready, GPU capacity advertised for GPU paths, and CPU+NVCF paths have ",{"type":62,"tag":118,"props":1092,"children":1094},{"className":1093},[],[1095],{"type":67,"value":1096},"runtimeclass\u002Fnvidia",{"type":67,"value":1098}," mapped to ",{"type":62,"tag":118,"props":1100,"children":1102},{"className":1101},[],[1103],{"type":67,"value":1104},"runc",{"type":67,"value":133},{"type":62,"tag":192,"props":1107,"children":1108},{},[1109,1114],{"type":62,"tag":219,"props":1110,"children":1111},{},[1112],{"type":67,"value":1113},"Inference",{"type":62,"tag":219,"props":1115,"children":1116},{},[1117,1119,1125],{"type":67,"value":1118},"Every endpoint referenced by the workload is reachable. NIM readiness uses ",{"type":62,"tag":118,"props":1120,"children":1122},{"className":1121},[],[1123],{"type":67,"value":1124},"\u002Fv1\u002Fhealth\u002Fready",{"type":67,"value":1126},"; NVCF and Foundry still need task-specific authenticated checks.",{"type":62,"tag":192,"props":1128,"children":1129},{},[1130,1135],{"type":62,"tag":219,"props":1131,"children":1132},{},[1133],{"type":67,"value":1134},"OSMO",{"type":62,"tag":219,"props":1136,"children":1137},{},[1138],{"type":67,"value":1139},"OSMO pods Ready, pool ONLINE, port-forward watchdogs alive, storage credentials configured, and verify-hello workflow COMPLETED.",{"type":62,"tag":192,"props":1141,"children":1142},{},[1143,1148],{"type":62,"tag":219,"props":1144,"children":1145},{},[1146],{"type":67,"value":1147},"Workload",{"type":62,"tag":219,"props":1149,"children":1150},{},[1151,1153,1159,1161,1167],{"type":67,"value":1152},"Selected workload pre-submit guards pass before submit. ",{"type":62,"tag":118,"props":1154,"children":1156},{"className":1155},[],[1157],{"type":67,"value":1158},"osmo workflow query \u003Cid>",{"type":67,"value":1160}," reports ",{"type":62,"tag":118,"props":1162,"children":1164},{"className":1163},[],[1165],{"type":67,"value":1166},"COMPLETED",{"type":67,"value":1168}," and every task is green. Failed terminal states require events and logs before retry.",{"type":62,"tag":76,"props":1170,"children":1172},{"id":1171},"resilient-scaling",[1173],{"type":67,"value":1174},"Resilient Scaling",{"type":62,"tag":83,"props":1176,"children":1177},{},[1178,1190,1195,1200,1205],{"type":62,"tag":87,"props":1179,"children":1180},{},[1181,1183,1189],{"type":67,"value":1182},"Size the cluster from workload needs before provisioning. For Azure, check CPU\nand GPU quota for the selected VM families before ",{"type":62,"tag":118,"props":1184,"children":1186},{"className":1185},[],[1187],{"type":67,"value":1188},"terraform apply",{"type":67,"value":133},{"type":62,"tag":87,"props":1191,"children":1192},{},[1193],{"type":67,"value":1194},"For NIM Operator, deploy only the NIMServices referenced by the workload.\nEach service pins GPU and model-cache storage for the lifetime of the cluster.",{"type":62,"tag":87,"props":1196,"children":1197},{},[1198],{"type":67,"value":1199},"Keep OSMO storage URL schemes aligned with the active backend. Local MicroK8s\nuses MinIO, Azure uses Blob-backed configuration.",{"type":62,"tag":87,"props":1201,"children":1202},{},[1203],{"type":67,"value":1204},"Treat Pending, Unknown, ImagePullBackOff, unbound PVCs, or 0 Ready replicas as\nlayer failures. Investigate scheduling, storage, image credentials, and\nadjacent platform state before retrying the same command.",{"type":62,"tag":87,"props":1206,"children":1207},{},[1208],{"type":67,"value":1209},"For long deploys or workflow watches, provide heartbeat updates with current\nstate, elapsed time, last useful observation, and next check.",{"type":62,"tag":76,"props":1211,"children":1213},{"id":1212},"workload-routing",[1214],{"type":67,"value":1215},"Workload Routing",{"type":62,"tag":83,"props":1217,"children":1218},{},[1219,1231,1243,1255,1267],{"type":62,"tag":87,"props":1220,"children":1221},{},[1222,1224,1230],{"type":67,"value":1223},"Video Data Augmentation: use ",{"type":62,"tag":118,"props":1225,"children":1227},{"className":1226},[],[1228],{"type":67,"value":1229},"skills\u002Fphysical-ai-video-data-augmentation\u002FSKILL.md",{"type":67,"value":133},{"type":62,"tag":87,"props":1232,"children":1233},{},[1234,1236,1242],{"type":67,"value":1235},"Defect Image Generation: use ",{"type":62,"tag":118,"props":1237,"children":1239},{"className":1238},[],[1240],{"type":67,"value":1241},"skills\u002Fphysical-ai-defect-image-generation\u002FSKILL.md",{"type":67,"value":133},{"type":62,"tag":87,"props":1244,"children":1245},{},[1246,1248,1254],{"type":67,"value":1247},"NuRec carline adaptation: use ",{"type":62,"tag":118,"props":1249,"children":1251},{"className":1250},[],[1252],{"type":67,"value":1253},"skills\u002Fcarline-adaptation\u002FSKILL.md",{"type":67,"value":133},{"type":62,"tag":87,"props":1256,"children":1257},{},[1258,1260,1266],{"type":67,"value":1259},"NRE, NCore, and Asset Harvester live in the canonical NuRec catalog listed in\n",{"type":62,"tag":118,"props":1261,"children":1263},{"className":1262},[],[1264],{"type":67,"value":1265},"skills\u002FINDEX.md",{"type":67,"value":133},{"type":62,"tag":87,"props":1268,"children":1269},{},[1270],{"type":67,"value":1271},"Custom workload: submit the provided workflow YAML through OSMO after checking\nresource requests, image credentials, data credentials, and inference URLs.",{"type":62,"tag":76,"props":1273,"children":1275},{"id":1274},"evaluation-prompts-and-results",[1276],{"type":67,"value":1277},"Evaluation Prompts And Results",{"type":62,"tag":83,"props":1279,"children":1280},{},[1281,1286],{"type":62,"tag":87,"props":1282,"children":1283},{},[1284],{"type":67,"value":1285},"Positive trigger: \"Set up resilient Physical AI infrastructure for VDA on\nAzure AKS with NIM Operator.\"\nExpected: use this skill.",{"type":62,"tag":87,"props":1287,"children":1288},{},[1289],{"type":67,"value":1290},"Negative trigger: \"Summarize recent OSMO workflow logs for this workflow ID.\"\nExpected: do not use this infrastructure setup skill unless the request also\ninvolves setup, scaling, validation, or recovery of the infrastructure stack.",{"type":62,"tag":70,"props":1292,"children":1293},{},[1294],{"type":67,"value":1295},"Latest static review: 2026-05-26, description keywords match the expected\nroutes above.",{"items":1297,"total":1398},[1298,1315,1328,1342,1354,1369,1384],{"slug":1299,"name":1299,"fn":1300,"description":1301,"org":1302,"tags":1303,"stars":26,"repoUrl":27,"updatedAt":1314},"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},[1304,1307,1310,1311],{"name":1305,"slug":1306,"type":15},"Data Analysis","data-analysis",{"name":1308,"slug":1309,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":1312,"slug":1313,"type":15},"Performance","performance","2026-07-14T05:28:43.176466",{"slug":1316,"name":1316,"fn":1317,"description":1318,"org":1319,"tags":1320,"stars":26,"repoUrl":27,"updatedAt":1327},"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},[1321,1324,1326],{"name":1322,"slug":1323,"type":15},"Deployment","deployment",{"name":1325,"slug":48,"type":15},"Infrastructure",{"name":9,"slug":8,"type":15},"2026-07-14T05:29:06.667109",{"slug":1329,"name":1329,"fn":1330,"description":1331,"org":1332,"tags":1333,"stars":26,"repoUrl":27,"updatedAt":1341},"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},[1334,1337,1338],{"name":1335,"slug":1336,"type":15},"Agents","agents",{"name":9,"slug":8,"type":15},{"name":1339,"slug":1340,"type":15},"Research","research","2026-07-14T05:28:06.816956",{"slug":1343,"name":1343,"fn":1344,"description":1345,"org":1346,"tags":1347,"stars":26,"repoUrl":27,"updatedAt":1353},"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},[1348,1349,1350],{"name":1305,"slug":1306,"type":15},{"name":9,"slug":8,"type":15},{"name":1351,"slug":1352,"type":15},"Testing","testing","2026-07-17T05:29:03.913266",{"slug":1355,"name":1355,"fn":1356,"description":1357,"org":1358,"tags":1359,"stars":26,"repoUrl":27,"updatedAt":1368},"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},[1360,1361,1364,1365],{"name":17,"slug":18,"type":15},{"name":1362,"slug":1363,"type":15},"Imaging","imaging",{"name":9,"slug":8,"type":15},{"name":1366,"slug":1367,"type":15},"Video","video","2026-07-17T05:28:53.905004",{"slug":1370,"name":1370,"fn":1371,"description":1372,"org":1373,"tags":1374,"stars":26,"repoUrl":27,"updatedAt":1383},"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},[1375,1376,1379,1380],{"name":1322,"slug":1323,"type":15},{"name":1377,"slug":1378,"type":15},"Docker","docker",{"name":9,"slug":8,"type":15},{"name":1381,"slug":1382,"type":15},"Operations","operations","2026-07-17T05:28:56.913999",{"slug":1385,"name":1385,"fn":1386,"description":1387,"org":1388,"tags":1389,"stars":26,"repoUrl":27,"updatedAt":1397},"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},[1390,1391,1394],{"name":9,"slug":8,"type":15},{"name":1392,"slug":1393,"type":15},"Quantum Computing","quantum-computing",{"name":1395,"slug":1396,"type":15},"Simulation","simulation","2026-07-14T05:26:58.898253",305,{"items":1400,"total":1551},[1401,1419,1435,1446,1458,1472,1485,1499,1510,1519,1533,1542],{"slug":1402,"name":1402,"fn":1403,"description":1404,"org":1405,"tags":1406,"stars":1416,"repoUrl":1417,"updatedAt":1418},"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},[1407,1410,1413],{"name":1408,"slug":1409,"type":15},"Documentation","documentation",{"name":1411,"slug":1412,"type":15},"MCP","mcp",{"name":1414,"slug":1415,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":1420,"name":1420,"fn":1421,"description":1422,"org":1423,"tags":1424,"stars":1432,"repoUrl":1433,"updatedAt":1434},"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},[1425,1428,1429],{"name":1426,"slug":1427,"type":15},"Containers","containers",{"name":1322,"slug":1323,"type":15},{"name":1430,"slug":1431,"type":15},"Python","python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":1436,"name":1436,"fn":1437,"description":1438,"org":1439,"tags":1440,"stars":1432,"repoUrl":1433,"updatedAt":1445},"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},[1441,1444],{"name":1442,"slug":1443,"type":15},"CI\u002FCD","ci-cd",{"name":1322,"slug":1323,"type":15},"2026-07-14T05:25:59.97109",{"slug":1447,"name":1447,"fn":1448,"description":1449,"org":1450,"tags":1451,"stars":1432,"repoUrl":1433,"updatedAt":1457},"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},[1452,1453,1454],{"name":1442,"slug":1443,"type":15},{"name":1322,"slug":1323,"type":15},{"name":1455,"slug":1456,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":1459,"name":1459,"fn":1460,"description":1461,"org":1462,"tags":1463,"stars":1432,"repoUrl":1433,"updatedAt":1471},"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},[1464,1467,1468],{"name":1465,"slug":1466,"type":15},"Debugging","debugging",{"name":1455,"slug":1456,"type":15},{"name":1469,"slug":1470,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":1473,"name":1473,"fn":1474,"description":1475,"org":1476,"tags":1477,"stars":1432,"repoUrl":1433,"updatedAt":1484},"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},[1478,1481],{"name":1479,"slug":1480,"type":15},"Best Practices","best-practices",{"name":1482,"slug":1483,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":1486,"name":1486,"fn":1487,"description":1488,"org":1489,"tags":1490,"stars":1432,"repoUrl":1433,"updatedAt":1498},"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},[1491,1494,1497],{"name":1492,"slug":1493,"type":15},"Machine Learning","machine-learning",{"name":1495,"slug":1496,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":1500,"name":1500,"fn":1501,"description":1502,"org":1503,"tags":1504,"stars":1432,"repoUrl":1433,"updatedAt":1509},"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},[1505,1508],{"name":1506,"slug":1507,"type":15},"QA","qa",{"name":1351,"slug":1352,"type":15},"2026-07-14T05:25:53.673039",{"slug":1511,"name":1511,"fn":1512,"description":1513,"org":1514,"tags":1515,"stars":1432,"repoUrl":1433,"updatedAt":1518},"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},[1516,1517],{"name":1322,"slug":1323,"type":15},{"name":1325,"slug":48,"type":15},"2026-07-14T05:25:49.362534",{"slug":1520,"name":1520,"fn":1521,"description":1522,"org":1523,"tags":1524,"stars":1432,"repoUrl":1433,"updatedAt":1532},"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},[1525,1528,1529],{"name":1526,"slug":1527,"type":15},"Code Review","code-review",{"name":1455,"slug":1456,"type":15},{"name":1530,"slug":1531,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":1534,"name":1534,"fn":1535,"description":1536,"org":1537,"tags":1538,"stars":1432,"repoUrl":1433,"updatedAt":1541},"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},[1539,1540],{"name":1506,"slug":1507,"type":15},{"name":1351,"slug":1352,"type":15},"2026-07-14T05:25:54.928983",{"slug":1543,"name":1543,"fn":1544,"description":1545,"org":1546,"tags":1547,"stars":1432,"repoUrl":1433,"updatedAt":1550},"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},[1548,1549],{"name":17,"slug":18,"type":15},{"name":1442,"slug":1443,"type":15},"2026-07-30T05:29:03.275638",496]