Create Backlog
Interview workflow adapted from Matt Pocock's original grill-me skill.
Create or update a backlog document for a feature by interviewing the user, inspecting the codebase, and continuously refining the document until the design and task breakdown are concrete enough to implement.
Workflow
Locate or create the backlog document.
- Prefer
codex-backlogs/<feature-slug>.md in the workspace.
- If updating an existing backlog, preserve useful content and revise it in place.
- Use sections named exactly
Incomplete, In-Progress, and Completed.
Interview the user until the feature is understood.
- Ask one question at a time.
- For each question, include your recommended answer.
- Walk down design decisions in dependency order.
- If a question can be answered from the codebase, inspect the code instead of asking.
- Keep the backlog updated during the interview as decisions converge.
Ground the backlog in the code.
- Reference concrete files, modules, commands, APIs, data shapes, UI paths, and tests where relevant.
- Make each task specific enough for an implementation agent to start without re-discovering the whole design.
- Record assumptions, constraints, open decisions, and code findings directly in task descriptions.
Decompose the work.
- For small features, use a flat task list numbered
T0 through TN.
- For large features, use phases numbered
P0 through PM, with tasks numbered P0.T0, P0.T1, etc.
- Give each task a clear title, detailed description, acceptance checklist, and tests or verification commands to run.
- If test work is substantial, create separate test tasks.
- Put all new tasks under
Incomplete; leave In-Progress and Completed empty unless updating an active backlog.
Review and reconcile.
- Compare the backlog against the agreed understanding.
- Update, split, merge, reorder, or rewrite tasks if new information changes the design.
- Finish only when the backlog is specific, coherent, ordered, and implementable.
Backlog Format
Use this structure unless the repository already has a stronger local convention:
# <Feature Name> Backlog
## Context
<Feature goal, agreed design, constraints, code findings, and assumptions.>
## Incomplete
### T0: <Task Title>
Description:
<Concrete implementation detail grounded in the codebase.>
Acceptance:
- [ ] <Observable acceptance criterion>
Tests:
- `<command or manual verification>`
## In-Progress
## Completed
For phased work, put phase headings under Incomplete, include phase acceptance criteria, and number tasks as P0.T0.
1---2name: create-backlog3description: Create or update a detailed implementation backlog for a feature through a code-informed interview, then decompose the agreed design into atomic tasks. Use when the user wants to plan a feature, write a backlog, create implementation tasks, or prepare work before coding.4---56# Create Backlog78Interview workflow adapted from Matt Pocock's original `grill-me` skill.910Create or update a backlog document for a feature by interviewing the user, inspecting the codebase, and continuously refining the document until the design and task breakdown are concrete enough to implement.1112## Workflow13141. Locate or create the backlog document.15 - Prefer `codex-backlogs/<feature-slug>.md` in the workspace.16 - If updating an existing backlog, preserve useful content and revise it in place.17 - Use sections named exactly `Incomplete`, `In-Progress`, and `Completed`.18192. Interview the user until the feature is understood.20 - Ask one question at a time.21 - For each question, include your recommended answer.22 - Walk down design decisions in dependency order.23 - If a question can be answered from the codebase, inspect the code instead of asking.24 - Keep the backlog updated during the interview as decisions converge.25263. Ground the backlog in the code.27 - Reference concrete files, modules, commands, APIs, data shapes, UI paths, and tests where relevant.28 - Make each task specific enough for an implementation agent to start without re-discovering the whole design.29 - Record assumptions, constraints, open decisions, and code findings directly in task descriptions.30314. Decompose the work.32 - For small features, use a flat task list numbered `T0` through `TN`.33 - For large features, use phases numbered `P0` through `PM`, with tasks numbered `P0.T0`, `P0.T1`, etc.34 - Give each task a clear title, detailed description, acceptance checklist, and tests or verification commands to run.35 - If test work is substantial, create separate test tasks.36 - Put all new tasks under `Incomplete`; leave `In-Progress` and `Completed` empty unless updating an active backlog.37385. Review and reconcile.39 - Compare the backlog against the agreed understanding.40 - Update, split, merge, reorder, or rewrite tasks if new information changes the design.41 - Finish only when the backlog is specific, coherent, ordered, and implementable.4243## Backlog Format4445Use this structure unless the repository already has a stronger local convention:4647```md48# <Feature Name> Backlog4950## Context5152<Feature goal, agreed design, constraints, code findings, and assumptions.>5354## Incomplete5556### T0: <Task Title>5758Description:59<Concrete implementation detail grounded in the codebase.>6061Acceptance:62- [ ] <Observable acceptance criterion>6364Tests:65- `<command or manual verification>`6667## In-Progress6869## Completed70```7172For phased work, put phase headings under `Incomplete`, include phase acceptance criteria, and number tasks as `P0.T0`.