[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-simready-foundation-add-feature-adapter":3,"mdc-uhzens-key":31,"related-repo-nvidia-simready-foundation-add-feature-adapter":705,"related-org-nvidia-simready-foundation-add-feature-adapter":784},{"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},"simready-foundation-add-feature-adapter","mutate USD assets with feature adapters","Use for adding SimReady feature adapters that mutate USD assets between exact feature or profile versions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"nvidia","NVIDIA","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fnvidia.png",[12,14,17],{"name":9,"slug":8,"type":13},"tag",{"name":15,"slug":16,"type":13},"Simulation","simulation",{"name":18,"slug":19,"type":13},"Engineering","engineering",52,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fsimready-foundation","2026-07-14T05:34:02.999518","Apache-2.0",8,[],{"repoUrl":21,"stars":20,"forks":24,"topics":27,"description":28},[],"SimReady Foundation is a central repository for defining simulation content specifications based on various runtime use cases. ","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fsimready-foundation\u002Ftree\u002FHEAD\u002Fskills\u002Fsimready-foundation-add-feature-adapter","---\nname: simready-foundation-add-feature-adapter\ndescription: \"Use for adding SimReady feature adapters that mutate USD assets between exact feature or profile versions.\"\nlicense: Apache-2.0\nmetadata:\n  author: \"Shaad Boochoon \u003Csboochoon@nvidia.com>\"\n  tags:\n    - simready\n    - adapter\n    - usd\n---\n\n\n# SimReady Add Feature Adapter\n\n## Purpose\nUse this skill to add a direct asset mutation path between feature versions or profile feature bundles. Feature adapters live under `nv_core\u002Fcip_specs\u002Fasset_handler_modules\u002F` and modify an output USD stage so an asset can move from an input feature\u002Fprofile contract to a target one.\n\nUse this after feature\u002Fprofile differences are known. If no USD mutation is needed, document that no adapter is required.\n\n## Prerequisites\nBefore editing, read:\n\n- `AGENTS.md`\n- `nv_core\u002Fsr_specs\u002Fdocs\u002Fguides\u002Ffeature_adapters\u002Ffeature_adapters.md`\n- source and target feature manifests\n- source and target profile versions, if this is profile-driven\n- existing adapters in the relevant asset handler module\n\n## Inputs\n\nCollect or infer:\n\n| Input | Requirement |\n|---|---|\n| `input_feature_id` | Source feature ID. |\n| `input_feature_version` | Source feature version. |\n| `output_feature_id` | Target feature ID. |\n| `output_feature_version` | Target feature version. |\n| `profile_path` | Optional source\u002Ftarget profile upgrade path. |\n| `mutation` | Exact USD data changes required. |\n| `module_path` | Asset handler module directory. |\n| `test_assets` | Assets that pass input and should pass output after mutation. |\n\n## Instructions\n\nUse this checklist when changing the repository:\n\n1. Compare source and target manifests. Identify only the requirements that differ.\n2. Decide whether a direct adapter is necessary. For profile transformations, every feature difference must have a direct adapter path or a documented blocker. If target requirements are documentation-only or already satisfied by source assets, document no-op behavior.\n3. Choose or create the asset handler module path.\n4. Add a Python adapter file with `@feature_adapter` metadata using exact feature IDs and versions.\n5. Implement `modify_stage(input_stage, output_stage)`:\n   - read source stage only when needed\n   - mutate output stage deterministically\n   - preserve unrelated authored data\n   - save output stage when complete\n6. Use native USD schemas and existing helper patterns from neighboring adapters.\n7. Add focused tests or manual validation notes:\n   - input validates against source feature\u002Fprofile\n   - output validates against target feature\u002Fprofile\n   - mutation is idempotent or safely repeatable where practical\n8. Update adapter indexes, imports, or registration files if the repo requires them.\n9. If the adapter is needed for a new profile version, update the profile docs or migration notes.\n\n## Examples\n\nExample request:\n\n```text\nAdd a feature adapter that mutates assets from one exact SimReady feature\u002Fprofile version to another.\n```\n\nExpected result summary:\n\n```text\nchanged_files: new docs, manifests, indexes, or validation scaffolding\nvalidation: focused static checks and any relevant docs\u002Fbuild checks\nremaining_gaps: requirement, validator, adapter, profile, or runtime-test follow-up\n```\n\n## Policies\n\n- Do not use adapters to hide invalid source assets; adapters should bridge defined feature differences.\n- Do not mutate source stages in place.\n- Do not invent property values that need user intent or prediction unless the adapter contract explicitly defines defaults.\n- Keep profile upgrade paths direct: every changed feature needs a clear adapter path or a documented blocker.\n\n## Limitations\n\n- Do not mutate published feature or profile versions in place.\n- Do not invent requirement IDs or validator behavior when the contract is ambiguous; record the question.\n- Do not skip index, manifest, validation, or downstream follow-up notes.\n\n## Troubleshooting\n\n- Error: the new concept overlaps an existing artifact. Solution: update the existing capability, requirement, feature, profile, or adapter instead.\n- Error: names or IDs conflict. Solution: re-check naming conventions and nearby indexes before editing further.\n- Error: validation strategy is unclear. Solution: document deferred validation and the exact follow-up skill.\n\n## Resources\n\n- `assets\u002Fopenai.yaml` preserves optional UI metadata for clients that read skill display hints. It is not required for the workflow.\n\n## Summary Format\n\nReport:\n\n| Field | Meaning |\n|---|---|\n| `adapter_name` | Adapter identifier. |\n| `adapter_path` | Python file path. |\n| `input_feature` | Source feature ID\u002Fversion. |\n| `output_feature` | Target feature ID\u002Fversion. |\n| `mutation_summary` | USD opinions changed. |\n| `profile_upgrade` | Profile path supported, if any. |\n| `validation` | Tests\u002Fassets run and remaining gaps. |\n",{"data":32,"body":39},{"name":4,"description":6,"license":23,"metadata":33},{"author":34,"tags":35},"Shaad Boochoon \u003Csboochoon@nvidia.com>",[36,37,38],"simready","adapter","usd",{"type":40,"children":41},"root",[42,51,58,73,78,84,89,127,133,138,302,308,313,419,425,430,442,447,456,462,485,491,509,515,533,539,553,559,564],{"type":43,"tag":44,"props":45,"children":47},"element","h1",{"id":46},"simready-add-feature-adapter",[48],{"type":49,"value":50},"text","SimReady Add Feature Adapter",{"type":43,"tag":52,"props":53,"children":55},"h2",{"id":54},"purpose",[56],{"type":49,"value":57},"Purpose",{"type":43,"tag":59,"props":60,"children":61},"p",{},[62,64,71],{"type":49,"value":63},"Use this skill to add a direct asset mutation path between feature versions or profile feature bundles. Feature adapters live under ",{"type":43,"tag":65,"props":66,"children":68},"code",{"className":67},[],[69],{"type":49,"value":70},"nv_core\u002Fcip_specs\u002Fasset_handler_modules\u002F",{"type":49,"value":72}," and modify an output USD stage so an asset can move from an input feature\u002Fprofile contract to a target one.",{"type":43,"tag":59,"props":74,"children":75},{},[76],{"type":49,"value":77},"Use this after feature\u002Fprofile differences are known. If no USD mutation is needed, document that no adapter is required.",{"type":43,"tag":52,"props":79,"children":81},{"id":80},"prerequisites",[82],{"type":49,"value":83},"Prerequisites",{"type":43,"tag":59,"props":85,"children":86},{},[87],{"type":49,"value":88},"Before editing, read:",{"type":43,"tag":90,"props":91,"children":92},"ul",{},[93,103,112,117,122],{"type":43,"tag":94,"props":95,"children":96},"li",{},[97],{"type":43,"tag":65,"props":98,"children":100},{"className":99},[],[101],{"type":49,"value":102},"AGENTS.md",{"type":43,"tag":94,"props":104,"children":105},{},[106],{"type":43,"tag":65,"props":107,"children":109},{"className":108},[],[110],{"type":49,"value":111},"nv_core\u002Fsr_specs\u002Fdocs\u002Fguides\u002Ffeature_adapters\u002Ffeature_adapters.md",{"type":43,"tag":94,"props":113,"children":114},{},[115],{"type":49,"value":116},"source and target feature manifests",{"type":43,"tag":94,"props":118,"children":119},{},[120],{"type":49,"value":121},"source and target profile versions, if this is profile-driven",{"type":43,"tag":94,"props":123,"children":124},{},[125],{"type":49,"value":126},"existing adapters in the relevant asset handler module",{"type":43,"tag":52,"props":128,"children":130},{"id":129},"inputs",[131],{"type":49,"value":132},"Inputs",{"type":43,"tag":59,"props":134,"children":135},{},[136],{"type":49,"value":137},"Collect or infer:",{"type":43,"tag":139,"props":140,"children":141},"table",{},[142,161],{"type":43,"tag":143,"props":144,"children":145},"thead",{},[146],{"type":43,"tag":147,"props":148,"children":149},"tr",{},[150,156],{"type":43,"tag":151,"props":152,"children":153},"th",{},[154],{"type":49,"value":155},"Input",{"type":43,"tag":151,"props":157,"children":158},{},[159],{"type":49,"value":160},"Requirement",{"type":43,"tag":162,"props":163,"children":164},"tbody",{},[165,183,200,217,234,251,268,285],{"type":43,"tag":147,"props":166,"children":167},{},[168,178],{"type":43,"tag":169,"props":170,"children":171},"td",{},[172],{"type":43,"tag":65,"props":173,"children":175},{"className":174},[],[176],{"type":49,"value":177},"input_feature_id",{"type":43,"tag":169,"props":179,"children":180},{},[181],{"type":49,"value":182},"Source feature ID.",{"type":43,"tag":147,"props":184,"children":185},{},[186,195],{"type":43,"tag":169,"props":187,"children":188},{},[189],{"type":43,"tag":65,"props":190,"children":192},{"className":191},[],[193],{"type":49,"value":194},"input_feature_version",{"type":43,"tag":169,"props":196,"children":197},{},[198],{"type":49,"value":199},"Source feature version.",{"type":43,"tag":147,"props":201,"children":202},{},[203,212],{"type":43,"tag":169,"props":204,"children":205},{},[206],{"type":43,"tag":65,"props":207,"children":209},{"className":208},[],[210],{"type":49,"value":211},"output_feature_id",{"type":43,"tag":169,"props":213,"children":214},{},[215],{"type":49,"value":216},"Target feature ID.",{"type":43,"tag":147,"props":218,"children":219},{},[220,229],{"type":43,"tag":169,"props":221,"children":222},{},[223],{"type":43,"tag":65,"props":224,"children":226},{"className":225},[],[227],{"type":49,"value":228},"output_feature_version",{"type":43,"tag":169,"props":230,"children":231},{},[232],{"type":49,"value":233},"Target feature version.",{"type":43,"tag":147,"props":235,"children":236},{},[237,246],{"type":43,"tag":169,"props":238,"children":239},{},[240],{"type":43,"tag":65,"props":241,"children":243},{"className":242},[],[244],{"type":49,"value":245},"profile_path",{"type":43,"tag":169,"props":247,"children":248},{},[249],{"type":49,"value":250},"Optional source\u002Ftarget profile upgrade path.",{"type":43,"tag":147,"props":252,"children":253},{},[254,263],{"type":43,"tag":169,"props":255,"children":256},{},[257],{"type":43,"tag":65,"props":258,"children":260},{"className":259},[],[261],{"type":49,"value":262},"mutation",{"type":43,"tag":169,"props":264,"children":265},{},[266],{"type":49,"value":267},"Exact USD data changes required.",{"type":43,"tag":147,"props":269,"children":270},{},[271,280],{"type":43,"tag":169,"props":272,"children":273},{},[274],{"type":43,"tag":65,"props":275,"children":277},{"className":276},[],[278],{"type":49,"value":279},"module_path",{"type":43,"tag":169,"props":281,"children":282},{},[283],{"type":49,"value":284},"Asset handler module directory.",{"type":43,"tag":147,"props":286,"children":287},{},[288,297],{"type":43,"tag":169,"props":289,"children":290},{},[291],{"type":43,"tag":65,"props":292,"children":294},{"className":293},[],[295],{"type":49,"value":296},"test_assets",{"type":43,"tag":169,"props":298,"children":299},{},[300],{"type":49,"value":301},"Assets that pass input and should pass output after mutation.",{"type":43,"tag":52,"props":303,"children":305},{"id":304},"instructions",[306],{"type":49,"value":307},"Instructions",{"type":43,"tag":59,"props":309,"children":310},{},[311],{"type":49,"value":312},"Use this checklist when changing the repository:",{"type":43,"tag":314,"props":315,"children":316},"ol",{},[317,322,327,332,345,381,386,409,414],{"type":43,"tag":94,"props":318,"children":319},{},[320],{"type":49,"value":321},"Compare source and target manifests. Identify only the requirements that differ.",{"type":43,"tag":94,"props":323,"children":324},{},[325],{"type":49,"value":326},"Decide whether a direct adapter is necessary. For profile transformations, every feature difference must have a direct adapter path or a documented blocker. If target requirements are documentation-only or already satisfied by source assets, document no-op behavior.",{"type":43,"tag":94,"props":328,"children":329},{},[330],{"type":49,"value":331},"Choose or create the asset handler module path.",{"type":43,"tag":94,"props":333,"children":334},{},[335,337,343],{"type":49,"value":336},"Add a Python adapter file with ",{"type":43,"tag":65,"props":338,"children":340},{"className":339},[],[341],{"type":49,"value":342},"@feature_adapter",{"type":49,"value":344}," metadata using exact feature IDs and versions.",{"type":43,"tag":94,"props":346,"children":347},{},[348,350,356,358],{"type":49,"value":349},"Implement ",{"type":43,"tag":65,"props":351,"children":353},{"className":352},[],[354],{"type":49,"value":355},"modify_stage(input_stage, output_stage)",{"type":49,"value":357},":\n",{"type":43,"tag":90,"props":359,"children":360},{},[361,366,371,376],{"type":43,"tag":94,"props":362,"children":363},{},[364],{"type":49,"value":365},"read source stage only when needed",{"type":43,"tag":94,"props":367,"children":368},{},[369],{"type":49,"value":370},"mutate output stage deterministically",{"type":43,"tag":94,"props":372,"children":373},{},[374],{"type":49,"value":375},"preserve unrelated authored data",{"type":43,"tag":94,"props":377,"children":378},{},[379],{"type":49,"value":380},"save output stage when complete",{"type":43,"tag":94,"props":382,"children":383},{},[384],{"type":49,"value":385},"Use native USD schemas and existing helper patterns from neighboring adapters.",{"type":43,"tag":94,"props":387,"children":388},{},[389,391],{"type":49,"value":390},"Add focused tests or manual validation notes:\n",{"type":43,"tag":90,"props":392,"children":393},{},[394,399,404],{"type":43,"tag":94,"props":395,"children":396},{},[397],{"type":49,"value":398},"input validates against source feature\u002Fprofile",{"type":43,"tag":94,"props":400,"children":401},{},[402],{"type":49,"value":403},"output validates against target feature\u002Fprofile",{"type":43,"tag":94,"props":405,"children":406},{},[407],{"type":49,"value":408},"mutation is idempotent or safely repeatable where practical",{"type":43,"tag":94,"props":410,"children":411},{},[412],{"type":49,"value":413},"Update adapter indexes, imports, or registration files if the repo requires them.",{"type":43,"tag":94,"props":415,"children":416},{},[417],{"type":49,"value":418},"If the adapter is needed for a new profile version, update the profile docs or migration notes.",{"type":43,"tag":52,"props":420,"children":422},{"id":421},"examples",[423],{"type":49,"value":424},"Examples",{"type":43,"tag":59,"props":426,"children":427},{},[428],{"type":49,"value":429},"Example request:",{"type":43,"tag":431,"props":432,"children":437},"pre",{"className":433,"code":435,"language":49,"meta":436},[434],"language-text","Add a feature adapter that mutates assets from one exact SimReady feature\u002Fprofile version to another.\n","",[438],{"type":43,"tag":65,"props":439,"children":440},{"__ignoreMap":436},[441],{"type":49,"value":435},{"type":43,"tag":59,"props":443,"children":444},{},[445],{"type":49,"value":446},"Expected result summary:",{"type":43,"tag":431,"props":448,"children":451},{"className":449,"code":450,"language":49,"meta":436},[434],"changed_files: new docs, manifests, indexes, or validation scaffolding\nvalidation: focused static checks and any relevant docs\u002Fbuild checks\nremaining_gaps: requirement, validator, adapter, profile, or runtime-test follow-up\n",[452],{"type":43,"tag":65,"props":453,"children":454},{"__ignoreMap":436},[455],{"type":49,"value":450},{"type":43,"tag":52,"props":457,"children":459},{"id":458},"policies",[460],{"type":49,"value":461},"Policies",{"type":43,"tag":90,"props":463,"children":464},{},[465,470,475,480],{"type":43,"tag":94,"props":466,"children":467},{},[468],{"type":49,"value":469},"Do not use adapters to hide invalid source assets; adapters should bridge defined feature differences.",{"type":43,"tag":94,"props":471,"children":472},{},[473],{"type":49,"value":474},"Do not mutate source stages in place.",{"type":43,"tag":94,"props":476,"children":477},{},[478],{"type":49,"value":479},"Do not invent property values that need user intent or prediction unless the adapter contract explicitly defines defaults.",{"type":43,"tag":94,"props":481,"children":482},{},[483],{"type":49,"value":484},"Keep profile upgrade paths direct: every changed feature needs a clear adapter path or a documented blocker.",{"type":43,"tag":52,"props":486,"children":488},{"id":487},"limitations",[489],{"type":49,"value":490},"Limitations",{"type":43,"tag":90,"props":492,"children":493},{},[494,499,504],{"type":43,"tag":94,"props":495,"children":496},{},[497],{"type":49,"value":498},"Do not mutate published feature or profile versions in place.",{"type":43,"tag":94,"props":500,"children":501},{},[502],{"type":49,"value":503},"Do not invent requirement IDs or validator behavior when the contract is ambiguous; record the question.",{"type":43,"tag":94,"props":505,"children":506},{},[507],{"type":49,"value":508},"Do not skip index, manifest, validation, or downstream follow-up notes.",{"type":43,"tag":52,"props":510,"children":512},{"id":511},"troubleshooting",[513],{"type":49,"value":514},"Troubleshooting",{"type":43,"tag":90,"props":516,"children":517},{},[518,523,528],{"type":43,"tag":94,"props":519,"children":520},{},[521],{"type":49,"value":522},"Error: the new concept overlaps an existing artifact. Solution: update the existing capability, requirement, feature, profile, or adapter instead.",{"type":43,"tag":94,"props":524,"children":525},{},[526],{"type":49,"value":527},"Error: names or IDs conflict. Solution: re-check naming conventions and nearby indexes before editing further.",{"type":43,"tag":94,"props":529,"children":530},{},[531],{"type":49,"value":532},"Error: validation strategy is unclear. Solution: document deferred validation and the exact follow-up skill.",{"type":43,"tag":52,"props":534,"children":536},{"id":535},"resources",[537],{"type":49,"value":538},"Resources",{"type":43,"tag":90,"props":540,"children":541},{},[542],{"type":43,"tag":94,"props":543,"children":544},{},[545,551],{"type":43,"tag":65,"props":546,"children":548},{"className":547},[],[549],{"type":49,"value":550},"assets\u002Fopenai.yaml",{"type":49,"value":552}," preserves optional UI metadata for clients that read skill display hints. It is not required for the workflow.",{"type":43,"tag":52,"props":554,"children":556},{"id":555},"summary-format",[557],{"type":49,"value":558},"Summary Format",{"type":43,"tag":59,"props":560,"children":561},{},[562],{"type":49,"value":563},"Report:",{"type":43,"tag":139,"props":565,"children":566},{},[567,583],{"type":43,"tag":143,"props":568,"children":569},{},[570],{"type":43,"tag":147,"props":571,"children":572},{},[573,578],{"type":43,"tag":151,"props":574,"children":575},{},[576],{"type":49,"value":577},"Field",{"type":43,"tag":151,"props":579,"children":580},{},[581],{"type":49,"value":582},"Meaning",{"type":43,"tag":162,"props":584,"children":585},{},[586,603,620,637,654,671,688],{"type":43,"tag":147,"props":587,"children":588},{},[589,598],{"type":43,"tag":169,"props":590,"children":591},{},[592],{"type":43,"tag":65,"props":593,"children":595},{"className":594},[],[596],{"type":49,"value":597},"adapter_name",{"type":43,"tag":169,"props":599,"children":600},{},[601],{"type":49,"value":602},"Adapter identifier.",{"type":43,"tag":147,"props":604,"children":605},{},[606,615],{"type":43,"tag":169,"props":607,"children":608},{},[609],{"type":43,"tag":65,"props":610,"children":612},{"className":611},[],[613],{"type":49,"value":614},"adapter_path",{"type":43,"tag":169,"props":616,"children":617},{},[618],{"type":49,"value":619},"Python file path.",{"type":43,"tag":147,"props":621,"children":622},{},[623,632],{"type":43,"tag":169,"props":624,"children":625},{},[626],{"type":43,"tag":65,"props":627,"children":629},{"className":628},[],[630],{"type":49,"value":631},"input_feature",{"type":43,"tag":169,"props":633,"children":634},{},[635],{"type":49,"value":636},"Source feature ID\u002Fversion.",{"type":43,"tag":147,"props":638,"children":639},{},[640,649],{"type":43,"tag":169,"props":641,"children":642},{},[643],{"type":43,"tag":65,"props":644,"children":646},{"className":645},[],[647],{"type":49,"value":648},"output_feature",{"type":43,"tag":169,"props":650,"children":651},{},[652],{"type":49,"value":653},"Target feature ID\u002Fversion.",{"type":43,"tag":147,"props":655,"children":656},{},[657,666],{"type":43,"tag":169,"props":658,"children":659},{},[660],{"type":43,"tag":65,"props":661,"children":663},{"className":662},[],[664],{"type":49,"value":665},"mutation_summary",{"type":43,"tag":169,"props":667,"children":668},{},[669],{"type":49,"value":670},"USD opinions changed.",{"type":43,"tag":147,"props":672,"children":673},{},[674,683],{"type":43,"tag":169,"props":675,"children":676},{},[677],{"type":43,"tag":65,"props":678,"children":680},{"className":679},[],[681],{"type":49,"value":682},"profile_upgrade",{"type":43,"tag":169,"props":684,"children":685},{},[686],{"type":49,"value":687},"Profile path supported, if any.",{"type":43,"tag":147,"props":689,"children":690},{},[691,700],{"type":43,"tag":169,"props":692,"children":693},{},[694],{"type":43,"tag":65,"props":695,"children":697},{"className":696},[],[698],{"type":49,"value":699},"validation",{"type":43,"tag":169,"props":701,"children":702},{},[703],{"type":49,"value":704},"Tests\u002Fassets run and remaining gaps.",{"items":706,"total":783},[707,719,730,736,748,759,772],{"slug":708,"name":708,"fn":709,"description":710,"org":711,"tags":712,"stars":20,"repoUrl":21,"updatedAt":718},"simready-foundation-add-capability","add SimReady capability documentation","Add SimReady capability docs, requirement indexes, validation stubs, and registrations for new requirement families.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[713,716,717],{"name":714,"slug":715,"type":13},"Documentation","documentation",{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},"2026-07-14T05:34:08.047242",{"slug":720,"name":720,"fn":721,"description":722,"org":723,"tags":724,"stars":20,"repoUrl":21,"updatedAt":729},"simready-foundation-add-feature","add SimReady features and documentation","Use for adding SimReady feature docs, manifests, requirement mappings, validation strategy, and index entries.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[725,726,727,728],{"name":714,"slug":715,"type":13},{"name":18,"slug":19,"type":13},{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},"2026-07-14T05:34:23.330216",{"slug":4,"name":4,"fn":5,"description":6,"org":731,"tags":732,"stars":20,"repoUrl":21,"updatedAt":22},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[733,734,735],{"name":18,"slug":19,"type":13},{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},{"slug":737,"name":737,"fn":738,"description":739,"org":740,"tags":741,"stars":20,"repoUrl":21,"updatedAt":747},"simready-foundation-add-profile","add SimReady profile versions","Use for adding SimReady profile versions with feature bundles, docs, indexes, and validation notes.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[742,743,744,745],{"name":714,"slug":715,"type":13},{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},{"name":746,"slug":699,"type":13},"Validation","2026-07-14T05:34:00.482781",{"slug":749,"name":749,"fn":750,"description":751,"org":752,"tags":753,"stars":20,"repoUrl":21,"updatedAt":758},"simready-foundation-add-requirement","add atomic SimReady requirements","Use for adding atomic SimReady requirements with stable IDs, docs, examples, indexes, and validator follow-up.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[754,755,756,757],{"name":714,"slug":715,"type":13},{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},{"name":746,"slug":699,"type":13},"2026-07-14T05:34:11.881936",{"slug":760,"name":760,"fn":761,"description":762,"org":763,"tags":764,"stars":20,"repoUrl":21,"updatedAt":771},"simready-foundation-add-runtime-test","add SimReady runtime tests","Use for adding SimReady runtime tests, runner expectations, batch\u002Fjob\u002Freport notes, and validation evidence.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[765,766,767,770],{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},{"name":768,"slug":769,"type":13},"Testing","testing",{"name":746,"slug":699,"type":13},"2026-07-14T05:34:09.295859",{"slug":773,"name":773,"fn":774,"description":775,"org":776,"tags":777,"stars":20,"repoUrl":21,"updatedAt":782},"simready-foundation-add-validator","add executable SimReady validators","Use for adding executable SimReady validators that report requirement IDs with focused pass\u002Ffail coverage.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[778,779,780,781],{"name":18,"slug":19,"type":13},{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},{"name":746,"slug":699,"type":13},"2026-07-14T05:34:14.407249",26,{"items":785,"total":940},[786,802,820,831,843,857,870,884,895,906,920,929],{"slug":787,"name":787,"fn":788,"description":789,"org":790,"tags":791,"stars":799,"repoUrl":800,"updatedAt":801},"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},[792,793,796],{"name":714,"slug":715,"type":13},{"name":794,"slug":795,"type":13},"MCP","mcp",{"name":797,"slug":798,"type":13},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":803,"name":803,"fn":804,"description":805,"org":806,"tags":807,"stars":817,"repoUrl":818,"updatedAt":819},"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},[808,811,814],{"name":809,"slug":810,"type":13},"Containers","containers",{"name":812,"slug":813,"type":13},"Deployment","deployment",{"name":815,"slug":816,"type":13},"Python","python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":821,"name":821,"fn":822,"description":823,"org":824,"tags":825,"stars":817,"repoUrl":818,"updatedAt":830},"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},[826,829],{"name":827,"slug":828,"type":13},"CI\u002FCD","ci-cd",{"name":812,"slug":813,"type":13},"2026-07-14T05:25:59.97109",{"slug":832,"name":832,"fn":833,"description":834,"org":835,"tags":836,"stars":817,"repoUrl":818,"updatedAt":842},"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},[837,838,839],{"name":827,"slug":828,"type":13},{"name":812,"slug":813,"type":13},{"name":840,"slug":841,"type":13},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":844,"name":844,"fn":845,"description":846,"org":847,"tags":848,"stars":817,"repoUrl":818,"updatedAt":856},"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},[849,852,853],{"name":850,"slug":851,"type":13},"Debugging","debugging",{"name":840,"slug":841,"type":13},{"name":854,"slug":855,"type":13},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":858,"name":858,"fn":859,"description":860,"org":861,"tags":862,"stars":817,"repoUrl":818,"updatedAt":869},"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},[863,866],{"name":864,"slug":865,"type":13},"Best Practices","best-practices",{"name":867,"slug":868,"type":13},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":871,"name":871,"fn":872,"description":873,"org":874,"tags":875,"stars":817,"repoUrl":818,"updatedAt":883},"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},[876,879,882],{"name":877,"slug":878,"type":13},"Machine Learning","machine-learning",{"name":880,"slug":881,"type":13},"Migration","migration",{"name":9,"slug":8,"type":13},"2026-07-17T06:07:11.777011",{"slug":885,"name":885,"fn":886,"description":887,"org":888,"tags":889,"stars":817,"repoUrl":818,"updatedAt":894},"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},[890,893],{"name":891,"slug":892,"type":13},"QA","qa",{"name":768,"slug":769,"type":13},"2026-07-14T05:25:53.673039",{"slug":896,"name":896,"fn":897,"description":898,"org":899,"tags":900,"stars":817,"repoUrl":818,"updatedAt":905},"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},[901,902],{"name":812,"slug":813,"type":13},{"name":903,"slug":904,"type":13},"Infrastructure","infrastructure","2026-07-14T05:25:49.362534",{"slug":907,"name":907,"fn":908,"description":909,"org":910,"tags":911,"stars":817,"repoUrl":818,"updatedAt":919},"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},[912,915,916],{"name":913,"slug":914,"type":13},"Code Review","code-review",{"name":840,"slug":841,"type":13},{"name":917,"slug":918,"type":13},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":921,"name":921,"fn":922,"description":923,"org":924,"tags":925,"stars":817,"repoUrl":818,"updatedAt":928},"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},[926,927],{"name":891,"slug":892,"type":13},{"name":768,"slug":769,"type":13},"2026-07-14T05:25:54.928983",{"slug":930,"name":930,"fn":931,"description":932,"org":933,"tags":934,"stars":817,"repoUrl":818,"updatedAt":939},"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},[935,938],{"name":936,"slug":937,"type":13},"Automation","automation",{"name":827,"slug":828,"type":13},"2026-07-30T05:29:03.275638",496]