Plan work
Goal
Produce a plan that is:
- grounded in repo reality (research)
- explicit about decisions and risks (analysis)
- blocked on zero unknowns (Q&A before implementation steps)
Inputs to ask for (if missing)
- Outcome/acceptance criteria (what "done" means).
- Constraints: time, backwards compatibility, performance, security, data migration.
- Target environment(s): local/stage/prod; any feature flags or rollout requirements.
- Non-goals (what not to do).
Workflow (research -> analysis -> Q&A -> implementation)
- Research (current state)
- Read repo guidance first:
AGENTS.md, README.md, docs/ (only if needed).
- Identify entrypoints and owners (backend/frontend/infra).
- Find relevant code paths and patterns:
rg for symbols, endpoints, config keys, error strings
git log -p / git blame for history and intent when uncertain
- If the plan depends on external behavior (framework/library/tooling), consult official docs, release notes or context7 (and call out versions/assumptions).
- Capture findings as short bullets with file paths.
- Analysis (what to change and why)
- Restate requirements and assumptions.
- List options (1-3) with tradeoffs; pick one and justify.
- Identify risks/edge cases and what tests cover them.
- Collect open questions.
- Q&A gate (do not skip)
- If there are open questions, ask them and stop.
- Do not propose implementation steps until the user answers (or explicitly accepts assumptions).
- First pass: ask 1-5 questions that eliminate whole branches of work.
- Do not limit yourself to just 1-5 questions overall; continue asking until everything needed for a proper implementation plan is clarified.
- Make questions scannable: numbered, short, multiple-choice when possible.
- Include defaults/recommendations and a fast-path response (e.g., reply "defaults").
- Do not label any option as the default within the option list; if needed, state defaults in a separate note.
- Provide a low-friction "not sure" option when helpful.
- You may add brief bracketed insights after options when there's a major upside or downside.
- Separate "Need to know" from "Nice to know" when it reduces friction.
- Structure options for compact replies (e.g., "1b 2a 3c") and restate selections in plain language.
- Pause before acting until must-have answers arrive:
- Do not run commands, edit files, or produce a plan that depends on unknowns.
- Low-risk discovery is allowed if it does not commit to a direction (read-only, non-committing).
- After answers, restate requirements in 1-3 sentences (constraints + success criteria), then proceed.
- Implementation plan (only after Q&A)
- Break into small steps in a sensible order.
- Name likely files/dirs to change.
- Include the tests to run (unit/integration/build) to validate the change.
- If the change spans modules, include coordination steps (contract changes, client regen, versioning).
Q&A template (short, feature plan)
Before I start, I need: (1) question (2) question (3) question.
This is a starting set; I will continue with follow-up questions until everything needed for a proper implementation plan is clarified.
Need to know
1)
a)
b)
c)
2)
a)
b)
c)
3) C
a)
b)
c)
d)
Nice to know
4)
a)
b)
c)
Reply with: "1a 2b 3c 4a" (or "propose" to have me choose and confirm).
Deliverable
Use references/plan-template.md and fill it in.
1---2name: plan-work3description: Plan work before coding: do repo research, analyze options/risks, and ask clarifying questions before proposing an implementation plan. Use when the user asks for a plan, design/approach, scope breakdown, or implementation steps.4---5
6# Plan work
7
8## Goal
9Produce a plan that is:
10- grounded in repo reality (research)
11- explicit about decisions and risks (analysis)
12- blocked on zero unknowns (Q&A before implementation steps)
13
14## Inputs to ask for (if missing)
15- Outcome/acceptance criteria (what "done" means).
16- Constraints: time, backwards compatibility, performance, security, data migration.
17- Target environment(s): local/stage/prod; any feature flags or rollout requirements.
18- Non-goals (what not to do).
19
20## Workflow (research -> analysis -> Q&A -> implementation)
211) Research (current state)
22 - Read repo guidance first: `AGENTS.md`, `README.md`, `docs/` (only if needed).
23 - Identify entrypoints and owners (backend/frontend/infra).
24 - Find relevant code paths and patterns:
25 - `rg` for symbols, endpoints, config keys, error strings
26 - `git log -p` / `git blame` for history and intent when uncertain
27 - If the plan depends on external behavior (framework/library/tooling), consult official docs, release notes or context7 (and call out versions/assumptions).
28 - Capture findings as short bullets with file paths.
292) Analysis (what to change and why)
30 - Restate requirements and assumptions.
31 - List options (1-3) with tradeoffs; pick one and justify.
32 - Identify risks/edge cases and what tests cover them.
33 - Collect open questions.
343) Q&A gate (do not skip)
35 - If there are open questions, ask them and stop.
36 - Do not propose implementation steps until the user answers (or explicitly accepts assumptions).
37 - First pass: ask 1-5 questions that eliminate whole branches of work.
38 - Do not limit yourself to just 1-5 questions overall; continue asking until everything needed for a proper implementation plan is clarified.
39 - Make questions scannable: numbered, short, multiple-choice when possible.
40 - Include defaults/recommendations and a fast-path response (e.g., reply "defaults").
41 - Do not label any option as the default within the option list; if needed, state defaults in a separate note.
42 - Provide a low-friction "not sure" option when helpful.
43 - You may add brief bracketed insights after options when there's a major upside or downside.
44 - Separate "Need to know" from "Nice to know" when it reduces friction.
45 - Structure options for compact replies (e.g., "1b 2a 3c") and restate selections in plain language.
46 - Pause before acting until must-have answers arrive:
47 - Do not run commands, edit files, or produce a plan that depends on unknowns.
48 - Low-risk discovery is allowed if it does not commit to a direction (read-only, non-committing).
49 - After answers, restate requirements in 1-3 sentences (constraints + success criteria), then proceed.
504) Implementation plan (only after Q&A)
51 - Break into small steps in a sensible order.
52 - Name likely files/dirs to change.
53 - Include the tests to run (unit/integration/build) to validate the change.
54 - If the change spans modules, include coordination steps (contract changes, client regen, versioning).
55
56## Q&A template (short, feature plan)
57Before I start, I need: (1) question (2) question (3) question.
58This is a starting set; I will continue with follow-up questions until everything needed for a proper implementation plan is clarified.
59
60Need to know
611)
62 a)
63 b)
64 c)
652)
66 a)
67 b)
68 c)
693) C
70 a)
71 b)
72 c)
73 d)
74
75Nice to know
764)
77 a)
78 b)
79 c)
80
81Reply with: "1a 2b 3c 4a" (or "propose" to have me choose and confirm).
82
83## Deliverable
84Use `references/plan-template.md` and fill it in.