Design
The prompts that specify the project — the single source of truth. Either design/index.md or a single design.md.
Open-Prompt Project Format
Open source shares the result. OPPF shares what produced it — the design prompts, the acceptance criteria, and the tests — so a generative coding agent can regenerate the whole project, with an explicit, checkable definition of done.
A standard for a project directory whose full contents can be reproduced by an AI.
Everything the agent needs lives in one folder, .opp/, split into three roles:
The prompts that specify the project — the single source of truth. Either design/index.md or a single design.md.
One file per acceptance property. The agent reads each and returns a strict pass / fail verdict. Optional.
A runnable test.sh suite that validates the implementation. Run after review. Optional.
opp drives a coding agent through three commands. Prompts go in; a working,
verified implementation comes out.
The design drives impl; review and test form the explicit definition of done. A failed verdict feeds back into another impl round — in the same agent session.
A conforming project is any directory containing an .opp/ folder.
.opp/
├─ design/
│ └─ index.md # the design — source of truth
├─ config.toml # agent + excludes (optional)
├─ review/ # pass/fail criteria (optional)
│ ├─ property_a.md
│ └─ property_b.md
└─ test/ # runnable suite (optional)
└─ test.sh
…implementation files # what the agent generates
design.md may replace the design/ folder.review/ and test/ are optional — start with just a design.config.toml picks the agent and lists read-only exclude paths.opp CLIA small Rust binary. It checks you're logged in, drives the agent with live progress, and reports results.
opp impl
Read the design and implement what it requires, streaming the agent's actions as it works.
opp review
Have the agent check every property and print a pass / fail verdict for each.
opp test
Run the bundled test.sh suite and report whether it passed.
# build the CLI
cargo build --release
# inside a project that has an .opp/ folder
opp impl # generate the implementation
opp review # check each acceptance property
opp test # run the test suite
# preview the agent calls without running them
opp --dry-run impl
opp.PATH — claude or codex.opp at any .opp/ project and go.The full spec lives in the repo's .notes/guidelines.md; usage details are in the README.