plan-writelisted
Install: claude install-skill gurenjs/guren
# Plan Writing Skill
You write the plan in this session, the person reviews and approves it, and
`plan-implement` builds it. Never run `plan:approve`: approving is the
person's decision, made after reading the page.
## 1. Get the prompt and follow it
```bash
bunx guren plan "<the request>" --print-prompt
```
Quote the request: an unquoted word starting with `-` is read as a flag.
Follow the prompt it prints. When it has you ask the person, ask in whatever
way your client offers and wait for the answers before you write the JSON. If
the change needs no plan, make it the usual way.
## 2. Check it until nothing fails
```bash
bunx guren plan:render docs/plans/<slug>/plan.json --json
```
Run it until no check has `"status": "fail"`, then tell the person:
- where the page is (`path` in the output), which is what they review
- the questions still open, each with the option the plan assumes
- the warnings you left, and why
## 3. Revise
Before the first review, edit `plan.json` directly. After a review, apply the
person's changes and the page's exported feedback to a copy of the plan,
leaving `baseline` as it is, and record them:
```bash
bunx guren plan:revise docs/plans/<slug>/plan.json \
--edited <copy> --message "<what changed and why>" --feedback - <<'EOF'
<the feedback JSON the person pasted>
EOF
```
- Keep the copy, and any saved `feedback.json`, outside the repository:
`plan:approve` and `plan:next` count every untracked file under the app root
as uncommitted