sw:increment-planner

📁 anton-abyzov/specweave 📅 10 days ago
1
总安装量
1
周安装量
#55604
全站排名
安装命令
npx skills add https://github.com/anton-abyzov/specweave --skill sw:increment-planner

Agent 安装分布

opencode 1
codex 1
claude-code 1

Skill 文档

Increment Planner Skill

Self-contained increment planning for ANY user project after specweave init.

Progressive Disclosure

Load phases as needed to reduce context:

Phase When to Load File
Pre-flight Starting planning phases/00-preflight.md
Project Context Resolving project/board phases/01-project-context.md
Create Increment Creating files phases/02-create-increment.md
Reference Examples, troubleshooting phases/03-reference.md

Quick Reference

Increment Types

Type Use When WIP Limit
feature New functionality Max 2
hotfix Production broken Unlimited
bug Needs RCA Unlimited
change-request Business changes Max 2
refactor Technical debt Max 1
experiment POC/spike Unlimited

Directory Structure

.specweave/increments/####-name/
├── metadata.json  # REQUIRED - create FIRST
├── spec.md        # REQUIRED - user stories, ACs
├── plan.md        # OPTIONAL - architecture
└── tasks.md       # REQUIRED - implementation

Workflow Overview

STEP 0: Pre-flight (TDD mode, multi-project, Deep Interview)
        → Load phases/00-preflight.md
        → CHECK: Deep Interview Mode enabled?

STEP 0.5: Deep Interview (if enabled)
        → PM skill loads phases/00-deep-interview.md
        → Ask 10-40+ questions about architecture, integrations, etc.
        → Continue until all categories covered

STEP 1: Project Context (resolve project/board)
        → Load phases/01-project-context.md

STEP 2: Create Increment (via Template API)
        → Load phases/02-create-increment.md

STEP 3: Guide User (complete in main conversation)

Deep Interview Mode Detection (STEP 0.5)

Check during pre-flight:

# Detect deep interview mode and enforcement level
deepInterview=$(jq -r '.planning.deepInterview.enabled // false' .specweave/config.json 2>/dev/null)
enforcement=$(jq -r '.planning.deepInterview.enforcement // "advisory"' .specweave/config.json 2>/dev/null)

if [ "$deepInterview" = "true" ]; then
  echo "DEEP INTERVIEW MODE: Conduct thorough questioning before spec creation"
  echo "Enforcement: $enforcement"
  echo "Categories: architecture, integrations, ui-ux, performance, security, edge-cases"

  if [ "$enforcement" = "strict" ]; then
    echo ""
    echo "⚠️ STRICT MODE: spec.md BLOCKED until all categories marked covered!"
    echo "Use: specweave interview mark-covered <id> <category> \"summary\""
  fi
fi

If Deep Interview Mode is enabled:

  1. Delegate to PM skill with interview phase
  2. Ask minimum 10 questions (40+ for large features)
  3. Cover all configured categories
  4. Only proceed to STEP 1 after interview complete

Strict Mode (v1.0.198+):

  • enforcement: "strict" blocks spec.md creation until all categories are covered
  • Initialize tracking: specweave interview start <increment-id>
  • Mark categories: specweave interview mark-covered <id> architecture "summary"
  • Check progress: specweave interview status <id>

Critical Rules

1. Project Field is MANDATORY

Every US MUST have **Project**: field:

### US-001: Feature Name
**Project**: my-app    # ← REQUIRED!
**As a** user...

Get project: specweave context projects

2. Use Template Creator API

Direct Write is FORBIDDEN! Use:

specweave create-increment --id "0021-name" --project "my-app"

3. NO Agent Spawning

Skills MUST NOT spawn Task() agents (causes crashes). Guide user to complete in MAIN conversation.

4. Increment Naming

Format: ####-descriptive-kebab-case

✅ 0001-user-authentication
❌ 0001 (no description)
❌ my-feature (no number)

Token Budget

  • Quick reference (this file): ~400 tokens
  • Each phase: ~300-500 tokens
  • Total if all loaded: ~2000 tokens

Load phases on-demand, not all at once!

Delegation

  • Pre-flight checks: /sw:increment command handles WIP, discipline
  • Spec completion: PM skill (in main conversation)
  • Architecture: Architect skill (in main conversation)
  • Task generation: Test-aware planner (in main conversation)

Usage

// Direct invocation
Skill({ skill: "sw:increment-planner", args: "--description=\"Add auth\"" })

// Via command (recommended - handles pre-flight)
/sw:increment "Add user authentication"

NOTE: Use sw: prefix! Plain increment-planner fails.

Project-Specific Learnings

Before starting work, check for project-specific learnings:

# Check if skill memory exists for this skill
cat .specweave/skill-memories/increment-planner.md 2>/dev/null || echo "No project learnings yet"

Project learnings are automatically captured by the reflection system when corrections or patterns are identified during development. These learnings help you understand project-specific conventions and past decisions.