Agent skill

Writing Plans

by kid-sid in kid-sid/claude-spellbook

A skill your agent uses when creating an implementation plan for a non-trivial task — any change spanning multiple files, involving a database migration, requiring specific sequencing, or being…

MITAuto-check: notesAgent Workflows

Install Writing Plans

skills CLI
$ npx skills add kid-sid/claude-spellbook --skill writing-plans -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install kid-sid/claude-spellbook writing-plans --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/kid-sid/claude-spellbook.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/writing-plans .claude/skills/writing-plans && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
writing-plans
GitHub stars
190
Token cost
~1.5k tokens
SKILL.md length
575 words
Files
1
Skills in repo
55
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when creating an implementation plan for a non-trivial task — any change spanning multiple files, involving a database migration, requiring specific sequencing, or being…

  • Creating an implementation plan for a non-trivial task — any change spanning multiple files
  • SKILL.md covers When to Activate, The Zero-Placeholder Rule, Plan Structure and Sequencing Rules, plus 4 more sections
  • Calls pytest; needs STRIPE_SECRET_KEY
  • Involving a database migration

What it does

Writing Plans is an agent skill from kid-sid/claude-spellbook. Use when creating an implementation plan for a non-trivial task — any change spanning multiple files, involving a database migration, requiring specific sequencing, or being handed off to a subagent for execution.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Planning, Database migrations and Subagents. The repository describes itself as: A curated collection of skills, prompts, and workflows that extend Claude's capabilities — your personal grimoire for AI-powered development. The licence is MIT.

When your agent uses it

  • Creating an implementation plan for a non-trivial task — any change spanning multiple files
  • Involving a database migration
  • Requiring specific sequencing
  • Being handed off to a subagent for execution

Example prompts

  • “/writing-plans”

Requirements

  • A credential in STRIPE_SECRET_KEY

What it can do on your machine

Read from SKILL.md and the folder at commit a7c2ac9. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pytest

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • STRIPE_SECRET_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Writing Plans loads about 1.5k tokens when it runs. Until then it costs about 57 tokens; SKILL.md has 575 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~57
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:32
    y" | `STRIPE_SECRET_KEY=sk_test_...` in `.env` |

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from kid-sid/claude-spellbook at commit a7c2ac9, republished under its MIT licence (© kid-sid). 575 words, ~1,487 tokens.

Download SKILL.mdSave it as .claude/skills/writing-plans/SKILL.md (or your agent's skills folder).
name
writing-plans
description
Use when creating an implementation plan for a non-trivial task — any change spanning multiple files, involving a database migration, requiring specific sequencing, or being handed off to a subagent for execution.

Writing Plans

A plan is only useful if it's specific enough that a stranger could execute it without asking questions.

When to Activate

  • Creating a plan for a feature that touches more than 2 files
  • Planning a refactor where the sequence of steps matters
  • Designing a database migration or schema change
  • Writing a plan to hand off to a subagent for implementation
  • Any task where "implement X" is too vague to be actionable
  • Planning work that requires specific test commands or rollback steps
  • Onboarding a contributor to an ongoing task mid-stream

The Zero-Placeholder Rule

Every element of a plan must be fully specified. If you write it, it must be complete — no fill-in-the-blank, no ellipsis, no "implement as needed."

ElementBAD — placeholderGOOD — complete
File pathpath/to/file.pysrc/api/routes/users.py
Code change"add validation logic"Full code block with the exact function
Test command"run the tests"pytest tests/api/test_users.py::test_create_user -v
Expected output"tests pass"PASSED tests/api/test_users.py::test_create_user
Commit message"fix the bug"fix(auth): reject tokens with expired nbf claim
Config value"appropriate timeout"timeout: 30s
Environment variable"set the API key"STRIPE_SECRET_KEY=sk_test_... in .env

Plan Structure

markdown
## Goal
One sentence: what this plan achieves and why.

## Pre-conditions
- [ ] Specific thing that must be true before starting: `command` → expected output
- [ ] Environment variable or service that must be running

## Steps

### Step 1 — <verb> <specific target>
**File:** `absolute/path/to/file.ext`

\`\`\`language
// Full code block — no ellipsis, no "rest of function", no TODO comments
\`\`\`

**Verify:** `exact command` → `expected output`

### Step 2 — commit checkpoint
**Commit:** `type(scope): specific description of what changed`

## Rollback
- If step 3 fails: `exact command to undo`
- If migration was applied: `alembic downgrade -1`

Sequencing Rules

RuleReason
One concern per stepBundled steps are harder to roll back and harder to verify
Database migrations before code changesCode errors if it references a column that doesn't exist yet
Write the failing test before implementationConfirms the test actually tests what you think
Include a commit at natural checkpointsEnables bisect and partial rollback
Pre-conditions listed before any stepEliminates "I didn't know I needed X" failures mid-plan

Forbidden Patterns

# BAD — relative path
Update the config in `settings.py`

# GOOD — absolute path
Update `src/config/settings.py` (absolute from repo root)
# BAD — vague instruction
Add error handling to the endpoint

# GOOD — complete instruction
In `src/api/routes/users.py` line 47, wrap the db.query() call:

try:
    result = db.query(User).filter(User.id == user_id).first()
except SQLAlchemyError as e:
    logger.error("db_query_failed", user_id=user_id, error=str(e))
    raise HTTPException(status_code=500, detail="Internal server error")
# BAD — no expected output
Run the tests to verify everything works.

# GOOD — exact command + expected output
$ pytest tests/api/test_users.py -v
PASSED tests/api/test_users.py::test_get_user_returns_404_when_not_found
PASSED tests/api/test_users.py::test_get_user_returns_user_data
2 passed in 0.43s

When to Plan vs. When to Code

SituationApproach
Single-file change, < 30 linesCode directly; inline context in chat
Multi-file change, clear sequenceWrite a full plan first
Subagent will implementAlways a written plan — agents can't ask clarifying questions
Database migration involvedAlways a written plan — irreversible if done wrong
Rollback must be possibleAlways a written plan
Shape of solution is unknownBrainstorm first; plan after the approach is clear
Pairing or handoff to a teammateWritten plan with pre-conditions and verify steps
Show full SKILL.md (231 more words)Show less

Red Flags

  • "Implement X" as a plan step — this is a task description, not a plan; expand into specific files, code, and verify commands
  • Relative file paths — ambiguous across machines and working directories; always specify paths from a known root
  • No verify step after a destructive operation — you won't know it succeeded until something later fails unexpectedly
  • Bundled steps ("do A and B and C together") — if B fails, you can't tell what state A left the system in
  • Missing rollback for irreversible steps — database migrations, published events, external API calls all need explicit undo instructions
  • "Add tests" without specifying which file, which test case, and what the assertion checks
  • Missing pre-conditions — forgetting to list required services, env vars, or setup that must exist before step 1
  • Commit messages written as "update files" — write the actual message; vague messages make bisect and blame useless later

Checklist

  • Every file path is specified from a known root (no bare filenames)
  • Every code change is a complete, runnable code block (no ellipsis or TODO)
  • Every destructive step has a verify command with expected output
  • No step says "implement", "add", or "update" without full specifics
  • Database migrations precede model/code changes
  • Commit messages are written out verbatim
  • Rollback instructions exist for irreversible steps
  • Pre-conditions are listed and checkable before step 1
  • A person who has never seen this codebase could execute the plan without asking questions

© kid-sid, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/writing-plans of kid-sid/claude-spellbook.

Open the folder on GitHubat commit a7c2ac9

Compare with similar skills

Writing Plans next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Writing Plans compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Writing Plans this skillkid-sid/claude-spellbook190—~1.5kAutomated safety check: NotesMIT
Subagent Driven DevelopmentAsvarox/allkaraoke26137 repos~1.2kAutomated safety check: PassNone
Executing PlansGanyuanRan/Aegis1.3k1 repos~2.3kAutomated safety check: PassMIT
Execumputun/cc-thingz484—~8kAutomated safety check: PassMIT
Autopilot End-to-End Buildernick-vels/skills411—~2.5kAutomated safety check: NotesMIT
Workflow Orchestrationvxcozy/workflow-orchestration116—~1kAutomated safety check: PassMIT

Similar skills

  • Subagent Driven Development

    Asvarox/allkaraoke

    A skill your agent uses when executing implementation plans with independent tasks in the current session

    261 GitHub starsUsed in 37 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • Executing Plans

    GanyuanRan/Aegis

    A skill your agent uses when executing a written implementation plan across sessions or with review checkpoints.

    1.3k GitHub starsUsed in 1 repo~2.3k tokens
    Agent WorkflowsAuto-check passed
  • Exec

    umputun/cc-thingz

    Execute plan tasks sequentially using subagents. An agent skill from umputun/cc-thingz.

    484 GitHub stars~8k tokensUpdated 4 days ago
    Agent WorkflowsAuto-check passed
  • Builds an app, site, bot or feature from a spoken idea through requirements, spec, tickets, subagent work, review and acceptance, with a live progress dashboard.

    411 GitHub stars~2.5k tokensUpdated 7 days ago
    Agent WorkflowsAuto-check: notes
  • Workflow Orchestration

    vxcozy/workflow-orchestration

    Disciplined task execution with planning, verification, and self-improvement loops.

    116 GitHub stars~1k tokensUpdated 5 mo ago
    Agent WorkflowsAuto-check passed
  • Blueprint

    byungjunjang/jangpm-meta-skills

    Agentic system design blueprint generator. An agent skill from byungjunjang/jangpm-meta-skills.

    120 GitHub stars~2k tokensUpdated 2 mo ago
    Agent WorkflowsAuto-check passed

More from kid-sid/claude-spellbook

All 55 skills in this repo
  • Accessibility

    kid-sid/claude-spellbook

    A skill your agent uses when building or reviewing UI components for keyboard and screen reader compatibility, adding ARIA to custom widgets, auditing a page for WCAG AA conformance, or preparing…

    190 GitHub stars~3.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Agentex

    kid-sid/claude-spellbook

    A skill your agent uses when building, wiring, or debugging an Agentex agent — choosing agent type, configuring acp.py and manifest.yaml, using adk.messages or adk.state, or resolving…

    190 GitHub stars~2.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • AI Engineer

    kid-sid/claude-spellbook

    A skill your agent uses when building production LLM applications — designing RAG pipelines, choosing vector databases, implementing agent orchestration, optimizing cost, or adding AI safety…

    190 GitHub stars~3.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Angular

    kid-sid/claude-spellbook

    A skill your agent uses when building or refactoring Angular applications — choosing between signals, RxJS, and NgRx for state, configuring routing with guards and lazy loading, optimizing change…

    190 GitHub stars~5k tokensUpdated 2 mo ago
    Auto-check passed
  • API Design

    kid-sid/claude-spellbook

    A skill your agent uses when designing new REST endpoints, reviewing an existing API contract, adding pagination or filtering, planning a versioning strategy, or building a public or partner-facing…

    190 GitHub stars~3.6k tokensUpdated 2 mo ago
    Auto-check passed
  • Auth

    kid-sid/claude-spellbook

    A skill your agent uses when implementing login flows, issuing or validating JWTs, setting up OAuth2/OIDC with a provider, designing role-based or attribute-based access control, securing API…

    190 GitHub stars~3.2k tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about Writing Plans

What does Writing Plans do?

A skill your agent uses when creating an implementation plan for a non-trivial task — any change spanning multiple files, involving a database migration, requiring specific sequencing, or being…. Writing Plans is an agent skill from kid-sid/claude-spellbook. Use when creating an implementation plan for a non-trivial task — any change spanning multiple files, involving a database migration, requiring specific sequencing, or being handed off to a subagent for execution.

When should I use Writing Plans?

Writing Plans fits situations like: creating an implementation plan for a non-trivial task — any change spanning multiple files; involving a database migration; requiring specific sequencing; being handed off to a subagent for execution.

How do I install Writing Plans in Claude Code?

Run `npx skills add kid-sid/claude-spellbook --skill writing-plans -a claude-code`. Or copy the skill folder (skills/writing-plans in kid-sid/claude-spellbook) into .claude/skills/writing-plans in your project. Claude Code loads it when a task matches its description.

How do I install Writing Plans in Codex?

Run `npx skills add kid-sid/claude-spellbook --skill writing-plans -a codex`. Or copy the skill folder (skills/writing-plans in kid-sid/claude-spellbook) into .agents/skills/writing-plans in your project. Codex loads it when a task matches its description.

Can I use Writing Plans in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kid-sid/claude-spellbook --skill writing-plans -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/writing-plans, .gemini/skills/writing-plans, .github/skills/writing-plans and .opencode/skills/writing-plans in your project.

What does Writing Plans need to run?

Going by SKILL.md and its folder, Writing Plans needs the command-line tools its instructions call (pytest) and credentials named STRIPE_SECRET_KEY. Our summary lists: A credential in STRIPE_SECRET_KEY.

Does Writing Plans access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Writing Plans safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Writing Plans use?

Writing Plans is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Writing Plans use?

About 1.5k tokens (SKILL.md is roughly 5.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Writing Plans?

Skills that share tags, products or a category with Writing Plans: Subagent Driven Development (Asvarox/allkaraoke, 261 stars), Executing Plans (GanyuanRan/Aegis, 1.3k stars), Exec (umputun/cc-thingz, 484 stars) and Autopilot End-to-End Builder (nick-vels/skills, 411 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Writing Plans?

kid-sid (a GitHub user) maintains it in kid-sid/claude-spellbook, which has 190 GitHub stars. The repository holds 55 skills in this directory. The repository was last updated on August 5, 2026.

Source: kid-sid/claude-spellbook on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.