Files
leo-claude-mktplace/plugins/projman/skills/planning-workflow.md
lmiranda 0e70156e26 feat(projman): add plan-then-batch skill optimization
Separate cognitive work from mechanical API execution to reduce
skill-related token consumption by ~76-83% during sprint workflows.

Changes:
- Add batch-execution.md skill with 4-phase protocol
- Promote mcp-tools-reference and batch-execution to frontmatter
  for planner and orchestrator agents (auto-injected, zero re-read)
- Replace "Skills to Load" with phase-based "Skill Loading Protocol"
- Restructure planning-workflow.md Steps 8-10 for batch execution
- Update agent matrix in CLAUDE.md and docs/CONFIGURATION.md
- Add Phase-Based Skill Loading documentation section
- Clean up .gitignore (transient files, dev symlinks)

Token impact:
- 6-issue sprint planning: ~76% reduction
- 10-issue sprint planning: ~80% reduction
- 8-issue status updates: ~83% reduction

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 19:57:10 -05:00

5.6 KiB

name, description
name description
planning-workflow The complete sprint planning process steps

Planning Workflow

Purpose

Defines the complete 11-step planning workflow from validation through approval.

When to Use

  • Planner agent: When executing /sprint-plan
  • Commands: /sprint-plan

Workflow Steps

1. Understand Sprint Goals

Ask clarifying questions:

  • What are the sprint objectives?
  • What's the scope and priority?
  • Are there any constraints (time, resources, dependencies)?
  • What's the desired outcome?

Never rush - take time to understand requirements fully.

2. Run Pre-Planning Validations

Execute in order:

  1. Branch detection - See skills/branch-security.md
  2. Repository org check - See skills/repo-validation.md
  3. Label taxonomy validation - See skills/repo-validation.md

STOP if any validation fails.

3. Detect Input Source

Follow skills/input-detection.md:

  1. Check for approved RFCs (Priority 0)
  2. Check for docs/changes/*.md files
  3. Check for existing wiki proposal
  4. If neither: use conversation context
  5. If ambiguous: ask user

3a. RFC Status Update (if RFC selected)

If input source is an RFC:

  1. Note the RFC number for later status update
  2. RFC status update happens AFTER sprint approval (Step 11)
  3. The RFC provides the planning context - use its Summary, Motivation, and Design sections

4. Search Relevant Lessons Learned

Follow skills/lessons-learned.md:

search_lessons(repo="org/repo", query="sprint keywords", tags=["relevant", "tags"])

Present findings to user before proceeding.

5. Create/Update Wiki Proposal

Follow skills/wiki-conventions.md:

  • If local file: migrate content to wiki, create proposal page
  • If conversation: create proposal from discussion
  • If existing wiki: skip creation, use as-is

6. Create Wiki Implementation Page

Follow skills/wiki-conventions.md:

  • Create Change VXX.X.X: Proposal (Implementation N)
  • Update proposal page with link to implementation

7. Architecture Analysis

Think through:

  • What components will be affected?
  • What are the integration points?
  • Are there edge cases to handle?
  • What dependencies exist?
  • What are potential risks?

8. Draft Issue Specifications (DO NOT create yet)

Follow skills/issue-conventions.md and skills/task-sizing.md to prepare the complete specification for ALL issues. Do NOT call create_issue yet.

For each issue, resolve completely:

  • Title: [Sprint XX] <type>: <description>
  • Body: Full description with wiki reference, acceptance criteria, technical notes
  • Labels: Use suggest_labels to determine, then finalize the list
  • Milestone: The sprint milestone (create first if needed)
  • Dependencies: Which issues depend on which (by draft order index)

Refuse to create L/XL tasks without breakdown.

Output: A complete execution manifest per skills/batch-execution.md Phase 2 format.

8a. Batch Execute Issue Creation

Follow skills/batch-execution.md Phase 3:

  1. Execute all create_issue calls — collect returned issue numbers
  2. Execute all create_issue_dependency calls — using collected numbers
  3. Assign all issues to milestone
  4. Report batch results per Phase 4 format

Only skills/mcp-tools-reference.md is needed for this step. Do NOT re-read other skill files.

9. (Merged into Step 8a)

Dependencies are now created as part of the batch execution in Step 8a. No separate step needed.

10. Create or Select Milestone (before batch)

This step runs BEFORE Step 8a — the milestone must exist before batch issue creation can assign to it.

create_milestone(
    repo="org/repo",
    title="Sprint 17 - Feature Name",
    description="Sprint description",
    due_on="2025-02-01T00:00:00Z"
)

If milestone already exists, select it. Record the milestone ID for use in the batch manifest.

11. Request Sprint Approval

Follow skills/sprint-approval.md:

  • Present approval request with scope summary
  • Wait for explicit user approval
  • Record approval in milestone description

12. Update RFC Status (if applicable)

If planning input was an RFC:

  1. Fetch RFC page:

    get_wiki_page(page_name="RFC-NNNN:-Title", repo="org/repo")
    
  2. Update RFC page:

    • Change status: Approved → Implementing
    • Add Sprint reference to frontmatter
    • Add Implementation section with sprint details and issue links
    update_wiki_page(
        page_name="RFC-NNNN:-Title",
        content="[updated content with Implementing status]",
        repo="org/repo"
    )
    
  3. Update RFC-Index:

    • Remove from "## Approved" section
    • Add to "## Implementing" section with sprint reference

Cleanup After Planning

  • Delete local input file (wiki is now source of truth)
  • Summarize architectural decisions
  • List created issues with labels
  • Document dependency graph
  • Provide sprint overview with wiki links

Visual Output

Display header at start:

╔══════════════════════════════════════════════════════════════════╗
║  📋 PROJMAN                                                      ║
║  🎯 PLANNING                                                     ║
║  [Sprint Name]                                                   ║
╚══════════════════════════════════════════════════════════════════╝