agentleFS
kimgoetzkekimgoetzke/coding-agent-configs/skills/planning/SKILL.md

planning

Skill2 starsChanged 7 months agoMITView on GitHub

Planning a change to any codebase. Use when user asks you to plan something instead of taking immediate action.

69 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use Problem-Solving Techniques, executing and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • truongtv22Skill

    Problem-Solving Techniques

    Apply systematic problem-solving techniques for complexity spirals (simplification cascades), innovation blocks (collision-zone thinking), recurring patterns (meta-pattern recognition), assumption constraints (inversion exercise), scale uncertainty (scale game), and dispatch when stuck. Techniques derived from Microsoft Amplifier project patterns adapted for immediate application.

    Also in 5 projects that use this

  • LucasDuysSkill

    executing

    Autonomous task implementation workflow — implement, test, review, commit for each task in the frontier

    Also in 3 projects that use this

  • mrgoonieSkill

    web-frameworks

    Build modern full-stack web applications with Next.js (App Router, Server Components, RSC, PPR, SSR, SSG, ISR), Turborepo (monorepo management, task pipelines, remote caching, parallel execution), and RemixIcon (3100+ SVG icons in outlined/filled styles). Use when creating React applications, implementing server-side rendering, setting up monorepos with multiple packages, optimizing build performance and caching strategies, adding icon libraries, managing shared dependencies, or working with TypeScript full-stack projects.

    Also in 5 projects that use this

  • mrgoonieSkill

    mcp-management

    Manage Model Context Protocol (MCP) servers - discover, analyze, and execute tools/prompts/resources from configured MCP servers. Use when working with MCP integrations, need to discover available MCP capabilities, filter MCP tools for specific tasks, execute MCP tools programmatically, access MCP prompts/resources, or implement MCP client functionality. Supports intelligent tool selection, multi-server management, and context-efficient capability discovery.

    Also in 5 projects that use this

  • renathoazSkill

    verifying

    Verify work before claiming done.

    Also in 3 projects that use this

  • truongtv22Skill

    mobile-development

    Build modern mobile applications with React Native, Flutter, Swift/SwiftUI, and Kotlin/Jetpack Compose. Covers mobile-first design principles, performance optimization (battery, memory, network), offline-first architecture, platform-specific guidelines (iOS HIG, Material Design), testing strategies, security best practices, accessibility, app store deployment, and mobile development mindset. Use when building mobile apps, implementing mobile UX patterns, optimizing for mobile constraints, or making native vs cross-platform decisions.

    Also in 4 projects that use this

  • +6 more from mrgoonie

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. 0 are common, 6 are distinctive, and 11 are very specific to this project.

  • 0

    Common

    Most of the 62 edited versions we read keep these.

  • 6

    Distinctive

    This author's own choices. Worth a look.

  • 11

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    No output: use local-ai-folder-markdown, the default for this skill group

    line 17
  2. Very specific:

    Read ./persistence/{implementation}.md and follow it whenever this skill creates a plan or reads, writes or updates a planning document.

    line 20
  3. Distinctive:

    Every plan is identified by:

    line 22
  4. Distinctive:

    Use persistent planning documents as your working memory.

    line 29
  5. Very specific:

    Before creating the planning documents, you must read the starting templates in ./templates/

    line 37
  6. Distinctive:

    If you decide or are expected to produce a plan, follow the steps outlined in this section in order.

    line 49
  7. Very specific:

    Create the plan and its findings document following the template: templates/findings.md

    line 55
  8. Very specific:

    Document findings in the findings document as you go

    line 57
  9. Very specific:

    Document your determination and reasoning at the top of the findings document under a ## Plan Size heading.

    line 67
  10. Very specific:

    If running in GitHub Copilot, recommend: "You can run /rename {task-name} to rename this conversation."

    line 78
  11. Very specific:

    If running in Claude Code or Pi, recommend: "You can run /name {task-name} to name this conversation."

    line 79
  12. Distinctive:

    Every plan — single-phase or multi-phase — must conclude with all planning documents up-to-date

    line 86
  13. Distinctive:

    When updating planning documents, do so in line with their templates

    line 89
  14. Very specific:

    Before major decisions, read the plan document.

    line 106
  15. Distinctive:

    After completing any phase:

    line 110
  16. Very specific:

    Update ## Status in the plan document

    line 112
  17. Very specific:

    Every error goes in the plan document (the single home for errors across all planning documents).

    line 119

“Common” is measured: kept by at least 6 in 10 of the 62 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Planning

Persistence

This skill belongs to the plans skill group. A persistence implementation decides where and how plans are stored. Before creating or updating a plan, find the setting:

R="$(git rev-parse --show-toplevel 2>/dev/null)/.ai/config.properties"; { cat "$R" ~/.ai/config.properties | grep '^persistence\.plans[[:space:]]*=[[:space:]]*[^[:space:]]'; cat "$R" ~/.ai/config.properties | grep '^persistence[[:space:]]*=[[:space:]]*[^[:space:]]'; } 2>/dev/null | head -1 | tr -d ' \t\r'
  • No output: use local-ai-folder-markdown, the default for this skill group
  • persistence.plans={value} or persistence={value}: use {value}. If ./persistence/{value}.md does not exist, tell the user the plans skill group has no {value} implementation and use local-ai-folder-markdown

Read ./persistence/{implementation}.md and follow it whenever this skill creates a plan or reads, writes or updates a planning document.

Every plan is identified by:

  • {yyyy-mm-dd}, the date of the plan creation
  • {task-name}, an extremely succinct name for the task in kebab-case

Planning documents

Use persistent planning documents as your working memory. Context windows are volatile and limited; anything important gets persisted.

  • For any plan, you must create the following documents in the plan:
    • plan — Track work breakdown and progress
    • questions — Track your questions and the user's responses and vice versa
    • findings — Store research and discoveries
  • For multi-phase plans, you must also create:
    • progress — Session log and test results
  • Before creating the planning documents, you must read the starting templates in ./templates/
  • You must use the starting templates when creating or updating planning documents to guide their structure and content. Write the content in Markdown; the persistence implementation decides how it is stored
DocumentTemplatePurposeWhen to UpdateScope
planplan.mdWork breakdown, decisionsAfter each phaseAll plans
findingsfindings.mdResearch, discoveriesPer 2-action ruleAll plans
questionsquestions.mdLog of questions and user responsesThroughout planningAll plans
progressprogress.mdSession log, test resultsThroughout sessionMulti-phase only

Workflow

If you decide or are expected to produce a plan, follow the steps outlined in this section in order.

Step 1: Research & discover

  • Gather requirements from the user's request
  • Derive {task-name} — an extremely succinct name for the task, use kebab-case e.g. refactor-mfa-flow
  • Create the plan and its findings document following the template: templates/findings.md
  • Explore the codebase to understand the scope of the change
  • Document findings in the findings document as you go

Step 2: Determine plan size

Based on your research, explicitly determine whether this is a multi-phase plan. A plan is multi-phase if it meets ANY of the following:

  • More than 5 files will likely be modified
  • More than 5 tool uses are expected
  • More than 150 lines of code will change

Document your determination and reasoning at the top of the findings document under a ## Plan Size heading.

Step 3: Create remainaing planning documents

Create the remaining planning documents from the templates based on the determination in step 2 (see Planning documents). Populate the plan document with the plan and the questions document with any unresolved questions. Keep the questions document scaffolded even if you have no questions yet, as they may come up later. For multi-phase plans, also create the progress document as a stub — it will be populated during execution.

Step 4: Respond

  • Return a summarised version of the plan to the user
  • You must highlight if there are unresolved questions or if the plan is ready for implementation
  • Recommend to the user that they rename this conversation:
    • If running in GitHub Copilot, recommend: "You can run /rename {task-name} to rename this conversation."
    • If running in Claude Code or Pi, recommend: "You can run /name {task-name} to name this conversation."
    • Otherwise, recommend: "Consider renaming this conversation to {task-name} if your tool supports it."

Critical rules

1. Keep docs up-to-date

  • Every plan — single-phase or multi-phase — must conclude with all planning documents up-to-date
  • For multi-phase plans, this applies at the end of every phase, not just the final one
  • The plan must have explicit actions to this effect that specifically refer to this planning skill (in each phase, for multi-phase plans)
  • When updating planning documents, do so in line with their templates

2. Reference relevant skills

  • During planning, you must check the skills available to you that apply to the work in that phase (e.g. rust-bevy-standards, java-conventions, tdd)
  • Each phase must have a task to read the relevant skills, followed by a list of those skills
  • Any development work must follow test-driven development practices i.e. you have to use your tdd skill for any code you write and task descriptions featuring development work must make this clear
  • Do not edit any file in a phase until you have read every skill listed for that phase

3. The 2-action rule

"After every 2 view/browser/search operations, IMMEDIATELY save key findings to the findings document."

This prevents visual/multimodal information from being lost.

4. Read before decide

Before major decisions, read the plan document. This keeps goals in your attention window.

5. Update after act

After completing any phase:

  • Update ## Status in the plan document
  • Mark phase status: In progress → Complete
  • Log any errors encountered
  • Note files created/modified

6. Log ALL errors

Every error goes in the plan document (the single home for errors across all planning documents). This builds knowledge and prevents repetition.

7. Never repeat failures

if action_failed:
    next_action != same_action

Track what you tried. Mutate the approach.

The 3-strike error protocol

ATTEMPT 1: Diagnose & Fix
  → Read error carefully
  → Identify root cause
  → Apply targeted fix

ATTEMPT 2: Alternative Approach
  → Same error? Try different method
  → Different tool? Different library?
  → NEVER repeat exact same failing action

ATTEMPT 3: Broader Rethink
  → Question assumptions
  → Search for solutions
  → Consider updating the plan

AFTER 3 FAILURES: Escalate to User
  → Explain what you tried
  → Share the specific error
  → Ask for guidance

Templates

  • templates/plan.md — Work breakdown and progress template
  • templates/findings.md — Research storage template
  • templates/progress.md — Session logging template
  • templates/questions.md — Questions and responses template

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.