buildlisted
Install: claude install-skill maxgfr/skills
# build
A plan is a promise; a build is the promise kept, one step at a time, with the
proof for each step run before the next one starts. This skill exists so that
the model that planned the change manages the work instead of doing it in its
own context — and so that "I implemented the plan" is a table of exit codes.
All paths below are relative to this skill's directory.
## Three laws
1. **No plan, no build.** The input is a `docs/plans/*.md` with `status: approved`.
Not a description, not the conversation, not a plan that is nearly approved.
`scripts/plan-steps.mjs` decides — and refuses in one line.
2. **A step is done when its `Verify:` command ran and exited 0** — run by the
reviewer, not only by the implementer — and the reviewer accepted the spec.
A step that "looks done" is `blocked`.
3. **No repair that silences a checker.** `scripts/forbidden-repairs.mjs` scans
the whole diff after every step. One forbidden hunk reverts it and stops the
build; nothing after it runs.
Violating the letter of a law is violating its spirit.
## Invocations
Syntax: Codex uses `$build`; the Claude plugin uses `/maxgfr:build`; a
standalone Claude skill uses `/build`. The table shows the arguments.
| | |
|---|---|
| no arguments | **Default.** The newest approved plan under `docs/plans/`. |
| `<path>` | That plan. |
| `peer` | The *other* CLI agent writes the code — Codex from Claude, Claude from Codex — in the worktree, one step at a time. Review and guard unchang