home / skills / jmerta / codex-skills / plan-work

plan-work skill

/plan-work

npx playbooks add skill jmerta/codex-skills --skill plan-work

Review the files below or copy the command above to add this skill to your agents.

Files (2)
SKILL.md
3.7 KB
---
name: plan-work
description: "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."
---

# 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)
1) 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.
2) 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.
3) 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.
4) 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.