implementlisted
Install: claude install-skill Ashutosh6393/Scaffold-AI
# implement — Phase 3
Build the **current in-progress slice** of a spec, and nothing else.
This is the only phase that runs without a human in the inner loop, so the discipline is
strict and partly machine-enforced (`guard-paths.sh`, `check-test-count.sh`).
---
## Step 1 — locate the spec
**Named** (`implement notifications`) → use it.
**Not named** → list the state and ask:
```bash
for d in specs/*/; do
[ "$(basename "$d")" = "_templates" ] && continue
printf '%-32s %s\n' "$(basename "$d")" "$(grep -m1 'Status:' "$d/implementation.md")"
done
```
Show in-progress specs first, then not-started, and ask which to work on. Don't guess.
**If no spec exists** → stop. Tell the user to run `to-spec`. Do not start implementing
from an ADR directly; the slice plan is what makes the loop bounded.
---
## Step 2 — orient
1. Read `specs/{feature}/CLAUDE.md`, then `design.md` (slice plan), then
`implementation.md`.
2. Identify the **current slice**, its **blast radius**, and its **acceptance criteria**.
3. Confirm you are on `feat/{feature-name}`.
4. **If any task is `blocked`, stop and report it.** Do not start other tasks — they are
dependency-ordered, and working around a block means building on something known to be
broken.
Record the starting test count so the append-only rule is checkable:
```bash
bash .claude/hooks/check-test-count.sh --baseline
```
---
## Step 3 — the loop
One task at a time, in dependency order. One cycle at a time.
### RED — delegate