Files
Claude-Code-Workflow/.claude/skills/ccw/phases/actions/issue.md
catlog22 e3dba87e08 feat(skills): add CCW orchestrator and refactor command-guide to ccw-help
CCW Skill (new):
- Stateless workflow orchestrator with intent classification
- 6 workflow combinations: rapid, full, coupled, bugfix, issue, ui
- External configuration: intent-rules.json, workflow-chains.json
- Implicit CLI tool injection (Gemini/Qwen/Codex)
- TODO tracking integration for workflow progress

CCW-Help Skill (refactored from command-guide):
- Renamed command-guide → ccw-help
- Removed reference folder duplication
- Source paths now relative from index/ (../../../commands/...)
- Added all-agents.json index
- Simplified SKILL.md following CCW pattern
2026-01-03 18:46:59 +08:00

4.6 KiB

Action: Issue Workflow

Issue 批量处理工作流:规划 + 队列 + 批量执行

Pattern

issue:plan → issue:queue → issue:execute

Trigger Conditions

  • Keywords: "issues", "batch", "queue", "多个", "批量"
  • Multiple related problems
  • Long-running fix campaigns
  • Priority-based processing needed

Execution Flow

sequenceDiagram
    participant U as User
    participant O as CCW Orchestrator
    participant IP as issue:plan
    participant IQ as issue:queue
    participant IE as issue:execute
    
    U->>O: Multiple issues / batch fix
    O->>O: Classify: issue
    
    Note over IP: Phase 1: Issue Planning
    O->>IP: /issue:plan
    IP->>IP: Load unplanned issues
    IP->>IP: Generate solutions per issue
    IP->>U: Review solutions
    U->>IP: Bind selected solutions
    
    Note over IQ: Phase 2: Queue Formation
    IP->>IQ: /issue:queue
    IQ->>IQ: Conflict analysis
    IQ->>IQ: Priority calculation
    IQ->>IQ: DAG construction
    IQ->>U: High-severity conflicts?
    U->>IQ: Resolve conflicts
    IQ->>IQ: Generate execution queue
    
    Note over IE: Phase 3: Execution
    IQ->>IE: /issue:execute
    IE->>IE: DAG-based parallel execution
    IE->>IE: Per-solution progress tracking
    IE-->>U: Batch execution complete

When to Use

Ideal scenarios:

  • 多个相关 Bug 需要批量修复
  • GitHub Issues 批量处理
  • 技术债务清理
  • 安全漏洞批量修复
  • 代码质量改进活动

Avoid when:

  • 单一问题 → /workflow:lite-fix
  • 独立不相关的任务 → 分别处理
  • 紧急生产问题 → /workflow:lite-fix --hotfix

Issue Lifecycle

draft → planned → queued → executing → completed
         ↓           ↓
      skipped    on-hold

Conflict Types

Type Description Resolution
File 多个解决方案修改同一文件 Sequential execution
API API 签名变更影响 Dependency ordering
Data 数据结构变更冲突 User decision
Dependency 包依赖冲突 Version negotiation
Architecture 架构方向冲突 User decision (high severity)

Configuration

const issueConfig = {
  plan: {
    solutionsPerIssue: 3,  // Generate up to 3 solutions
    autoSelect: false,  // User must bind solution
    planningAgent: 'issue-plan-agent'
  },
  
  queue: {
    conflictAnalysis: true,
    priorityCalculation: true,
    clarifyThreshold: 'high',  // Ask user for high-severity conflicts
    queueAgent: 'issue-queue-agent'
  },
  
  execute: {
    dagParallel: true,
    executionLevel: 'solution',  // Execute by solution, not task
    executor: 'codex',
    resumable: true
  }
}

Example Invocations

# From GitHub Issues
ccw "批量处理所有 label:bug 的 GitHub Issues"
→ issue:new (import from GitHub)
→ issue:plan (generate solutions)
→ issue:queue (form execution queue)
→ issue:execute (batch execute)

# Tech debt cleanup
ccw "处理所有 TODO 注释和已知技术债务"
→ issue:discover (find issues)
→ issue:plan (plan solutions)
→ issue:queue (prioritize)
→ issue:execute (execute)

# Security vulnerabilities
ccw "修复所有 npm audit 报告的安全漏洞"
→ issue:new (from audit report)
→ issue:plan (upgrade strategies)
→ issue:queue (conflict resolution)
→ issue:execute (staged upgrades)

Queue Structure

{
  "queue_id": "QUE-20251227-143000",
  "status": "active",
  "execution_groups": [
    {
      "id": "P1",
      "type": "parallel",
      "solutions": ["SOL-ISS-001-1", "SOL-ISS-002-1"],
      "description": "Independent fixes, no file overlap"
    },
    {
      "id": "S1",
      "type": "sequential",
      "solutions": ["SOL-ISS-003-1"],
      "depends_on": ["P1"],
      "description": "Depends on P1 completion"
    }
  ]
}

Output Artifacts

.workflow/issues/
├── issues.jsonl              # All issues (one per line)
├── solutions/
│   ├── ISS-001.jsonl         # Solutions for ISS-001
│   └── ISS-002.jsonl
├── queues/
│   ├── index.json            # Queue index
│   └── QUE-xxx.json          # Queue details
└── execution/
    └── {queue-id}/
        ├── progress.json
        └── results/

Progress Tracking

// Real-time progress during execution
const progress = {
  queue_id: "QUE-xxx",
  total_solutions: 5,
  completed: 2,
  in_progress: 1,
  pending: 2,
  current_group: "P1",
  eta: "15 minutes"
}

Resume Capability

# If execution interrupted
ccw "继续执行 issue 队列"
→ Detects active queue: QUE-xxx
→ Resumes from last checkpoint
→ /issue:execute --resume