[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-nemo-relay-migrate-from-flow":3,"mdc-xd7bdz-key":58,"related-repo-nvidia-nemo-relay-migrate-from-flow":1110,"related-org-nvidia-nemo-relay-migrate-from-flow":1208},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":29,"repoUrl":30,"updatedAt":31,"license":32,"forks":33,"topics":34,"repo":53,"sourceUrl":56,"mdContent":57},"nemo-relay-migrate-from-flow","migrate applications from NeMo Flow to Relay","Use this skill when migrating applications, examples, integrations, documentation, manifests, or repository code from NeMo Flow to NeMo Relay across Python, Rust, Node.js, Go, C FFI, CLI, configuration, and observability surfaces.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"nvidia","NVIDIA","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fnvidia.png",[12,16,17,20,23,26],{"name":13,"slug":14,"type":15},"Migration","migration","tag",{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"Python","python",{"name":21,"slug":22,"type":15},"Rust","rust",{"name":24,"slug":25,"type":15},"Node.js","nodejs",{"name":27,"slug":28,"type":15},"Go","go",75,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNeMo-Relay","2026-07-17T05:30:28.259456","Apache-2.0",41,[35,36,37,38,39,40,41,42,43,44,45,8,46,47,48,49,50,51,52],"agents","ai","atif","atof","claude-code","codex","deepagents","hermes-agent","langchain","langgraph","middleware","observability","openclaw","openinference","optimization","otel","runtime","security",{"repoUrl":30,"stars":29,"forks":33,"topics":54,"description":55},[35,36,37,38,39,40,41,42,43,44,45,8,46,47,48,49,50,51,52],"Multi-language agent runtime and library for execution scope management, lifecycle events, and middleware on tool and LLM calls.","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNeMo-Relay\u002Ftree\u002FHEAD\u002Fskills\u002Fnemo-relay-migrate-from-flow","---\nname: nemo-relay-migrate-from-flow\ndescription: Use this skill when migrating applications, examples, integrations, documentation, manifests, or repository code from NeMo Flow to NeMo Relay across Python, Rust, Node.js, Go, C FFI, CLI, configuration, and observability surfaces.\nlicense: Apache-2.0\nmetadata:\n  author: NVIDIA Corporation and Affiliates\n---\n\n# Migrate From NeMo Flow To NeMo Relay\n\nUse this skill when a user has existing NeMo Flow code or documentation and\nwants it converted to NeMo Relay. Treat the migration as a mechanical rename\nplus language-specific validation, not a behavior rewrite.\nKeep compatibility exceptions explicit before applying broad renames.\n\n## Default Workflow\n\n1. Inspect the working tree and identify touched surfaces: Rust, Python,\n   Node.js, Go, C FFI, CLI\u002Fconfig, docs, or integrations.\n2. Resolve `SKILL_DIR` to the absolute directory containing this `SKILL.md` and\n   `TARGET_PATH` to the source repository or target project. Run the bundled\n   helper in dry-run mode before editing:\n   `python3 \"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py\" \"$TARGET_PATH\" --rename-paths`\n3. Review the reported text edits and path renames with the user. Obtain explicit\n   confirmation for the resolved target root, then rerun with `--write`,\n   `--rename-paths`, and `--confirm-root \"$TARGET_PATH\"`.\n4. Apply language-specific cleanup for package manager lockfiles, generated\n   artifacts, and public API examples.\n5. Search for remaining Flow names and verify the affected language surfaces.\n\n## Mechanical Rename Map\n\n- Brand and repository: `NeMo Flow` -> `NeMo Relay`,\n  `NeMo-Flow` -> `NeMo-Relay`\n- Python: `nemo-flow` -> `nemo-relay`, `nemo_flow` -> `nemo_relay`,\n  `python\u002Fnemo_flow` -> `python\u002Fnemo_relay`\n- Rust: `nemo-flow` -> `nemo-relay`, `nemo-flow-adaptive` ->\n  `nemo-relay-adaptive`, `nemo_flow::` -> `nemo_relay::`\n- Node.js: `nemo-flow-node` -> `nemo-relay-node`, including related entry\n  points such as `\u002Ftyped`, `\u002Fplugin`, `\u002Fadaptive`, and `\u002Fobservability`\n- Go: `github.com\u002FNVIDIA\u002FNeMo-Flow\u002Fgo\u002Fnemo_flow` ->\n  `github.com\u002FNVIDIA\u002FNeMo-Relay\u002Fgo\u002Fnemo_relay`, package aliases\n  `nemo_flow` -> `nemo_relay`, and source directories `go\u002Fnemo_flow` ->\n  `go\u002Fnemo_relay`\n- C FFI: `nemo_flow.h` -> `nemo_relay.h`, `nemo_flow_*` ->\n  `nemo_relay_*`, `NemoFlow*` -> `NemoRelay*`, and `NEMO_FLOW_*` ->\n  `NEMO_RELAY_*`\n- CLI\u002Fconfig: `nemo-flow` -> `nemo-relay`, `.nemo-flow` -> `.nemo-relay`,\n  `~\u002F.config\u002Fnemo-flow` -> `~\u002F.config\u002Fnemo-relay`, `NEMO_FLOW_*` ->\n  `NEMO_RELAY_*`, and `x-nemo-flow-*` -> `x-nemo-relay-*`\n\nDo not replace bare `flow`, `Flow`, or `FlowError`. Those can be domain words\nor intentional compatibility names.\n\n## Language Cleanup\n\n- **Python**: update `pyproject.toml`, imports, type stubs, integration\n  package paths, extras, and native module names. Regenerate or refresh lockfiles\n  with the user's package workflow after source edits.\n- **Rust**: update `Cargo.toml` crate names, workspace dependencies, package\n  references, and `use nemo_relay::...` imports. Let Cargo regenerate\n  `Cargo.lock` when dependencies changed.\n- **Node.js**: update `package.json`, workspace names, package-lock entries,\n  native addon artifact names, and imports from `nemo-relay-node`. Run the\n  package manager to refresh locks.\n- **Go**: update `go.mod`, import paths, package declarations, aliases, and any\n  local directory layout under `go\u002Fnemo_relay`.\n- **C FFI**: update header includes, exported symbol names, status and callback\n  type names, macro constants, loader paths, and downstream bindings.\n- **Docs and examples**: update badges, package install commands, repository\n  links, hosted docs URLs, CLI commands, config paths, and integration names.\n\n## Automation Helper\n\nUse `$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py` for first-pass edits. The\nhelper:\n\n- runs as a dry run unless `--write` is passed\n- skips common vendor, build, cache, and generated directories\n- skips lockfiles unless `--include-lockfiles` is passed\n- skips symbolic links and credential-bearing dotenv files\n- requires the reviewed target root to be repeated with `--confirm-root` before\n  writing, and refuses filesystem-root or home-directory writes\n- anchors writes and renames to verified directory handles without following\n  symbolic links, and refuses write mode on platforms that cannot provide those\n  guarantees\n- uses atomic no-replace path renames and exits nonzero when any requested\n  mutation fails\n- can report or perform path renames with `--rename-paths`\n- rewrites only explicit NeMo Flow identifiers, package names, repository names,\n  config paths, headers, environment variables, and FFI type prefixes\n\nThe helper does not classify arbitrary JSON, YAML, TOML, or INI files as secret.\nReview every configuration file in the dry-run report. If any reported file is\nunreviewed or credential-bearing, do not use `--write` on that root. Apply the\nreviewed changes manually and leave secret-bearing files untouched without\nreading or displaying their values.\n\nSet shell-safe absolute paths before invoking the helper. Replace the example\nvalues with the resolved skill directory and either the source repository or the\nuser's target project:\n\n```bash\nSKILL_DIR=\"\u002Fresolved\u002Fabsolute\u002Fpath\u002Fto\u002Fnemo-relay-migrate-from-flow\"\nTARGET_PATH=\"\u002Fresolved\u002Fabsolute\u002Fpath\u002Fto\u002Ftarget-project\"\n\npython3 \"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py\" \"$TARGET_PATH\" --rename-paths\npython3 \"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py\" \"$TARGET_PATH\" \\\n  --write --rename-paths --confirm-root \"$TARGET_PATH\"\n```\n\nUse `--include-lockfiles` only when the user wants lockfiles edited directly;\notherwise regenerate them with Cargo, uv\u002Fpip, npm, or Go tooling.\n\n## Verification\n\n- Search for remaining explicit Flow identifiers:\n  `rg -n \"NeMo Flow|NeMo-Flow|nemo_flow|nemo-flow|NEMO_FLOW|NemoFlow|nemo_flow\\\\.h|nemo_flow_\"`\n- Run targeted tests for every affected language surface.\n- For Rust changes, run `cargo test` or the repository's Rust test recipe.\n- For Python changes, run the relevant import check and tests in the target\n  environment.\n- For Node.js changes, run package install, type checks, and package tests.\n- For Go changes, run `go test .\u002F...` from the updated module.\n- For docs-only migrations, build or link-check docs if the site navigation,\n  install commands, or API references changed.\n\n## Related Skills\n\n- `nemo-relay-get-started`\n- `nemo-relay-instrument-calls`\n- `nemo-relay-debug-runtime-integration`\n",{"data":59,"body":62},{"name":4,"description":6,"license":32,"metadata":60},{"author":61},"NVIDIA Corporation and Affiliates",{"type":63,"children":64},"root",[65,74,80,87,172,178,530,558,564,682,688,701,776,788,793,991,1002,1008,1068,1074,1104],{"type":66,"tag":67,"props":68,"children":70},"element","h1",{"id":69},"migrate-from-nemo-flow-to-nemo-relay",[71],{"type":72,"value":73},"text","Migrate From NeMo Flow To NeMo Relay",{"type":66,"tag":75,"props":76,"children":77},"p",{},[78],{"type":72,"value":79},"Use this skill when a user has existing NeMo Flow code or documentation and\nwants it converted to NeMo Relay. Treat the migration as a mechanical rename\nplus language-specific validation, not a behavior rewrite.\nKeep compatibility exceptions explicit before applying broad renames.",{"type":66,"tag":81,"props":82,"children":84},"h2",{"id":83},"default-workflow",[85],{"type":72,"value":86},"Default Workflow",{"type":66,"tag":88,"props":89,"children":90},"ol",{},[91,97,133,162,167],{"type":66,"tag":92,"props":93,"children":94},"li",{},[95],{"type":72,"value":96},"Inspect the working tree and identify touched surfaces: Rust, Python,\nNode.js, Go, C FFI, CLI\u002Fconfig, docs, or integrations.",{"type":66,"tag":92,"props":98,"children":99},{},[100,102,109,111,117,119,125,127],{"type":72,"value":101},"Resolve ",{"type":66,"tag":103,"props":104,"children":106},"code",{"className":105},[],[107],{"type":72,"value":108},"SKILL_DIR",{"type":72,"value":110}," to the absolute directory containing this ",{"type":66,"tag":103,"props":112,"children":114},{"className":113},[],[115],{"type":72,"value":116},"SKILL.md",{"type":72,"value":118}," and\n",{"type":66,"tag":103,"props":120,"children":122},{"className":121},[],[123],{"type":72,"value":124},"TARGET_PATH",{"type":72,"value":126}," to the source repository or target project. Run the bundled\nhelper in dry-run mode before editing:\n",{"type":66,"tag":103,"props":128,"children":130},{"className":129},[],[131],{"type":72,"value":132},"python3 \"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py\" \"$TARGET_PATH\" --rename-paths",{"type":66,"tag":92,"props":134,"children":135},{},[136,138,144,146,152,154,160],{"type":72,"value":137},"Review the reported text edits and path renames with the user. Obtain explicit\nconfirmation for the resolved target root, then rerun with ",{"type":66,"tag":103,"props":139,"children":141},{"className":140},[],[142],{"type":72,"value":143},"--write",{"type":72,"value":145},",\n",{"type":66,"tag":103,"props":147,"children":149},{"className":148},[],[150],{"type":72,"value":151},"--rename-paths",{"type":72,"value":153},", and ",{"type":66,"tag":103,"props":155,"children":157},{"className":156},[],[158],{"type":72,"value":159},"--confirm-root \"$TARGET_PATH\"",{"type":72,"value":161},".",{"type":66,"tag":92,"props":163,"children":164},{},[165],{"type":72,"value":166},"Apply language-specific cleanup for package manager lockfiles, generated\nartifacts, and public API examples.",{"type":66,"tag":92,"props":168,"children":169},{},[170],{"type":72,"value":171},"Search for remaining Flow names and verify the affected language surfaces.",{"type":66,"tag":81,"props":173,"children":175},{"id":174},"mechanical-rename-map",[176],{"type":72,"value":177},"Mechanical Rename Map",{"type":66,"tag":179,"props":180,"children":181},"ul",{},[182,215,262,307,354,400,460],{"type":66,"tag":92,"props":183,"children":184},{},[185,187,193,195,201,202,208,209],{"type":72,"value":186},"Brand and repository: ",{"type":66,"tag":103,"props":188,"children":190},{"className":189},[],[191],{"type":72,"value":192},"NeMo Flow",{"type":72,"value":194}," -> ",{"type":66,"tag":103,"props":196,"children":198},{"className":197},[],[199],{"type":72,"value":200},"NeMo Relay",{"type":72,"value":145},{"type":66,"tag":103,"props":203,"children":205},{"className":204},[],[206],{"type":72,"value":207},"NeMo-Flow",{"type":72,"value":194},{"type":66,"tag":103,"props":210,"children":212},{"className":211},[],[213],{"type":72,"value":214},"NeMo-Relay",{"type":66,"tag":92,"props":216,"children":217},{},[218,220,226,227,233,235,241,242,248,249,255,256],{"type":72,"value":219},"Python: ",{"type":66,"tag":103,"props":221,"children":223},{"className":222},[],[224],{"type":72,"value":225},"nemo-flow",{"type":72,"value":194},{"type":66,"tag":103,"props":228,"children":230},{"className":229},[],[231],{"type":72,"value":232},"nemo-relay",{"type":72,"value":234},", ",{"type":66,"tag":103,"props":236,"children":238},{"className":237},[],[239],{"type":72,"value":240},"nemo_flow",{"type":72,"value":194},{"type":66,"tag":103,"props":243,"children":245},{"className":244},[],[246],{"type":72,"value":247},"nemo_relay",{"type":72,"value":145},{"type":66,"tag":103,"props":250,"children":252},{"className":251},[],[253],{"type":72,"value":254},"python\u002Fnemo_flow",{"type":72,"value":194},{"type":66,"tag":103,"props":257,"children":259},{"className":258},[],[260],{"type":72,"value":261},"python\u002Fnemo_relay",{"type":66,"tag":92,"props":263,"children":264},{},[265,267,272,273,278,279,285,287,293,294,300,301],{"type":72,"value":266},"Rust: ",{"type":66,"tag":103,"props":268,"children":270},{"className":269},[],[271],{"type":72,"value":225},{"type":72,"value":194},{"type":66,"tag":103,"props":274,"children":276},{"className":275},[],[277],{"type":72,"value":232},{"type":72,"value":234},{"type":66,"tag":103,"props":280,"children":282},{"className":281},[],[283],{"type":72,"value":284},"nemo-flow-adaptive",{"type":72,"value":286}," ->\n",{"type":66,"tag":103,"props":288,"children":290},{"className":289},[],[291],{"type":72,"value":292},"nemo-relay-adaptive",{"type":72,"value":234},{"type":66,"tag":103,"props":295,"children":297},{"className":296},[],[298],{"type":72,"value":299},"nemo_flow::",{"type":72,"value":194},{"type":66,"tag":103,"props":302,"children":304},{"className":303},[],[305],{"type":72,"value":306},"nemo_relay::",{"type":66,"tag":92,"props":308,"children":309},{},[310,312,318,319,325,327,333,334,340,341,347,348],{"type":72,"value":311},"Node.js: ",{"type":66,"tag":103,"props":313,"children":315},{"className":314},[],[316],{"type":72,"value":317},"nemo-flow-node",{"type":72,"value":194},{"type":66,"tag":103,"props":320,"children":322},{"className":321},[],[323],{"type":72,"value":324},"nemo-relay-node",{"type":72,"value":326},", including related entry\npoints such as ",{"type":66,"tag":103,"props":328,"children":330},{"className":329},[],[331],{"type":72,"value":332},"\u002Ftyped",{"type":72,"value":234},{"type":66,"tag":103,"props":335,"children":337},{"className":336},[],[338],{"type":72,"value":339},"\u002Fplugin",{"type":72,"value":234},{"type":66,"tag":103,"props":342,"children":344},{"className":343},[],[345],{"type":72,"value":346},"\u002Fadaptive",{"type":72,"value":153},{"type":66,"tag":103,"props":349,"children":351},{"className":350},[],[352],{"type":72,"value":353},"\u002Fobservability",{"type":66,"tag":92,"props":355,"children":356},{},[357,359,365,366,372,374,379,380,385,387,393,394],{"type":72,"value":358},"Go: ",{"type":66,"tag":103,"props":360,"children":362},{"className":361},[],[363],{"type":72,"value":364},"github.com\u002FNVIDIA\u002FNeMo-Flow\u002Fgo\u002Fnemo_flow",{"type":72,"value":286},{"type":66,"tag":103,"props":367,"children":369},{"className":368},[],[370],{"type":72,"value":371},"github.com\u002FNVIDIA\u002FNeMo-Relay\u002Fgo\u002Fnemo_relay",{"type":72,"value":373},", package aliases\n",{"type":66,"tag":103,"props":375,"children":377},{"className":376},[],[378],{"type":72,"value":240},{"type":72,"value":194},{"type":66,"tag":103,"props":381,"children":383},{"className":382},[],[384],{"type":72,"value":247},{"type":72,"value":386},", and source directories ",{"type":66,"tag":103,"props":388,"children":390},{"className":389},[],[391],{"type":72,"value":392},"go\u002Fnemo_flow",{"type":72,"value":286},{"type":66,"tag":103,"props":395,"children":397},{"className":396},[],[398],{"type":72,"value":399},"go\u002Fnemo_relay",{"type":66,"tag":92,"props":401,"children":402},{},[403,405,411,412,418,419,425,426,432,433,439,440,446,447,453,454],{"type":72,"value":404},"C FFI: ",{"type":66,"tag":103,"props":406,"children":408},{"className":407},[],[409],{"type":72,"value":410},"nemo_flow.h",{"type":72,"value":194},{"type":66,"tag":103,"props":413,"children":415},{"className":414},[],[416],{"type":72,"value":417},"nemo_relay.h",{"type":72,"value":234},{"type":66,"tag":103,"props":420,"children":422},{"className":421},[],[423],{"type":72,"value":424},"nemo_flow_*",{"type":72,"value":286},{"type":66,"tag":103,"props":427,"children":429},{"className":428},[],[430],{"type":72,"value":431},"nemo_relay_*",{"type":72,"value":234},{"type":66,"tag":103,"props":434,"children":436},{"className":435},[],[437],{"type":72,"value":438},"NemoFlow*",{"type":72,"value":194},{"type":66,"tag":103,"props":441,"children":443},{"className":442},[],[444],{"type":72,"value":445},"NemoRelay*",{"type":72,"value":153},{"type":66,"tag":103,"props":448,"children":450},{"className":449},[],[451],{"type":72,"value":452},"NEMO_FLOW_*",{"type":72,"value":286},{"type":66,"tag":103,"props":455,"children":457},{"className":456},[],[458],{"type":72,"value":459},"NEMO_RELAY_*",{"type":66,"tag":92,"props":461,"children":462},{},[463,465,470,471,476,477,483,484,490,491,497,498,504,505,510,511,516,517,523,524],{"type":72,"value":464},"CLI\u002Fconfig: ",{"type":66,"tag":103,"props":466,"children":468},{"className":467},[],[469],{"type":72,"value":225},{"type":72,"value":194},{"type":66,"tag":103,"props":472,"children":474},{"className":473},[],[475],{"type":72,"value":232},{"type":72,"value":234},{"type":66,"tag":103,"props":478,"children":480},{"className":479},[],[481],{"type":72,"value":482},".nemo-flow",{"type":72,"value":194},{"type":66,"tag":103,"props":485,"children":487},{"className":486},[],[488],{"type":72,"value":489},".nemo-relay",{"type":72,"value":145},{"type":66,"tag":103,"props":492,"children":494},{"className":493},[],[495],{"type":72,"value":496},"~\u002F.config\u002Fnemo-flow",{"type":72,"value":194},{"type":66,"tag":103,"props":499,"children":501},{"className":500},[],[502],{"type":72,"value":503},"~\u002F.config\u002Fnemo-relay",{"type":72,"value":234},{"type":66,"tag":103,"props":506,"children":508},{"className":507},[],[509],{"type":72,"value":452},{"type":72,"value":286},{"type":66,"tag":103,"props":512,"children":514},{"className":513},[],[515],{"type":72,"value":459},{"type":72,"value":153},{"type":66,"tag":103,"props":518,"children":520},{"className":519},[],[521],{"type":72,"value":522},"x-nemo-flow-*",{"type":72,"value":194},{"type":66,"tag":103,"props":525,"children":527},{"className":526},[],[528],{"type":72,"value":529},"x-nemo-relay-*",{"type":66,"tag":75,"props":531,"children":532},{},[533,535,541,542,548,550,556],{"type":72,"value":534},"Do not replace bare ",{"type":66,"tag":103,"props":536,"children":538},{"className":537},[],[539],{"type":72,"value":540},"flow",{"type":72,"value":234},{"type":66,"tag":103,"props":543,"children":545},{"className":544},[],[546],{"type":72,"value":547},"Flow",{"type":72,"value":549},", or ",{"type":66,"tag":103,"props":551,"children":553},{"className":552},[],[554],{"type":72,"value":555},"FlowError",{"type":72,"value":557},". Those can be domain words\nor intentional compatibility names.",{"type":66,"tag":81,"props":559,"children":561},{"id":560},"language-cleanup",[562],{"type":72,"value":563},"Language Cleanup",{"type":66,"tag":179,"props":565,"children":566},{},[567,585,617,640,662,672],{"type":66,"tag":92,"props":568,"children":569},{},[570,575,577,583],{"type":66,"tag":571,"props":572,"children":573},"strong",{},[574],{"type":72,"value":18},{"type":72,"value":576},": update ",{"type":66,"tag":103,"props":578,"children":580},{"className":579},[],[581],{"type":72,"value":582},"pyproject.toml",{"type":72,"value":584},", imports, type stubs, integration\npackage paths, extras, and native module names. Regenerate or refresh lockfiles\nwith the user's package workflow after source edits.",{"type":66,"tag":92,"props":586,"children":587},{},[588,592,593,599,601,607,609,615],{"type":66,"tag":571,"props":589,"children":590},{},[591],{"type":72,"value":21},{"type":72,"value":576},{"type":66,"tag":103,"props":594,"children":596},{"className":595},[],[597],{"type":72,"value":598},"Cargo.toml",{"type":72,"value":600}," crate names, workspace dependencies, package\nreferences, and ",{"type":66,"tag":103,"props":602,"children":604},{"className":603},[],[605],{"type":72,"value":606},"use nemo_relay::...",{"type":72,"value":608}," imports. Let Cargo regenerate\n",{"type":66,"tag":103,"props":610,"children":612},{"className":611},[],[613],{"type":72,"value":614},"Cargo.lock",{"type":72,"value":616}," when dependencies changed.",{"type":66,"tag":92,"props":618,"children":619},{},[620,624,625,631,633,638],{"type":66,"tag":571,"props":621,"children":622},{},[623],{"type":72,"value":24},{"type":72,"value":576},{"type":66,"tag":103,"props":626,"children":628},{"className":627},[],[629],{"type":72,"value":630},"package.json",{"type":72,"value":632},", workspace names, package-lock entries,\nnative addon artifact names, and imports from ",{"type":66,"tag":103,"props":634,"children":636},{"className":635},[],[637],{"type":72,"value":324},{"type":72,"value":639},". Run the\npackage manager to refresh locks.",{"type":66,"tag":92,"props":641,"children":642},{},[643,647,648,654,656,661],{"type":66,"tag":571,"props":644,"children":645},{},[646],{"type":72,"value":27},{"type":72,"value":576},{"type":66,"tag":103,"props":649,"children":651},{"className":650},[],[652],{"type":72,"value":653},"go.mod",{"type":72,"value":655},", import paths, package declarations, aliases, and any\nlocal directory layout under ",{"type":66,"tag":103,"props":657,"children":659},{"className":658},[],[660],{"type":72,"value":399},{"type":72,"value":161},{"type":66,"tag":92,"props":663,"children":664},{},[665,670],{"type":66,"tag":571,"props":666,"children":667},{},[668],{"type":72,"value":669},"C FFI",{"type":72,"value":671},": update header includes, exported symbol names, status and callback\ntype names, macro constants, loader paths, and downstream bindings.",{"type":66,"tag":92,"props":673,"children":674},{},[675,680],{"type":66,"tag":571,"props":676,"children":677},{},[678],{"type":72,"value":679},"Docs and examples",{"type":72,"value":681},": update badges, package install commands, repository\nlinks, hosted docs URLs, CLI commands, config paths, and integration names.",{"type":66,"tag":81,"props":683,"children":685},{"id":684},"automation-helper",[686],{"type":72,"value":687},"Automation Helper",{"type":66,"tag":75,"props":689,"children":690},{},[691,693,699],{"type":72,"value":692},"Use ",{"type":66,"tag":103,"props":694,"children":696},{"className":695},[],[697],{"type":72,"value":698},"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py",{"type":72,"value":700}," for first-pass edits. The\nhelper:",{"type":66,"tag":179,"props":702,"children":703},{},[704,716,721,733,738,751,756,761,771],{"type":66,"tag":92,"props":705,"children":706},{},[707,709,714],{"type":72,"value":708},"runs as a dry run unless ",{"type":66,"tag":103,"props":710,"children":712},{"className":711},[],[713],{"type":72,"value":143},{"type":72,"value":715}," is passed",{"type":66,"tag":92,"props":717,"children":718},{},[719],{"type":72,"value":720},"skips common vendor, build, cache, and generated directories",{"type":66,"tag":92,"props":722,"children":723},{},[724,726,732],{"type":72,"value":725},"skips lockfiles unless ",{"type":66,"tag":103,"props":727,"children":729},{"className":728},[],[730],{"type":72,"value":731},"--include-lockfiles",{"type":72,"value":715},{"type":66,"tag":92,"props":734,"children":735},{},[736],{"type":72,"value":737},"skips symbolic links and credential-bearing dotenv files",{"type":66,"tag":92,"props":739,"children":740},{},[741,743,749],{"type":72,"value":742},"requires the reviewed target root to be repeated with ",{"type":66,"tag":103,"props":744,"children":746},{"className":745},[],[747],{"type":72,"value":748},"--confirm-root",{"type":72,"value":750}," before\nwriting, and refuses filesystem-root or home-directory writes",{"type":66,"tag":92,"props":752,"children":753},{},[754],{"type":72,"value":755},"anchors writes and renames to verified directory handles without following\nsymbolic links, and refuses write mode on platforms that cannot provide those\nguarantees",{"type":66,"tag":92,"props":757,"children":758},{},[759],{"type":72,"value":760},"uses atomic no-replace path renames and exits nonzero when any requested\nmutation fails",{"type":66,"tag":92,"props":762,"children":763},{},[764,766],{"type":72,"value":765},"can report or perform path renames with ",{"type":66,"tag":103,"props":767,"children":769},{"className":768},[],[770],{"type":72,"value":151},{"type":66,"tag":92,"props":772,"children":773},{},[774],{"type":72,"value":775},"rewrites only explicit NeMo Flow identifiers, package names, repository names,\nconfig paths, headers, environment variables, and FFI type prefixes",{"type":66,"tag":75,"props":777,"children":778},{},[779,781,786],{"type":72,"value":780},"The helper does not classify arbitrary JSON, YAML, TOML, or INI files as secret.\nReview every configuration file in the dry-run report. If any reported file is\nunreviewed or credential-bearing, do not use ",{"type":66,"tag":103,"props":782,"children":784},{"className":783},[],[785],{"type":72,"value":143},{"type":72,"value":787}," on that root. Apply the\nreviewed changes manually and leave secret-bearing files untouched without\nreading or displaying their values.",{"type":66,"tag":75,"props":789,"children":790},{},[791],{"type":72,"value":792},"Set shell-safe absolute paths before invoking the helper. Replace the example\nvalues with the resolved skill directory and either the source repository or the\nuser's target project:",{"type":66,"tag":794,"props":795,"children":800},"pre",{"className":796,"code":797,"language":798,"meta":799,"style":799},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","SKILL_DIR=\"\u002Fresolved\u002Fabsolute\u002Fpath\u002Fto\u002Fnemo-relay-migrate-from-flow\"\nTARGET_PATH=\"\u002Fresolved\u002Fabsolute\u002Fpath\u002Fto\u002Ftarget-project\"\n\npython3 \"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py\" \"$TARGET_PATH\" --rename-paths\npython3 \"$SKILL_DIR\u002Fscripts\u002Fmigrate_from_nemo_flow.py\" \"$TARGET_PATH\" \\\n  --write --rename-paths --confirm-root \"$TARGET_PATH\"\n","bash","",[801],{"type":66,"tag":103,"props":802,"children":803},{"__ignoreMap":799},[804,837,862,872,919,960],{"type":66,"tag":805,"props":806,"children":809},"span",{"class":807,"line":808},"line",1,[810,815,821,826,832],{"type":66,"tag":805,"props":811,"children":813},{"style":812},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[814],{"type":72,"value":108},{"type":66,"tag":805,"props":816,"children":818},{"style":817},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[819],{"type":72,"value":820},"=",{"type":66,"tag":805,"props":822,"children":823},{"style":817},[824],{"type":72,"value":825},"\"",{"type":66,"tag":805,"props":827,"children":829},{"style":828},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[830],{"type":72,"value":831},"\u002Fresolved\u002Fabsolute\u002Fpath\u002Fto\u002Fnemo-relay-migrate-from-flow",{"type":66,"tag":805,"props":833,"children":834},{"style":817},[835],{"type":72,"value":836},"\"\n",{"type":66,"tag":805,"props":838,"children":840},{"class":807,"line":839},2,[841,845,849,853,858],{"type":66,"tag":805,"props":842,"children":843},{"style":812},[844],{"type":72,"value":124},{"type":66,"tag":805,"props":846,"children":847},{"style":817},[848],{"type":72,"value":820},{"type":66,"tag":805,"props":850,"children":851},{"style":817},[852],{"type":72,"value":825},{"type":66,"tag":805,"props":854,"children":855},{"style":828},[856],{"type":72,"value":857},"\u002Fresolved\u002Fabsolute\u002Fpath\u002Fto\u002Ftarget-project",{"type":66,"tag":805,"props":859,"children":860},{"style":817},[861],{"type":72,"value":836},{"type":66,"tag":805,"props":863,"children":865},{"class":807,"line":864},3,[866],{"type":66,"tag":805,"props":867,"children":869},{"emptyLinePlaceholder":868},true,[870],{"type":72,"value":871},"\n",{"type":66,"tag":805,"props":873,"children":875},{"class":807,"line":874},4,[876,882,887,892,897,901,905,910,914],{"type":66,"tag":805,"props":877,"children":879},{"style":878},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[880],{"type":72,"value":881},"python3",{"type":66,"tag":805,"props":883,"children":884},{"style":817},[885],{"type":72,"value":886}," \"",{"type":66,"tag":805,"props":888,"children":889},{"style":812},[890],{"type":72,"value":891},"$SKILL_DIR",{"type":66,"tag":805,"props":893,"children":894},{"style":828},[895],{"type":72,"value":896},"\u002Fscripts\u002Fmigrate_from_nemo_flow.py",{"type":66,"tag":805,"props":898,"children":899},{"style":817},[900],{"type":72,"value":825},{"type":66,"tag":805,"props":902,"children":903},{"style":817},[904],{"type":72,"value":886},{"type":66,"tag":805,"props":906,"children":907},{"style":812},[908],{"type":72,"value":909},"$TARGET_PATH",{"type":66,"tag":805,"props":911,"children":912},{"style":817},[913],{"type":72,"value":825},{"type":66,"tag":805,"props":915,"children":916},{"style":828},[917],{"type":72,"value":918}," --rename-paths\n",{"type":66,"tag":805,"props":920,"children":922},{"class":807,"line":921},5,[923,927,931,935,939,943,947,951,955],{"type":66,"tag":805,"props":924,"children":925},{"style":878},[926],{"type":72,"value":881},{"type":66,"tag":805,"props":928,"children":929},{"style":817},[930],{"type":72,"value":886},{"type":66,"tag":805,"props":932,"children":933},{"style":812},[934],{"type":72,"value":891},{"type":66,"tag":805,"props":936,"children":937},{"style":828},[938],{"type":72,"value":896},{"type":66,"tag":805,"props":940,"children":941},{"style":817},[942],{"type":72,"value":825},{"type":66,"tag":805,"props":944,"children":945},{"style":817},[946],{"type":72,"value":886},{"type":66,"tag":805,"props":948,"children":949},{"style":812},[950],{"type":72,"value":909},{"type":66,"tag":805,"props":952,"children":953},{"style":817},[954],{"type":72,"value":825},{"type":66,"tag":805,"props":956,"children":957},{"style":812},[958],{"type":72,"value":959}," \\\n",{"type":66,"tag":805,"props":961,"children":963},{"class":807,"line":962},6,[964,969,974,979,983,987],{"type":66,"tag":805,"props":965,"children":966},{"style":828},[967],{"type":72,"value":968},"  --write",{"type":66,"tag":805,"props":970,"children":971},{"style":828},[972],{"type":72,"value":973}," --rename-paths",{"type":66,"tag":805,"props":975,"children":976},{"style":828},[977],{"type":72,"value":978}," --confirm-root",{"type":66,"tag":805,"props":980,"children":981},{"style":817},[982],{"type":72,"value":886},{"type":66,"tag":805,"props":984,"children":985},{"style":812},[986],{"type":72,"value":909},{"type":66,"tag":805,"props":988,"children":989},{"style":817},[990],{"type":72,"value":836},{"type":66,"tag":75,"props":992,"children":993},{},[994,995,1000],{"type":72,"value":692},{"type":66,"tag":103,"props":996,"children":998},{"className":997},[],[999],{"type":72,"value":731},{"type":72,"value":1001}," only when the user wants lockfiles edited directly;\notherwise regenerate them with Cargo, uv\u002Fpip, npm, or Go tooling.",{"type":66,"tag":81,"props":1003,"children":1005},{"id":1004},"verification",[1006],{"type":72,"value":1007},"Verification",{"type":66,"tag":179,"props":1009,"children":1010},{},[1011,1022,1027,1040,1045,1050,1063],{"type":66,"tag":92,"props":1012,"children":1013},{},[1014,1016],{"type":72,"value":1015},"Search for remaining explicit Flow identifiers:\n",{"type":66,"tag":103,"props":1017,"children":1019},{"className":1018},[],[1020],{"type":72,"value":1021},"rg -n \"NeMo Flow|NeMo-Flow|nemo_flow|nemo-flow|NEMO_FLOW|NemoFlow|nemo_flow\\\\.h|nemo_flow_\"",{"type":66,"tag":92,"props":1023,"children":1024},{},[1025],{"type":72,"value":1026},"Run targeted tests for every affected language surface.",{"type":66,"tag":92,"props":1028,"children":1029},{},[1030,1032,1038],{"type":72,"value":1031},"For Rust changes, run ",{"type":66,"tag":103,"props":1033,"children":1035},{"className":1034},[],[1036],{"type":72,"value":1037},"cargo test",{"type":72,"value":1039}," or the repository's Rust test recipe.",{"type":66,"tag":92,"props":1041,"children":1042},{},[1043],{"type":72,"value":1044},"For Python changes, run the relevant import check and tests in the target\nenvironment.",{"type":66,"tag":92,"props":1046,"children":1047},{},[1048],{"type":72,"value":1049},"For Node.js changes, run package install, type checks, and package tests.",{"type":66,"tag":92,"props":1051,"children":1052},{},[1053,1055,1061],{"type":72,"value":1054},"For Go changes, run ",{"type":66,"tag":103,"props":1056,"children":1058},{"className":1057},[],[1059],{"type":72,"value":1060},"go test .\u002F...",{"type":72,"value":1062}," from the updated module.",{"type":66,"tag":92,"props":1064,"children":1065},{},[1066],{"type":72,"value":1067},"For docs-only migrations, build or link-check docs if the site navigation,\ninstall commands, or API references changed.",{"type":66,"tag":81,"props":1069,"children":1071},{"id":1070},"related-skills",[1072],{"type":72,"value":1073},"Related Skills",{"type":66,"tag":179,"props":1075,"children":1076},{},[1077,1086,1095],{"type":66,"tag":92,"props":1078,"children":1079},{},[1080],{"type":66,"tag":103,"props":1081,"children":1083},{"className":1082},[],[1084],{"type":72,"value":1085},"nemo-relay-get-started",{"type":66,"tag":92,"props":1087,"children":1088},{},[1089],{"type":66,"tag":103,"props":1090,"children":1092},{"className":1091},[],[1093],{"type":72,"value":1094},"nemo-relay-instrument-calls",{"type":66,"tag":92,"props":1096,"children":1097},{},[1098],{"type":66,"tag":103,"props":1099,"children":1101},{"className":1100},[],[1102],{"type":72,"value":1103},"nemo-relay-debug-runtime-integration",{"type":66,"tag":1105,"props":1106,"children":1107},"style",{},[1108],{"type":72,"value":1109},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":1111,"total":1207},[1112,1127,1141,1156,1170,1183,1198],{"slug":1103,"name":1103,"fn":1113,"description":1114,"org":1115,"tags":1116,"stars":29,"repoUrl":30,"updatedAt":1126},"debug NeMo Relay runtime integrations","Use this skill when NeMo Relay is installed or imported but application-side runtime behavior is missing or incorrect, including load failures, inactive scopes, missing events, and plugin or adaptive wiring problems.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1117,1120,1123,1125],{"name":1118,"slug":1119,"type":15},"Debugging","debugging",{"name":1121,"slug":1122,"type":15},"Engineering","engineering",{"name":1124,"slug":45,"type":15},"Middleware",{"name":9,"slug":8,"type":15},"2026-07-17T05:30:27.286964",{"slug":1085,"name":1085,"fn":1128,"description":1129,"org":1130,"tags":1131,"stars":29,"repoUrl":30,"updatedAt":1140},"get started with NeMo Relay","Use this skill when first-time NeMo Relay users want to try Relay, choose the least-complex supported quick start, or verify initial value through the CLI, a maintained integration, or direct Python, Node.js, or Rust instrumentation before production setup.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1132,1135,1136,1139],{"name":1133,"slug":1134,"type":15},"CLI","cli",{"name":9,"slug":8,"type":15},{"name":1137,"slug":1138,"type":15},"Onboarding","onboarding",{"name":18,"slug":19,"type":15},"2026-07-23T05:43:39.488827",{"slug":1142,"name":1142,"fn":1143,"description":1144,"org":1145,"tags":1146,"stars":29,"repoUrl":30,"updatedAt":1155},"nemo-relay-install","install NeMo Relay for various environments","Use this skill when choosing or running NeMo Relay installation for the CLI, Python, Node.js, Rust, OpenClaw, Hermes, or maintained framework integrations before runtime configuration or quick-start setup.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1147,1148,1151,1152,1153,1154],{"name":1133,"slug":1134,"type":15},{"name":1149,"slug":1150,"type":15},"Deployment","deployment",{"name":24,"slug":25,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},{"name":21,"slug":22,"type":15},"2026-07-17T05:30:31.443244",{"slug":1094,"name":1094,"fn":1157,"description":1158,"org":1159,"tags":1160,"stars":29,"repoUrl":30,"updatedAt":1169},"instrument LLM calls with NeMo Relay","Use this skill when an application owns tool or LLM\u002Fprovider call sites and needs to wrap them with NeMo Relay scopes and managed execution APIs for lifecycle events, middleware, or guardrails.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1161,1164,1167,1168],{"name":1162,"slug":1163,"type":15},"Automation","automation",{"name":1165,"slug":1166,"type":15},"LLM","llm",{"name":1124,"slug":45,"type":15},{"name":9,"slug":8,"type":15},"2026-07-17T05:30:29.31214",{"slug":1171,"name":1171,"fn":1172,"description":1173,"org":1174,"tags":1175,"stars":29,"repoUrl":30,"updatedAt":1182},"nemo-relay-instrument-context-isolation","isolate NeMo Relay execution contexts","Use this skill when concurrent requests, async tasks, threads, workers, goroutines, or agents need independent NeMo Relay scope stacks and correct ancestry propagation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1176,1179,1180,1181],{"name":1177,"slug":1178,"type":15},"Concurrency","concurrency",{"name":1121,"slug":1122,"type":15},{"name":1124,"slug":45,"type":15},{"name":9,"slug":8,"type":15},"2026-07-17T05:30:33.080543",{"slug":1184,"name":1184,"fn":1185,"description":1186,"org":1187,"tags":1188,"stars":29,"repoUrl":30,"updatedAt":1197},"nemo-relay-instrument-typed-wrappers","instrument NeMo Relay typed wrappers","Use this skill when adding NeMo Relay typed wrappers, domain types, or provider codecs while preserving JSON middleware semantics and caller-visible behavior.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1189,1192,1195,1196],{"name":1190,"slug":1191,"type":15},"API Development","api-development",{"name":1193,"slug":1194,"type":15},"JSON","json",{"name":1124,"slug":45,"type":15},{"name":9,"slug":8,"type":15},"2026-07-23T05:43:40.456621",{"slug":4,"name":4,"fn":5,"description":6,"org":1199,"tags":1200,"stars":29,"repoUrl":30,"updatedAt":31},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[1201,1202,1203,1204,1205,1206],{"name":27,"slug":28,"type":15},{"name":13,"slug":14,"type":15},{"name":24,"slug":25,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},{"name":21,"slug":22,"type":15},10,{"items":1209,"total":1358},[1210,1228,1242,1253,1265,1277,1290,1302,1315,1326,1340,1349],{"slug":1211,"name":1211,"fn":1212,"description":1213,"org":1214,"tags":1215,"stars":1225,"repoUrl":1226,"updatedAt":1227},"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},[1216,1219,1222],{"name":1217,"slug":1218,"type":15},"Documentation","documentation",{"name":1220,"slug":1221,"type":15},"MCP","mcp",{"name":1223,"slug":1224,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":1229,"name":1229,"fn":1230,"description":1231,"org":1232,"tags":1233,"stars":1239,"repoUrl":1240,"updatedAt":1241},"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},[1234,1237,1238],{"name":1235,"slug":1236,"type":15},"Containers","containers",{"name":1149,"slug":1150,"type":15},{"name":18,"slug":19,"type":15},17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":1243,"name":1243,"fn":1244,"description":1245,"org":1246,"tags":1247,"stars":1239,"repoUrl":1240,"updatedAt":1252},"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},[1248,1251],{"name":1249,"slug":1250,"type":15},"CI\u002FCD","ci-cd",{"name":1149,"slug":1150,"type":15},"2026-07-14T05:25:59.97109",{"slug":1254,"name":1254,"fn":1255,"description":1256,"org":1257,"tags":1258,"stars":1239,"repoUrl":1240,"updatedAt":1264},"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},[1259,1260,1261],{"name":1249,"slug":1250,"type":15},{"name":1149,"slug":1150,"type":15},{"name":1262,"slug":1263,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":1266,"name":1266,"fn":1267,"description":1268,"org":1269,"tags":1270,"stars":1239,"repoUrl":1240,"updatedAt":1276},"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},[1271,1272,1273],{"name":1118,"slug":1119,"type":15},{"name":1262,"slug":1263,"type":15},{"name":1274,"slug":1275,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":1278,"name":1278,"fn":1279,"description":1280,"org":1281,"tags":1282,"stars":1239,"repoUrl":1240,"updatedAt":1289},"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},[1283,1286],{"name":1284,"slug":1285,"type":15},"Best Practices","best-practices",{"name":1287,"slug":1288,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":1291,"name":1291,"fn":1292,"description":1293,"org":1294,"tags":1295,"stars":1239,"repoUrl":1240,"updatedAt":1301},"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},[1296,1299,1300],{"name":1297,"slug":1298,"type":15},"Machine Learning","machine-learning",{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":1303,"name":1303,"fn":1304,"description":1305,"org":1306,"tags":1307,"stars":1239,"repoUrl":1240,"updatedAt":1314},"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},[1308,1311],{"name":1309,"slug":1310,"type":15},"QA","qa",{"name":1312,"slug":1313,"type":15},"Testing","testing","2026-07-14T05:25:53.673039",{"slug":1316,"name":1316,"fn":1317,"description":1318,"org":1319,"tags":1320,"stars":1239,"repoUrl":1240,"updatedAt":1325},"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},[1321,1322],{"name":1149,"slug":1150,"type":15},{"name":1323,"slug":1324,"type":15},"Infrastructure","infrastructure","2026-07-14T05:25:49.362534",{"slug":1327,"name":1327,"fn":1328,"description":1329,"org":1330,"tags":1331,"stars":1239,"repoUrl":1240,"updatedAt":1339},"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},[1332,1335,1336],{"name":1333,"slug":1334,"type":15},"Code Review","code-review",{"name":1262,"slug":1263,"type":15},{"name":1337,"slug":1338,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":1341,"name":1341,"fn":1342,"description":1343,"org":1344,"tags":1345,"stars":1239,"repoUrl":1240,"updatedAt":1348},"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},[1346,1347],{"name":1309,"slug":1310,"type":15},{"name":1312,"slug":1313,"type":15},"2026-07-14T05:25:54.928983",{"slug":1350,"name":1350,"fn":1351,"description":1352,"org":1353,"tags":1354,"stars":1239,"repoUrl":1240,"updatedAt":1357},"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},[1355,1356],{"name":1162,"slug":1163,"type":15},{"name":1249,"slug":1250,"type":15},"2026-07-30T05:29:03.275638",496]