askill
writing-plans

writing-plansSafety 90Repository

Use when you have a spec or requirements for a multi-step task, before touching code

1 stars
1.2k downloads
Updated 2/16/2026

Package Files

Loading files...
SKILL.md

Writing Plans

Overview

Write comprehensive implementation plans assuming the engineer has zero context for our codebase and questionable taste. Document everything they need to know: which files to touch for each task, code, testing, docs they might need to check, how to test it. Give them the whole plan as bite-sized tasks. DRY. YAGNI. TDD. Frequent commits.

Assume they are a skilled developer, but know almost nothing about our toolset or problem domain. Assume they don't know good test design very well.

Announce at start: "I'm using the writing-plans skill to create the implementation plan."

REQUIRED SUB-SKILL: Use Skill(asking-questions) for all user questions.

Save plans to: .plans/YYYY-MM-DD-<feature-name>.md

Bite-Sized Task Granularity

Each step is one action (2-5 minutes):

  • "Write the failing test" - step
  • "Run it to make sure it fails" - step
  • "Implement the minimal code to make the test pass" - step
  • "Run the tests and make sure they pass" - step
  • "Commit" - step

Plan Document Header

Every plan MUST start with this header:

For Claude: REQUIRED SUB-SKILL: Use Skill(executing-plans) to implement this plan task-by-task.

Goal: [One sentence describing what this builds]

Architecture: [2-3 sentences about approach]

Tech Stack: [Key technologies/libraries]


Task Structure

Each task must following this structure:

Files:

  • Create: exact/path/to/file.py
  • Modify: exact/path/to/existing.py:123-145
  • Test: tests/exact/path/to/test.py

Step 1: Write the failing test

def test_specific_behavior():
    result = function(input)
    assert result == expected

Step 2: Run test to verify it fails

Run: pytest tests/path/test.py::test_name -v Expected: FAIL with "function not defined"

Step 3: Write minimal implementation

def function(input):
    return expected

Step 4: Run test to verify it passes

Run: pytest tests/path/test.py::test_name -v Expected: PASS

Step 5: Commit

git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"

Remember

  • Exact file paths always
  • Complete code in plan (not "add validation")
  • Exact commands with expected output
  • Reference relevant skills with @ syntax
  • DRY, YAGNI, TDD, frequent commits

Execution Handoff

After saving the plan:

  • Commit the plan document to git

Then ask the user if they want to execute using AskUserQuestion:

AskUserQuestion(
  questions: [{
    question: "Plan is ready. How would you like to proceed?",
    header: "Execute",
    multiSelect: false,
    options: [
      { label: "Execute with subagents (Recommended)", description: "Full isolation - best for complex plans or autonomous work" },
      { label: "Execute quickly", description: "Faster - does implementation and reviews in main context" },
      { label: "Don't execute", description: "Stop here - execute manually later" }
    ]
  }]
)

Based on selection:

Execute with subagents:

  • REQUIRED SUB-SKILL: Use Skill(executing-plans)
  • Dispatches subagents for implementation and reviews
  • Best for complex plans or autonomous work

Execute quickly:

  • REQUIRED SUB-SKILL: Use Skill(executing-plans-quickly)
  • Does implementation and reviews inline in main context
  • Best for simple plans or interactive sessions

Don't execute:

  • Plan is saved for later execution
  • User can invoke execution skills in any session

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

88/100Analyzed 2/13/2026

A comprehensive and highly structured skill for generating TDD-based implementation plans. It includes precise templates, granular task definitions, and specific workflow logic for agent interaction.

90
95
65
95
95

Metadata

Licenseunknown
Version-
Updated2/16/2026
Publisheraverycrespi

Tags

llmtesting