skillspec validate parses a skill.spec.yml file against the SkillSpec typed grammar and runs parser-level checks for valid identifiers, cross-references, and structural correctness. Unknown fields are invalid; the validator runs in strict mode and rejects any key that does not belong to the declared schema.
Synopsis
Options
There are no additional flags. Exit code is
0 on success and non-zero on any validation error.
What validation checks
- Grammar — The file parses cleanly as valid YAML and matches the
skillspec/v0schema. - Identifiers — Route IDs, rule IDs, command IDs, dependency IDs, and all other declared identifiers are well-formed.
- Cross-references — References between blocks (e.g., a route’s
checks, a command’srequires.dependencies, a rule’sprefer) point to declared items. - Strict mode — Unknown fields at any level are rejected, not silently ignored.
Examples
Validate a spec in the current directory:The four-command adoption gate
Before installing or compiling a spec, run all four QA gates in order:skillspec validate checks structure and correctness, not semantic quality. After validation passes, run skillspec test to verify that routing rules and decisions match the declared scenario tests.Related commands
skillspec test <path>— Run scenario tests declared in the spec.skillspec imports check <path>— Validate declared local imports and load order.skillspec deps check <path>— Check declared dependencies for the whole spec or for one command.skillspec compile <path> --target <target>— Compile a validated spec into harness guidance.