agentleFS
corticalstackcorticalstack/flow/.claude/skills/iterate-plan/SKILL.md

iterate-plan

Skill1 starsChanged 5 months agoMITView on GitHub

Revise an existing implementation plan in flow/plans/ based on feedback, researching when needed. Explicit-only; run only when invoked via /iterate-plan or explicitly asked.

We split this skill into the rules it gives an agent

38 rules. 0 are common, 36 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 4 edited versions we read keep these.

  • 36

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    When this command is invoked:

    line 15
  2. Distinctive:

    Wait for user input, then re-check for feedback.

    line 31
  3. Distinctive:

    Wait for user input.

    line 43
  4. Distinctive:

    No preliminary questions needed

    line 47
  5. Distinctive:

    Use the Read tool WITHOUT limit/offset parameters

    line 54
  6. Distinctive:

    If the user's feedback requires understanding new code patterns or validating assumptions:

    line 67
  7. Distinctive:

    Use the right agent for each type of research:

    line 72
  8. Distinctive:

    Read them FULLY into the main context

    line 88
  9. Distinctive:

    Wait for ALL sub-tasks to complete: before proceeding

    line 91
  10. Distinctive:

    Before making changes, confirm your understanding:

    line 95
  11. Distinctive:

    Use the Edit tool for surgical changes

    line 118
  12. Distinctive:

    Keep all file:line references accurate

    line 120
  13. Distinctive:

    Update success criteria if needed

    line 121
  14. Distinctive:

    If adding a new phase, ensure it follows the existing pattern

    line 124
  15. Distinctive:

    If modifying scope, update "What We're NOT Doing" section

    line 125
  16. Distinctive:

    If changing approach, update "Implementation Approach" section

    line 126
  17. Distinctive:

    Write measurable success criteria

    line 131
  18. Very specific:

    Use make commands for automated verification

    line 132
  19. Distinctive:

    Keep language clear and actionable

    line 133
  20. Distinctive:

    Don't blindly accept change requests that seem problematic

    line 157
  21. Distinctive:

    Verify technical feasibility with code research

    line 159
  22. Distinctive:

    Only research what's necessary for the specific changes

    line 165
  23. Distinctive:

    Don't over-engineer the updates

    line 166
  24. Distinctive:

    Read the entire existing plan before making changes

    line 169
  25. Distinctive:

    Ensure updated sections maintain quality standards

    line 171
  26. Distinctive:

    Verify success criteria are still measurable

    line 172
  27. Distinctive:

    Don't disappear into research without communicating

    line 178
  28. Distinctive:

    Use TodoWrite to track update tasks if complex

    line 181
  29. Distinctive:

    Update todos as you complete research

    line 182
  30. Distinctive:

    If the requested change raises questions, ASK

    line 186
  31. Distinctive:

    Do NOT update the plan with unresolved questions

    line 188
  32. Distinctive:

    Every change must be complete and actionable

    line 189
  33. Distinctive:

    When updating success criteria, always maintain the two-category structure:

    line 193
  34. Very specific:

    Prefer make commands when available

    line 197
  35. Distinctive:

    When spawning research sub-tasks:

    line 209
  36. Distinctive:

    Only spawn if truly needed: - don't research for simple changes

    line 211
  37. Distinctive:

    Wait for all tasks to complete: before synthesizing

    line 220
  38. Distinctive:

    Verify sub-task results: - if something seems off, spawn follow-up tasks

    line 221

“Common” is measured: kept by at least 6 in 10 of the 4 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

Iterate Implementation Plan

You are tasked with updating existing implementation plans based on user feedback. You should be skeptical, thorough, and ensure changes are grounded in actual codebase reality.

Initial Response

When this command is invoked:

  1. Parse the input to identify:
    • Plan file path (e.g., flow/plans/2025-10-16-feature.md)
    • Requested changes/feedback
  2. Handle different input scenarios:

    If NO plan file provided:

    I'll help you iterate on an existing implementation plan.
    
    Which plan would you like to update? Please provide the path to the plan file (e.g., `flow/plans/2025-10-16-feature.md`).
    
    Tip: You can list recent plans with `ls -lt flow/plans/ | head`

    Wait for user input, then re-check for feedback.

    If plan file provided but NO feedback:

    I've found the plan at [path]. What changes would you like to make?
    
    For example:
    - "Add a phase for migration handling"
    - "Update the success criteria to include performance tests"
    - "Adjust the scope to exclude feature X"
    - "Split Phase 2 into two separate phases"

    Wait for user input.

    If BOTH plan file AND feedback provided:

    • Proceed immediately to Step 1
    • No preliminary questions needed

Process Steps

Step 1: Read and Understand Current Plan

  1. Read the existing plan file COMPLETELY:
    • Use the Read tool WITHOUT limit/offset parameters
    • Understand the current structure, phases, and scope
    • Note the success criteria and implementation approach
  2. Understand the requested changes:
    • Parse what the user wants to add/modify/remove
    • Identify if changes require codebase research
    • Determine scope of the update

Step 2: Research If Needed

Only spawn research tasks if the changes require new technical understanding.

If the user's feedback requires understanding new code patterns or validating assumptions:

  1. Create a research todo list using TodoWrite
  2. Spawn parallel sub-tasks for research: Use the right agent for each type of research:

    For code investigation:

    • codebase-locator - To find relevant files
    • codebase-analyzer - To understand implementation details
    • codebase-pattern-finder - To find similar patterns

    For historical context:

    • flow-locator - To find related research or decisions
    • flow-analyzer - To extract insights from documents

    Be EXTREMELY specific about directories:

    • Specify exact directories relevant to the change
    • Include full path context in prompts
  3. Read any new files identified by research:
    • Read them FULLY into the main context
    • Cross-reference with the plan requirements
  4. Wait for ALL sub-tasks to complete before proceeding

Step 3: Present Understanding and Approach

Before making changes, confirm your understanding:

Based on your feedback, I understand you want to:
- [Change 1 with specific detail]
- [Change 2 with specific detail]

My research found:
- [Relevant code pattern or constraint]
- [Important discovery that affects the change]

I plan to update the plan by:
1. [Specific modification to make]
2. [Another modification]

Does this align with your intent?

Get user confirmation before proceeding.

Step 4: Update the Plan

  1. Make focused, precise edits to the existing plan:
    • Use the Edit tool for surgical changes
    • Maintain the existing structure unless explicitly changing it
    • Keep all file:line references accurate
    • Update success criteria if needed
  2. Ensure consistency:
    • If adding a new phase, ensure it follows the existing pattern
    • If modifying scope, update "What We're NOT Doing" section
    • If changing approach, update "Implementation Approach" section
    • Maintain the distinction between automated vs manual success criteria
  3. Preserve quality standards:
    • Include specific file paths and line numbers for new content
    • Write measurable success criteria
    • Use make commands for automated verification
    • Keep language clear and actionable

Step 5: Review

  1. Present the changes made:
    I've updated the plan at `flow/plans/[filename].md`
    
    Changes made:
    - [Specific change 1]
    - [Specific change 2]
    
    The updated plan now:
    - [Key improvement]
    - [Another improvement]
    
    Would you like any further adjustments?
  2. Be ready to iterate further based on feedback

Important Guidelines

  1. Be Skeptical:
    • Don't blindly accept change requests that seem problematic
    • Question vague feedback - ask for clarification
    • Verify technical feasibility with code research
    • Point out potential conflicts with existing plan phases
  2. Be Surgical:
    • Make precise edits, not wholesale rewrites
    • Preserve good content that doesn't need changing
    • Only research what's necessary for the specific changes
    • Don't over-engineer the updates
  3. Be Thorough:
    • Read the entire existing plan before making changes
    • Research code patterns if changes require new technical understanding
    • Ensure updated sections maintain quality standards
    • Verify success criteria are still measurable
  4. Be Interactive:
    • Confirm understanding before making changes
    • Show what you plan to change before doing it
    • Allow course corrections
    • Don't disappear into research without communicating
  5. Track Progress:
    • Use TodoWrite to track update tasks if complex
    • Update todos as you complete research
    • Mark tasks complete when done
  6. No Open Questions:
    • If the requested change raises questions, ASK
    • Research or get clarification immediately
    • Do NOT update the plan with unresolved questions
    • Every change must be complete and actionable

Success Criteria Guidelines

When updating success criteria, always maintain the two-category structure:

  1. Automated Verification (can be run by execution agents):
    • Commands that can be run: make test, npm run lint, etc.
    • Prefer make commands when available
    • Specific files that should exist
    • Code compilation/type checking
  2. Manual Verification (requires human testing):
    • UI/UX functionality
    • Performance under real conditions
    • Edge cases that are hard to automate
    • User acceptance criteria

Sub-task Spawning Best Practices

When spawning research sub-tasks:

  1. Only spawn if truly needed - don't research for simple changes
  2. Spawn multiple tasks in parallel for efficiency
  3. Each task should be focused on a specific area
  4. Provide detailed instructions including:
    • Exactly what to search for
    • Which directories to focus on
    • What information to extract
    • Expected output format
  5. Request specific file:line references in responses
  6. Wait for all tasks to complete before synthesizing
  7. Verify sub-task results - if something seems off, spawn follow-up tasks

Example Interaction Flows

Scenario 1: User provides everything upfront

User: /iterate-plan flow/plans/2025-10-16-feature.md - add phase for error handling
Assistant: [Reads plan, researches error handling patterns, updates plan]

Scenario 2: User provides just plan file

User: /iterate-plan flow/plans/2025-10-16-feature.md
Assistant: I've found the plan. What changes would you like to make?
User: Split Phase 2 into two phases - one for backend, one for frontend
Assistant: [Proceeds with update]

Scenario 3: User provides no arguments

User: /iterate-plan
Assistant: Which plan would you like to update? Please provide the path...
User: flow/plans/2025-10-16-feature.md
Assistant: I've found the plan. What changes would you like to make?
User: Add more specific success criteria
Assistant: [Proceeds with update]

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.

Reviews can't be read right now.

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.