CLI
Validate
Validate project files against the local template snapshot.
project validate
Validate a project against its local .project/template snapshot.
project validate [directory|file] [flags]Arguments
| Argument | Required | Default | Description |
|---|---|---|---|
| `directory | file` | no | . |
Flags
| Flag | Synonyms | Type | Default | Description |
|---|---|---|---|---|
--format | - | string | pretty | Output format. Current useful values are pretty and tsv. |
--view | - | string | tree | Pretty output view. |
--color-scope | - | string | line | Color scope for pretty output. |
--status-color-only | - | boolean | false | Color only the status text instead of the whole row. |
--quarantine | - | boolean | false | Move not_allowed validation violations into .project/quarantine. |
--dry-run | - | boolean | false | Show the quarantine plan without writing changes. |
--yes | -y | boolean | false | Apply the quarantine plan without prompting. |
--help | -h | boolean | false | Print help. |
Statuses
| Status | Meaning |
|---|---|
OK | File exists in the template and matches the expected template area. |
ADDED | File is allowed by a slot pattern. |
VIOLATION | File is neither in the template nor allowed by a slot pattern. |
Output
Use --format tsv when another tool or agent should filter the result.
project validate --format tsv
project validate --format tsv | awk '$1 == "VIOLATION"'Quarantine
Quarantine moves violating files out of the source tree while keeping them visible in Git.
project validate --quarantine --dry-run
project validate --quarantine --yesViolating files are moved under:
.project/quarantine/<original-path>Examples
project validate
project validate .
project validate src/app/page.tsx
project validate --view table
project validate --status-color-only
project validate --format tsv