NuRec Skills Index
A routing skill. It decides which sibling skill to read next for a
NuRec / Neural Reconstruction task. Five siblings cover the full
pipeline:
physical-ai-datasets — find an existing NVIDIA dataset.
ncore — convert raw sensor data into NCore V4.
nre — train a 3DGUT reconstruction and render novel views from
NCore V4 (or a pre-trained USDZ).
asset-harvester — extract per-object 3D Gaussian Splat assets
from sparse AV-clip views.
nurec-fixer — clean up artifacts in already-rendered frames.
Use this index when the user mentions NuRec / NRE / 3DGUT /
USDZ / "render this clip" / "convert this bag" / "extract objects"
but the right sub-skill is not yet obvious. Always read this first.
Do NOT use this index when:
- The right sub-skill is already obvious (open it directly).
- The task is not a NuRec task (this skill will not help).
- Hands-on implementation steps are needed — defer to the sub-skill
this index points at.
Purpose
This skill exists so an agent never has to guess which NuRec-family
skill to read next. It is a hand-curated router for the
five-skill NuRec family and nothing else.
Use cases this skill is built for:
- Disambiguate a NuRec request. The user says "render this
clip", "convert this bag", "fix these frames", or "extract this
car" and you need to pick the one sibling skill that owns that
verb.
- Bootstrap a multi-stage pipeline. The user's goal needs two or
three siblings in a fixed order (convert → train → render, dataset
→ render, harvest → insert, render → harmonize). This index points
you at the right starting sibling and the matching workflow A–G in
references/workflows.md.
- Translate NuRec jargon for a beginner. NuRec vs NRE, USDZ vs
NCore V4, 3DGUT vs 3DGRT, NRE's built-in Fixer vs the standalone
DiffusionHarmonizer — see Easy mix-ups.
- Locate a sibling skill that is not on disk. Defer to
references/discovery.md instead of
guessing a path.
- Plan disk cleanup across the family. A full NuRec workflow
can leave 150 GB+ behind; defer to
references/teardown.md for the
documented order.
Use cases this skill is explicitly NOT built for:
- Running any container, training job, rendering job, conversion,
dataset download, server, or teardown — always handed off to the
sibling.
- Routing tasks outside the NuRec family (Omniverse, Isaac Sim,
CARLA, Cosmos-* training, generic Hugging Face downloads).
- Discovering newly-added sibling skills automatically — the
catalogue is hand-curated and must be edited by hand (see
Keeping this index up to date).
Instructions
Follow these steps when answering a NuRec-shaped question:
- Classify the request. Read the user's goal and match it to a
row in Pick a skill. Multi-stage tasks
(convert + train, dataset + render) usually start with
ncore
or physical-ai-datasets and then hand off to nre.
- Open exactly one sibling skill next. Refer to it by
name:
(e.g. nre), not by file path — names are portable across
runtimes. If the sibling is not on disk locally, follow
references/discovery.md.
- Defer execution to the sibling. This index is read-only and
describes routing only; it never runs containers, training,
rendering, conversion, or downloads itself.
- For multi-step pipelines, walk a workflow in order. Pick a
workflow ID (A–G) from
references/workflows.md and open
the named siblings one at a time, in the listed order. Do not
collapse steps from that file into this index.
- On disk cleanup, follow
references/teardown.md. A complete
NuRec workflow can leave 150 GB+ on disk; each sibling owns its
own teardown.
- Never echo secrets (
NGC_API_KEY, HF_TOKEN). Use each
sibling's scripts/validate_setup.py when present, or
hf auth whoami. See the "Secrets" block in
references/teardown.md.
What is NuRec?
NuRec (NVIDIA Omniverse Neural Reconstruction) takes a
recording from cameras and LiDAR — usually from a self-driving car
or a robot — and turns it into a 3D scene that can be re-rendered
from any angle.
Names that appear often:
- NRE — "Neural Reconstruction Engine", the program that does
the actual training and rendering. NuRec is the product name;
NRE is the engine inside it.
- USDZ — the file format the trained scene is saved in. A zip
archive that Omniverse, Isaac Sim, and CARLA know how to open.
- NCore V4 — the input format. Raw recordings must be
converted into NCore V4 before NRE can consume them.
- 3DGUT / 3DGRT — two flavours of 3D Gaussian Splatting that
NRE uses internally. Most users never pick between them; the
default Hydra recipe handles it.
A typical NuRec project has three stages:
- Get the input — convert a recording into NCore V4, or
download a pre-converted dataset from Hugging Face.
- Train the reconstruction — feed NCore V4 to NRE; out comes
a USDZ file.
- Render new views — point NRE at the USDZ to render images,
videos, or LiDAR sweeps from any camera angle.
Some projects skip step 2 entirely by downloading a USDZ that
NVIDIA has already trained.
Pick a skill
Match the user's goal in the left column, then open the skill on
the right. Arrows mean "do these in order".
| Goal |
Skill to read |
| Find or download a NuRec dataset NVIDIA has published |
physical-ai-datasets |
| Convert camera / LiDAR / radar / depth / stereo into NCore V4 |
ncore |
| Write a new converter for a sensor setup not yet supported (drone, RGB-D, ROS 2 bag, COLMAP, …) |
ncore |
| Train a 3D reconstruction from an NCore clip |
ncore → nre |
| Generate the extra inputs NRE needs (segmentation, depth, ego mask) |
nre (via nre-tools container) |
| Render a USDZ along the original camera positions |
nre |
| Render at full resolution / highest quality |
nre ("Quality presets" inside that skill) |
| Render along a shifted trajectory |
nre |
| Render through a server so a simulator can ask for frames |
nre (serve-grpc) |
| Render the same USDZ many times back-to-back from Python with minimal per-call latency |
nre (warm serve-grpc + thin Python client / batch_render_rgb) |
| Render LiDAR sweeps (point clouds) from a USDZ |
nre (render-grpc --lidar) |
| Skip training and just render an NVIDIA-built driving scene |
physical-ai-datasets → nre |
| Skip training and use a pre-built indoor robotics scene |
physical-ai-datasets → nre (then Isaac Sim 5.1) |
| Extract individual 3D objects (cars, pedestrians) from a driving clip |
asset-harvester |
| Add, remove, or replace cars / pedestrians in a NuRec scene |
asset-harvester → nre |
| Clean up rendered frames (ghosting, floaters, flickering, inserted-object lighting) |
nurec-fixer, or --enable-difix inside nre |
| Export the scene as PLY / mesh / depth maps / ego mask |
nre |
| Upgrade an old USDZ so newer NRE versions load it faster |
nre (upgrade-artifact) |
| Open a USDZ or PLY in a browser viewer |
nre (viewer / ply_viewer) |
| Measure rendering quality (PSNR / SSIM / LPIPS) |
nre (eval-rendering-metrics) |
| Benchmark different reconstruction methods on the same scenes |
physical-ai-datasets (PhysicalAI-NuRec-PPISP) → nre |
| Train on multiple GPUs or on SLURM |
nre (Workflow D) |
For multi-step pipelines, see
references/workflows.md (workflows
A–G).
The skills in this folder
Open siblings by their Name — that is the canonical
identifier. The Folder column is just where the skill lives in
this repo if it has been cloned locally.
| Name |
Folder |
What it does |
physical-ai-datasets |
physical-ai-datasets/ |
Catalog and download recipes for every NVIDIA Physical AI dataset on Hugging Face (driving, robotics, manipulation, NuRec scenes, benchmarks). |
ncore |
ncore/ |
Converts any sensor recording into NCore V4. Also covers writing a new converter. |
nre |
nre/ |
The Neural Reconstruction Engine itself. Trains reconstructions, renders frames, exports meshes / point clouds / depth, edits actors, runs the gRPC server, browses results, evaluates quality. |
asset-harvester |
asset-harvester/ |
Apache-2.0 pipeline that extracts individual 3D objects from sparse driving-clip views as .ply Gaussian splats plus metadata. |
nurec-fixer |
nurec-fixer/ |
Standalone DiffusionHarmonizer workflow that cleans up rendered frames, harmonizes inserted actors, evaluates PSNR/LPIPS, and optionally fine-tunes the model. |
Easy mix-ups
These pairs sound similar but are different things. When in doubt,
come back here.
- NuRec vs NRE. NuRec is the product name; NRE is the engine
inside it. Both map to the same skill:
nre.
- NRE's built-in Fixer vs standalone DiffusionHarmonizer.
--enable-difix inside nre is an inline NRE rendering
feature. The nurec-fixer skill covers the standalone public
DiffusionHarmonizer release (code at NVIDIA/harmonizer, model
at nvidia/DiffusionHarmonizer) for frames already on disk,
paired evaluation, and fine-tuning. Do not assume these two
paths share cache layout or weights unless the NRE tag's own
docs say so.
ncore vs nre. They run in order, never as
alternatives. ncore produces the input format; nre reads it.
asset-harvester vs nre's export-external-assets. Asset
Harvester produces the per-object .ply files. nre's
export-external-assets packages them into a USDZ. Always
Asset Harvester first.
- Cosmos-Drive-Dreams vs PhysicalAI-Autonomous-Vehicles-NuRec.
Both are AV datasets on Hugging Face; both are managed by
physical-ai-datasets. Cosmos-Drive-Dreams is synthetic
weather-augmented video (CC-BY-4.0). The NuRec dataset is
real driving scenes turned into renderable USDZs (gated AV
License).
Prerequisites
This index is read-only and needs no tooling. The real
prerequisites live in each sibling skill:
| Sibling |
Hard requirements |
ncore |
Python 3.10+, pip install nvidia-ncore; source data on disk |
nre |
Linux x86_64, NVIDIA GPU (Ampere+, ≥24 GB VRAM), Docker 23+, NVIDIA Container Toolkit, NGC_API_KEY |
asset-harvester |
Linux + conda, NVIDIA driver ≥570, ~16 GB VRAM, HF_TOKEN |
nurec-fixer |
Linux, NVIDIA GPU (Ampere+), Docker, NVIDIA Container Toolkit, HF_TOKEN; NGC_API_KEY may be needed for nvcr.io pulls |
physical-ai-datasets |
Python + huggingface_hub, HF_TOKEN (gated datasets need license acceptance) |
Each sibling skill ships scripts/validate_setup.py (where
applicable) — run it before invoking the workflow. Never echo
secret env vars; see
references/teardown.md.
Examples
Concrete routing examples. The user prompt is on the left; the
correct action this index should take is on the right.
Example 1 — single-skill routing
User: "I have a Waymo Open recording. How do I get it into a
format NRE accepts?"
- Match the row "Convert camera / LiDAR / radar / depth / stereo
into NCore V4" in Pick a skill.
- Open the
ncore skill next; do not run any commands from this
index.
Example 2 — multi-stage pipeline
User: "I have a driving clip. I want to train NuRec and then
render a new camera trajectory through it."
- Match "Train a 3D reconstruction from an NCore clip" →
ncore
→ nre.
- Cross-check workflow A in
references/workflows.md.
- Open
ncore first, then nre, in that order.
Example 3 — skip training, just render
User: "Can I just see NuRec working on a scene NVIDIA already
built?"
- Match "Skip training and just render an NVIDIA-built driving
scene" →
physical-ai-datasets → nre.
- Cross-check workflow B.
- Open
physical-ai-datasets first to download one scene
(~1.5–2 GB), then nre to render.
Example 4 — actor editing
User: "I want to add a pedestrian to this NuRec scene."
- Match "Add, remove, or replace cars / pedestrians" →
asset-harvester → nre.
- Cross-check workflow D.
- Confirm the original NCore clip is on disk first (Asset
Harvester needs it), then open
asset-harvester, then nre
with serve-grpc --enable-editing-actors.
Example 5 — ambiguous "fix it" request
User: "My rendered frames look fuzzy with weird floaters.
Can you clean them up?"
- Match the "Clean up rendered frames" row. Two valid paths:
- Quick path:
--enable-difix inside nre if the user is
already rendering through NRE.
- Standalone path:
nurec-fixer for already-rendered
frames on disk or for paired evaluation / fine-tuning.
- Ask which interface the user wants, then open the matching
skill. See workflow E for details.
Example 6 — sibling skill not on disk
User: "Where do I find the nre skill? It is not in my
repo."
- Do not guess a path. Follow
references/discovery.md: look under
.agents/skills/nre/SKILL.md, then .claude/skills/nre/, then
.cursor/skills/nre/, then ~/.cursor/skills/nre/, and as a
last resort clone
https://github.com/NVIDIA/nurec-skills.
Limitations
- Routes only; never runs pipelines. For hands-on steps, open
the sibling skill this index points to.
- Hand-curated catalogue. A newly-added sibling skill is not
discoverable here until someone updates
Pick a skill.
- Names are portable, paths are not. Cross-skill links assume
the canonical layout (
.agents/skills/<name>/SKILL.md). In a
different runtime layout, prefer name-based skill resolution
over file paths.
- No Omniverse / Isaac Sim integration steps — those live in
upstream Omniverse / Isaac docs, not in the NuRec skill family.
Troubleshooting
| Symptom |
Likely cause |
Resolution |
| Agent picked the wrong sibling skill |
The user's task spans multiple stages (e.g. convert + train) |
Re-read Pick a skill and follow the arrows; multi-stage tasks usually start with ncore or physical-ai-datasets, then hand off to nre. |
| Sibling skill not found on disk |
The host repo only has the index |
Follow references/discovery.md. |
Stale link to ncore-data-conversion |
Older snapshots used that name; the skill is now ncore |
Update the link to ncore. |
| User wants to delete disk artifacts |
NuRec workflow caches grow large |
Walk references/teardown.md in the documented order. |
| User asks "should I retrain or just clean up frames?" |
Conflating reconstruction vs post-processing |
Retrain → nre; clean already-rendered frames → nurec-fixer. |
References
Detailed material that this index intentionally keeps out of the
hot path. Read only when the matching section above points there.
references/workflows.md — full
step-by-step multi-skill workflows A–G.
references/teardown.md — disk
cleanup order across all five siblings plus secrets-handling
policy.
references/discovery.md — how to
locate or fetch a sibling skill that is not already on disk;
thin-local-skill policy and upstream links.
Keeping this index up to date
This index is hand-curated — it groups skills by what users
want to do, not alphabetically. There is no generator script; edit
this SKILL.md by hand whenever the sibling set changes.
When a new sibling skill is added or a use case shifts:
- Add a row to Pick a skill for the new use
case.
- Add a row to
The skills in this folder.
- If the new skill changes a multi-step pipeline, update
references/workflows.md.
- Confirm the sibling's
metadata.upstream field still points at
the canonical upstream repo or container.
Otherwise the index will quietly drift and beginners will end up
reading the wrong skill.
1---2name: nurec-index3description: Router for NVIDIA NuRec / NRE / 3DGUT / USDZ / NCore V4 / asset harvest / frame cleanup tasks — picks the right sibling (nre, ncore, asset-harvester, nurec-fixer, physical-ai-datasets). Use when the sub-skill is unclear or a multi-stage pipeline is needed; do NOT use for non-NuRec tasks or to run any pipeline itself.4license: CC-BY-4.0 AND Apache-2.05---67# NuRec Skills Index89A routing skill. It decides *which* sibling skill to read next for a10NuRec / Neural Reconstruction task. Five siblings cover the full11pipeline:1213- `physical-ai-datasets` — find an existing NVIDIA dataset.14- `ncore` — convert raw sensor data into NCore V4.15- `nre` — train a 3DGUT reconstruction and render novel views from16 NCore V4 (or a pre-trained USDZ).17- `asset-harvester` — extract per-object 3D Gaussian Splat assets18 from sparse AV-clip views.19- `nurec-fixer` — clean up artifacts in already-rendered frames.2021**Use this index when** the user mentions NuRec / NRE / 3DGUT /22USDZ / "render this clip" / "convert this bag" / "extract objects"23but the right sub-skill is not yet obvious. Always read this first.2425**Do NOT use this index when:**2627- The right sub-skill is already obvious (open it directly).28- The task is not a NuRec task (this skill will not help).29- Hands-on implementation steps are needed — defer to the sub-skill30 this index points at.3132## Purpose3334This skill exists so an agent never has to *guess* which NuRec-family35skill to read next. It is a hand-curated router for the36five-skill NuRec family and nothing else.3738**Use cases this skill is built for:**3940- **Disambiguate a NuRec request.** The user says "render this41 clip", "convert this bag", "fix these frames", or "extract this42 car" and you need to pick the one sibling skill that owns that43 verb.44- **Bootstrap a multi-stage pipeline.** The user's goal needs two or45 three siblings in a fixed order (convert → train → render, dataset46 → render, harvest → insert, render → harmonize). This index points47 you at the right starting sibling and the matching workflow A–G in48 [`references/workflows.md`](references/workflows.md).49- **Translate NuRec jargon for a beginner.** NuRec vs NRE, USDZ vs50 NCore V4, 3DGUT vs 3DGRT, NRE's built-in Fixer vs the standalone51 DiffusionHarmonizer — see [Easy mix-ups](#easy-mix-ups).52- **Locate a sibling skill that is not on disk.** Defer to53 [`references/discovery.md`](references/discovery.md) instead of54 guessing a path.55- **Plan disk cleanup across the family.** A full NuRec workflow56 can leave 150 GB+ behind; defer to57 [`references/teardown.md`](references/teardown.md) for the58 documented order.5960**Use cases this skill is explicitly NOT built for:**6162- Running any container, training job, rendering job, conversion,63 dataset download, server, or teardown — always handed off to the64 sibling.65- Routing tasks outside the NuRec family (Omniverse, Isaac Sim,66 CARLA, Cosmos-* training, generic Hugging Face downloads).67- Discovering newly-added sibling skills automatically — the68 catalogue is hand-curated and must be edited by hand (see69 [Keeping this index up to date](#keeping-this-index-up-to-date)).7071## Instructions7273Follow these steps when answering a NuRec-shaped question:74751. **Classify the request.** Read the user's goal and match it to a76 row in [Pick a skill](#pick-a-skill). Multi-stage tasks77 (convert + train, dataset + render) usually start with `ncore`78 or `physical-ai-datasets` and then hand off to `nre`.792. **Open exactly one sibling skill next.** Refer to it by `name:`80 (e.g. `nre`), not by file path — names are portable across81 runtimes. If the sibling is not on disk locally, follow82 [`references/discovery.md`](references/discovery.md).833. **Defer execution to the sibling.** This index is read-only and84 describes routing only; it never runs containers, training,85 rendering, conversion, or downloads itself.864. **For multi-step pipelines, walk a workflow in order.** Pick a87 workflow ID (A–G) from88 [`references/workflows.md`](references/workflows.md) and open89 the named siblings one at a time, in the listed order. Do not90 collapse steps from that file into this index.915. **On disk cleanup**, follow92 [`references/teardown.md`](references/teardown.md). A complete93 NuRec workflow can leave 150 GB+ on disk; each sibling owns its94 own teardown.956. **Never echo secrets** (`NGC_API_KEY`, `HF_TOKEN`). Use each96 sibling's `scripts/validate_setup.py` when present, or97 `hf auth whoami`. See the "Secrets" block in98 [`references/teardown.md`](references/teardown.md).99100## What is NuRec?101102**NuRec** (NVIDIA Omniverse Neural Reconstruction) takes a103recording from cameras and LiDAR — usually from a self-driving car104or a robot — and turns it into a 3D scene that can be re-rendered105from any angle.106107Names that appear often:108109- **NRE** — "Neural Reconstruction Engine", the program that does110 the actual training and rendering. NuRec is the product name;111 NRE is the engine inside it.112- **USDZ** — the file format the trained scene is saved in. A zip113 archive that Omniverse, Isaac Sim, and CARLA know how to open.114- **NCore V4** — the input format. Raw recordings must be115 converted into NCore V4 before NRE can consume them.116- **3DGUT / 3DGRT** — two flavours of 3D Gaussian Splatting that117 NRE uses internally. Most users never pick between them; the118 default Hydra recipe handles it.119120A typical NuRec project has three stages:1211221. **Get the input** — convert a recording into NCore V4, or123 download a pre-converted dataset from Hugging Face.1242. **Train the reconstruction** — feed NCore V4 to NRE; out comes125 a USDZ file.1263. **Render new views** — point NRE at the USDZ to render images,127 videos, or LiDAR sweeps from any camera angle.128129Some projects skip step 2 entirely by downloading a USDZ that130NVIDIA has already trained.131132## Pick a skill133134Match the user's goal in the left column, then open the skill on135the right. Arrows mean "do these in order".136137| Goal | Skill to read |138|------|---------------|139| Find or download a NuRec dataset NVIDIA has published | `physical-ai-datasets` |140| Convert camera / LiDAR / radar / depth / stereo into NCore V4 | `ncore` |141| Write a new converter for a sensor setup not yet supported (drone, RGB-D, ROS 2 bag, COLMAP, …) | `ncore` |142| Train a 3D reconstruction from an NCore clip | `ncore` → `nre` |143| Generate the extra inputs NRE needs (segmentation, depth, ego mask) | `nre` (via `nre-tools` container) |144| Render a USDZ along the **original** camera positions | `nre` |145| Render at full resolution / highest quality | `nre` ("Quality presets" inside that skill) |146| Render along a **shifted** trajectory | `nre` |147| Render through a server so a simulator can ask for frames | `nre` (`serve-grpc`) |148| Render the same USDZ many times back-to-back from Python with minimal per-call latency | `nre` (warm `serve-grpc` + thin Python client / `batch_render_rgb`) |149| Render LiDAR sweeps (point clouds) from a USDZ | `nre` (`render-grpc --lidar`) |150| Skip training and just render an NVIDIA-built driving scene | `physical-ai-datasets` → `nre` |151| Skip training and use a pre-built indoor robotics scene | `physical-ai-datasets` → `nre` (then Isaac Sim 5.1) |152| Extract individual 3D objects (cars, pedestrians) from a driving clip | `asset-harvester` |153| Add, remove, or replace cars / pedestrians in a NuRec scene | `asset-harvester` → `nre` |154| Clean up rendered frames (ghosting, floaters, flickering, inserted-object lighting) | `nurec-fixer`, **or** `--enable-difix` inside `nre` |155| Export the scene as PLY / mesh / depth maps / ego mask | `nre` |156| Upgrade an old USDZ so newer NRE versions load it faster | `nre` (`upgrade-artifact`) |157| Open a USDZ or PLY in a browser viewer | `nre` (`viewer` / `ply_viewer`) |158| Measure rendering quality (PSNR / SSIM / LPIPS) | `nre` (`eval-rendering-metrics`) |159| Benchmark different reconstruction methods on the same scenes | `physical-ai-datasets` (`PhysicalAI-NuRec-PPISP`) → `nre` |160| Train on multiple GPUs or on SLURM | `nre` (Workflow D) |161162For multi-step pipelines, see163[`references/workflows.md`](references/workflows.md) (workflows164A–G).165166## The skills in this folder167168Open siblings by their **Name** — that is the canonical169identifier. The **Folder** column is just where the skill lives in170this repo if it has been cloned locally.171172| Name | Folder | What it does |173|------|--------|--------------|174| `physical-ai-datasets` | `physical-ai-datasets/` | Catalog and download recipes for every NVIDIA Physical AI dataset on Hugging Face (driving, robotics, manipulation, NuRec scenes, benchmarks). |175| `ncore` | `ncore/` | Converts any sensor recording into NCore V4. Also covers writing a new converter. |176| `nre` | `nre/` | The Neural Reconstruction Engine itself. Trains reconstructions, renders frames, exports meshes / point clouds / depth, edits actors, runs the gRPC server, browses results, evaluates quality. |177| `asset-harvester` | `asset-harvester/` | Apache-2.0 pipeline that extracts individual 3D objects from sparse driving-clip views as `.ply` Gaussian splats plus metadata. |178| `nurec-fixer` | `nurec-fixer/` | Standalone DiffusionHarmonizer workflow that cleans up rendered frames, harmonizes inserted actors, evaluates PSNR/LPIPS, and optionally fine-tunes the model. |179180## Easy mix-ups181182These pairs sound similar but are different things. When in doubt,183come back here.184185- **NuRec vs NRE.** NuRec is the product name; NRE is the engine186 inside it. Both map to the same skill: `nre`.187- **NRE's built-in Fixer vs standalone DiffusionHarmonizer.**188 `--enable-difix` inside `nre` is an inline NRE rendering189 feature. The `nurec-fixer` skill covers the standalone public190 DiffusionHarmonizer release (code at `NVIDIA/harmonizer`, model191 at `nvidia/DiffusionHarmonizer`) for frames already on disk,192 paired evaluation, and fine-tuning. Do not assume these two193 paths share cache layout or weights unless the NRE tag's own194 docs say so.195- **`ncore` vs `nre`.** They run **in order**, never as196 alternatives. `ncore` produces the input format; `nre` reads it.197- **`asset-harvester` vs `nre`'s `export-external-assets`.** Asset198 Harvester **produces** the per-object `.ply` files. `nre`'s199 `export-external-assets` **packages** them into a USDZ. Always200 Asset Harvester first.201- **Cosmos-Drive-Dreams vs PhysicalAI-Autonomous-Vehicles-NuRec.**202 Both are AV datasets on Hugging Face; both are managed by203 `physical-ai-datasets`. Cosmos-Drive-Dreams is **synthetic**204 weather-augmented video (CC-BY-4.0). The NuRec dataset is205 **real** driving scenes turned into renderable USDZs (gated AV206 License).207208## Prerequisites209210This index is read-only and needs no tooling. The *real*211prerequisites live in each sibling skill:212213| Sibling | Hard requirements |214|---------|-------------------|215| `ncore` | Python 3.10+, `pip install nvidia-ncore`; source data on disk |216| `nre` | Linux x86_64, NVIDIA GPU (Ampere+, ≥24 GB VRAM), Docker 23+, NVIDIA Container Toolkit, `NGC_API_KEY` |217| `asset-harvester` | Linux + conda, NVIDIA driver ≥570, ~16 GB VRAM, `HF_TOKEN` |218| `nurec-fixer` | Linux, NVIDIA GPU (Ampere+), Docker, NVIDIA Container Toolkit, `HF_TOKEN`; `NGC_API_KEY` may be needed for `nvcr.io` pulls |219| `physical-ai-datasets` | Python + `huggingface_hub`, `HF_TOKEN` (gated datasets need license acceptance) |220221Each sibling skill ships `scripts/validate_setup.py` (where222applicable) — run it before invoking the workflow. Never echo223secret env vars; see224[`references/teardown.md`](references/teardown.md).225226## Examples227228Concrete routing examples. The user prompt is on the left; the229correct action this index should take is on the right.230231### Example 1 — single-skill routing232233> **User:** "I have a Waymo Open recording. How do I get it into a234> format NRE accepts?"235236- Match the row "Convert camera / LiDAR / radar / depth / stereo237 into NCore V4" in [Pick a skill](#pick-a-skill).238- Open the `ncore` skill next; do not run any commands from this239 index.240241### Example 2 — multi-stage pipeline242243> **User:** "I have a driving clip. I want to train NuRec and then244> render a new camera trajectory through it."245246- Match "Train a 3D reconstruction from an NCore clip" → `ncore`247 → `nre`.248- Cross-check workflow A in249 [`references/workflows.md`](references/workflows.md).250- Open `ncore` first, then `nre`, in that order.251252### Example 3 — skip training, just render253254> **User:** "Can I just see NuRec working on a scene NVIDIA already255> built?"256257- Match "Skip training and just render an NVIDIA-built driving258 scene" → `physical-ai-datasets` → `nre`.259- Cross-check workflow B.260- Open `physical-ai-datasets` first to download **one** scene261 (~1.5–2 GB), then `nre` to render.262263### Example 4 — actor editing264265> **User:** "I want to add a pedestrian to this NuRec scene."266267- Match "Add, remove, or replace cars / pedestrians" →268 `asset-harvester` → `nre`.269- Cross-check workflow D.270- Confirm the original NCore clip is on disk first (Asset271 Harvester needs it), then open `asset-harvester`, then `nre`272 with `serve-grpc --enable-editing-actors`.273274### Example 5 — ambiguous "fix it" request275276> **User:** "My rendered frames look fuzzy with weird floaters.277> Can you clean them up?"278279- Match the "Clean up rendered frames" row. Two valid paths:280 - **Quick path:** `--enable-difix` inside `nre` if the user is281 already rendering through NRE.282 - **Standalone path:** `nurec-fixer` for already-rendered283 frames on disk or for paired evaluation / fine-tuning.284- Ask which interface the user wants, then open the matching285 skill. See workflow E for details.286287### Example 6 — sibling skill not on disk288289> **User:** "Where do I find the `nre` skill? It is not in my290> repo."291292- Do not guess a path. Follow293 [`references/discovery.md`](references/discovery.md): look under294 `.agents/skills/nre/SKILL.md`, then `.claude/skills/nre/`, then295 `.cursor/skills/nre/`, then `~/.cursor/skills/nre/`, and as a296 last resort clone297 `https://github.com/NVIDIA/nurec-skills`.298299## Limitations300301- **Routes only**; never runs pipelines. For hands-on steps, open302 the sibling skill this index points to.303- **Hand-curated catalogue.** A newly-added sibling skill is not304 discoverable here until someone updates305 [Pick a skill](#pick-a-skill).306- **Names are portable, paths are not.** Cross-skill links assume307 the canonical layout (`.agents/skills/<name>/SKILL.md`). In a308 different runtime layout, prefer name-based skill resolution309 over file paths.310- **No Omniverse / Isaac Sim integration steps** — those live in311 upstream Omniverse / Isaac docs, not in the NuRec skill family.312313## Troubleshooting314315| Symptom | Likely cause | Resolution |316|---------|--------------|------------|317| Agent picked the wrong sibling skill | The user's task spans multiple stages (e.g. convert + train) | Re-read [Pick a skill](#pick-a-skill) and follow the arrows; multi-stage tasks usually start with `ncore` or `physical-ai-datasets`, then hand off to `nre`. |318| Sibling skill not found on disk | The host repo only has the index | Follow [`references/discovery.md`](references/discovery.md). |319| Stale link to `ncore-data-conversion` | Older snapshots used that name; the skill is now `ncore` | Update the link to `ncore`. |320| User wants to delete disk artifacts | NuRec workflow caches grow large | Walk [`references/teardown.md`](references/teardown.md) in the documented order. |321| User asks "should I retrain or just clean up frames?" | Conflating reconstruction vs post-processing | Retrain → `nre`; clean already-rendered frames → `nurec-fixer`. |322323## References324325Detailed material that this index intentionally keeps out of the326hot path. Read only when the matching section above points there.327328- [`references/workflows.md`](references/workflows.md) — full329 step-by-step multi-skill workflows A–G.330- [`references/teardown.md`](references/teardown.md) — disk331 cleanup order across all five siblings plus secrets-handling332 policy.333- [`references/discovery.md`](references/discovery.md) — how to334 locate or fetch a sibling skill that is not already on disk;335 thin-local-skill policy and upstream links.336337## Keeping this index up to date338339This index is **hand-curated** — it groups skills by what users340want to do, not alphabetically. There is no generator script; edit341this `SKILL.md` by hand whenever the sibling set changes.342343When a new sibling skill is added or a use case shifts:3443451. Add a row to [Pick a skill](#pick-a-skill) for the new use346 case.3472. Add a row to348 [The skills in this folder](#the-skills-in-this-folder).3493. If the new skill changes a multi-step pipeline, update350 [`references/workflows.md`](references/workflows.md).3514. Confirm the sibling's `metadata.upstream` field still points at352 the canonical upstream repo or container.353354Otherwise the index will quietly drift and beginners will end up355reading the wrong skill.