dw-nextlisted
Install: claude install-skill dominikwozniak/dw-solo-skills
# dw-next — where we are, and the next slice
**Everything comes from disk.** Never reconstruct state from the conversation: a `/clear`, a closed
laptop or a week away must change nothing about the answer.
## What it reads and writes
Reads `.ai/work/<slug>/CHANGE.md` (written by `dw-shape`), plus a `HANDOFF.md` beside it when a
session ended mid-task and left one. Writes code, ticks that file's checkboxes, appends to its Notes,
clears a handoff it has consumed, and commits — plus a file in `.ai/backlog/` for an idea that
belongs to a different change. `.ai/` is tracked in git. Also reads `CONTEXT.md` if the project has
one, for the terms the code being written should be named in.
Find the active change by branch, not by guessing:
```
grep -l "^branch: $(git rev-parse --abbrev-ref HEAD)$" .ai/work/*/CHANGE.md 2>/dev/null
```
- **One match** — that's it.
- **Several** — list them and ask.
- **None — try to claim before pointing anywhere.** In order:
1. Strip an optional `worktree-` prefix from the branch (the `claude -w` spelling); if the
remainder equals or contains the slug of a change whose `branch:` is `unclaimed`, offer that
one — this is how a `claude -w <slug>` session picks up its change without `dw-start`.
2. Else if exactly **one** unclaimed change exists, offer it — including right here on the
default branch, for small serial work that never needed a worktree.
3. Else list the unclaimed changes newest-first and ask — or point at `dw-shape` w