"Use NAVSIM v2 for autonomous-driving agent development, OpenScene
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill navsim --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Navsim?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-navsim)More formats (shields.io, HTML) on the badges page.
---
name: navsim
description: "Use NAVSIM v2 for autonomous-driving agent development, OpenScene
data setup, learned-agent training, EPDMS evaluation, traffic-policy
experiments, visualization, and leaderboard submission preparation."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# NAVSIM v2 operating guide
Use this skill when a task names NAVSIM, OpenScene, EPDMS/PDM score, pseudo
closed-loop driving evaluation, TransFuser/LTF, `Trajectory`, `SensorConfig`,
NAVSIM split names, or the NAVSIM submission pickle. This is a self-contained
operating graph: use its bundled references and safe helpers rather than
reopening a NAVSIM checkout.
## Route by task
- **Install, workspace, maps, logs, sensors, split choice, or loader/data
layout:** read [setup-and-data](sub-skills/setup-and-data/SKILL.md).
- **Create/debug a planner agent, sensor history, trajectory, checkpoint, or
TransFuser/LTF configuration:** read [agents](sub-skills/agents/SKILL.md).
- **Train a learned agent, build/reuse feature caches, or diagnose Lightning and
Hydra training configuration:** read [training](sub-skills/training/SKILL.md).
- **Build metric caches, run one-/two-stage EPDMS, select traffic policies, or
diagnose score CSVs:** read [evaluation](sub-skills/evaluation/SKILL.md).
- **Plot camera/BEV/LiDAR data or prepare/validate a warmup/challenge pickle:**
read [visualization-and-submission](sub-skills/visualization-and-submission/SKILL.md).
For a request that spans routes, start with `setup-and-data`, then follow the
links from `agents` into `training` or `evaluation`; use
`visualization-and-submission` only for plotting and submission artifacts.
## Installation baseline
NAVSIM v2.0.0 documents Python 3.9+, a nuPlan devkit dependency, PyTorch 2.0.1,
Hydra, PyTorch Lightning, NumPy, OpenCV, geospatial libraries, and optional
visualization/Jupyter packages. Use a fresh environment and the package's
versioned requirements rather than mutating an unrelated environment. For a
public source installation, use a compatible Python 3.9+ environment and pin
this source revision:
```bash
python -m pip install "navsim @ git+https://github.com/autonomousvision/navsim.git@0a380a9063d7162ec93d0f51e9990ebac585f720"
python -m pip check
```
If a user already has a source checkout, editable installation is equivalent:
`python -m pip install -e .` from that checkout. A minimal public import check
is:
```bash
python -c "import navsim; from navsim.common.dataclasses import SensorConfig, Trajectory; print('NAVSIM import OK')"
```
GPU is not required for metadata/API inspection, but learned TransFuser
training and realistic sensor/evaluation workloads should use a compatible
CUDA Torch installation. Never call a CPU import proof of GPU capability.
## Workspace contract
Before any data-backed command, define these public variables and validate the
selected roots with the bundled [workspace validator](sub-skills/setup-and-data/scripts/validate_workspace.py)
from the `setup-and-data` route:
- `NUPLAN_MAP_VERSION=nuplan-maps-v1.0`
- `NUPLAN_MAPS_ROOT`: readable nuPlan map database
- `NAVSIM_EXP_ROOT`: experiment outputs and metric cache
- `NAVSIM_DEVKIT_ROOT`: the NAVSIM installation/project root used by the user's
command context
- `OPENSCENE_DATA_ROOT`: OpenScene logs, sensor blobs, and two-stage bundles
Do not create empty directories to satisfy the checker. Logs, sensor paths,
map data, synthetic scenes, and metric caches are separate resources.
## Cross-cutting guardrails
- Keep agent trajectories in local rear-axle BEV `(x, y, heading)` form with a
matching `TrajectorySampling`; the default model output is 4 seconds at
0.5-second intervals, while proposal evaluation commonly samples 4 seconds
at 0.1 seconds.
- Keep the metric-cache split, scene-filter split, synthetic roots, proposal
sampling, and traffic policy aligned. Treat missing/unused token warnings or
invalid pseudo-closed-loop aggregation as failed evaluation evidence.
- Do not train challenge/test splits. `navtrain`/`trainval`/`mini` are training
candidates; `test`, `navtest`, `navhard_two_stage`, `warmup_two_stage`, and
private challenge splits are evaluation/submission surfaces.
- Submission agents receive `AgentInput`, not an annotated `Scene`; a
`requires_scene=True` privileged agent cannot generate a valid server pickle.
- Dataset downloads, large cache creation, training, benchmark scoring,
private-data access, uploads, and notebook rendering are explicit operations,
not default smoke checks.
For a package/API/backend smoke, run the shared [runtime inspector](scripts/inspect_navsim_runtime.py)
with `--help`, `--json`, or the explicitly requested `--cuda` probe. Read
[troubleshooting.md](references/troubleshooting.md) for cross-cutting
install/import, environment-variable, split/cache, backend, Hydra, and output
failures. Read [repo-provenance.md](references/repo-provenance.md) before
refreshing this graph against a newer NAVSIM source version.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!