tao-validate-dataset-format
About tao-validate-dataset-format
A skill for validating NVIDIA TAO DAFT datasets or directory trees with `tao-daft validate` and interpreting the results. It consults the installed CLI help for format-specific options and applies only to DAFT.
Key features
- 01Validates DAFT dataset formats
- 02Accepts a dataset or directory tree
- 03Discovers formats and flags from CLI help
- 04Infers formats from directory markers
- 05Supports strict warning handling
Use cases
- 01Check a DAFT dataset layout
- 02Validate datasets across a directory tree
- 03Find schema or cross-reference errors
- 04Fail CI runs on warnings
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ nvidia/ skills --skill tao-validate-dataset-formatAfter installing, type/tao-validate-dataset-formatin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
BENCHMARK.mdskill-card.mdskill.oms.sigconfig/skillspector-baseline.yamlevals/evals.jsonDetails
From the project READMEValidate a TAO DAFT Dataset
Standalone install? If this session was not initialized by the TAO skill bank plugin, run the
tao-setupskill first (host preflight, credentials, cross-skill discovery).
Quick start
tao-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).
Preflight
python -c "import nvidia_tao_daft" 2>/dev/null || {
echo "MISSING: tao-daft not installed. Run:"
echo " pip install nvidia-tao-daft"
exit 1
}
Quick Start
Discover the installed validator formats before choosing a format slug, then
run validation with the target passed through --path:
tao-daft --version
tao-daft validate --help
tao-daft validate <format> --help
tao-daft validate <format> --path /path/to/daft-dataset
Purpose
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.
Prerequisites
nvidia-tao-daftinstalled (pip install nvidia-tao-daft; the wheel is enough, no source repo). Confirm withtao-daft --version.- A DAFT dataset, or a parent directory of them, on local disk.
Instructions
CLI conventions
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 is a positional subcommand, not
--format:tao-daft validate <format> [flags]. List current formats viatao-daft validate --help; slugs look likemetropolis-v3.0,cosmos-reason-v1.0. - Target is
--path PATH, not positional. It accepts a single dataset/scene or a parent directory — the validator walks the tree. - Flags are per-format; run the leaf help, e.g.
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.
Format inference
Use directory markers, not filenames:
meta.jsonnext tomedia/andtext/⇒cosmos-reason-v1.0.- A directory (or nested directories) containing
contextual/, typically alongsideraw/andtask/⇒metropolis-v3.0. - Neither marker present ⇒ ask the user; do not guess.
Reading errors
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.
Limitations
- Validates DAFT only. Non-DAFT layouts (COCO, YOLO, Data Factory JSONL, etc.) belong in the upstream converter skills.
- Supported formats are whatever
tao-daft validate --helpreports for the installed version; older slugs may have been retired. - Covers
validateonly. Defer to the dedicated skills fortao-daft infoandtao-daft convert. - Don't reimplement validation in Python; the CLI is the spec.
Troubleshooting
tao-daft: command not found— wheel not installed in the active env.pip install nvidia-tao-daft; verifytao-daft --version.error: argument --path is required— path passed positionally. Move it behind--path.invalid choice: '<format>'— slug isn't wired up in this version. Re-runtao-daft validate --helpand pick from the list.- Auto-detection (raw type / contextual set) is wrong — override
via the format's scope-restriction flag; discover the name from the
leaf
--help. - CI wants warnings to fail — add
--strict.