Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Run `tao-daft validate` to check NVIDIA TAO DAFT datasets for structure, schema, and cross-reference errors. Do not use for non-DAFT formats. Use when the user asks to validate a DAFT dataset, check DAFT schema, validate a TAO dataset format, or run `tao-daft validate`.
.claude/skills/nvidia-tao-validate-dataset-format/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 17% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 25% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 12% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -10% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -6% | 0% |
bashtao-daft validate <format> --path <dataset-or-parent-dir>
<format> is a positional subcommand (e.g. metropolis-v3.0, cosmos-reason-v1.0); --path is required. Discover supported formats and per-format flags via tao-daft validate --help and the leaf --help (see "CLI conventions" below).
bashpython -c "import nvidia_tao_daft" 2>/dev/null || { echo "MISSING: tao-daft not installed. Run:" echo " pip install nvidia-tao-daft" exit 1 }
Discover the installed validator formats before choosing a format slug, then run validation with the target passed through --path:
bashtao-daft --version tao-daft validate --help tao-daft validate <format> --help tao-daft validate <format> --path /path/to/daft-dataset
Drive tao-daft validate against a DAFT dataset (or a tree of them). The CLI is the spec; the skill picks subcommand + flags and explains the result.
Trigger when the user mentions "TAO DAFT", "DAFT format", validating a DAFT dataset, schema/cross-reference errors, or tao-daft validate. Do not trigger for non-DAFT layouts (COCO, YOLO, Data Factory JSONL), or for tao-daft info / tao-daft convert — those have their own skills.
If the user's opening is ambiguous, run a few --help commands first to ground yourself, then come back and confirm the task.
nvidia-tao-daft installed (pip install nvidia-tao-daft; the wheelis enough, no source repo). Confirm with tao-daft --version.
tao-daft is nested argparse subcommands. Names and flags drift across versions, so discover the current surface from --help rather than trusting any list in this doc.
--format:tao-daft validate <format> [flags]. List current formats via tao-daft validate --help; slugs look like metropolis-v3.0, cosmos-reason-v1.0.
--path PATH, not positional. It accepts a singledataset/scene or a parent directory — the validator walks the tree.
tao-daft validate metropolis-v3.0 --help, before choosing them. Don't assume a flag from one format exists on another.
So the loop is: tao-daft --version → tao-daft validate --help → pick format (infer if unspecified, see below) → tao-daft validate <format> --help → run → interpret.
Use directory markers, not filenames:
meta.json next to media/ and text/ ⇒ cosmos-reason-v1.0.contextual/,typically alongside raw/ and task/ ⇒ metropolis-v3.0.
The CLI ends every run with a VALIDATION RESULTS block, then ✅ VALIDATION PASSED or ❌ VALIDATION FAILED, and exits non-zero on failure (safe to chain in scripts).
Output can be large on big trees — capture the full output to a file and read it in slices rather than scrolling inline.
JSONL, etc.) belong in the upstream converter skills.
tao-daft validate --help reportsfor the installed version; older slugs may have been retired.
validate only. Defer to the dedicated skills fortao-daft info and tao-daft convert.
tao-daft: command not found — wheel not installed in the activeenv. pip install nvidia-tao-daft; verify tao-daft --version.
error: argument --path is required — path passed positionally.Move it behind --path.
invalid choice: '<format>' — slug isn't wired up in thisversion. Re-run tao-daft validate --help and pick from the list.
via the format's scope-restriction flag; discover the name from the leaf --help.
--strict.| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-03 | fail→fail | 10,546 | 5,157 | -51% | 1 | 1 | 0% | 1,936 | 1,407 | -27% | 0 | 0 | — |
case-04 | pass→fail | 17,459 | 4,589 | -74% | 1 | 1 | 0% | 4,011 | 2,217 | -45% | 0 | 0 | — |
case-01 | fail→pass | 8,612 | 4,115 | -52% | 1 | 1 | 0% | 1,665 | 1,947 | +17% | 0 | 0 | — |
case-02 | fail→fail | 2,705 | 2,521 | -7% | 1 | 1 | 0% | 360 | 1,480 | +311% | 0 | 0 | — |
case-05 | fail→pass | 8,773 | 4,121 | -53% | 1 | 1 | 0% | 1,600 | 1,992 | +25% | 0 | 0 | — |
case-06 | fail→fail | 15,052 | 7,834 | -48% | 1 | 1 | 0% | 3,336 | 1,887 | -43% | 0 | 0 | — |
case-07 | pass→pass | 9,139 | 3,302 | -64% | 1 | 1 | 0% | 1,805 | 1,850 | +2% | 0 | 0 | — |
case-08 | fail→pass | 8,835 | 2,501 | -72% | 1 | 1 | 0% | 1,528 | 1,705 | +12% | 0 | 0 | — |
case-09 | fail→pass | 9,997 | 2,108 | -79% | 1 | 1 | 0% | 1,795 | 1,620 | -10% | 0 | 0 | — |
case-10 | fail→pass | 11,727 | 4,291 | -63% | 1 | 1 | 0% | 2,174 | 2,045 | -6% | 0 | 0 | — |
case-11 | pass→pass | 8,551 | 5,121 | -40% | 1 | 1 | 0% | 1,583 | 2,210 | +40% | 0 | 0 | — |
case-12 | fail→pass | 8,394 | 2,226 | -73% | 1 | 1 | 0% | 1,490 | 1,596 | +7% | 0 | 0 | — |
case-13 | fail→pass | 9,781 | 2,036 | -79% | 1 | 1 | 0% | 1,815 | 1,618 | -11% | 0 | 0 | — |
case-14 | fail→pass | 6,416 | 2,695 | -58% | 1 | 1 | 0% | 1,198 | 1,624 | +36% | 0 | 0 | — |
case-15 | pass→pass | 9,449 | 5,135 | -46% | 1 | 1 | 0% | 1,690 | 2,157 | +28% | 0 | 0 | — |
case-16 | fail→pass | 10,058 | 2,872 | -71% | 1 | 1 | 0% | 1,933 | 1,645 | -15% | 0 | 0 | — |
case-17 | fail→pass | 9,715 | 4,236 | -56% | 1 | 1 | 0% | 2,037 | 2,084 | +2% | 0 | 0 | — |
case-18 | fail→pass | 10,234 | 5,420 | -47% | 1 | 1 | 0% | 2,276 | 2,382 | +5% | 0 | 0 | — |
case-19 | fail→pass | 7,353 | 3,712 | -50% | 1 | 1 | 0% | 1,402 | 1,823 | +30% | 0 | 0 | — |
case-20 | pass→pass | 4,406 | 2,377 | -46% | 1 | 1 | 0% | 876 | 1,680 | +92% | 0 | 0 | — |
case-21 | fail→pass | 9,974 | 3,033 | -70% | 1 | 1 | 0% | 1,840 | 1,791 | -3% | 0 | 0 | — |
case-22 | pass→pass | 10,230 | 3,147 | -69% | 1 | 1 | 0% | 1,920 | 1,744 | -9% | 0 | 0 | — |
case-23 | fail→pass | 10,015 | 3,579 | -64% | 1 | 1 | 0% | 1,714 | 1,816 | +6% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 22 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +57 percentage points is the difference between those two pass rates over the 22 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.