
Writing Plans
Turn a vague implementation goal into a step-by-step agent runbook with paths, code, and checks before you touch the repo.
Overview
Writing Plans is an agent skill most often used in Build (also Validate and Ship) that decomposes implementation work into atomic, verifiable steps with exact paths and code.
Install
npx skills add https://github.com/itallstartedwithaidea/agent-skills --skill writing-plansWhat is this skill?
- Splits work into atomic steps sized for roughly 2–5 minutes each with mechanical clarity
- Requires exact file paths, full code blocks, and schema-level specificity—not vague TODO lines
- Bundles a verification command or check after every implementation step to catch drift early
- Produces a self-contained plan another agent can run without the original chat context
- Explicit trigger: use when an implementation touches three or more files
- Each planned step is sized for roughly 2–5 minutes of focused execution.
- Explicit use trigger when modifying three or more files.
- Every implementation step is paired with a verification step (test, curl, or UI check).
Adoption & trust: 1 installs on skills.sh; 18 GitHub stars; 2/3 security scanners passed (skills.sh audits); trending (+100% hot-view momentum).
What problem does it solve?
You know what to build but your agent keeps interpreting vague tasks differently and errors compound across a multi-file change.
Who is it for?
Solo builders starting a multi-file feature, refactor, or integration where the spec is settled and you want mechanical, checkable agent instructions.
Skip if: Single-file tweaks, pure ideation before any spec, or work that still needs product decisions—use upstream brainstorming or scoping first instead of forcing a premature plan.
When should I use this skill?
A task involves modifying 3+ files or you need a self-contained implementation execution script with verification after each step.
What do I get? / Deliverables
You get a self-contained execution plan with 2–5-minute steps, concrete edits, and per-step verification so the next agent session can implement without re-deriving context.
- Ordered implementation plan with atomic steps
- Per-step code blocks and exact file references
- Verification commands or checks after each step
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Canonical shelf is Build because the skill targets implementation execution—decomposing real engineering work into atomic, verifiable steps rather than market or ops tasks. PM is the right subphase: output is a project execution plan (tasks, ordering, verification), not UI code, infra wiring, or docs-only work.
Where it fits
Break an MVP scope into ordered file-level steps before the first commit so scope creep stays visible.
Produce a handoff plan for adding a new API route and schema across routes, types, and tests in one session.
Sequence database migration, handler, and client updates with a curl check after each backend slice.
Turn a release checklist into atomic deploy and smoke-test steps an agent can execute in order.
How it compares
Use instead of ad-hoc chat TODO lists when you need file-level specificity and verification hooks an agent can follow line by line.
Common Questions / FAQ
Who is writing-plans for?
Solo and indie developers using Claude Code, Cursor, Codex, or similar agents who delegate multi-step implementation and need plans detailed enough to run without the original conversation.
When should I use writing-plans?
Use it during Build PM when an implementation spans three or more files; during Validate scope when decomposing an MVP slice before coding; and during Ship launch when breaking a release into ordered, verifiable agent tasks.
Is writing-plans safe to install?
The skill is procedural documentation for planning outputs; review the Security Audits panel on this Prism page and your org policy before pulling any skill package from a third-party repo.
SKILL.md
READMESKILL.md - Writing Plans
# Writing Plans Part of [Agent Skills™](https://github.com/itallstartedwithaidea/agent-skills) by [googleadsagent.ai™](https://googleadsagent.ai) ## Description Writing Plans decomposes any implementation task into a sequence of atomic steps, each completable in 2-5 minutes, with exact file paths, complete code blocks, and verification commands. The plan is a self-contained execution script that another agent—or a future version of the same agent—can follow without needing the original conversation context. The critical distinction between a plan and a TODO list is specificity. A plan does not say "update the API handler." It says "in `src/api/routes/users.ts`, add a `GET /users/:id/preferences` handler at line 47 that returns a `UserPreferences` object with fields `theme`, `locale`, and `notifications`, validated by the `preferencesSchema` defined in `src/api/schemas.ts`." Every step is unambiguous enough to execute mechanically. Plans include verification steps after each implementation step: a test to run, a curl command to execute, or a UI state to confirm. This tight feedback loop ensures errors are caught immediately rather than compounding across subsequent steps. ## Use When - A task involves modifying 3+ files - The implementation path is known but the execution is non-trivial - Work needs to be handed off to another agent or resumed later - The user asks for a plan, roadmap, or step-by-step breakdown - You need to estimate effort before committing to implementation - Complex refactoring requires precise ordering of changes ## How It Works ```mermaid graph TD A[Task Description] --> B[Identify Affected Files] B --> C[Determine Change Order] C --> D[Write Step 1: File + Code + Verify] D --> E[Write Step 2: File + Code + Verify] E --> F[Write Step N: File + Code + Verify] F --> G[Add Rollback Instructions] G --> H[Estimate Total Duration] H --> I[Present Plan for Approval] I -->|Approved| J[Save as plan.md] I -->|Needs Revision| B ``` Each plan step follows a rigid structure: the file to modify, the exact code change (with before/after context), and the verification command to confirm the step succeeded. Steps are ordered to maintain a working codebase at every checkpoint. ## Implementation ```markdown # Plan: Add User Preferences API **Estimated Duration**: 15 minutes (5 steps × 3 min avg) **Affected Files**: 4 files modified, 1 file created ## Step 1: Define Schema (2 min) **File**: `src/api/schemas.ts` **Action**: Add after line 23 export const preferencesSchema = z.object({ theme: z.enum(["light", "dark", "system"]).default("system"), locale: z.string().regex(/^[a-z]{2}-[A-Z]{2}$/).default("en-US"), notifications: z.boolean().default(true), }); export type UserPreferences = z.infer<typeof preferencesSchema>; **Verify**: `npx tsc --noEmit` exits 0 ## Step 2: Add Database Migration (3 min) **File**: `src/db/migrations/004_user_preferences.sql` (CREATE) CREATE TABLE user_preferences ( user_id TEXT PRIMARY KEY REFERENCES users(id), theme TEXT NOT NULL DEFAULT 'system', locale TEXT NOT NULL DEFAULT 'en-US', notifications BOOLEAN NOT NULL DEFAULT true ); **Verify**: `npx wrangler d1 migrations apply buddy-brain --local` ## Step 3: Add Route Handler (3 min) **File**: `src/api/routes/users.ts` **Action**: Add after the existing GET /users/:id handler // ... [complete handler code here] **Verify**: `curl localhost:8787/users/test-id/preferences` returns 200 ``` ## Best Practices - Each step must leave the codebase in a compilable, runnable state - Include the full code for each change—never write "similar to above" - Order steps to resolve dependencies first (schemas before handlers, types bef