> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vidjutsu.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# vidjutsu check

> Validate specs against VidLang rules. All rules are off by default — enable the ones you need.

## Usage

```bash theme={null}
vidjutsu check run --spec <file> --rules <rules>
```

## Options

| Flag      | Required | Description                                                   |
| --------- | -------- | ------------------------------------------------------------- |
| `--spec`  | Yes      | Path to the spec file to validate                             |
| `--rules` | Yes      | Rules to enable. Comma-separated IDs or a JSON config object. |

All rules are **off by default**. You must enable at least one.

## Rules

| Rule  | Name                   | Use for                |
| ----- | ---------------------- | ---------------------- |
| VL001 | Temporal Continuity    | All formats            |
| VL002 | Subject Consistency    | All formats            |
| VL003 | Camera Physics         | B-roll, cinematic      |
| VL004 | Audio Alignment        | Talking-head, dialogue |
| VL005 | Provider Compatibility | All formats            |
| VL006 | Description Quality    | B-roll, cinematic      |
| VL009 | Expression Continuity  | Talking-head           |
| VL010 | Audio Normalization    | B-roll, music          |
| VL011 | Prosody Control        | Talking-head, dialogue |
| VL012 | Anti-Emphasis          | Talking-head, dialogue |
| VL013 | Talking Head Stillness | Talking-head only      |

## Examples

### Comma-separated (enable by ID)

```bash theme={null}
vidjutsu check run --spec ./brief.json --rules VL013,VL011,VL012

Checking spec with 3 rules...
✓ All checks passed

3/3 rules passed
```

### JSON config (enable, disable, override severity)

```bash theme={null}
vidjutsu check run --spec ./brief.json \
  --rules '{"VL013": true, "VL011": {"severity": "warning"}, "VL003": false}'

Checking spec with 3 rules...
✗ Failed checks:
  [warning] VL011: No prosody direction found in scene description

2/3 rules passed
```

## Custom rules

Custom rules are plain-text strings stored per-client. They are **not** evaluated by the check endpoint — they're evaluated by the agent layer where Claude is available.

```bash theme={null}
# List your custom rules
vidjutsu check rules list

# Save custom rules
vidjutsu check rules set "ai-reveal-required: Dialogue must contain a clear AI reveal,first-person-dialogue: All dialogue must be first-person"
```

## Rate limit

Counts toward the daily `check` limit (100/day). Resets at 00:00 UTC; exceeding it returns HTTP 429. Custom rule CRUD is unmetered.
