MCPInstall

plan-writing

Structured task planning with clear breakdowns, dependencies, and verification criteria. Use when implementing features, refactoring, or any multi-step work.

Installs
840
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/sickn33/agentic-awesome-skills --skill plan-writing
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads plan-writing automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Plan Writing

Source: obra/superpowers

Overview

This skill provides a framework for breaking down work into clear, actionable tasks with verification criteria.

Task Breakdown Principles

1. Small, Focused Tasks

  • Each task should take 2-5 minutes
  • One clear outcome per task
  • Independently verifiable

2. Clear Verification

  • How do you know it's done?
  • What can you check/test?
  • What's the expected output?

3. Logical Ordering

  • Dependencies identified
  • Parallel work where possible
  • Critical path highlighted
  • Verify each task as it is completed, then run a final acceptance check.

4. Dynamic Naming in Project Root

  • Plan files are saved as {task-slug}.md in the PROJECT ROOT
  • Name derived from task (e.g., "add auth" → auth-feature.md)
  • Follow repository/user conventions when they specify another location; preserve an existing supplied plan.

Planning Principles (NOT Templates!)

🔴 NO fixed templates. Each plan is UNIQUE to the task.

Principle 1: Keep It SHORT

❌ Wrong✅ Right
50 tasks with sub-sub-tasks5-10 clear tasks max
Every micro-step listedOnly actionable items
Verbose descriptionsOne-line per task

Rule: If plan is longer than 1 page, it's too long. Simplify.


Principle 2: Be SPECIFIC, Not Generic

❌ Wrong✅ Right
"Set up project""Run npx create-next-app"
"Add authentication""Install next-auth, create /api/auth/[...nextauth].ts"
"Style the UI""Add Tailwind classes to Header.tsx"

Rule: Each task should have a clear, verifiable outcome.


Principle 3: Dynamic Content Based on Project Type

For NEW PROJECT:

  • What tech stack? (decide first)
  • What's the MVP? (minimal features)
  • What's the file structure?

For FEATURE ADDITION:

  • Which files are affected?
  • What dependencies needed?
  • How to verify it works?

For BUG FIX:

  • What's the root cause?
  • What file/line to change?
  • How to test the fix?

Principle 4: Scripts Are Project-Specific

🔴 DO NOT copy-paste script commands. Choose based on project type.

Project TypeRelevant Scripts
Frontend/Reactux_audit.py, accessibility_checker.py
Backend/APIapi_validator.py, security_scan.py
Mobilemobile_audit.py
Databaseschema_validator.py
Full-stackMix of above based on what you touched

Wrong: Adding all scripts to every plan Right: Only existing, inspected scripts relevant to THIS task; the names above are illustrative, not bundled prerequisites


Principle 5: Verification is Simple

❌ Wrong✅ Right
"Verify the component works correctly""Run npm run dev, click button, see toast"
"Test the API""curl localhost:3000/api/users returns 200"
"Check styles""Open browser, verify dark mode toggle works"

Plan Structure (Flexible, Not Fixed!)

# [Task Name]

## Goal
One sentence: What are we building/fixing?

## Tasks
- [ ] Task 1: [Specific action] → Verify: [How to check]
- [ ] Task 2: [Specific action] → Verify: [How to check]
- [ ] Task 3: [Specific action] → Verify: [How to check]

## Done When
- [ ] [Main success criteria]

That's it. No phases, no sub-sections unless truly needed. Keep it minimal. Add complexity only when required.

Optional notes may record important considerations.


Best Practices (Quick Reference)

  1. Start with goal - What are we building/fixing?
  2. Max 10 tasks - If more, break into multiple plans
  3. Each task verifiable - Clear "done" criteria
  4. Project-specific - No copy-paste templates
  5. Update as you go - Mark [x] when complete

When to Use

  • New project from scratch
  • Adding a feature
  • Fixing a bug (if complex)
  • Refactoring multiple files

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

FAQ

What does the plan-writing skill do?

Structured task planning with clear breakdowns, dependencies, and verification criteria. Use when implementing features, refactoring, or any multi-step work.

How do I install plan-writing?

Run npx skills add https://github.com/sickn33/agentic-awesome-skills --skill plan-writing in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/plan-writing/ (personal) or .claude/skills/plan-writing/ (project).

Which AI agents can use plan-writing?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is plan-writing safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains plan-writing?

It is published by sickn33 in sickn33/agentic-awesome-skills. It has 840 recorded installs.

More from sickn33/agentic-awesome-skills

View all →

docker-expert

sickn33/agentic-awesome-skills

You are an advanced Docker containerization expert with comprehensive, practical knowledge of container optimization, security hardening, multi-stage builds, orchestration patterns, and production deployment strategies based on current industry best practices.

DevOps & Cloud27.3K installs

nodejs-best-practices

sickn33/agentic-awesome-skills

Node.js development principles and decision-making. Framework selection, async patterns, security, and architecture. Teaches thinking, not copying.

Backend & APIs13.8K installs

typescript-expert

sickn33/agentic-awesome-skills

TypeScript and JavaScript expert with deep knowledge of type-level programming, performance optimization, monorepo management, migration strategies, and modern tooling.

clean-code

sickn33/agentic-awesome-skills

This skill embodies the principles of "Clean Code" by Robert C. Martin (Uncle Bob). Use it to transform "code that works" into "code that is clean."

api-security-best-practices

sickn33/agentic-awesome-skills

Implement secure API design patterns including authentication, authorization, input validation, rate limiting, and protection against common API vulnerabilities

Backend & APIs8.9K installs

nextjs-best-practices

sickn33/agentic-awesome-skills

Next.js App Router principles. Server Components, data fetching, routing patterns.

Frontend & Design7.4K installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.