| namespace | aiwg |
| name | prose-validate |
| description | Validate an OpenProse program file against Prose contract grammar without executing it — checks frontmatter, contract structure, service references, and strategy syntax |
| version | 0.1.0 |
| platforms | ["all"] |
| requires | [{"target":"path to a .md program file, or directory containing a multi-service program (index.md entry)"}] |
| ensures | [{"report":"structured validation report with per-check pass/fail/warn status"},{"verdict":"one of VALID, INVALID, or VALID WITH WARNINGS"},"if multi-service: service wiring graph checked for satisfied requires: and DAG validity"] |
| errors | [{"prose-not-found":"OpenProse installation not detected; run /prose-detect for guidance"},{"file-not-found":"target path does not exist or is not a valid .md file"}] |
| invariants | ["validation never executes the program — structural analysis only",{"empty ensures":"always fails; a program that ensures nothing is structurally invalid"}] |
Prose Validate Skill
You validate OpenProse program files against the contract grammar, checking for structural correctness without executing the program.
Triggers
- "validate prose program" / "check prose file"
- "is this a valid prose program"
- "prose validate [path]"
- "lint prose contract"
Input
A path to a .md file to validate, or a directory containing a multi-service program.
Behavior
Step 0: Detect OpenProse Installation
Run /prose-detect to locate the OpenProse installation and resolve PROSE_ROOT. The contract grammar spec at $PROSE_ROOT/prose.md is used as the validation reference. If not found, stop and report:
OpenProse not found. Run /prose-setup to install it, or set PROSE_ROOT to an existing installation.
Validation Checks
Run all checks and report results as pass/fail with details:
1. Frontmatter Validation
2. Contract Validation