Compare commits

..

83 Commits

Author SHA1 Message Date
catlog22
afed67cd3a docs: 更新智能工具选择策略文档,明确规则和命令模板的使用要求 2025-11-06 10:00:28 +08:00
catlog22
b6b788f0d8 Refactor intelligent-tools-strategy.md:
- Introduced a universal prompt template for CLI tools.
- Streamlined tool selection and command syntax for clarity.
- Enhanced model selection details for Gemini, Qwen, and Codex.
- Updated quick decision matrix to reflect new structure.
- Clarified core principles and best practices for tool usage.
- Improved context configuration and memory integration guidelines.
- Revised rules field configuration for command substitution.
- Added detailed examples for command usage and session management.
- Optimized directory navigation and context optimization strategies.
2025-11-06 09:27:47 +08:00
catlog22
63acd94bbf docs: 更新智能工具选择策略文档,增强模型选择和命令模板结构的清晰度 2025-11-06 09:16:25 +08:00
catlog22
43d647e7b2 docs: 强调--include-directories参数减少无关文件干扰的优势
在多个关键位置强化cd + --include-directories模式的核心价值:
- Quick Decision Matrix添加多目录分析场景示例
- Core Principles新增"最小化上下文噪音"原则
- 更新Purpose说明减少无关文件噪音的核心目的
- Benefits部分突出最小化无关文件干扰优势
- 示例中添加注释展示实际效果和文件范围控制

通过精确的目录导航和依赖引入,减少token使用并提高分析精度

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 22:29:55 +08:00
catlog22
76aa20cdfd docs: 更新.gitignore以包含新的命令模板文件 2025-11-05 22:14:03 +08:00
catlog22
39c956c703 docs: 更新CLI初始化命令以使用Write函数创建配置文件 2025-11-05 22:13:02 +08:00
catlog22
dd04433079 docs: 在任务生成命令中添加focus_paths路径清晰度准则
在三个任务生成命令中添加核心准则:
- task-generate.md
- task-generate-tdd.md
- task-generate-agent.md

路径要求:
- 优先使用绝对路径(如 D:\project\src\module)
- 或使用从项目根目录的清晰相对路径(如 ./src/module)
- 避免模糊的相对路径(如 analysis, interfaces)

更新示例JSON展示混合使用两种路径方式

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 21:51:58 +08:00
catlog22
c36ff8fcec docs: 继续标准化工作流会话和版本命令文档格式
移除剩余命令文档中的表情符号和视觉装饰:
- version.md - 版本检查和更新命令
- workflow/session/list.md - 会话列表命令
- workflow/session/resume.md - 会话恢复命令
- workflow/session/start.md - 会话启动命令

保持与其他命令文档的格式一致性

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 21:49:03 +08:00
catlog22
967e3805b7 docs: 标准化命令文档格式,移除表情符号并添加命令模板规范
更新所有命令文档以提高可读性和一致性:
- 移除所有表情符号(⚠️, , , ▸等),使用纯文本替代
- 统一标题格式,改进章节结构
- 简化状态指示器和格式标记
- 添加三个新的命令模板规范文档

新增文档:
- COMMAND_FLOW_STANDARD.md - 标准命令流程规范
- COMMAND_TEMPLATE_EXECUTOR.md - 执行器命令模板
- COMMAND_TEMPLATE_ORCHESTRATOR.md - 编排器命令模板

影响范围:
- CLI命令(cli-init, codex-execute, discuss-plan, execute)
- 内存管理命令(skill-memory, tech-research, workflow-skill-memory)
- 任务管理命令(breakdown, create, execute, replan)
- 工作流命令(所有workflow相关命令)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 21:48:43 +08:00
catlog22
e898ebc322 docs: 更新SKILL.md生成描述和变量替换指南,增强文档的清晰度和准确性 2025-11-05 20:15:18 +08:00
catlog22
a38a216cc9 docs: 移除完成工作流会话的SKILL包更新选项,简化文档并优化流程描述 2025-11-05 19:59:57 +08:00
catlog22
3b351693fc refactor: 重构UI设计工作流的交互模式和字段架构
主要变更:

1. animation-extract.md 重构交互流程
   - Phase 2 交互从Agent移至主流程(参考artifacts.md模式)
   - 使用【问题N - 标签】格式,提供方向性指导而非具体示例
   - Phase 3 Agent改为纯合成任务(无用户交互)
   - 保留独立的animation-tokens.json输出

2. style-extract.md 字段扩展优化
   - 保留字段扩展:typography.combinations、opacity、component_styles、border_radius、shadows
   - 移除animations字段(由专门的animation-tokens.json提供)
   - 完善design-tokens.json格式文档

3. generate.md 支持新字段
   - 保留animation-tokens.json可选加载
   - 支持typography.combinations、opacity、component_styles
   - 生成对应CSS类(组件样式类、排版预设类)

4. batch-generate.md 字段支持
   - 解析新的design-tokens字段结构
   - 使用组件预设和排版预设

架构改进:
- 清晰分离:design-tokens.json(基础设计系统)+ animation-tokens.json(动画配置)
- 主流程交互:用户决策在主流程完成,Agent只负责合成
- 字段完整性:保留所有设计系统扩展字段

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 19:50:47 +08:00
catlog22
ab266a38b1 docs: Add templates for tech stack module documentation and SKILL index generation 2025-11-04 22:51:21 +08:00
catlog22
dc9d63b349 docs: Update context search strategy to clarify SKILL usage and enhance project documentation 2025-11-04 22:31:57 +08:00
catlog22
72bdb3470e docs: Clarify usage and validation for workflow-skill-memory command, ensuring only WFS-* sessions are processed 2025-11-04 22:26:00 +08:00
catlog22
f496a35da5 Remove benefits and architecture sections from workflow-skill-memory documentation for clarity and conciseness. 2025-11-04 22:10:06 +08:00
catlog22
15bf9cdbed Refactor workflow session archival and SKILL package updates
- Updated command invocation for SKILL memory generator to use session ID instead of incremental mode.
- Enhanced documentation on the processing of archived sessions and intelligent aggregation by the agent.
- Added templates for generating conflict patterns, lessons learned, SKILL index, and sessions timeline.
- Established clear update strategies for incremental and full modes across all new templates.
- Improved structure and formatting rules for better clarity and usability in generated documents.
2025-11-04 21:46:37 +08:00
catlog22
779581ec3b Add workflow-skill-memory command and skill aggregation prompt
- Implemented the workflow-skill-memory command for generating SKILL packages from archived workflow sessions.
- Defined a 4-phase execution process for reading sessions, extracting data, organizing information, and generating SKILL files.
- Created a detailed prompt for skill aggregation, outlining tasks for analyzing archived sessions, aggregating lessons learned, conflict patterns, and implementation summaries.
- Established output formats for aggregated lessons, conflict patterns, and implementation summaries to ensure structured and actionable insights.
2025-11-04 21:34:36 +08:00
catlog22
483ab621bc docs: Replace project-specific examples with generic examples in load-skill-memory 2025-11-03 22:53:41 +08:00
catlog22
6adbe7c1e9 feat: Make skill_name optional with intelligent auto-detection in load-skill-memory
## Major Changes

### Parameter Flexibility
- Changed `<skill_name>` from Required to Optional `[skill_name]`
- Updated argument-hint: `[skill_name] "task intent description"`
- Description: "Activate SKILL package (auto-detect or manual)"

### Auto-Detection Strategy (New Feature)
Added Step 1: Determine SKILL Name (if not provided)
1. **Path Extraction**: Scan task for file paths, extract project names
   - Example: `"D:\projects\my_project\src\auth.py"` → extracts `my_project`
2. **Keyword Matching**: Match task keywords against SKILL descriptions
3. **Validation**: Check if extracted name exists in `.claude/skills/`

### Core Philosophy Update
- Changed from "Manual Activation" → "Flexible Activation"
- Auto-detect from task description/paths OR user explicitly specifies

### Enhanced Documentation
- Parameters section: Added auto-detection explanation and path example
- Task intent description: Now serves dual purpose (auto-detection + scope selection)
- Updated all execution flow steps (Step 1 → Step 2 → Step 3)

### Usage Examples
- **Example 1**: Manual specification (explicit skill_name)
- **Example 2**: Auto-detection from path (NEW)
  - Shows complete auto-detection workflow
  - Path extraction → Validation → Activation

## Benefits
-  **Smarter activation**: System extracts skill name from context
-  **Reduced user effort**: No need to specify obvious skill names
-  **Backward compatible**: Manual specification still supported
-  **Path-aware**: Intelligent extraction from file paths in task description

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 22:50:38 +08:00
catlog22
b5fb4e3d48 docs: Enhance path trigger strategy with intelligent skill name extraction
## Enhancement
- Updated path mention trigger description for clarity
- Emphasized intelligent extraction: "system extracts skill name from file paths for intelligent triggering"
- Removed example, replaced with mechanism description for better understanding

## Changes
- Line 25: Changed from "e.g., mentioning files under SKILL's project path" to "system extracts skill name from file paths for intelligent triggering"
- Clearer expression of automatic SKILL activation via path-based extraction

## Example Mechanism
- User mentions: `D:\projects\hydro_generator_module\src\file.py`
- System extracts: `hydro_generator_module` as potential skill name
- Automatic trigger: Activates corresponding SKILL package if exists

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 22:32:41 +08:00
catlog22
1cabccbbdd docs: Add path-based trigger strategy to load-skill-memory command
## Enhancement
- Added path mention trigger strategy in Note section (1 line)
- Clarified: "Normal SKILL activation happens automatically via description triggers or path mentions"
- Example: Mentioning files under SKILL's project path auto-triggers SKILL package
- Helps users understand automatic SKILL activation mechanisms

## Changes
- Modified line 25: Added "or path mentions (e.g., mentioning files under SKILL's project path)"
- Total addition: 1 line as requested

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 22:30:29 +08:00
catlog22
8073549234 docs: Optimize skill-memory.md structure and add Skill() to context search strategy
## skill-memory.md Optimization
- Restructured file from 553 to 534 lines (-19 lines, -3.4%)
- Eliminated duplicate content in 3 areas:
  * Auto-Continue mechanism (3 occurrences → 1)
  * Execution flow descriptions (2 occurrences → 1)
  * Phase 4 never-skip notes (2 occurrences → 1)
- Merged "TodoWrite Pattern" and "Auto-Continue Execution Flow" into unified "Implementation Details" section
- Improved hierarchy: Overview → Execution → Implementation Details → Parameters → Examples
- Added Example 5 demonstrating Skip Path usage
- All content preserved, no information loss

## context-search-strategy.md Enhancement
- Added Skill() as highest priority tool in Core Search Tools (1 line)
- Emphasized: "FASTEST way to get project context - use FIRST if SKILL exists (higher priority than CLI analysis)"
- Added to Tool Selection Matrix: "FASTEST context loading - use FIRST if SKILL exists"
- Added Quick Command Reference with intelligent auto-trigger emphasis
- Total addition: 3 lines as requested

## Benefits
- Clearer file structure with eliminated redundancy
- Skill() now prominently featured as first-priority context tool
- Intelligent auto-trigger mechanism emphasized
- Consistent messaging across documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 22:28:27 +08:00
catlog22
3eec2a542b feat(v5.2.2): Add intelligent skip logic to /memory:skill-memory with parameter naming correction
## Smart Documentation Generation
- Automatically detects existing documentation and skips Phase 2/3 when docs exist
- Jump directly to Phase 4 (SKILL.md generation) for fast SKILL index updates
- Phase 4 always executes to ensure SKILL.md stays synchronized
- Explicit --regenerate flag for forced full documentation refresh

## Parameter Naming Correction
- Reverted --update back to --regenerate for accurate semantic meaning
- "regenerate" = delete and recreate (destructive operation)
- "update" was misleading (implied incremental update, not implemented)

## Execution Paths
- Full Path: All 4 phases (no docs OR --regenerate specified)
- Skip Path: Phase 1 → Phase 4 (docs exist AND no --regenerate)
- Added comprehensive TodoWrite patterns and flow diagrams for both paths

## Phase 1 Enhancement
- Step 4: Determine Execution Path - decision logic with SKIP_DOCS_GENERATION flag
- Checks existing documentation count
- Evaluates --regenerate flag presence
- Displays appropriate skip or regeneration messages

## Benefits
- 5-10x faster SKILL updates when documentation already exists
- Always fresh SKILL.md index reflecting current documentation structure
- Explicit control via --regenerate flag for full refresh

## Modified Files
- .claude/commands/memory/skill-memory.md (553 lines, +59 lines for skip logic)
- CHANGELOG.md (added v5.2.2 release notes)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 22:21:08 +08:00
catlog22
f1c89127dc chore: release v5.2.1 - SKILL workflow improvements
Major Changes:
- Redesigned /memory:load-skill-memory as manual activation tool
- Changed --regenerate to --update flag in skill-memory command
- Enhanced context search strategy with SKILL first priority

Details:
1. load-skill-memory command redesign:
   - Manual activation: user specifies SKILL name explicitly
   - Intent-driven doc loading: 5 levels based on task description
   - Memory-based validation: removed bash checks
   - File size: 355→132 lines (-62.8%)

2. Parameter naming consistency:
   - Renamed --regenerate to --update in skill-memory.md
   - Updated all references and examples

3. Context search strategy (global .claude):
   - Added SKILL packages as first priority tool
   - Emphasized use BEFORE Gemini analysis
   - Updated tool selection matrix and examples

See CHANGELOG.md for complete details.
2025-11-03 22:07:09 +08:00
catlog22
8926611964 refactor: update load-skill-memory command to manual activation and intent-driven loading 2025-11-03 21:55:22 +08:00
catlog22
8a9bc7a210 refactor: optimize load-skill-memory structure and remove emojis
- Merge duplicate content: consolidate Sections 4, 6, 7, 9, 10
- Reduce file size from 382 to 348 lines (-8.9%)
- Remove all emoji icons, replace with text alternatives
- Improve section flow: 8 sections total (was 11)
- Preserve all information while eliminating redundancy
2025-11-03 21:38:42 +08:00
catlog22
25a358b729 feat: implement dynamic SKILL discovery with intelligent matching
Transform load-skill-memory from manual specification to automatic discovery:

**Core Change**:
- From: User specifies SKILL name manually
- To: System automatically discovers and matches SKILL based on task context

**New Capabilities**:

1. **Three-Step Execution**:
   - Step 1: Discover all available SKILLs (.claude/skills/)
   - Step 2: Match most relevant SKILL using scoring algorithm
   - Step 3: Activate matched SKILL via Skill() tool

2. **Intelligent Matching Algorithm**:
   - **Path-Based** (Highest Priority): Direct path match from file paths
   - **Keyword Matching** (Secondary): Score by keyword overlap
   - **Action Matching** (Tertiary): Detect action verbs (分析/修改/学习)

3. **Updated Parameters**:
   - From: `<skill_name> [--level] [task description]`
   - To: `"task description or file path"`
   - More intuitive user experience

4. **New Examples**:
   ```bash
   /memory:load-skill-memory "分析热模型builder pattern实现"
   /memory:load-skill-memory "D:\dongdiankaifa9\hydro_generator_module\builders\base.py"
   /memory:load-skill-memory "修改workflow文档生成逻辑"
   ```

**Matching Examples**:

Task: "分析热模型builder pattern实现"
- hydro_generator_module: 4 points (thermal+builder+analyzing) 
- Claude_dms3: 1 point (analyzing only)

Task: "D:\dongdiankaifa9\hydro_generator_module\builders\base.py"
- Path match: hydro_generator_module  (exact path)

**Benefits**:
- No manual SKILL name required
- Automatic best match selection
- Path-based intelligent routing
- Keyword scoring for relevance
- Action verb detection for context

**User Experience**:
Before: "/memory:load-skill-memory hydro_generator_module '分析热模型'"
After: "/memory:load-skill-memory '分析热模型实现'"

System automatically discovers and activates hydro_generator_module SKILL.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:31:06 +08:00
catlog22
9e0a70150a refactor: redesign load-skill-memory to use Skill tool activation
Complete redesign from manual document reading to SKILL activation pattern:

**Before (Manual Loading)**:
- Complex level selection logic (0-3)
- Manual Read operations for each document
- Task-based auto-level selection
- ~200 lines of document loading code

**After (Skill Activation)**:
- Simple two-step: Validate → Activate
- Use Skill(command: "skill_name") tool
- System handles all documentation loading automatically
- ~100 lines simpler, more maintainable

**Key Changes**:

1. **Examples Updated**:
   - From: `/memory:load-skill-memory hydro_generator_module "分析热模型"`
   - To: `Skill(command: "hydro_generator_module")`

2. **Execution Flow Simplified**:
   - Step 1: Validate SKILL.md exists
   - Step 2: Skill(command: "skill_name")
   - System automatically handles progressive loading

3. **Removed Manual Logic**:
   - No explicit --level parameter
   - No manual document reading
   - No level selection algorithm
   - System determines context needs automatically

4. **Added SKILL Trigger Mechanism**:
   - Explains how SKILL description triggers work
   - Keyword matching (domain terms)
   - Action detection (analyzing, modifying, learning)
   - Memory gap detection
   - Path-based triggering

5. **Updated Integration Examples**:
   ```javascript
   Skill(command: "hydro_generator_module")
   SlashCommand(command: "/workflow:plan \"task\"")
   ```

**Benefits**:
- Simpler user experience (just activate SKILL)
- Automatic context optimization
- System handles complexity
- Follows Claude SKILL architecture
- Leverages built-in SKILL trigger patterns

**Philosophy Shift**:
- From: Manual control over documentation loading
- To: Trust SKILL system to load appropriate context
- Aligns with skill-memory.md description optimization

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:26:52 +08:00
catlog22
7b2160d51f feat: add /memory:load-skill-memory command for progressive SKILL loading
New command for loading SKILL package documentation with intelligent level selection:

**Two-Step Process**:
1. Validate SKILL existence in .claude/skills/{skill_name}/
2. Load documentation based on task requirements and complexity

**Progressive Loading Levels**:
- Level 0: Quick Start (~2K tokens) - Overview exploration
- Level 1: Core Modules (~10K tokens) - Module analysis
- Level 2: Complete (~25K tokens) - Code modification
- Level 3: Deep Dive (~40K tokens) - Feature implementation

**Auto-Level Selection**:
- Keyword-based detection from task description
- "快速了解" → Level 0
- "分析" → Level 1
- "修改" → Level 2
- "实现" → Level 3

**Key Features**:
- SKILL existence validation with available SKILLs listing
- Task-driven level auto-selection
- Token budget estimation
- Error handling for missing SKILLs/documentation
- Explicit --level override support

**Usage Examples**:
```bash
/memory:load-skill-memory hydro_generator_module "分析热模型"
/memory:load-skill-memory Claude_dms3 --level 2 "修改workflow"
/memory:load-skill-memory multiphysics_network "实现耦合器"
```

**Integration**:
- Works with SKILL packages generated by /memory:skill-memory
- Optimizes token usage through progressive loading
- Supports workflow planning and execution commands

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:10:32 +08:00
catlog22
aa1900a3e7 feat: enhance SKILL description to prioritize context loading when memory is empty
Optimize description format to emphasize SKILL as primary context source:

**Key Changes**:
1. Action verbs updated: "working with" → "modifying" (more explicit)
2. Added priority trigger: "especially when no relevant context exists in memory"
3. Expanded Trigger Optimization guidance with three key scenarios

**Three Key Actions**:
- analyzing (分析) - Understanding codebase structure
- modifying (修改) - Making changes to code
- learning (了解) - Exploring unfamiliar modules

**Priority Context Loading**:
- Emphasize SKILL loading when conversation memory lacks relevant context
- Position SKILL as first-choice context source for fresh inquiries
- Improve trigger sensitivity for cold-start scenarios

**Before**:
"Load this SKILL when analyzing, working with, or learning about {domain}
or files under this path for comprehensive context."

**After**:
"Load this SKILL when analyzing, modifying, or learning about {domain}
or files under this path, especially when no relevant context exists in memory."

**Impact**:
- Higher trigger rate when users ask about unfamiliar modules
- Better context initialization for new analysis sessions
- Clearer action vocabulary aligns with actual use cases

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:06:52 +08:00
catlog22
2303699b33 fix: correct description format placeholder from project_name to domain_description
Fix inconsistency between Format definition and Example usage:

**Problem**:
- Format used {project_name} placeholder (technical directory name)
- Example used "workflow management" (human-readable domain description)
- Mismatch causes incorrect description generation

**Solution**:
- Changed {project_name} → {domain_description} in format
- Added explicit guidance: "Extract human-readable domain/feature area"
- Added examples: "workflow management", "thermal modeling"
- Clarified: Use domain description, NOT technical project_name

**Impact**:
- Generated descriptions now correctly use domain terms
- Improved trigger sensitivity with natural language
- Consistent with example pattern

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:05:31 +08:00
catlog22
f7a97e8159 feat: add project path to SKILL.md description for location-based triggering
Enhance description format to include project path information:
- Add "(located at {project_path})" to description format
- Reference TARGET_PATH from Phase 1 for accurate path
- Include "or files under this path" trigger condition
- Improve sensitivity when users mention specific directories

Benefits:
- SKILL triggers when user asks about files in project directory
- Path-based context identification improves accuracy
- Better integration with file location queries

Before: "{Project} {capabilities}. Load when {scenarios}..."
After: "{Project} {capabilities} (located at {path}). Load when {scenarios} or files under this path..."

Example:
"Workflow orchestration system with CLI tools (located at /d/Claude_dms3).
Load this SKILL when analyzing, working with, or learning about workflow
management or files under this path for comprehensive context."

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 20:58:45 +08:00
catlog22
360f6f79dc feat: optimize SKILL.md description format for better trigger sensitivity
Enhance description generation in Phase 4 Step 3:
- New format emphasizes "Load this SKILL" pattern for improved triggering
- Explicitly covers three key scenarios: analyzing, working with, or learning
- Prioritizes SKILL as primary context source for project understanding
- Added trigger optimization guidance for context retrieval scenarios

Before: "{Function}. Use when {trigger conditions}."
After: "{Project} {core capabilities}. Load this SKILL when analyzing, working with, or learning about {project_name} for comprehensive context."

Example:
"Workflow orchestration system with CLI tools and documentation generation.
Load this SKILL when analyzing, working with, or learning about workflow
management for comprehensive context."

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 20:57:09 +08:00
catlog22
152037ad7b fix: correct relative path in skill-memory SKILL.md template
Update documentation path references from ../../ to ../../../:
- From: .claude/skills/{project_name}/SKILL.md
- To: .workflow/docs/{project_name}/
- Correct path depth: ../../../.workflow/docs/

Fixed paths:
- Documentation root reference
- Level 0: README.md link
- Level 2: ARCHITECTURE.md link
- Level 3: EXAMPLES.md link

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 20:49:16 +08:00
catlog22
822643e4c8 feat: increase document limit from 7 to 10 per task in docs workflow
Update task grouping constraints to support up to 10 documents per task:
- Primary constraint: ≤10 documents (up from ≤7)
- Conflict resolution thresholds adjusted accordingly
- Updated all examples (Small/Medium/Large projects)
- Maintains 2-dir grouping optimization for context sharing

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 20:39:29 +08:00
catlog22
78569a7b75 refactor: eliminate TodoWrite duplication in skill-memory phases
Simplify TodoWrite updates in each phase to one-line format, matching auto-parallel.md pattern.

**Changes**:
- Phase 1-4: Replace code block with single line "Mark phase X completed, phase Y in_progress"
- Maintain detailed TodoWrite Pattern section for complete reference
- Remove 32 redundant lines (36 deletions, 4 insertions)

**Before**:
```
**TodoWrite Update**:
```javascript
TodoWrite({todos: [
  {"content": "...", "status": "completed"},
  {"content": "...", "status": "in_progress"},
  ...
]})
```

**After**:
```
**TodoWrite**: Mark phase X completed, phase Y in_progress
```

**Benefits**:
- Eliminates duplication between phase updates and TodoWrite Pattern section
- Improves readability with concise phase-level updates
- Maintains complete TodoWrite lifecycle in dedicated pattern section
- Consistent with auto-parallel.md orchestrator pattern

**File size**: 488 lines → 456 lines (-32 lines, -6.6%)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 20:08:03 +08:00
catlog22
7aca88104b feat: enhance skill-memory auto-continue mechanism with detailed execution flow
Optimize TodoWrite auto-continuation pattern based on auto-parallel.md and docs.md best practices.

**Enhanced Auto-Continue Mechanism**:
- Added detailed "Auto-Continue Execution Flow" section with implementation rules
- Enhanced Core Rules with specific auto-continue logic (7 rules → clearer guidelines)
- Added "Completion Criteria" for each phase (validates phase success)
- Added explicit "TodoWrite Update" code blocks at each phase
- Added "After Phase X" auto-continue triggers with "no user input required" emphasis

**Improved Phase Documentation**:
- Phase 1-4: Added completion criteria and validation requirements
- Each phase now has explicit TodoWrite update pattern
- Clear state transitions: completed → in_progress → execute
- Error handling rules for failed phases

**New Sections**:
- "Auto-Continue Execution Flow" - Visual execution sequence diagram
- "Critical Implementation Rules" - 4 key rules for autonomous execution
- Status-driven execution pattern with TodoList checking
- Error handling guidelines (do not continue on failure)

**TodoWrite Pattern Enhancement**:
- Added inline comments explaining each action
- Added "Auto-Continue Logic" explanation
- Shows complete lifecycle from initialize to completion
- Includes FIRST/NEXT/FINAL action annotations

**Benefits**:
- Clear autonomous execution expectations
- No ambiguity about when to continue phases
- Explicit validation criteria for each phase
- Better error handling guidance
- Consistent with auto-parallel.md orchestrator pattern

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 20:02:44 +08:00
catlog22
aa372a8fd5 docs: correct CHANGELOG.md for v5.2.0 - highlight /memory:skill-memory command
- Update v5.2.0 focus from /memory:docs to /memory:skill-memory (actual new feature)
- Add comprehensive 4-phase orchestrator workflow description
- Document progressive loading levels (Level 0-3, 2K-40K tokens)
- Include path mirroring strategy and SKILL package structure
- Highlight /memory:docs enhancements as secondary improvements
- Add usage examples and output format

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 17:42:00 +08:00
catlog22
fd16a238fd docs: update CHANGELOG.md for v5.2.0 with /memory:docs command details
- Emphasize new command introduction rather than optimization
- Add comprehensive feature descriptions and workflow phases
- Include task grouping algorithm details and examples
- Document command parameters and integration points
- Highlight performance benefits and technical architecture

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 17:34:58 +08:00
catlog22
254715069d feat: optimize documentation task grouping strategy with document count limit
- Change primary constraint to ≤7 documents per task (previously ≤5)
- Prefer grouping 2 top-level directories for context sharing via single Gemini analysis
- Add intelligent conflict resolution: split groups when exceeding doc limit
- Update Phase 4 decomposition algorithm with detailed grouping examples
- Add doc_count field to phase2-analysis.json group assignments

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 17:31:15 +08:00
catlog22
bcebd229df feat: update SKILL.md generation process with intelligent description extraction and streamlined file handling 2025-11-03 17:22:09 +08:00
catlog22
528c5efc66 Implement feature X to enhance user experience and fix bug Y in module Z 2025-11-03 17:12:32 +08:00
catlog22
accd319093 feat: enhance documentation workflow with batch processing, dual execution modes, and pre-computed analysis 2025-11-03 16:33:46 +08:00
catlog22
d22bf80919 feat: refine batch module trees task documentation and clarify execution model 2025-11-03 16:03:53 +08:00
catlog22
5aa9931dd7 feat: optimize documentation generation process with batch processing and unified analysis 2025-11-03 15:59:30 +08:00
catlog22
e53a1bf397 feat: add CLI execution mode support to documentation commands and update argument hints 2025-11-03 15:47:18 +08:00
catlog22
03de6b3078 feat: update documentation workflow to use workflow-session.json for session metadata 2025-11-03 15:34:09 +08:00
catlog22
b18647353b feat: enhance documentation generation process with improved structure and quality guidelines 2025-11-03 15:17:37 +08:00
catlog22
cdc0af90ba feat: add support for 'codex' tool and enhance --regenerate flag handling in skill-memory command 2025-11-03 14:54:10 +08:00
catlog22
507cd696b1 Refactor skill-memory command to streamline documentation generation process
- Updated command description and argument hints for clarity.
- Changed the orchestrator role to emphasize its function as a pure orchestrator without task JSON generation.
- Implemented a 4-phase workflow for documentation generation, including auto-continue mechanisms.
- Enhanced argument parsing to include a new mode option for full or partial documentation generation.
- Simplified the output structure and improved validation steps throughout the phases.
- Revised the SKILL.md generation process to include a progressive loading guide and module index.
- Removed unnecessary complexity and reduced code size by approximately 70%.
2025-11-03 14:49:44 +08:00
catlog22
fdba75dd79 Implement feature X to enhance user experience and fix bug Y in module Z 2025-11-03 11:26:37 +08:00
catlog22
cefe6076e2 feat: add skill-memory command for generating SKILL packages with path mirroring 2025-11-03 10:31:18 +08:00
catlog22
8565dc09cd docs: clarify single-use explicit authorization for CLI tools
Add critical rule that each CLI execution requires explicit user command:
- One command authorizes ONE execution only
- Analysis does NOT authorize write operations
- Previous authorization does NOT carry over
- Applies to all CLI tools (Gemini/Qwen/Codex)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-31 15:47:47 +08:00
catlog22
74ffb27383 docs: update version to 5.1.0 and enhance changelog with agent architecture consolidation details 2025-10-28 22:03:23 +08:00
catlog22
6326fbf2fb refactor: consolidate agent architecture and archive legacy templates
- Remove general-purpose agent in favor of universal-executor
- Enhance workflow session completion with better state management
- Improve context-gather with advanced filtering and validation
- Archive legacy prompt templates for reference

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 15:00:00 +08:00
catlog22
367040037a refactor: migrate prompt templates to standardized structure and enhance CLI command documentation
Template Migration:
- Move templates from .claude/prompt-templates/ to .claude/workflows/cli-templates/prompts/
- Rename and reorganize: bug-fix.md → development/bug-diagnosis.txt
- Rename and reorganize: code-analysis.md → analysis/code-execution-tracing.txt
- Rename and reorganize: plan.md → planning/architecture-planning.txt

CLI Command Enhancements:
- Add clear tool selection hierarchy (gemini primary, qwen fallback, codex alternative)
- Enhance analyze.md, chat.md with tool descriptions and agent context
- Enhance mode/code-analysis.md, mode/bug-diagnosis.md, mode/plan.md with Task() wrapper
- Add all necessary codex parameters (--skip-git-repo-check -s danger-full-access)
- Simplify descriptions while preserving core functionality

Agent Updates:
- Streamline cli-execution-agent.md (600→250 lines, -60%)
- Add complete templates reference for standalone usage
- Remove dependency on intelligent-tools-strategy.md

Reference Updates:
- Update test-task-generate.md template path references
- Delete duplicate bug-index.md
- All template paths now use ~/.claude/workflows/cli-templates/prompts/ format

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 10:26:35 +08:00
catlog22
5249bd6f34 docs: fix Windows installation commands for ripgrep and jq
- Corrected ripgrep winget command from incorrect package ID to simplified `winget install ripgrep`
- Simplified jq winget command to `winget install jq`
- Added multiple Windows installation options (WinGet, Chocolatey, Scoop, manual)
- Enhanced formatting with platform-specific sections
- Added verification commands for both tools
- Improved user experience with clearer instructions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-26 14:17:43 +08:00
catlog22
2b52eae3f8 refactor: enhance test-context-gather and test-context-search-agent for improved context collection and coverage analysis 2025-10-25 19:13:37 +08:00
catlog22
bb6f74f44b refactor: enhance conflict resolution command with modification suggestions for custom handling 2025-10-25 17:03:05 +08:00
catlog22
986eb31c03 refactor: enhance context-search-agent execution mode and session information structure 2025-10-25 15:47:30 +08:00
catlog22
4f0edb27ff refactor: update subagent type to context-search-agent in load and context-gather commands 2025-10-25 15:32:33 +08:00
catlog22
3e83f77304 refactor: remove redundant context-package validation and logging from context-gather command 2025-10-25 15:29:36 +08:00
catlog22
18d369e871 refactor: update context-gather command to utilize context-search-agent for project context collection 2025-10-25 15:26:30 +08:00
catlog22
c363b5dd0e refactor: remove redundant references to workflow architecture in documentation 2025-10-25 14:48:55 +08:00
catlog22
692a68da6f Refactor workflow tools and user interaction methods
- Updated synthesis tool to enhance user interaction with multi-select options and improved question presentation in Chinese.
- Revised conflict resolution tool to allow batch processing of conflicts, increasing the limit from 4 to 10 per round and changing user interaction from AskUserQuestion to text output.
- Added context_package_path to task generation tools for better context management.
- Improved task generation schema to include context_package_path for enhanced context delivery.
- Updated CLI templates to reflect changes in task JSON schema, ensuring context_package_path is included.
2025-10-25 14:43:55 +08:00
catlog22
89f22ec3cf refactor: update file naming conventions and restrictions for analysis outputs in multiple agents 2025-10-25 13:15:14 +08:00
catlog22
b7db6c86bd refactor(synthesis): remove CLI concept enhancement references and streamline analysis agent execution 2025-10-24 22:50:56 +08:00
catlog22
71138a95e1 refactor: add Windows path format guidelines to multiple agent documents 2025-10-24 22:46:49 +08:00
catlog22
ecccae1664 refactor(auto-parallel): add memory check for selected roles to optimize file reading 2025-10-24 22:39:24 +08:00
catlog22
642d25f161 refactor(artifacts): add option limit for role selection in AskUserQuestion 2025-10-24 22:35:36 +08:00
catlog22
20d53bbd8e refactor(artifacts, auto-parallel): enhance task tracking and execution phases with detailed user interaction and metadata management 2025-10-24 21:46:14 +08:00
catlog22
9a63512256 refactor(artifacts): clarify role selection process and emphasize user interaction requirements 2025-10-24 20:57:36 +08:00
catlog22
080c8be87f refactor(auto-parallel): delegate role selection to artifacts command for interactive user experience 2025-10-24 20:32:24 +08:00
catlog22
a208af22af refactor(brainstorm): enhance artifacts role selection with intelligent recommendations
- Remove hardcoded keyword-to-role mappings
- Implement intelligent role recommendation based on topic analysis
- Recommend count+2 roles for user multiSelect (default: 3+2=5 options)
- Add --count parameter support for flexible role selection
- Limit role questions to 3-4 per role (AskUserQuestion constraint)
- Add batching for Phase 4 conflict questions (max 4 per round)
- Provide complete list of 9 available roles with Chinese names
- Add clear rationale requirement for each role recommendation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 19:35:55 +08:00
catlog22
7701bbd28c refactor(agents): remove code-index MCP dependencies
Remove references to mcp__code-index MCP tool and simplify context discovery to use native search tools (ripgrep, find) with MCP Exa for external research.

Changes:
- action-planning-agent.md: Remove code-index from capabilities and examples
- cli-execution-agent.md: Remove MCP code-index discovery section, update to use ripgrep/find only
- code-developer.md: Minor documentation updates
- task-json-agent-mode.txt: Remove code-index references
- task-json-cli-mode.txt: Remove code-index references
- workflow-architecture.md: Update MCP integration documentation

Rationale:
- Simplify dependency stack
- Native tools (rg, find) provide sufficient file discovery capabilities
- MCP Exa remains for external research (best practices, documentation)
- Reduces maintenance overhead and improves reliability

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 17:35:07 +08:00
catlog22
7f82d0da86 refactor(conflict-resolution): transform to interactive resolution with in-place modifications
BREAKING CHANGE: Remove CONFLICT_RESOLUTION.md generation in favor of interactive user confirmation and direct file modifications

Core Changes:
- Replace markdown report generation with structured JSON output for programmatic processing
- Add interactive conflict resolution via AskUserQuestion (max 4 conflicts, 2-4 strategies each)
- Apply modifications directly to guidance-specification.md and role analyses (*.md) using Edit tool
- Update context-package.json with conflict_risk status (resolved/none/low)
- Remove Phase 3 output validation (no file generation needed)

Modified Files:
- conflict-resolution.md: Complete rewrite of agent prompt and execution flow
  - Step 4: JSON output instead of markdown generation
  - Phase 3: User confirmation via AskUserQuestion
  - Phase 4: Apply modifications using Edit tool
  - Success criteria updated for in-place modifications
- plan.md: Update Phase 3 data flow and TodoWrite pattern
  - Data flow now shows "Apply modifications via Edit tool"
  - Todo description changed to "Resolve conflicts and apply fixes"
- task-generate-agent.md: Update conflict resolution context description
  - No longer references CONFLICT_RESOLUTION.md file
  - Notes conflicts resolved in guidance-specification.md and role analyses
- task-generate.md: Comprehensive cleanup of all CONFLICT_RESOLUTION.md references
  - Remove CONFLICT_RESOLUTION.md from artifact catalog
  - Update load_planning_context step to read guidance-specification.md
  - Update task implementation logic_flow
  - Update artifact priority and integration sections
  - Update directory structure documentation

Benefits:
- Seamless workflow: conflicts detected → user confirms → applied automatically
- No intermediate files to manage
- User interaction at decision point (not after-the-fact)
- Resolved conflicts integrated directly into source artifacts
- Clear conflict_risk status tracking in context-package.json

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 17:31:19 +08:00
catlog22
2b3541941e fix(conflict-resolution): fix markdown formatting errors
Fix formatting issues:
- Line 104-117: Replace escaped backticks (\`\`\`) with proper markdown code fence (```)
- Line 158: Remove unnecessary backslash escapes from inline code
- Line 182: Fix stray backslash before backtick in prompt template

These formatting errors were causing markdown rendering issues.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 17:07:10 +08:00
catlog22
04373ee368 feat(brainstorm): enforce Chinese language for all user questions
Add mandatory Chinese language rule for AskUserQuestion in artifacts.md and synthesis.md:
- Phase 3 Rules: Questions MUST be asked in Chinese (用中文提问)
- Question Generation Guidelines: ALL questions MUST be in Chinese (所有问题必须用中文)
- Phase 4 (synthesis.md): ALL AskUserQuestion calls MUST use Chinese

Rationale: Improve user understanding and interaction experience for Chinese-speaking users

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 17:05:51 +08:00
catlog22
4dd1ae5a9e refactor(artifacts): enhance question depth and reduce file size
Major improvements:
- Reduce from 715 to 254 lines (-64.5%) while maintaining core functionality
- Transform from template-based to dynamic question generation
- Phase 1: Add deep topic analysis (root challenges, trade-offs, success metrics)
- Phase 3: Probe implementation depth, trade-offs, and edge cases
- Phase 4: Conflict detection based on actual Phase 3 answers (not static matrix)
- Remove redundant examples, consolidate duplicate content
- Add Anti-Pattern examples and Quality Rules for dynamic generation

Key changes based on Gemini analysis:
- Extract keywords/challenges from topic → Generate task-specific questions
- Map challenges to role expertise → Probe implementation decisions
- Detect actual conflicts in answers → Generate resolution questions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 17:02:13 +08:00
catlog22
acc792907c docs: refine artifacts command documentation for clarity and structure 2025-10-24 16:35:09 +08:00
catlog22
b849dac618 docs: update README.md and CHANGELOG.md to v5.0.0
- Update README.md version badge to v5.0.0
- Remove MCP Tools experimental badge
- Add v5.0 "Less is More" highlights in README
- Add comprehensive v5.0.0 changelog entry
- Document all breaking changes and new features
- Include migration notes for users

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 16:07:55 +08:00
catlog22
c3d05826ef docs: update file paths in auto-parallel command documentation for clarity 2025-10-24 16:05:41 +08:00
85 changed files with 9118 additions and 6884 deletions

View File

@@ -28,7 +28,7 @@ You are a pure execution agent specialized in creating actionable implementation
- `analysis_results`: Analysis recommendations and task breakdown
- `artifacts_inventory`: Detected brainstorming outputs (role analyses, guidance-specification, role analyses)
- `context_package`: Project context and assets
- `mcp_capabilities`: Available MCP tools (code-index, exa-code, exa-web)
- `mcp_capabilities`: Available MCP tools (exa-code, exa-web)
- `mcp_analysis`: Optional pre-executed MCP analysis results
**Legacy Support** (backward compatibility):
@@ -46,8 +46,8 @@ Phase 1: Context Validation & Enhancement (Discovery Results Provided)
→ artifacts_inventory: Use provided list (from memory or scan)
→ mcp_analysis: Use provided results (optional)
3. Optional MCP enhancement (if not pre-executed):
→ mcp__code-index__find_files() for codebase structure
→ mcp__exa__get_code_context_exa() for best practices
→ mcp__exa__web_search_exa() for external research
4. Assess task complexity (simple/medium/complex) from analysis
Phase 2: Document Generation (Autonomous Output)
@@ -89,12 +89,10 @@ Phase 2: Document Generation (Autonomous Output)
"focus_areas": [...]
},
"mcp_capabilities": {
"code_index": true,
"exa_code": true,
"exa_web": true
},
"mcp_analysis": {
"code_structure": "...",
"external_research": "..."
}
}
@@ -108,21 +106,6 @@ Phase 2: Document Generation (Autonomous Output)
### MCP Integration Guidelines
**Code Index MCP** (`mcp_capabilities.code_index = true`):
```javascript
// Discover relevant files
mcp__code-index__find_files(pattern="*auth*")
// Search for patterns
mcp__code-index__search_code_advanced(
pattern="authentication|oauth|jwt",
file_pattern="*.{ts,js}"
)
// Get file summary
mcp__code-index__get_file_summary(file_path="src/auth/index.ts")
```
**Exa Code Context** (`mcp_capabilities.exa_code = true`):
```javascript
// Get best practices and examples
@@ -135,9 +118,12 @@ mcp__exa__get_code_context_exa(
**Integration in flow_control.pre_analysis**:
```json
{
"step": "mcp_codebase_exploration",
"step": "local_codebase_exploration",
"action": "Explore codebase structure",
"command": "mcp__code-index__find_files(pattern=\"[task_patterns]\") && mcp__code-index__search_code_advanced(pattern=\"[relevant_patterns]\")",
"commands": [
"bash(rg '^(function|class|interface).*[task_keyword]' --type ts -n --max-count 15)",
"bash(find . -name '*[task_keyword]*' -type f | grep -v node_modules | head -10)"
],
"output_to": "codebase_structure"
}
```
@@ -282,7 +268,7 @@ Generate `TODO_LIST.md` at `.workflow/{session_id}/TODO_LIST.md`:
- Completed tasks → summaries: `[✅](./.summaries/IMPL-XXX-summary.md)`
- Consistent ID schemes: IMPL-XXX, IMPL-XXX.Y (max 2 levels)
**Format Specifications**: @~/.claude/workflows/workflow-architecture.md
### 5. Complexity Assessment & Document Structure
Use `analysis_results.complexity` or task count to determine structure:
@@ -313,7 +299,6 @@ Use `analysis_results.complexity` or task count to determine structure:
- Directory structure follows complexity (Level 0/1/2)
**Document Standards:**
- All formats follow @~/.claude/workflows/workflow-architecture.md
- Proper linking between documents
- Consistent navigation and references

View File

@@ -1,35 +1,26 @@
---
name: cli-execution-agent
description: |
Intelligent CLI execution agent with automated context discovery and smart tool selection. Orchestrates 5-phase workflow from task understanding to optimized CLI execution with MCP integration.
Examples:
- Context: User provides task without context
user: "Implement user authentication"
assistant: "I'll discover relevant context, enhance the task description, select optimal tool, and execute"
commentary: Agent autonomously discovers context via MCP code-index, researches best practices, builds enhanced prompt, selects Codex for complex implementation
- Context: User provides analysis task
user: "Analyze API architecture patterns"
assistant: "I'll gather API-related files, analyze patterns, and execute with Gemini for comprehensive analysis"
commentary: Agent discovers API files, identifies patterns, selects Gemini for architecture analysis
- Context: User provides task with session context
user: "Execute IMPL-001 from active workflow"
assistant: "I'll load task context, discover implementation files, enhance requirements, and execute"
commentary: Agent loads task JSON, discovers code context, routes output to workflow session
Intelligent CLI execution agent with automated context discovery and smart tool selection.
Orchestrates 5-phase workflow: Task Understanding → Context Discovery → Prompt Enhancement → Tool Execution → Output Routing
color: purple
---
You are an intelligent CLI execution specialist that autonomously orchestrates comprehensive context discovery and optimal tool execution. You eliminate manual context gathering through automated intelligence.
You are an intelligent CLI execution specialist that autonomously orchestrates context discovery and optimal tool execution.
## Core Execution Philosophy
## Tool Selection Hierarchy
- **Autonomous Intelligence** - Automatically discover context without user intervention
- **Smart Tool Selection** - Choose optimal CLI tool based on task characteristics
- **Context-Driven Enhancement** - Build precise prompts from discovered patterns
- **Session-Aware Routing** - Integrate seamlessly with workflow sessions
- **Graceful Degradation** - Fallback strategies when tools unavailable
1. **Gemini (Primary)** - Analysis, understanding, exploration & documentation
2. **Qwen (Fallback)** - Same capabilities as Gemini, use when unavailable
3. **Codex (Alternative)** - Development, implementation & automation
**Templates**: `~/.claude/workflows/cli-templates/prompts/`
- `analysis/` - pattern.txt, architecture.txt, code-execution-tracing.txt, security.txt, quality.txt
- `development/` - feature.txt, refactor.txt, testing.txt, bug-diagnosis.txt
- `planning/` - task-breakdown.txt, architecture-planning.txt
- `memory/` - claude-module-unified.txt
**Reference**: See `~/.claude/workflows/intelligent-tools-strategy.md` for complete usage guide
## 5-Phase Execution Workflow
@@ -50,15 +41,6 @@ Phase 5: Output Routing
## Phase 1: Task Understanding
### Responsibilities
1. **Input Classification**: Determine if input is task description or task-id (IMPL-xxx pattern)
2. **Intent Detection**: Classify as analyze/execute/plan/discuss
3. **Complexity Assessment**: Rate as simple/medium/complex
4. **Domain Identification**: Identify frontend/backend/fullstack/testing
5. **Keyword Extraction**: Extract technical keywords for context search
### Classification Logic
**Intent Detection**:
- `analyze|review|understand|explain|debug`**analyze**
- `implement|add|create|build|fix|refactor`**execute**
@@ -68,153 +50,71 @@ Phase 5: Output Routing
**Complexity Scoring**:
```
Score = 0
+ Keywords match ['system', 'architecture'] → +3
+ Keywords match ['refactor', 'migrate'] → +2
+ Keywords match ['component', 'feature'] → +1
+ Multiple tech stacks identified → +2
+ Critical systems ['auth', 'payment', 'security'] → +2
+ ['system', 'architecture'] → +3
+ ['refactor', 'migrate'] → +2
+ ['component', 'feature'] → +1
+ Multiple tech stacks → +2
+ ['auth', 'payment', 'security'] → +2
Score ≥ 5 → Complex
Score ≥ 2 → Medium
Score < 2 → Simple
≥5 Complex | ≥2 Medium | <2 Simple
```
**Keyword Extraction Categories**:
- **Domains**: auth, api, database, ui, component, service, middleware
- **Technologies**: react, typescript, node, express, jwt, oauth, graphql
- **Actions**: implement, refactor, optimize, test, debug
**Extract Keywords**: domains (auth, api, database, ui), technologies (react, typescript, node), actions (implement, refactor, test)
---
## Phase 2: Context Discovery
### Multi-Tool Parallel Strategy
**1. Project Structure Analysis**:
**1. Project Structure**:
```bash
~/.claude/scripts/get_modules_by_depth.sh
```
Output: Module hierarchy and organization
**2. MCP Code Index Discovery**:
```javascript
// Set project context
mcp__code-index__set_project_path(path="{cwd}")
mcp__code-index__refresh_index()
// Discover files by keywords
mcp__code-index__find_files(pattern="*{keyword}*")
// Search code content
mcp__code-index__search_code_advanced(
pattern="{keyword_patterns}",
file_pattern="*.{ts,js,py}",
context_lines=3
)
// Get file summaries for key files
mcp__code-index__get_file_summary(file_path="{discovered_file}")
```
**3. Content Search (ripgrep fallback)**:
**2. Content Search**:
```bash
# Function/class definitions
rg "^(function|def|func|class|interface).*{keyword}" \
--type-add 'source:*.{ts,js,py,go}' -t source -n --max-count 15
# Import analysis
rg "^(function|def|class|interface).*{keyword}" -t source -n --max-count 15
rg "^(import|from|require).*{keyword}" -t source | head -15
# Test files
find . \( -name "*{keyword}*test*" -o -name "*{keyword}*spec*" \) \
-type f | grep -E "\.(js|ts|py|go)$" | head -10
find . -name "*{keyword}*test*" -type f | head -10
```
**4. External Research (MCP Exa - Optional)**:
**3. External Research (Optional)**:
```javascript
// Best practices for complex tasks
mcp__exa__get_code_context_exa(
query="{tech_stack} {task_type} implementation patterns",
tokensNum="dynamic"
)
mcp__exa__get_code_context_exa(query="{tech_stack} {task_type} patterns", tokensNum="dynamic")
```
### Relevance Scoring
**Score Calculation**:
```javascript
score = 0
+ Path contains keyword (exact match) +5
+ Filename contains keyword +3
+ Content keyword matches × 2
+ Source code file +2
+ Test file +1
+ Config file +1
**Relevance Scoring**:
```
Path exact match +5 | Filename +3 | Content ×2 | Source +2 | Test +1 | Config +1
→ Sort by score → Select top 15 → Group by type
```
**Context Optimization**:
- Sort files by relevance score
- Select top 15 files
- Group by type: source/test/config/docs
- Build structured context references
---
## Phase 3: Prompt Enhancement
### Enhancement Components
**1. Intent Translation**:
```
"implement" → "Feature development with integration and tests"
"refactor" → "Code restructuring maintaining behavior"
"fix" → "Bug resolution preserving existing functionality"
"analyze" → "Code understanding and pattern identification"
```
**2. Context Assembly**:
**1. Context Assembly**:
```bash
# Default: comprehensive context
# Default
CONTEXT: @**/*
# Or specific patterns
CONTEXT: @CLAUDE.md @{discovered_file1} @{discovered_file2} ...
# Specific patterns
CONTEXT: @CLAUDE.md @src/**/* @*.ts
# Cross-directory references (requires --include-directories)
# Cross-directory (requires --include-directories)
CONTEXT: @**/* @../shared/**/* @../types/**/*
## Discovered Context
- **Project Structure**: {module_summary}
- **Relevant Files**: {top_files_with_scores}
- **Code Patterns**: {identified_patterns}
- **Dependencies**: {tech_stack}
- **Session Memory**: {conversation_context}
## External Research
{optional_best_practices_from_exa}
```
**Context Pattern Guidelines**:
- **Default**: Use `@**/*` for comprehensive context
- **Specific files**: `@src/**/*` or `@*.ts @*.tsx`
- **With docs**: `@CLAUDE.md @**/*CLAUDE.md`
- **Cross-directory**: Must use `--include-directories` parameter (see Command Construction)
**3. Template Selection**:
**2. Template Selection** (`~/.claude/workflows/cli-templates/prompts/`):
```
intent=analyze → ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt
intent=execute + complex → ~/.claude/workflows/cli-templates/prompts/development/feature.txt
intent=plan → ~/.claude/workflows/cli-templates/prompts/planning/task-breakdown.txt
analyze → analysis/code-execution-tracing.txt | analysis/pattern.txt
execute development/feature.txt
plan → planning/architecture-planning.txt | planning/task-breakdown.txt
bug-fix → development/bug-diagnosis.txt
```
**3a. RULES Field Guidelines**:
When using `$(cat ...)` for template loading:
- **Template reference only**: Use `$(cat ...)` directly, do NOT read template content first
- **NEVER use escape characters**: `\$`, `\"`, `\'` will break command substitution
- **Correct**: `RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt)`
- **Wrong**: `RULES: \$(cat ...)` or `RULES: $(cat \"...\")`
**3. RULES Field**:
- Use `$(cat ~/.claude/workflows/cli-templates/prompts/{path}.txt)` directly
- NEVER escape: `\$`, `\"`, `\'` breaks command substitution
**4. Structured Prompt**:
```bash
@@ -222,10 +122,6 @@ PURPOSE: {enhanced_intent}
TASK: {specific_task_with_details}
MODE: {analysis|write|auto}
CONTEXT: {structured_file_references}
## Discovered Context Summary
{context_from_phase_2}
EXPECTED: {clear_output_expectations}
RULES: $(cat {selected_template}) | {constraints}
```
@@ -234,322 +130,141 @@ RULES: $(cat {selected_template}) | {constraints}
## Phase 4: Tool Selection & Execution
### Tool Selection Logic
**Auto-Selection**:
```
IF intent = 'analyze' OR 'plan':
tool = 'gemini' # Large context, pattern recognition
mode = 'analysis'
ELSE IF intent = 'execute':
IF complexity = 'simple' OR 'medium':
tool = 'gemini' # Fast, good for straightforward tasks
mode = 'write'
ELSE IF complexity = 'complex':
tool = 'codex' # Autonomous development
mode = 'auto'
ELSE IF intent = 'discuss':
tool = 'multi' # Gemini + Codex + synthesis
mode = 'discussion'
# User --tool flag overrides auto-selection
analyze|plan → gemini (qwen fallback) + mode=analysis
execute (simple|medium) → gemini (qwen fallback) + mode=write
execute (complex) → codex + mode=auto
discuss → multi (gemini + codex parallel)
```
### Model Selection
**Models**:
- Gemini: `gemini-2.5-pro` (analysis), `gemini-2.5-flash` (docs)
- Qwen: `coder-model` (default), `vision-model` (image)
- Codex: `gpt-5` (default), `gpt5-codex` (large context)
- **Position**: `-m` after prompt, before flags
**Gemini Models**:
- `gemini-2.5-pro` - Analysis tasks (default)
- `gemini-2.5-flash` - Documentation updates
### Command Templates
**Qwen Models**:
- `coder-model` - Code analysis (default, -m optional)
- `vision-model` - Image analysis (rare usage)
**Codex Models**:
- `gpt-5` - Analysis & execution (default)
- `gpt5-codex` - Large context tasks
**Parameter Position**: `-m` must be placed AFTER prompt string
### Command Construction
**Gemini/Qwen (Analysis Mode)**:
**Gemini/Qwen (Analysis)**:
```bash
# Use 'gemini' (primary) or 'qwen' (fallback)
cd {directory} && gemini -p "
{enhanced_prompt}
"
# With model selection (NOTE: -m placed AFTER prompt)
cd {directory} && gemini -p "{enhanced_prompt}" -m gemini-2.5-pro
cd {directory} && qwen -p "{enhanced_prompt}" # coder-model default
```
**Gemini/Qwen (Write Mode)**:
```bash
# NOTE: --approval-mode yolo must be placed AFTER the prompt
cd {directory} && gemini -p "
{enhanced_prompt}
" -m gemini-2.5-flash --approval-mode yolo
# Fallback to Qwen
cd {directory} && qwen -p "{enhanced_prompt}" --approval-mode yolo
```
**Codex (Auto Mode)**:
```bash
# NOTE: -m, --skip-git-repo-check and -s danger-full-access must be placed at command END
codex -C {directory} --full-auto exec "
{enhanced_prompt}
" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
**Codex (Resume for Related Tasks)**:
```bash
# Parameter Position: resume --last must be placed AFTER prompt at command END
codex --full-auto exec "
{continuation_prompt}
" resume --last --skip-git-repo-check -s danger-full-access
```
**Cross-Directory Context (Gemini/Qwen)**:
```bash
# When CONTEXT references external directories, use --include-directories
# TWO-STEP REQUIREMENT:
# Step 1: Reference in CONTEXT (@../shared/**/*)
# Step 2: Add --include-directories parameter
cd src/auth && gemini -p "
cd {dir} && gemini -p "
PURPOSE: {goal}
CONTEXT: @**/* @../shared/**/* @../types/**/*
...
" --include-directories ../shared,../types
TASK: {task}
MODE: analysis
CONTEXT: @**/*
EXPECTED: {output}
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt)
" -m gemini-2.5-pro
# Qwen fallback: Replace 'gemini' with 'qwen'
```
### Directory Scope Rules
**Once `cd` to a directory**:
- **@ references ONLY apply to current directory and its subdirectories**
- `@**/*` = All files within current directory tree
- `@*.ts` = TypeScript files in current directory tree
- `@src/**/*` = Files within src subdirectory (if exists)
- **CANNOT reference parent or sibling directories via @ alone**
**To reference files outside current directory**:
- **Step 1**: Add `--include-directories` parameter
- **Step 2**: Explicitly reference in CONTEXT field with @ patterns
- **⚠️ BOTH steps are MANDATORY**
- **Rule**: If CONTEXT contains `@../dir/**/*`, command MUST include `--include-directories ../dir`
### Timeout Configuration
```javascript
baseTimeout = {
simple: 20 * 60 * 1000, // 20min
medium: 40 * 60 * 1000, // 40min
complex: 60 * 60 * 1000 // 60min
}
if (tool === 'codex') {
timeout = baseTimeout * 1.5
}
**Gemini/Qwen (Write)**:
```bash
cd {dir} && gemini -p "..." -m gemini-2.5-flash --approval-mode yolo
```
**Codex (Auto)**:
```bash
codex -C {dir} --full-auto exec "..." -m gpt-5 --skip-git-repo-check -s danger-full-access
# Resume: Add 'resume --last' after prompt
codex --full-auto exec "..." resume --last -m gpt-5 --skip-git-repo-check -s danger-full-access
```
**Cross-Directory** (Gemini/Qwen):
```bash
cd src/auth && gemini -p "CONTEXT: @**/* @../shared/**/*" --include-directories ../shared
```
**Directory Scope**:
- `@` only references current directory + subdirectories
- External dirs: MUST use `--include-directories` + explicit CONTEXT reference
**Timeout**: Simple 20min | Medium 40min | Complex 60min (Codex ×1.5)
---
## Phase 5: Output Routing
### Session Detection
```javascript
// Check for active session
activeSession = bash("find .workflow/ -name '.active-*' -type f")
if (activeSession.exists) {
sessionId = extractSessionId(activeSession)
return {
active: true,
session_id: sessionId,
session_path: `.workflow/${sessionId}/`
}
}
**Session Detection**:
```bash
find .workflow/ -name '.active-*' -type f
```
### Output Paths
**Active Session**:
```
.workflow/WFS-{id}/.chat/{agent}-{timestamp}.md
.workflow/WFS-{id}/.summaries/{task-id}-summary.md // if task-id
```
**Scratchpad (No Session)**:
```
.workflow/.scratchpad/{agent}-{description}-{timestamp}.md
```
### Execution Log Structure
**Output Paths**:
- **With session**: `.workflow/WFS-{id}/.chat/{agent}-{timestamp}.md`
- **No session**: `.workflow/.scratchpad/{agent}-{description}-{timestamp}.md`
**Log Structure**:
```markdown
# CLI Execution Agent Log
**Timestamp**: {iso_timestamp} | **Session**: {session_id} | **Task**: {task_id}
**Timestamp**: {iso_timestamp}
**Session**: {session_id | "scratchpad"}
**Task**: {task_id | description}
---
## Phase 1: Task Understanding
- **Intent**: {analyze|execute|plan|discuss}
- **Complexity**: {simple|medium|complex}
- **Keywords**: {extracted_keywords}
## Phase 2: Context Discovery
**Discovered Files** ({N}):
1. {file} (score: {score}) - {description}
**Patterns**: {identified_patterns}
**Dependencies**: {tech_stack}
## Phase 1: Intent {intent} | Complexity {complexity} | Keywords {keywords}
## Phase 2: Files ({N}) | Patterns {patterns} | Dependencies {deps}
## Phase 3: Enhanced Prompt
```
{full_enhanced_prompt}
```
## Phase 4: Execution
**Tool**: {gemini|codex|qwen}
**Command**:
```bash
{executed_command}
```
**Result**: {success|partial|failed}
**Duration**: {elapsed_time}
## Phase 5: Output
- Log: {log_path}
- Summary: {summary_path | N/A}
## Next Steps
{recommended_actions}
{full_prompt}
## Phase 4: Tool {tool} | Command {cmd} | Result {status} | Duration {time}
## Phase 5: Log {path} | Summary {summary_path}
## Next Steps: {actions}
```
---
## MCP Integration Guidelines
## Error Handling
### Code Index Usage
**Project Setup**:
```javascript
mcp__code-index__set_project_path(path="{project_root}")
mcp__code-index__refresh_index()
**Tool Fallback**:
```
Gemini unavailable → Qwen
Codex unavailable → Gemini/Qwen write mode
```
**File Discovery**:
```javascript
// Find by pattern
mcp__code-index__find_files(pattern="*auth*")
**Gemini 429**: Check results exist → success (ignore error) | no results → retry → Qwen
// Search content
mcp__code-index__search_code_advanced(
pattern="function.*authenticate",
file_pattern="*.ts",
context_lines=3
)
**MCP Exa Unavailable**: Fallback to local search (find/rg)
// Get structure
mcp__code-index__get_file_summary(file_path="src/auth/index.ts")
```
### Exa Research Usage
**Best Practices**:
```javascript
mcp__exa__get_code_context_exa(
query="TypeScript authentication JWT patterns",
tokensNum="dynamic"
)
```
**When to Use Exa**:
- Complex tasks requiring best practices
- Unfamiliar technology stack
- Architecture design decisions
- Performance optimization
**Timeout**: Collect partial → save intermediate → suggest decomposition
---
## Error Handling & Recovery
## Quality Checklist
### Graceful Degradation
**MCP Unavailable**:
```bash
# Fallback to ripgrep + find
if ! mcp__code-index__find_files; then
find . -name "*{keyword}*" -type f | grep -v node_modules
rg "{keyword}" --type ts --max-count 20
fi
```
**Tool Unavailable**:
```
Gemini unavailable → Try Qwen
Codex unavailable → Try Gemini with write mode
All tools unavailable → Report error
```
**Timeout Handling**:
- Collect partial results
- Save intermediate output
- Report completion status
- Suggest task decomposition
---
## Quality Standards
### Execution Checklist
Before completing execution:
- [ ] Context discovery successful (≥3 relevant files)
- [ ] Enhanced prompt contains specific details
- [ ] Appropriate tool selected
- [ ] CLI execution completed
- [ ] Output properly routed
- [ ] Session state updated (if active session)
- [ ] Context ≥3 files
- [ ] Enhanced prompt detailed
- [ ] Tool selected
- [ ] Execution complete
- [ ] Output routed
- [ ] Session updated
- [ ] Next steps documented
### Performance Targets
- **Phase 1**: 1-3 seconds
- **Phase 2**: 5-15 seconds (MCP + search)
- **Phase 3**: 2-5 seconds
- **Phase 4**: Variable (tool-dependent)
- **Phase 5**: 1-3 seconds
**Total (excluding Phase 4)**: ~10-25 seconds overhead
**Performance**: Phase 1-3-5: ~10-25s | Phase 2: 5-15s | Phase 4: Variable
---
## Key Reminders
## Templates Reference
**ALWAYS:**
- Execute all 5 phases systematically
- Use MCP tools when available
- Score file relevance objectively
- Select tools based on complexity and intent
- Route output to correct location
- Provide clear next steps
- Handle errors gracefully with fallbacks
**Location**: `~/.claude/workflows/cli-templates/prompts/`
**NEVER:**
- Skip context discovery (Phase 2)
- Assume tool availability without checking
- Execute without session detection
- Ignore complexity assessment
- Make tool selection without logic
- Leave partial results without documentation
**Analysis** (`analysis/`):
- `pattern.txt` - Code pattern analysis
- `architecture.txt` - System architecture review
- `code-execution-tracing.txt` - Execution path tracing and debugging
- `security.txt` - Security assessment
- `quality.txt` - Code quality review
**Development** (`development/`):
- `feature.txt` - Feature implementation
- `refactor.txt` - Refactoring tasks
- `testing.txt` - Test generation
- `bug-diagnosis.txt` - Bug root cause analysis and fix suggestions
**Planning** (`planning/`):
- `task-breakdown.txt` - Task decomposition
- `architecture-planning.txt` - Strategic architecture modification planning
**Memory** (`memory/`):
- `claude-module-unified.txt` - Universal module/file documentation
---

View File

@@ -92,11 +92,14 @@ ELIF context insufficient OR task has flow control marker:
**Rule**: Before referencing modules/components, use `rg` or search to verify existence first.
**MCP Tools Integration**: Use Code Index and Exa for comprehensive development:
- Find existing patterns: `mcp__code-index__search_code_advanced(pattern="auth.*function")`
- Locate files: `mcp__code-index__find_files(pattern="src/**/*.ts")`
**MCP Tools Integration**: Use Exa for external research and best practices:
- Get API examples: `mcp__exa__get_code_context_exa(query="React authentication hooks", tokensNum="dynamic")`
- Update after changes: `mcp__code-index__refresh_index()`
- Research patterns: `mcp__exa__web_search_exa(query="TypeScript authentication patterns")`
**Local Search Tools**:
- Find patterns: `rg "auth.*function" --type ts -n`
- Locate files: `find . -name "*.ts" -type f | grep -v node_modules`
- Content search: `rg -i "authentication" src/ -C 3`
**Implementation Approach Execution**:
When task JSON contains `flow_control.implementation_approach` array:
@@ -251,7 +254,7 @@ When step contains `command` field with Codex CLI, execute via Bash tool. For Co
## Status: ✅ Complete
```
**Summary Naming Convention** (per workflow-architecture.md):
**Summary Naming Convention**:
- **Main tasks**: `IMPL-[task-id]-summary.md` (e.g., `IMPL-001-summary.md`)
- **Subtasks**: `IMPL-[task-id].[subtask-id]-summary.md` (e.g., `IMPL-001.1-summary.md`)
- **Location**: Always in `.summaries/` directory within session workflow folder
@@ -305,3 +308,5 @@ Before completing any task, verify:
- Keep functions small and focused
- Generate detailed summary documents with complete component/method listings
- Document all new interfaces, types, and constants for dependent task reference
### Windows Path Format Guidelines
- **Quick Ref**: `C:\Users` → MCP: `C:\\Users` | Bash: `/c/Users` or `C:/Users`

View File

@@ -231,19 +231,24 @@ Generate documents according to loaded role template specifications:
**Required Files**:
- **analysis.md**: Main role perspective analysis incorporating user context and role template
- **Auto-split if large**: If content >800 lines, split to `analysis-1.md`, `analysis-2.md` (or `analysis-3.md` if >1600 lines, max 3 files)
- **recommendations.md**: Role-specific strategic recommendations and action items
- **[role-deliverables]/**: Directory for specialized role outputs as defined in planning role template
- **File Naming**: MUST start with `analysis` prefix (e.g., `analysis.md`, `analysis-1.md`, `analysis-2.md`)
- **FORBIDDEN**: Never create `recommendations.md` or any file not starting with `analysis` prefix
- **Auto-split if large**: If content >800 lines, split to `analysis-1.md`, `analysis-2.md` (max 3 files: analysis.md, analysis-1.md, analysis-2.md)
- **Content**: Includes both analysis AND recommendations sections within analysis files
- **[role-deliverables]/**: Directory for specialized role outputs as defined in planning role template (optional)
**File Structure Example**:
```
.workflow/WFS-[session]/.brainstorming/system-architect/
├── analysis.md # Main system architecture analysis
├── recommendations.md # Architecture recommendations
└── deliverables/
├── analysis.md # Main system architecture analysis with recommendations
├── analysis-1.md # (Optional) Continuation if content >800 lines
└── deliverables/ # (Optional) Additional role-specific outputs
├── technical-architecture.md # System design specifications
├── technology-stack.md # Technology selection rationale
└── scalability-plan.md # Scaling strategy
NOTE: ALL brainstorming output files MUST start with 'analysis' prefix
FORBIDDEN: recommendations.md, recommendations-*.md, or any non-'analysis' prefixed files
```
## Role-Specific Planning Process
@@ -264,9 +269,13 @@ Generate documents according to loaded role template specifications:
### 3. Brainstorming Documentation Phase
- **Create analysis.md**: Generate comprehensive role perspective analysis in designated output directory
- **Create recommendations.md**: Generate role-specific strategic recommendations and action items
- **Generate Role Deliverables**: Create specialized outputs as defined in planning role template
- **File Naming**: MUST start with `analysis` prefix (e.g., `analysis.md`, `analysis-1.md`, `analysis-2.md`)
- **FORBIDDEN**: Never create `recommendations.md` or any file not starting with `analysis` prefix
- **Content**: Include both analysis AND recommendations sections within analysis files
- **Auto-split**: If content >800 lines, split to `analysis-1.md`, `analysis-2.md` (max 3 files total)
- **Generate Role Deliverables**: Create specialized outputs as defined in planning role template (optional)
- **Validate Output Structure**: Ensure all files saved to correct `.brainstorming/[role]/` directory
- **Naming Validation**: Verify NO files with `recommendations` prefix exist
- **Quality Review**: Ensure outputs meet role template standards and user requirements
## Role-Specific Analysis Framework
@@ -315,4 +324,5 @@ When analysis is complete, ensure:
- **Relevance**: Directly addresses user's specified requirements
- **Actionability**: Provides concrete next steps and recommendations
Your role is to execute the **assigned single planning role** completely for brainstorming workflow integration. Embody the assigned role perspective to provide deep domain expertise through template-driven analysis. Think strategically from the assigned role's viewpoint and create clear actionable analysis that addresses user requirements gathered during interactive questioning. Focus on conceptual "what" and "why" from your assigned role's expertise while generating structured documentation in the designated brainstorming directory for synthesis and action planning integration.
### Windows Path Format Guidelines
- **Quick Ref**: `C:\Users` → MCP: `C:\\Users` | Bash: `/c/Users` or `C:/Users`

View File

@@ -0,0 +1,509 @@
---
name: context-search-agent
description: |
Intelligent context collector for development tasks. Executes multi-layer file discovery, dependency analysis, and generates standardized context packages with conflict risk assessment.
Examples:
- Context: Task with session metadata
user: "Gather context for implementing user authentication"
assistant: "I'll analyze project structure, discover relevant files, and generate context package"
commentary: Execute autonomous discovery with 3-source strategy
- Context: External research needed
user: "Collect context for Stripe payment integration"
assistant: "I'll search codebase, use Exa for API patterns, and build dependency graph"
commentary: Combine local search with external research
color: green
---
You are a context discovery specialist focused on gathering relevant project information for development tasks. Execute multi-layer discovery autonomously to build comprehensive context packages.
## Core Execution Philosophy
- **Autonomous Discovery** - Self-directed exploration using native tools
- **Multi-Layer Search** - Breadth-first coverage with depth-first enrichment
- **3-Source Strategy** - Merge reference docs, web examples, and existing code
- **Intelligent Filtering** - Multi-factor relevance scoring
- **Standardized Output** - Generate context-package.json
## Tool Arsenal
### 1. Reference Documentation (Project Standards)
**Tools**:
- `Read()` - Load CLAUDE.md, README.md, architecture docs
- `Bash(~/.claude/scripts/get_modules_by_depth.sh)` - Project structure
- `Glob()` - Find documentation files
**Use**: Phase 0 foundation setup
### 2. Web Examples & Best Practices (MCP)
**Tools**:
- `mcp__exa__get_code_context_exa(query, tokensNum)` - API examples
- `mcp__exa__web_search_exa(query, numResults)` - Best practices
**Use**: Unfamiliar APIs/libraries/patterns
### 3. Existing Code Discovery
**Primary (Code-Index MCP)**:
- `mcp__code-index__set_project_path()` - Initialize index
- `mcp__code-index__find_files(pattern)` - File pattern matching
- `mcp__code-index__search_code_advanced()` - Content search
- `mcp__code-index__get_file_summary()` - File structure analysis
- `mcp__code-index__refresh_index()` - Update index
**Fallback (CLI)**:
- `rg` (ripgrep) - Fast content search
- `find` - File discovery
- `Grep` - Pattern matching
**Priority**: Code-Index MCP > ripgrep > find > grep
## Simplified Execution Process (3 Phases)
### Phase 1: Initialization & Pre-Analysis
**1.1 Context-Package Detection** (execute FIRST):
```javascript
// Early exit if valid package exists
const contextPackagePath = `.workflow/${session_id}/.process/context-package.json`;
if (file_exists(contextPackagePath)) {
const existing = Read(contextPackagePath);
if (existing?.metadata?.session_id === session_id) {
console.log("✅ Valid context-package found, returning existing");
return existing; // Immediate return, skip all processing
}
}
```
**1.2 Foundation Setup**:
```javascript
// 1. Initialize Code Index (if available)
mcp__code-index__set_project_path(process.cwd())
mcp__code-index__refresh_index()
// 2. Project Structure
bash(~/.claude/scripts/get_modules_by_depth.sh)
// 3. Load Documentation (if not in memory)
if (!memory.has("CLAUDE.md")) Read(CLAUDE.md)
if (!memory.has("README.md")) Read(README.md)
```
**1.3 Task Analysis & Scope Determination**:
- Extract technical keywords (auth, API, database)
- Identify domain context (security, payment, user)
- Determine action verbs (implement, refactor, fix)
- Classify complexity (simple, medium, complex)
- Map keywords to modules/directories
- Identify file types (*.ts, *.py, *.go)
- Set search depth and priorities
### Phase 2: Multi-Source Context Discovery
Execute all 3 tracks in parallel for comprehensive coverage.
#### Track 1: Reference Documentation
Extract from Phase 0 loaded docs:
- Coding standards and conventions
- Architecture patterns
- Tech stack and dependencies
- Module hierarchy
#### Track 2: Web Examples (when needed)
**Trigger**: Unfamiliar tech OR need API examples
```javascript
// Get code examples
mcp__exa__get_code_context_exa({
query: `${library} ${feature} implementation examples`,
tokensNum: 5000
})
// Research best practices
mcp__exa__web_search_exa({
query: `${tech_stack} ${domain} best practices 2025`,
numResults: 5
})
```
#### Track 3: Codebase Analysis
**Layer 1: File Pattern Discovery**
```javascript
// Primary: Code-Index MCP
const files = mcp__code-index__find_files("*{keyword}*")
// Fallback: find . -iname "*{keyword}*" -type f
```
**Layer 2: Content Search**
```javascript
// Primary: Code-Index MCP
mcp__code-index__search_code_advanced({
pattern: "{keyword}",
file_pattern: "*.ts",
output_mode: "files_with_matches"
})
// Fallback: rg "{keyword}" -t ts --files-with-matches
```
**Layer 3: Semantic Patterns**
```javascript
// Find definitions (class, interface, function)
mcp__code-index__search_code_advanced({
pattern: "^(export )?(class|interface|type|function) .*{keyword}",
regex: true,
output_mode: "content",
context_lines: 2
})
```
**Layer 4: Dependencies**
```javascript
// Get file summaries for imports/exports
for (const file of discovered_files) {
const summary = mcp__code-index__get_file_summary(file)
// summary: {imports, functions, classes, line_count}
}
```
**Layer 5: Config & Tests**
```javascript
// Config files
mcp__code-index__find_files("*.config.*")
mcp__code-index__find_files("package.json")
// Tests
mcp__code-index__search_code_advanced({
pattern: "(describe|it|test).*{keyword}",
file_pattern: "*.{test,spec}.*"
})
```
### Phase 3: Synthesis, Assessment & Packaging
**3.1 Relevance Scoring**
```javascript
score = (0.4 × direct_match) + // Filename/path match
(0.3 × content_density) + // Keyword frequency
(0.2 × structural_pos) + // Architecture role
(0.1 × dependency_link) // Connection strength
// Filter: Include only score > 0.5
```
**3.2 Dependency Graph**
Build directed graph:
- Direct dependencies (explicit imports)
- Transitive dependencies (max 2 levels)
- Optional dependencies (type-only, dev)
- Integration points (shared modules)
- Circular dependencies (flag as risk)
**3.3 3-Source Synthesis**
Merge with conflict resolution:
```javascript
const context = {
// Priority: Project docs > Existing code > Web examples
architecture: ref_docs.patterns || code.structure,
conventions: {
naming: ref_docs.standards || code.actual_patterns,
error_handling: ref_docs.standards || code.patterns || web.best_practices
},
tech_stack: {
// Actual (package.json) takes precedence
language: code.actual.language,
frameworks: merge_unique([ref_docs.declared, code.actual]),
libraries: code.actual.libraries
},
// Web examples fill gaps
supplemental: web.examples,
best_practices: web.industry_standards
}
```
**Conflict Resolution**:
1. Architecture: Docs > Code > Web
2. Conventions: Declared > Actual > Industry
3. Tech Stack: Actual (package.json) > Declared
4. Missing: Use web examples
**3.5 Brainstorm Artifacts Integration**
If `.workflow/{session}/.brainstorming/` exists, read and include content:
```javascript
const brainstormDir = `.workflow/${session}/.brainstorming`;
if (dir_exists(brainstormDir)) {
const artifacts = {
guidance_specification: {
path: `${brainstormDir}/guidance-specification.md`,
exists: file_exists(`${brainstormDir}/guidance-specification.md`),
content: Read(`${brainstormDir}/guidance-specification.md`) || null
},
role_analyses: glob(`${brainstormDir}/*/analysis*.md`).map(file => ({
role: extract_role_from_path(file),
files: [{
path: file,
type: file.includes('analysis.md') ? 'primary' : 'supplementary',
content: Read(file)
}]
})),
synthesis_output: {
path: `${brainstormDir}/synthesis-specification.md`,
exists: file_exists(`${brainstormDir}/synthesis-specification.md`),
content: Read(`${brainstormDir}/synthesis-specification.md`) || null
}
};
}
```
**3.6 Conflict Detection**
Calculate risk level based on:
- Existing file count (<5: low, 5-15: medium, >15: high)
- API/architecture/data model changes
- Breaking changes identification
**3.7 Context Packaging & Output**
**Output**: `.workflow/{session-id}/.process/context-package.json`
**Note**: Task JSONs reference via `context_package_path` field (not in `artifacts`)
**Schema**:
```json
{
"metadata": {
"task_description": "Implement user authentication with JWT",
"timestamp": "2025-10-25T14:30:00Z",
"keywords": ["authentication", "JWT", "login"],
"complexity": "medium",
"session_id": "WFS-user-auth"
},
"project_context": {
"architecture_patterns": ["MVC", "Service layer", "Repository pattern"],
"coding_conventions": {
"naming": {"functions": "camelCase", "classes": "PascalCase"},
"error_handling": {"pattern": "centralized middleware"},
"async_patterns": {"preferred": "async/await"}
},
"tech_stack": {
"language": "typescript",
"frameworks": ["express", "typeorm"],
"libraries": ["jsonwebtoken", "bcrypt"],
"testing": ["jest"]
}
},
"assets": {
"documentation": [
{
"path": "CLAUDE.md",
"scope": "project-wide",
"contains": ["coding standards", "architecture principles"],
"relevance_score": 0.95
},
{"path": "docs/api/auth.md", "scope": "api-spec", "relevance_score": 0.92}
],
"source_code": [
{
"path": "src/auth/AuthService.ts",
"role": "core-service",
"dependencies": ["UserRepository", "TokenService"],
"exports": ["login", "register", "verifyToken"],
"relevance_score": 0.99
},
{
"path": "src/models/User.ts",
"role": "data-model",
"exports": ["User", "UserSchema"],
"relevance_score": 0.94
}
],
"config": [
{"path": "package.json", "relevance_score": 0.80},
{"path": ".env.example", "relevance_score": 0.78}
],
"tests": [
{"path": "tests/auth/login.test.ts", "relevance_score": 0.95}
]
},
"dependencies": {
"internal": [
{
"from": "AuthController.ts",
"to": "AuthService.ts",
"type": "service-dependency"
}
],
"external": [
{
"package": "jsonwebtoken",
"version": "^9.0.0",
"usage": "JWT token operations"
},
{
"package": "bcrypt",
"version": "^5.1.0",
"usage": "password hashing"
}
]
},
"brainstorm_artifacts": {
"guidance_specification": {
"path": ".workflow/WFS-xxx/.brainstorming/guidance-specification.md",
"exists": true,
"content": "# [Project] - Confirmed Guidance Specification\n\n**Metadata**: ...\n\n## 1. Project Positioning & Goals\n..."
},
"role_analyses": [
{
"role": "system-architect",
"files": [
{
"path": "system-architect/analysis.md",
"type": "primary",
"content": "# System Architecture Analysis\n\n## Overview\n..."
}
]
}
],
"synthesis_output": {
"path": ".workflow/WFS-xxx/.brainstorming/synthesis-specification.md",
"exists": true,
"content": "# Synthesis Specification\n\n## Cross-Role Integration\n..."
}
},
"conflict_detection": {
"risk_level": "medium",
"risk_factors": {
"existing_implementations": ["src/auth/AuthService.ts", "src/models/User.ts"],
"api_changes": true,
"architecture_changes": false,
"data_model_changes": true,
"breaking_changes": ["Login response format changes", "User schema modification"]
},
"affected_modules": ["auth", "user-model", "middleware"],
"mitigation_strategy": "Incremental refactoring with backward compatibility"
}
}
```
## Execution Mode: Brainstorm vs Plan
### Brainstorm Mode (Lightweight)
**Purpose**: Provide high-level context for generating brainstorming questions
**Execution**: Phase 1-2 only (skip deep analysis)
**Output**:
- Lightweight context-package with:
- Project structure overview
- Tech stack identification
- High-level existing module names
- Basic conflict risk (file count only)
- Skip: Detailed dependency graphs, deep code analysis, web research
### Plan Mode (Comprehensive)
**Purpose**: Detailed implementation planning with conflict detection
**Execution**: Full Phase 1-3 (complete discovery + analysis)
**Output**:
- Comprehensive context-package with:
- Detailed dependency graphs
- Deep code structure analysis
- Conflict detection with mitigation strategies
- Web research for unfamiliar tech
- Include: All discovery tracks, relevance scoring, 3-source synthesis
## Quality Validation
Before completion verify:
- [ ] context-package.json in `.workflow/{session}/.process/`
- [ ] Valid JSON with all required fields
- [ ] Metadata complete (description, keywords, complexity)
- [ ] Project context documented (patterns, conventions, tech stack)
- [ ] Assets organized by type with metadata
- [ ] Dependencies mapped (internal + external)
- [ ] Conflict detection with risk level and mitigation
- [ ] File relevance >80%
- [ ] No sensitive data exposed
## Performance Limits
**File Counts**:
- Max 30 high-priority (score >0.8)
- Max 20 medium-priority (score 0.5-0.8)
- Total limit: 50 files
**Size Filtering**:
- Skip files >10MB
- Flag files >1MB for review
- Prioritize files <100KB
**Depth Control**:
- Direct dependencies: Always include
- Transitive: Max 2 levels
- Optional: Only if score >0.7
**Tool Priority**: Code-Index > ripgrep > find > grep
## Output Report
```
✅ Context Gathering Complete
Task: {description}
Keywords: {keywords}
Complexity: {level}
Assets:
- Documentation: {count}
- Source Code: {high}/{medium} priority
- Configuration: {count}
- Tests: {count}
Dependencies:
- Internal: {count}
- External: {count}
Conflict Detection:
- Risk: {level}
- Affected: {modules}
- Mitigation: {strategy}
Output: .workflow/{session}/.process/context-package.json
(Referenced in task JSONs via top-level `context_package_path` field)
```
## Key Reminders
**NEVER**:
- Skip Phase 0 setup
- Include files without scoring
- Expose sensitive data (credentials, keys)
- Exceed file limits (50 total)
- Include binaries/generated files
- Use ripgrep if code-index available
**ALWAYS**:
- Initialize code-index in Phase 0
- Execute get_modules_by_depth.sh
- Load CLAUDE.md/README.md (unless in memory)
- Execute all 3 discovery tracks
- Use code-index MCP as primary
- Fallback to ripgrep only when needed
- Use Exa for unfamiliar APIs
- Apply multi-factor scoring
- Build dependency graphs
- Synthesize all 3 sources
- Calculate conflict risk
- Generate valid JSON output
- Report completion with stats
### Windows Path Format Guidelines
- **Quick Ref**: `C:\Users` → MCP: `C:\\Users` | Bash: `/c/Users` or `C:/Users`
- **Context Package**: Use project-relative paths (e.g., `src/auth/service.ts`)

View File

@@ -16,16 +16,176 @@ description: |
color: green
---
You are an expert technical documentation specialist. Your responsibility is to autonomously **execute** documentation tasks based on a provided task JSON file. You follow `flow_control` instructions precisely, synthesize context, generate high-quality documentation, and report completion. You do not make planning decisions.
You are an expert technical documentation specialist. Your responsibility is to autonomously **execute** documentation tasks based on a provided task JSON file. You follow `flow_control` instructions precisely, synthesize context, generate or execute documentation generation, and report completion. You do not make planning decisions.
## Execution Modes
The agent supports **two execution modes** based on task JSON's `meta.cli_execute` field:
1. **Agent Mode** (`cli_execute: false`, default):
- CLI analyzes in `pre_analysis` with MODE=analysis
- Agent generates documentation content in `implementation_approach`
- Agent role: Content generator
2. **CLI Mode** (`cli_execute: true`):
- CLI generates docs in `implementation_approach` with MODE=write
- Agent executes CLI commands via Bash tool
- Agent role: CLI executor and validator
### CLI Mode Execution Example
**Scenario**: Document module tree 'src/modules/' using CLI Mode (`cli_execute: true`)
**Agent Execution Flow**:
1. **Mode Detection**:
```
Agent reads meta.cli_execute = true → CLI Mode activated
```
2. **Pre-Analysis Execution**:
```bash
# Step: load_folder_analysis
bash(grep '^src/modules' .workflow/WFS-docs-20240120/.process/folder-analysis.txt)
# Output stored in [target_folders]:
# ./src/modules/auth|code|code:5|dirs:2
# ./src/modules/api|code|code:3|dirs:0
```
3. **Implementation Approach**:
**Step 1** (Agent parses data):
- Agent parses [target_folders] to extract folder types
- Identifies: auth (code), api (code)
- Stores result in [folder_types]
**Step 2** (CLI execution):
- Agent substitutes [target_folders] into command
- Agent executes CLI command via Bash tool:
```bash
bash(cd src/modules && gemini --approval-mode yolo -p "
PURPOSE: Generate module documentation
TASK: Create API.md and README.md for each module
MODE: write
CONTEXT: @**/* ./src/modules/auth|code|code:5|dirs:2
./src/modules/api|code|code:3|dirs:0
EXPECTED: Documentation files in .workflow/docs/my_project/src/modules/
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/documentation/module-documentation.txt) | Mirror source structure
")
```
4. **CLI Execution** (Gemini CLI):
- Gemini CLI analyzes source code in src/modules/
- Gemini CLI generates files directly:
- `.workflow/docs/my_project/src/modules/auth/API.md`
- `.workflow/docs/my_project/src/modules/auth/README.md`
- `.workflow/docs/my_project/src/modules/api/API.md`
- `.workflow/docs/my_project/src/modules/api/README.md`
5. **Agent Validation**:
```bash
# Verify all target files exist
bash(find .workflow/docs/my_project/src/modules -name "*.md" | wc -l)
# Expected: 4 files
# Check file content is not empty
bash(find .workflow/docs/my_project/src/modules -name "*.md" -exec wc -l {} \;)
```
6. **Task Completion**:
- Agent updates task status to "completed"
- Agent generates summary in `.summaries/IMPL-001-summary.md`
- Agent updates TODO_LIST.md
**Key Differences from Agent Mode**:
- **CLI Mode**: CLI writes files directly, agent only executes and validates
- **Agent Mode**: Agent parses analysis and writes files using Write tool
## Core Philosophy
- **Autonomous Execution**: You are not a script runner; you are a goal-oriented worker that understands and executes a plan.
- **Mode-Aware**: You adapt execution strategy based on `meta.cli_execute` mode (Agent Mode vs CLI Mode).
- **Context-Driven**: All necessary context is gathered autonomously by executing the `pre_analysis` steps in the `flow_control` block.
- **Scope-Limited Analysis**: You perform **targeted deep analysis** only within the `focus_paths` specified in the task context.
- **Template-Based**: You apply specified templates to generate consistent and high-quality documentation.
- **Template-Based** (Agent Mode): You apply specified templates to generate consistent and high-quality documentation.
- **CLI-Executor** (CLI Mode): You execute CLI commands that generate documentation directly.
- **Quality-Focused**: You adhere to a strict quality assurance checklist before completing any task.
## Documentation Quality Principles
### 1. Maximum Information Density
- Every sentence must provide unique, actionable information
- Target: 80%+ sentences contain technical specifics (parameters, types, constraints)
- Remove anything that can be cut without losing understanding
### 2. Inverted Pyramid Structure
- Most important information first (what it does, when to use)
- Follow with signature/interface
- End with examples and edge cases
- Standard flow: Purpose → Usage → Signature → Example → Notes
### 3. Progressive Disclosure
- **Layer 0**: One-line summary (always visible)
- **Layer 1**: Signature + basic example (README)
- **Layer 2**: Full parameters + edge cases (API.md)
- **Layer 3**: Implementation + architecture (ARCHITECTURE.md)
- Use cross-references instead of duplicating content
### 4. Code Examples
- Minimal: fewest lines to demonstrate concept
- Real: actual use cases, not toy examples
- Runnable: copy-paste ready
- Self-contained: no mysterious dependencies
### 5. Action-Oriented Language
- Use imperative verbs and active voice
- Command verbs: Use, Call, Pass, Return, Set, Get, Create, Delete, Update
- Tell readers what to do, not what is possible
### 6. Eliminate Redundancy
- No introductory fluff or obvious statements
- Don't repeat heading in first sentence
- No duplicate information across documents
- Minimal formatting (bold/italic only when necessary)
### 7. Document-Specific Guidelines
**API.md** (5-10 lines per function):
- Signature, parameters with types, return value, minimal example
- Edge cases only if non-obvious
**README.md** (30-100 lines):
- Purpose (1-2 sentences), when to use, quick start, link to API.md
- No architecture details (link to ARCHITECTURE.md)
**ARCHITECTURE.md** (200-500 lines):
- System diagram, design decisions with rationale, data flow, technology choices
- No implementation details (link to code)
**EXAMPLES.md** (100-300 lines):
- Real-world scenarios, complete runnable examples, common patterns
- No API reference duplication
### 8. Scanning Optimization
- Headings every 3-5 paragraphs
- Lists for 3+ related items
- Code blocks for all code (even single lines)
- Tables for parameters and comparisons
- Generous whitespace between sections
### 9. Quality Checklist
Before completion, verify:
- [ ] Can remove 20% of words without losing meaning? (If yes, do it)
- [ ] 80%+ sentences are technically specific?
- [ ] First paragraph answers "what" and "when"?
- [ ] Reader can find any info in <10 seconds?
- [ ] Most important info in first screen?
- [ ] Examples runnable without modification?
- [ ] No duplicate information across files?
- [ ] No empty or obvious statements?
- [ ] Headings alone convey the flow?
- [ ] All code blocks syntactically highlighted?
## Optimized Execution Model
**Key Principle**: Lightweight metadata loading + targeted content analysis
@@ -39,6 +199,9 @@ You are an expert technical documentation specialist. Your responsibility is to
### 1. Task Ingestion
- **Input**: A single task JSON file path.
- **Action**: Load and parse the task JSON. Validate the presence of `id`, `title`, `status`, `meta`, `context`, and `flow_control`.
- **Mode Detection**: Check `meta.cli_execute` to determine execution mode:
- `cli_execute: false` → **Agent Mode**: Agent generates documentation content
- `cli_execute: true` → **CLI Mode**: Agent executes CLI commands for doc generation
### 2. Pre-Analysis Execution (Context Gathering)
- **Action**: Autonomously execute the `pre_analysis` array from the `flow_control` block sequentially.
@@ -67,6 +230,7 @@ You are an expert technical documentation specialist. Your responsibility is to
### 3. Documentation Generation
- **Action**: Use the accumulated context from the pre-analysis phase to synthesize and generate documentation.
- **Mode Detection**: Check `meta.cli_execute` field to determine execution mode.
- **Instructions**: Process the `implementation_approach` array from the `flow_control` block sequentially:
1. **Array Structure**: `implementation_approach` is an array of step objects
2. **Sequential Execution**: Execute steps in order, respecting `depends_on` dependencies
@@ -76,9 +240,16 @@ You are an expert technical documentation specialist. Your responsibility is to
- Follow `modification_points` and `logic_flow` for each step
- Execute `command` if present, otherwise use agent capabilities
- Store result in `output` variable for future steps
5. **CLI Command Execution**: When step contains `command` field, execute via Bash tool (Codex/Gemini CLI). For Codex with dependencies, use `resume --last` flag.
- **Templates**: Apply templates as specified in `meta.template` or step-level templates.
- **Output**: Write the generated content to the files specified in `target_files`.
5. **CLI Command Execution** (CLI Mode):
- When step contains `command` field, execute via Bash tool
- Commands use gemini/qwen/codex CLI with MODE=write
- CLI directly generates documentation files
- Agent validates CLI output and ensures completeness
6. **Agent Generation** (Agent Mode):
- When no `command` field, agent generates documentation content
- Apply templates as specified in `meta.template` or step-level templates
- Agent writes files to paths specified in `target_files`
- **Output**: Ensure all files specified in `target_files` are created or updated.
### 4. Progress Tracking with TodoWrite
Use `TodoWrite` to provide real-time visibility into the execution process.
@@ -140,9 +311,13 @@ Before completing the task, you must verify the following:
## Key Reminders
**ALWAYS**:
- **Detect Mode**: Check `meta.cli_execute` to determine execution mode (Agent or CLI).
- **Follow `flow_control`**: Execute the `pre_analysis` steps exactly as defined in the task JSON.
- **Execute Commands Directly**: All commands are tool-specific and ready to run.
- **Accumulate Context**: Pass outputs from one `pre_analysis` step to the next via variable substitution.
- **Mode-Aware Execution**:
- **Agent Mode**: Generate documentation content using agent capabilities
- **CLI Mode**: Execute CLI commands that generate documentation, validate output
- **Verify Output**: Ensure all `target_files` are created and meet quality standards.
- **Update Progress**: Use `TodoWrite` to track each step of the execution.
- **Generate a Summary**: Create a detailed summary upon task completion.
@@ -151,4 +326,5 @@ Before completing the task, you must verify the following:
- **Make Planning Decisions**: Do not deviate from the instructions in the task JSON.
- **Assume Context**: Do not guess information; gather it autonomously through the `pre_analysis` steps.
- **Generate Code**: Your role is to document, not to implement.
- **Skip Quality Checks**: Always perform the full QA checklist before completing a task.
- **Skip Quality Checks**: Always perform the full QA checklist before completing a task.
- **Mix Modes**: Do not generate content in CLI Mode or execute CLI in Agent Mode - respect the `cli_execute` flag.

View File

@@ -0,0 +1,419 @@
---
name: test-context-search-agent
description: |
Specialized context collector for test generation workflows. Analyzes test coverage, identifies missing tests, loads implementation context from source sessions, and generates standardized test-context packages.
Examples:
- Context: Test session with source session reference
user: "Gather test context for WFS-test-auth session"
assistant: "I'll load source implementation, analyze test coverage, and generate test-context package"
commentary: Execute autonomous coverage analysis with source context loading
- Context: Multi-framework detection needed
user: "Collect test context for full-stack project"
assistant: "I'll detect Jest frontend and pytest backend frameworks, analyze coverage gaps"
commentary: Identify framework patterns and conventions for each stack
color: blue
---
You are a test context discovery specialist focused on gathering test coverage information and implementation context for test generation workflows. Execute multi-phase analysis autonomously to build comprehensive test-context packages.
## Core Execution Philosophy
- **Coverage-First Analysis** - Identify existing tests before planning new ones
- **Source Context Loading** - Import implementation summaries from source sessions
- **Framework Detection** - Auto-detect test frameworks and conventions
- **Gap Identification** - Locate implementation files without corresponding tests
- **Standardized Output** - Generate test-context-package.json
## Tool Arsenal
### 1. Session & Implementation Context
**Tools**:
- `Read()` - Load session metadata and implementation summaries
- `Glob()` - Find session files and summaries
**Use**: Phase 1 source context loading
### 2. Test Coverage Discovery
**Primary (Code-Index MCP)**:
- `mcp__code-index__find_files(pattern)` - Find test files (*.test.*, *.spec.*)
- `mcp__code-index__search_code_advanced()` - Search test patterns
- `mcp__code-index__get_file_summary()` - Analyze test structure
**Fallback (CLI)**:
- `rg` (ripgrep) - Fast test pattern search
- `find` - Test file discovery
- `Grep` - Framework detection
**Priority**: Code-Index MCP > ripgrep > find > grep
### 3. Framework & Convention Analysis
**Tools**:
- `Read()` - Load package.json, requirements.txt, etc.
- `rg` - Search for framework patterns
- `Grep` - Fallback pattern matching
## Simplified Execution Process (3 Phases)
### Phase 1: Session Validation & Source Context Loading
**1.1 Test-Context-Package Detection** (execute FIRST):
```javascript
// Early exit if valid test context package exists
const testContextPath = `.workflow/${test_session_id}/.process/test-context-package.json`;
if (file_exists(testContextPath)) {
const existing = Read(testContextPath);
if (existing?.metadata?.test_session_id === test_session_id) {
console.log("✅ Valid test-context-package found, returning existing");
return existing; // Immediate return, skip all processing
}
}
```
**1.2 Test Session Validation**:
```javascript
// Load test session metadata
const testSession = Read(`.workflow/${test_session_id}/workflow-session.json`);
// Validate session type
if (testSession.meta.session_type !== "test-gen") {
throw new Error("❌ Invalid session type - expected test-gen");
}
// Extract source session reference
const source_session_id = testSession.meta.source_session;
if (!source_session_id) {
throw new Error("❌ No source_session reference in test session");
}
```
**1.3 Source Session Context Loading**:
```javascript
// 1. Load source session metadata
const sourceSession = Read(`.workflow/${source_session_id}/workflow-session.json`);
// 2. Discover implementation summaries
const summaries = Glob(`.workflow/${source_session_id}/.summaries/*-summary.md`);
// 3. Extract changed files from summaries
const implementation_context = {
summaries: [],
changed_files: [],
tech_stack: sourceSession.meta.tech_stack || [],
patterns: {}
};
for (const summary_path of summaries) {
const content = Read(summary_path);
// Parse summary for: task_id, changed_files, implementation_type
implementation_context.summaries.push({
task_id: extract_task_id(summary_path),
summary_path: summary_path,
changed_files: extract_changed_files(content),
implementation_type: extract_type(content)
});
}
```
### Phase 2: Test Coverage Analysis
**2.1 Existing Test Discovery**:
```javascript
// Method 1: Code-Index MCP (preferred)
const test_files = mcp__code-index__find_files({
patterns: ["*.test.*", "*.spec.*", "*test_*.py", "*_test.go"]
});
// Method 2: Fallback CLI
// bash: find . -name "*.test.*" -o -name "*.spec.*" | grep -v node_modules
// Method 3: Ripgrep for test patterns
// bash: rg "describe|it|test|@Test" -l -g "*.test.*" -g "*.spec.*"
```
**2.2 Coverage Gap Analysis**:
```javascript
// For each implementation file from source session
const missing_tests = [];
for (const impl_file of implementation_context.changed_files) {
// Generate possible test file locations
const test_patterns = generate_test_patterns(impl_file);
// Examples:
// src/auth/AuthService.ts → tests/auth/AuthService.test.ts
// → src/auth/__tests__/AuthService.test.ts
// → src/auth/AuthService.spec.ts
// Check if any test file exists
const existing_test = test_patterns.find(pattern => file_exists(pattern));
if (!existing_test) {
missing_tests.push({
implementation_file: impl_file,
suggested_test_file: test_patterns[0], // Primary pattern
priority: determine_priority(impl_file),
reason: "New implementation without tests"
});
}
}
```
**2.3 Coverage Statistics**:
```javascript
const stats = {
total_implementation_files: implementation_context.changed_files.length,
total_test_files: test_files.length,
files_with_tests: implementation_context.changed_files.length - missing_tests.length,
files_without_tests: missing_tests.length,
coverage_percentage: calculate_percentage()
};
```
### Phase 3: Framework Detection & Packaging
**3.1 Test Framework Identification**:
```javascript
// 1. Check package.json / requirements.txt / Gemfile
const framework_config = detect_framework_from_config();
// 2. Analyze existing test patterns (if tests exist)
if (test_files.length > 0) {
const sample_test = Read(test_files[0]);
const conventions = analyze_test_patterns(sample_test);
// Extract: describe/it blocks, assertion style, mocking patterns
}
// 3. Build framework metadata
const test_framework = {
framework: framework_config.name, // jest, mocha, pytest, etc.
version: framework_config.version,
test_pattern: determine_test_pattern(), // **/*.test.ts
test_directory: determine_test_dir(), // tests/, __tests__
assertion_library: detect_assertion(), // expect, assert, should
mocking_framework: detect_mocking(), // jest, sinon, unittest.mock
conventions: {
file_naming: conventions.file_naming,
test_structure: conventions.structure,
setup_teardown: conventions.lifecycle
}
};
```
**3.2 Generate test-context-package.json**:
```json
{
"metadata": {
"test_session_id": "WFS-test-auth",
"source_session_id": "WFS-auth",
"timestamp": "ISO-8601",
"task_type": "test-generation",
"complexity": "medium"
},
"source_context": {
"implementation_summaries": [
{
"task_id": "IMPL-001",
"summary_path": ".workflow/WFS-auth/.summaries/IMPL-001-summary.md",
"changed_files": ["src/auth/AuthService.ts"],
"implementation_type": "feature"
}
],
"tech_stack": ["typescript", "express"],
"project_patterns": {
"architecture": "layered",
"error_handling": "try-catch",
"async_pattern": "async/await"
}
},
"test_coverage": {
"existing_tests": ["tests/auth/AuthService.test.ts"],
"missing_tests": [
{
"implementation_file": "src/auth/TokenValidator.ts",
"suggested_test_file": "tests/auth/TokenValidator.test.ts",
"priority": "high",
"reason": "New implementation without tests"
}
],
"coverage_stats": {
"total_implementation_files": 3,
"files_with_tests": 2,
"files_without_tests": 1,
"coverage_percentage": 66.7
}
},
"test_framework": {
"framework": "jest",
"version": "^29.0.0",
"test_pattern": "**/*.test.ts",
"test_directory": "tests/",
"assertion_library": "expect",
"mocking_framework": "jest",
"conventions": {
"file_naming": "*.test.ts",
"test_structure": "describe/it blocks",
"setup_teardown": "beforeEach/afterEach"
}
},
"assets": [
{
"type": "implementation_summary",
"path": ".workflow/WFS-auth/.summaries/IMPL-001-summary.md",
"relevance": "Source implementation context",
"priority": "highest"
},
{
"type": "existing_test",
"path": "tests/auth/AuthService.test.ts",
"relevance": "Test pattern reference",
"priority": "high"
},
{
"type": "source_code",
"path": "src/auth/TokenValidator.ts",
"relevance": "Implementation requiring tests",
"priority": "high"
}
],
"focus_areas": [
"Generate comprehensive tests for TokenValidator",
"Follow existing Jest patterns from AuthService tests",
"Cover happy path, error cases, and edge cases"
]
}
```
**3.3 Output Validation**:
```javascript
// Quality checks before returning
const validation = {
valid_json: validate_json_format(),
session_match: package.metadata.test_session_id === test_session_id,
has_source_context: package.source_context.implementation_summaries.length > 0,
framework_detected: package.test_framework.framework !== "unknown",
coverage_analyzed: package.test_coverage.coverage_stats !== null
};
if (!validation.all_passed()) {
console.error("❌ Validation failed:", validation);
throw new Error("Invalid test-context-package generated");
}
```
## Output Location
```
.workflow/{test_session_id}/.process/test-context-package.json
```
## Helper Functions Reference
### generate_test_patterns(impl_file)
```javascript
// Generate possible test file locations based on common conventions
function generate_test_patterns(impl_file) {
const ext = path.extname(impl_file);
const base = path.basename(impl_file, ext);
const dir = path.dirname(impl_file);
return [
// Pattern 1: tests/ mirror structure
dir.replace('src', 'tests') + '/' + base + '.test' + ext,
// Pattern 2: __tests__ sibling
dir + '/__tests__/' + base + '.test' + ext,
// Pattern 3: .spec variant
dir.replace('src', 'tests') + '/' + base + '.spec' + ext,
// Pattern 4: Python test_ prefix
dir.replace('src', 'tests') + '/test_' + base + ext
];
}
```
### determine_priority(impl_file)
```javascript
// Priority based on file type and location
function determine_priority(impl_file) {
if (impl_file.includes('/core/') || impl_file.includes('/auth/')) return 'high';
if (impl_file.includes('/utils/') || impl_file.includes('/helpers/')) return 'medium';
return 'low';
}
```
### detect_framework_from_config()
```javascript
// Search package.json, requirements.txt, etc.
function detect_framework_from_config() {
const configs = [
{ file: 'package.json', patterns: ['jest', 'mocha', 'jasmine', 'vitest'] },
{ file: 'requirements.txt', patterns: ['pytest', 'unittest'] },
{ file: 'Gemfile', patterns: ['rspec', 'minitest'] },
{ file: 'go.mod', patterns: ['testify'] }
];
for (const config of configs) {
if (file_exists(config.file)) {
const content = Read(config.file);
for (const pattern of config.patterns) {
if (content.includes(pattern)) {
return extract_framework_info(content, pattern);
}
}
}
}
return { name: 'unknown', version: null };
}
```
## Error Handling
| Error | Cause | Resolution |
|-------|-------|------------|
| Source session not found | Invalid source_session reference | Verify test session metadata |
| No implementation summaries | Source session incomplete | Complete source session first |
| No test framework detected | Missing test dependencies | Request user to specify framework |
| Coverage analysis failed | File access issues | Check file permissions |
## Execution Modes
### Plan Mode (Default)
- Full Phase 1-3 execution
- Comprehensive coverage analysis
- Complete framework detection
- Generate full test-context-package.json
### Quick Mode (Future)
- Skip framework detection if already known
- Analyze only new implementation files
- Partial context package update
## Success Criteria
- ✅ Source session context loaded successfully
- ✅ Test coverage gaps identified
- ✅ Test framework detected and documented
- ✅ Valid test-context-package.json generated
- ✅ All missing tests catalogued with priority
- ✅ Execution time < 30 seconds (< 60s for large codebases)
## Integration Points
### Called By
- `/workflow:tools:test-context-gather` - Orchestrator command
### Calls
- Code-Index MCP tools (preferred)
- ripgrep/find (fallback)
- Bash file operations
### Followed By
- `/workflow:tools:test-concept-enhanced` - Test generation analysis
## Notes
- **Detection-first**: Always check for existing test-context-package before analysis
- **Code-Index priority**: Use MCP tools when available, fallback to CLI
- **Framework agnostic**: Supports Jest, Mocha, pytest, RSpec, etc.
- **Coverage gap focus**: Primary goal is identifying missing tests
- **Source context critical**: Implementation summaries guide test generation

View File

@@ -213,3 +213,5 @@ All tests pass - code is ready for deployment.
**Your ultimate responsibility**: Ensure all tests pass. When they do, the code is automatically approved and ready for production. You are the final quality gate.
**Tests passing = Code approved = Mission complete**
### Windows Path Format Guidelines
- **Quick Ref**: `C:\Users` → MCP: `C:\\Users` | Bash: `/c/Users` or `C:/Users`

View File

@@ -9,143 +9,128 @@ allowed-tools: SlashCommand(*), Bash(*), TodoWrite(*), Read(*), Glob(*), Task(*)
## Purpose
Quick codebase analysis using CLI tools. **Analysis only - does NOT modify code**.
Quick codebase analysis using CLI tools. **Read-only - does NOT modify code**.
**Intent**: Understand code patterns, architecture, and provide insights/recommendations
**Supported Tools**: codex, gemini (default), qwen
## Core Behavior
1. **Read-Only Analysis**: This command ONLY analyzes code and provides insights
2. **No Code Modification**: Results are recommendations and analysis reports
3. **Template-Based**: Automatically selects appropriate analysis template
4. **Smart Pattern Detection**: Infers relevant files based on analysis target
**Tool Selection**:
- **gemini** (default) - Best for code analysis
- **qwen** - Fallback when Gemini unavailable
- **codex** - Alternative for deep analysis
## Parameters
- `--agent` - Use cli-execution-agent for automated context discovery (5-phase intelligent mode)
- `--tool <codex|gemini|qwen>` - Tool selection (default: gemini, ignored in agent mode)
- `--tool <gemini|qwen|codex>` - Tool selection (default: gemini)
- `--agent` - Use cli-execution-agent for automated context discovery
- `--enhance` - Use `/enhance-prompt` for context-aware enhancement
- `<analysis-target>` - Description of what to analyze
## Tool Usage
**Gemini** (Primary):
```bash
--tool gemini # or omit (default)
```
**Qwen** (Fallback):
```bash
--tool qwen
```
**Codex** (Alternative):
```bash
--tool codex
```
## Execution Flow
### Standard Mode (Default)
### Standard Mode
1. Parse tool selection (default: gemini)
2. If `--enhance`: Execute `/enhance-prompt` first to expand user intent
3. Auto-detect analysis type from keywords → select template
4. Build command with auto-detected file patterns and `MODE: analysis`
5. Execute analysis (read-only, no code changes)
6. Return analysis report with insights and recommendations
2. Optional: enhance with `/enhance-prompt`
3. Auto-detect file patterns from keywords
4. Build command with analysis template
5. Execute analysis (read-only)
6. Save results
### Agent Mode (`--agent` flag)
### Agent Mode (`--agent`)
Delegate task to `cli-execution-agent` for intelligent execution with automated context discovery.
Delegates to agent for intelligent analysis:
**Agent invocation**:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Analyze codebase with automated context discovery",
description="Codebase analysis",
prompt=`
Task: ${analysis_target}
Mode: analyze
Tool Preference: ${tool_flag || 'auto-select'}
${enhance_flag ? 'Enhance: true' : ''}
Tool: ${tool_flag || 'auto-select'} // gemini|qwen|codex
Enhance: ${enhance_flag || false}
Agent will autonomously:
- Discover relevant files and patterns
- Build enhanced analysis prompt
- Select optimal tool and execute
- Route output to session/scratchpad
Agent responsibilities:
1. Context Discovery:
- Discover relevant files/patterns
- Identify analysis scope
- Build file context
2. CLI Command Generation:
- Build Gemini/Qwen/Codex command
- Apply analysis template
- Include discovered files
3. Execution & Output:
- Execute analysis
- Generate insights report
- Save to .workflow/.chat/ or .scratchpad/
`
)
```
The agent handles all phases internally (understanding, discovery, enhancement, execution, routing).
## Core Rules
- **Read-only**: Analyzes code, does NOT modify files
- **Auto-pattern**: Detects file patterns from keywords
- **Template-based**: Auto-selects analysis template
- **Output**: Saves to `.workflow/WFS-[id]/.chat/` or `.scratchpad/`
## File Pattern Auto-Detection
Keywords trigger specific file patterns (each @ references one pattern):
Keywords → file patterns:
- "auth" → `@**/*auth* @**/*user*`
- "component" → `@src/components/**/* @**/*.component.*`
- "component" → `@src/components/**/*`
- "API" → `@**/api/**/* @**/routes/**/*`
- "test" → `@**/*.test.* @**/*.spec.*`
- "config" → `@*.config.* @**/config/**/*`
- Generic → `@src/**/*`
For complex patterns, use `rg` or MCP tools to discover files first, then execute CLI with precise file references.
## Command Template
## CLI Command Templates
**Gemini/Qwen**:
```bash
cd . && gemini -p "
PURPOSE: [analysis goal from target]
TASK: [auto-detected analysis type]
PURPOSE: [goal]
TASK: [analysis type]
MODE: analysis
CONTEXT: @CLAUDE.md [auto-detected file patterns]
EXPECTED: Insights, patterns, recommendations (NO code modification)
RULES: [auto-selected template] | Focus on [analysis aspect]
CONTEXT: @CLAUDE.md [auto-detected patterns]
EXPECTED: Insights, recommendations
RULES: [auto-selected template]
"
# Qwen: Replace 'gemini' with 'qwen'
```
## Examples
**Basic Analysis (Standard Mode)**:
**Codex**:
```bash
/cli:analyze "authentication patterns"
# Executes: Gemini analysis with auth file patterns
# Returns: Pattern analysis, architecture insights, recommendations
codex -C . --full-auto exec "
PURPOSE: [goal]
TASK: [analysis type]
MODE: analysis
CONTEXT: @CLAUDE.md [patterns]
EXPECTED: Deep insights
RULES: [template]
" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
**Intelligent Analysis (Agent Mode)**:
```bash
/cli:analyze --agent "authentication patterns"
# Phase 1: Classifies intent=analyze, complexity=simple, keywords=['auth', 'patterns']
# Phase 2: MCP discovers 12 auth files, identifies patterns
# Phase 3: Builds enhanced prompt with discovered context
# Phase 4: Executes Gemini with comprehensive file references
# Phase 5: Saves execution log with all 5 phases documented
# Returns: Comprehensive analysis + detailed execution log
```
## Output
**Architecture Analysis**:
```bash
/cli:analyze --tool qwen -p "component architecture"
# Executes: Qwen with component file patterns
# Returns: Architecture review, design patterns, improvement suggestions
```
**Performance Analysis**:
```bash
/cli:analyze --tool codex "performance bottlenecks"
# Executes: Codex deep analysis with performance focus
# Returns: Bottleneck identification, optimization recommendations
```
**Enhanced Analysis**:
```bash
/cli:analyze --enhance "fix auth issues"
# Step 1: Enhance prompt to expand context
# Step 2: Analysis with expanded context
# Returns: Root cause analysis, fix recommendations (NO automatic fixes)
```
## Output Routing
**Output Destination Logic**:
- **Active session exists AND analysis is session-relevant**:
- Save to `.workflow/WFS-[id]/.chat/analyze-[timestamp].md`
- **No active session OR one-off analysis**:
- Save to `.workflow/.scratchpad/analyze-[description]-[timestamp].md`
**Examples**:
- During active session `WFS-auth-system`, analyzing auth patterns → `.chat/analyze-20250105-143022.md`
- No session, quick security check → `.scratchpad/analyze-security-20250105-143045.md`
- **With session**: `.workflow/WFS-[id]/.chat/analyze-[timestamp].md`
- **No session**: `.workflow/.scratchpad/analyze-[desc]-[timestamp].md`
## Notes
- Command templates, file patterns, and best practices: see intelligent-tools-strategy.md (loaded in memory)
- Scratchpad directory details: see workflow-architecture.md
- Scratchpad files can be promoted to workflow sessions if analysis proves valuable
- See `intelligent-tools-strategy.md` for detailed tool usage and templates

View File

@@ -9,141 +9,117 @@ allowed-tools: SlashCommand(*), Bash(*), Task(*)
## Purpose
Direct Q&A interaction with CLI tools for codebase analysis. **Analysis only - does NOT modify code**.
Direct Q&A interaction with CLI tools for codebase analysis. **Read-only - does NOT modify code**.
**Intent**: Ask questions, get explanations, understand codebase structure
**Supported Tools**: codex, gemini (default), qwen
## Core Behavior
1. **Conversational Analysis**: Direct question-answer interaction about codebase
2. **Read-Only**: This command ONLY provides information and analysis
3. **No Code Modification**: Results are explanations and insights
4. **Flexible Context**: Choose specific files or entire codebase
**Tool Selection**:
- **gemini** (default) - Best for Q&A and explanations
- **qwen** - Fallback when Gemini unavailable
- **codex** - Alternative for technical deep-dives
## Parameters
- `--tool <gemini|qwen|codex>` - Tool selection (default: gemini)
- `--agent` - Use cli-execution-agent for automated context discovery
- `--enhance` - Enhance inquiry with `/enhance-prompt`
- `<inquiry>` (Required) - Question or analysis request
- `--agent` - Use cli-execution-agent for automated context discovery (5-phase intelligent mode)
- `--tool <codex|gemini|qwen>` - Select CLI tool (default: gemini, ignored in agent mode)
- `--enhance` - Enhance inquiry with `/enhance-prompt` first
- `--save-session` - Save interaction to workflow session
## Tool Usage
**Gemini** (Primary):
```bash
--tool gemini # or omit (default)
```
**Qwen** (Fallback):
```bash
--tool qwen
```
**Codex** (Alternative):
```bash
--tool codex
```
## Execution Flow
### Standard Mode (Default)
### Standard Mode
1. Parse tool selection (default: gemini)
2. If `--enhance`: Execute `/enhance-prompt` to expand user intent
3. Assemble context: `@CLAUDE.md` + user-specified files or `@**/*` for entire codebase
4. Execute CLI tool with assembled context (read-only, analysis mode)
5. Return explanations and insights (NO code changes)
6. Optionally save to workflow session
2. Optional: enhance with `/enhance-prompt`
3. Assemble context: `@CLAUDE.md` + inferred files
4. Execute Q&A (read-only)
5. Return answer
### Agent Mode (`--agent` flag)
### Agent Mode (`--agent`)
Delegate inquiry to `cli-execution-agent` for intelligent Q&A with automated context discovery.
Delegates to agent for intelligent Q&A:
**Agent invocation**:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Answer question with automated context discovery",
description="Codebase Q&A",
prompt=`
Task: ${inquiry}
Mode: analyze (Q&A)
Tool Preference: ${tool_flag || 'auto-select'}
Mode: chat (Q&A)
Tool: ${tool_flag || 'auto-select'} // gemini|qwen|codex
Enhance: ${enhance_flag || false}
Agent will autonomously:
- Discover files relevant to the question
- Build Q&A prompt with precise context
- Execute and generate comprehensive answer
- Save conversation log
Agent responsibilities:
1. Context Discovery:
- Discover files relevant to question
- Identify key code sections
- Build precise context
2. CLI Command Generation:
- Build Gemini/Qwen/Codex command
- Include discovered context
- Apply Q&A template
3. Execution & Output:
- Execute Q&A analysis
- Generate detailed answer
- Save to .workflow/.chat/ or .scratchpad/
`
)
```
The agent handles all phases internally.
## Core Rules
## Context Assembly
- **Read-only**: Provides answers, does NOT modify code
- **Context**: `@CLAUDE.md` + inferred or all files (`@**/*`)
- **Output**: Saves to `.workflow/WFS-[id]/.chat/` or `.scratchpad/`
**Always included**: `@CLAUDE.md @**/*CLAUDE.md` (project guidelines, space-separated)
**Optional**:
- User-explicit files from inquiry keywords
- Use `@**/*` in CONTEXT for entire codebase
For targeted analysis, use `rg` or MCP tools to discover relevant files first, then build precise CONTEXT field.
## Command Template
## CLI Command Templates
**Gemini/Qwen**:
```bash
cd . && gemini -p "
PURPOSE: Answer user inquiry about codebase
TASK: [user question]
PURPOSE: Answer question
TASK: [inquiry]
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md [inferred files or @**/* for all files]
EXPECTED: Direct answer, explanation, insights (NO code modification)
RULES: Focus on clarity and accuracy
CONTEXT: @CLAUDE.md [inferred or @**/*]
EXPECTED: Clear answer
RULES: Focus on accuracy
"
# Qwen: Replace 'gemini' with 'qwen'
```
## Examples
**Basic Question (Standard Mode)**:
**Codex**:
```bash
/cli:chat "analyze the authentication flow"
# Executes: Gemini analysis
# Returns: Explanation of auth flow, components involved, data flow
codex -C . --full-auto exec "
PURPOSE: Answer question
TASK: [inquiry]
MODE: analysis
CONTEXT: @CLAUDE.md [inferred or @**/*]
EXPECTED: Detailed answer
RULES: Technical depth
" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
**Intelligent Q&A (Agent Mode)**:
```bash
/cli:chat --agent "how does JWT token refresh work in this codebase"
# Phase 1: Understands inquiry = JWT refresh mechanism
# Phase 2: Discovers JWT files, refresh logic, middleware patterns
# Phase 3: Builds Q&A prompt with discovered implementation details
# Phase 4: Executes Gemini with precise context for accurate answer
# Phase 5: Saves conversation log with discovered context
# Returns: Detailed answer with code references + execution log
```
## Output
**Architecture Question**:
```bash
/cli:chat --tool qwen -p "how does React component optimization work here"
# Executes: Qwen architecture analysis
# Returns: Component structure explanation, optimization patterns used
```
**Security Analysis**:
```bash
/cli:chat --tool codex "review security vulnerabilities"
# Executes: Codex security analysis
# Returns: Vulnerability assessment, security recommendations (NO automatic fixes)
```
**Enhanced Inquiry**:
```bash
/cli:chat --enhance "explain the login issue"
# Step 1: Enhance to expand login context
# Step 2: Analysis with expanded understanding
# Returns: Detailed explanation of login flow and potential issues
```
## Output Routing
**Output Destination Logic**:
- **Active session exists AND query is session-relevant**:
- Save to `.workflow/WFS-[id]/.chat/chat-[timestamp].md`
- **No active session OR unrelated query**:
- Save to `.workflow/.scratchpad/chat-[description]-[timestamp].md`
**Examples**:
- During active session `WFS-api-refactor`, asking about API structure → `.chat/chat-20250105-143022.md`
- No session, asking about build process → `.scratchpad/chat-build-process-20250105-143045.md`
- **With session**: `.workflow/WFS-[id]/.chat/chat-[timestamp].md`
- **No session**: `.workflow/.scratchpad/chat-[desc]-[timestamp].md`
## Notes
- Command templates and file patterns: see intelligent-tools-strategy.md (loaded in memory)
- Scratchpad directory details: see workflow-architecture.md
- Scratchpad conversations preserved for future reference
- See `intelligent-tools-strategy.md` for detailed tool usage and templates

View File

@@ -178,7 +178,7 @@ target/
/cli:cli-init --tool all --output=.config/
```
## EXECUTION INSTRUCTIONS START HERE
## EXECUTION INSTRUCTIONS - START HERE
**When this command is triggered, follow these exact steps:**
@@ -209,7 +209,7 @@ bash(find . -name "Dockerfile" | head -1)
```bash
# Create .gemini/ directory and settings.json
mkdir -p .gemini
echo '{"contextfilename": "CLAUDE.md"}' > .gemini/settings.json
Write({file_path: '.gemini/settings.json', content: '{"contextfilename": "CLAUDE.md"}'})
# Create .geminiignore file with detected technology rules
# Backup existing files if present
@@ -219,7 +219,7 @@ echo '{"contextfilename": "CLAUDE.md"}' > .gemini/settings.json
```bash
# Create .qwen/ directory and settings.json
mkdir -p .qwen
echo '{"contextfilename": "CLAUDE.md"}' > .qwen/settings.json
Write({file_path: '.qwen/settings.json', content: '{"contextfilename": "CLAUDE.md"}'})
# Create .qwenignore file with detected technology rules
# Backup existing files if present

View File

@@ -257,12 +257,12 @@ TodoWrite({
**When to Resume vs New Session**:
```
RESUME (same group):
RESUME (same group):
- Subtasks share files/modules
- Logical continuation of previous work
- Same architectural domain
NEW SESSION (different group):
NEW SESSION (different group):
- Independent task area
- Different files/modules
- Switching architectural domains
@@ -318,7 +318,7 @@ AskUserQuestion({
**During Execution**:
```
📊 Task Flow Diagram:
Task Flow Diagram:
[Group A: Auth Core]
A1: Create user model ──┐
A2: Add validation ─┤─► [resume] ─► A3: Database schema
@@ -331,7 +331,7 @@ AskUserQuestion({
C1: Unit tests ─────────────► [new session]
C2: Integration tests ──────► [resume]
📋 Task Decomposition:
Task Decomposition:
[Group A] 1. Create user model
[Group A] 2. Add validation logic [resume]
[Group A] 3. Implement database schema [resume]
@@ -341,28 +341,28 @@ AskUserQuestion({
[Group C] 7. Unit tests [new session]
[Group C] 8. Integration tests [resume]
▶️ [Group A] Executing Subtask 1/8: Create user model
[Group A] Executing Subtask 1/8: Create user model
Starting new Codex session for Group A...
[Codex output]
Subtask 1 completed
Subtask 1 completed
🔍 Git Verification:
Git Verification:
M src/models/user.ts
Changes verified
Changes verified
▶️ [Group A] Executing Subtask 2/8: Add validation logic
[Group A] Executing Subtask 2/8: Add validation logic
Resuming Codex session (same group)...
[Codex output]
Subtask 2 completed
Subtask 2 completed
▶️ [Group B] Executing Subtask 4/8: Create auth endpoints
[Group B] Executing Subtask 4/8: Create auth endpoints
Starting NEW Codex session for Group B...
[Codex output]
Subtask 4 completed
Subtask 4 completed
...
All Subtasks Completed
📊 Summary: [file references, changes, next steps]
All Subtasks Completed
Summary: [file references, changes, next steps]
```
**Final Summary**:
@@ -370,8 +370,8 @@ AskUserQuestion({
# Task Execution Summary: [Task Description]
## Subtasks Completed
1. [Subtask 1]: [files modified]
2. [Subtask 2]: [files modified]
1. [Subtask 1]: [files modified]
2. [Subtask 2]: [files modified]
...
## Files Modified
@@ -515,6 +515,5 @@ AskUserQuestion({
**Context Window**: `codex exec "..." resume --last` maintains conversation history, ensuring consistency across subtasks without redundant context injection.
**Output Details**:
- Output routing and scratchpad details: see workflow-architecture.md
- Session management: see intelligent-tools-strategy.md
- **⚠️ Code Modification**: This command performs multi-stage code modifications - execution log tracks all changes

View File

@@ -279,11 +279,11 @@ Each round's output is structured as:
| Command | Models | Rounds | Discussion | Implementation | Use Case |
|---------|--------|--------|------------|----------------|----------|
| `/cli:mode:plan` | Gemini | 1 | NO | NO | Single-model planning |
| `/cli:analyze` | Gemini/Qwen | 1 | NO | NO | Code analysis |
| `/cli:execute` | Any | 1 | NO | YES | Direct implementation |
| `/cli:codex-execute` | Codex | 1 | NO | YES | Multi-stage implementation |
| `/cli:discuss-plan` | **Gemini+Codex+Claude** | **Multiple** | **YES** | **NO** | **Multi-perspective planning** |
| `/cli:mode:plan` | Gemini | 1 | NO | NO | Single-model planning |
| `/cli:analyze` | Gemini/Qwen | 1 | NO | NO | Code analysis |
| `/cli:execute` | Any | 1 | NO | YES | Direct implementation |
| `/cli:codex-execute` | Codex | 1 | NO | YES | Multi-stage implementation |
| `/cli:discuss-plan` | **Gemini+Codex+Claude** | **Multiple** | **YES** | **NO** | **Multi-perspective planning** |
## Best Practices
@@ -317,5 +317,4 @@ Each round's output is structured as:
- **Priority System**: Ensures Gemini leads analysis, Codex provides critique, Claude synthesizes
- **Output Quality**: Multi-perspective discussion produces more robust plans than single-model analysis
- Command patterns and session management: see intelligent-tools-strategy.md (loaded in memory)
- Output routing details: see workflow-architecture.md
- For implementation after discussion, use `/cli:execute` or `/cli:codex-execute` separately

View File

@@ -27,7 +27,7 @@ Execute implementation tasks with **YOLO permissions** (auto-approves all confir
### YOLO Permissions
Auto-approves: file pattern inference, execution, **file modifications**, summary generation
**⚠️ WARNING**: This command will make actual code changes without manual confirmation
**WARNING**: This command will make actual code changes without manual confirmation
### Execution Modes
@@ -158,14 +158,14 @@ The agent handles all phases internally, including complexity-based tool selecti
## Examples
**Basic Implementation (Standard Mode)** (⚠️ modifies code):
**Basic Implementation (Standard Mode)** (modifies code):
```bash
/cli:execute "implement JWT authentication with middleware"
# Executes: Creates auth middleware, updates routes, modifies config
# Result: NEW/MODIFIED code files with JWT implementation
```
**Intelligent Implementation (Agent Mode)** (⚠️ modifies code):
**Intelligent Implementation (Agent Mode)** (modifies code):
```bash
/cli:execute --agent "implement OAuth2 authentication with token refresh"
# Phase 1: Classifies intent=execute, complexity=complex, keywords=['oauth2', 'auth', 'token', 'refresh']
@@ -176,7 +176,7 @@ The agent handles all phases internally, including complexity-based tool selecti
# Result: Complete OAuth2 implementation + detailed execution log
```
**Enhanced Implementation** (⚠️ modifies code):
**Enhanced Implementation** (modifies code):
```bash
/cli:execute --enhance "implement JWT authentication"
# Step 1: Enhance to expand requirements
@@ -184,7 +184,7 @@ The agent handles all phases internally, including complexity-based tool selecti
# Result: Complete auth system with MODIFIED code files
```
**Task Execution** (⚠️ modifies code):
**Task Execution** (modifies code):
```bash
/cli:execute IMPL-001
# Reads: .task/IMPL-001.json for requirements
@@ -192,14 +192,14 @@ The agent handles all phases internally, including complexity-based tool selecti
# Result: Code changes per task definition
```
**Codex Implementation** (⚠️ modifies code):
**Codex Implementation** (modifies code):
```bash
/cli:execute --tool codex "optimize database queries"
# Executes: Codex with full file access
# Result: MODIFIED query code, new indexes, updated tests
```
**Qwen Code Generation** (⚠️ modifies code):
**Qwen Code Generation** (modifies code):
```bash
/cli:execute --tool qwen --enhance "refactor auth module"
# Step 1: Enhanced refactoring plan
@@ -211,12 +211,11 @@ The agent handles all phases internally, including complexity-based tool selecti
| Command | Intent | Code Changes | Auto-Approve |
|---------|--------|--------------|--------------|
| `/cli:analyze` | Understand code | NO | N/A |
| `/cli:chat` | Ask questions | NO | N/A |
| `/cli:execute` | **Implement** | **YES** | **YES** |
| `/cli:analyze` | Understand code | NO | N/A |
| `/cli:chat` | Ask questions | NO | N/A |
| `/cli:execute` | **Implement** | **YES** | **YES** |
## Notes
- Command templates, YOLO mode details, and session management: see intelligent-tools-strategy.md (loaded in memory)
- Output routing and scratchpad details: see workflow-architecture.md
- **⚠️ Code Modification**: This command modifies code - execution logs document changes made
- **Code Modification**: This command modifies code - execution logs document changes made

View File

@@ -0,0 +1,130 @@
---
name: bug-diagnosis
description: Bug diagnosis and fix suggestions using CLI tools with specialized template
argument-hint: "[--agent] [--tool codex|gemini|qwen] [--enhance] [--cd path] bug description"
allowed-tools: SlashCommand(*), Bash(*), Task(*)
---
# CLI Mode: Bug Diagnosis (/cli:mode:bug-diagnosis)
## Purpose
Systematic bug diagnosis with root cause analysis template (`~/.claude/workflows/cli-templates/prompts/development/bug-diagnosis.txt`).
**Tool Selection**:
- **gemini** (default) - Best for bug diagnosis
- **qwen** - Fallback when Gemini unavailable
- **codex** - Alternative for complex bug analysis
## Parameters
- `--tool <gemini|qwen|codex>` - Tool selection (default: gemini)
- `--agent` - Use cli-execution-agent for automated context discovery
- `--enhance` - Enhance bug description with `/enhance-prompt`
- `--cd "path"` - Target directory for focused diagnosis
- `<bug-description>` (Required) - Bug description or error details
## Tool Usage
**Gemini** (Primary):
```bash
# Uses gemini by default, or specify explicitly
--tool gemini
```
**Qwen** (Fallback):
```bash
--tool qwen
```
**Codex** (Alternative):
```bash
--tool codex
```
## Execution Flow
### Standard Mode
1. Parse tool selection (default: gemini)
2. Optional: enhance with `/enhance-prompt`
3. Detect directory from `--cd` or auto-infer
4. Build command with bug-diagnosis template
5. Execute diagnosis (read-only)
6. Save to `.workflow/WFS-[id]/.chat/`
### Agent Mode (`--agent`)
Delegates to agent for intelligent diagnosis:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Bug root cause diagnosis",
prompt=`
Task: ${bug_description}
Mode: bug-diagnosis
Tool: ${tool_flag || 'auto-select'} // gemini|qwen|codex
Directory: ${cd_path || 'auto-detect'}
Template: bug-diagnosis
Agent responsibilities:
1. Context Discovery:
- Locate error traces and logs
- Find related code sections
- Identify data flow paths
2. CLI Command Generation:
- Build Gemini/Qwen/Codex command
- Include diagnostic context
- Apply bug-diagnosis.txt template
3. Execution & Output:
- Execute root cause analysis
- Generate fix suggestions
- Save to .workflow/.chat/
`
)
```
## Core Rules
- **Read-only**: Diagnoses bugs, does NOT modify code
- **Template**: Uses `bug-diagnosis.txt` for root cause analysis
- **Output**: Saves to `.workflow/WFS-[id]/.chat/`
## CLI Command Templates
**Gemini/Qwen** (default, diagnosis only):
```bash
cd [dir] && gemini -p "
PURPOSE: [goal]
TASK: Root cause analysis
MODE: analysis
CONTEXT: @**/*
EXPECTED: Diagnosis, fix plan
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/development/bug-diagnosis.txt)
"
# Qwen: Replace 'gemini' with 'qwen'
```
**Codex** (diagnosis + potential fixes):
```bash
codex -C [dir] --full-auto exec "
PURPOSE: [goal]
TASK: Bug diagnosis
MODE: analysis
CONTEXT: @**/*
EXPECTED: Diagnosis, fix suggestions
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/development/bug-diagnosis.txt)
" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
## Output
- **With session**: `.workflow/WFS-[id]/.chat/bug-diagnosis-[timestamp].md`
- **No session**: `.workflow/.scratchpad/bug-diagnosis-[desc]-[timestamp].md`
## Notes
- Template: `~/.claude/workflows/cli-templates/prompts/development/bug-diagnosis.txt`
- See `intelligent-tools-strategy.md` for detailed tool usage

View File

@@ -1,164 +0,0 @@
---
name: bug-index
description: Bug analysis and fix suggestions using CLI tools
argument-hint: "[--agent] [--tool codex|gemini|qwen] [--enhance] [--cd path] bug description"
allowed-tools: SlashCommand(*), Bash(*), Task(*)
---
# CLI Mode: Bug Index (/cli:mode:bug-index)
## Purpose
Systematic bug analysis with diagnostic template (`~/.claude/prompt-templates/bug-fix.md`).
**Supported Tools**: codex, gemini (default), qwen
**Key Feature**: `--cd` flag for directory-scoped analysis
## Parameters
- `--agent` - Use cli-execution-agent for automated context discovery (5-phase intelligent mode)
- `--tool <codex|gemini|qwen>` - Tool selection (default: gemini, ignored in agent mode)
- `--enhance` - Enhance bug description with `/enhance-prompt` first
- `--cd "path"` - Target directory for focused analysis
- `<bug-description>` (Required) - Bug description or error message
## Execution Flow
### Standard Mode (Default)
1. **Parse tool selection**: Extract `--tool` flag (default: gemini)
2. **If `--enhance` flag present**: Execute `/enhance-prompt "[bug-description]"` first
3. Parse bug description (original or enhanced)
4. Detect target directory (from `--cd` or auto-infer)
5. Build command for selected tool with bug-fix template
6. Execute analysis (read-only, provides fix recommendations)
7. Save to `.workflow/WFS-[id]/.chat/bug-index-[timestamp].md`
### Agent Mode (`--agent` flag)
Delegate bug analysis to `cli-execution-agent` for intelligent debugging with automated context discovery.
**Agent invocation**:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Analyze bug with automated context discovery",
prompt=`
Task: ${bug_description}
Mode: debug (bug analysis)
Tool Preference: ${tool_flag || 'auto-select'}
${cd_flag ? `Directory Scope: ${cd_path}` : ''}
Template: bug-fix
Agent will autonomously:
- Discover bug-related files and error traces
- Build debug prompt with bug-fix template
- Execute analysis and provide fix recommendations
- Save analysis log
`
)
```
The agent handles all phases internally.
## Core Rules
1. **Analysis Only**: This command analyzes bugs and suggests fixes - it does NOT modify code
2. **Enhance First (if flagged)**: Execute `/enhance-prompt` before analysis
3. **Directory Context**: Use `cd` when `--cd` provided or auto-detected
4. **Template Required**: Always use bug-fix template
5. **Session Output**: Save analysis results and fix recommendations to session chat
## Analysis Focus (via Template)
- Root cause investigation and diagnosis
- Code path tracing to locate issues
- Targeted minimal fix recommendations
- Impact assessment of proposed changes
## Command Template
```bash
cd [directory] && gemini -p "
PURPOSE: [bug analysis goal]
TASK: Systematic bug analysis and fix recommendations
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md [entire codebase in directory]
EXPECTED: Root cause analysis, code path tracing, targeted fix suggestions
RULES: $(cat ~/.claude/prompt-templates/bug-fix.md) | Bug: [description]
"
```
## Examples
**Basic Bug Analysis (Standard Mode)**:
```bash
/cli:mode:bug-index "null pointer error in login flow"
# Executes: Gemini with bug-fix template
# Returns: Root cause analysis, fix recommendations
```
**Intelligent Bug Analysis (Agent Mode)**:
```bash
/cli:mode:bug-index --agent "intermittent token validation failure"
# Phase 1: Classifies as debug task, extracts keywords ['token', 'validation', 'failure']
# Phase 2: MCP discovers token validation code, middleware, test files with errors
# Phase 3: Builds debug prompt with bug-fix template + discovered error patterns
# Phase 4: Executes Gemini with comprehensive bug context
# Phase 5: Saves analysis log with detailed fix recommendations
# Returns: Root cause analysis + code path traces + minimal fix suggestions
```
**Standard Template Example**:
```bash
cd . && gemini -p "
PURPOSE: Debug authentication null pointer error
TASK: Identify root cause and provide fix recommendations
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md
EXPECTED: Root cause, code path, minimal fix suggestion, impact assessment
RULES: $(cat ~/.claude/prompt-templates/bug-fix.md) | Bug: null pointer in login flow
"
```
**Directory-Specific**:
```bash
cd src/auth && gemini -p "
PURPOSE: Fix token validation failure
TASK: Analyze token validation bug in auth module
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md
EXPECTED: Validation logic analysis, fix recommendation with minimal changes
RULES: $(cat ~/.claude/prompt-templates/bug-fix.md) | Bug: token validation fails intermittently
"
```
## Bug Investigation Workflow
```bash
# 1. Find bug-related files
rg "error_keyword" --files-with-matches
rg "error|exception" -g "*.ts"
# 2. Execute bug analysis with focused context (analysis only, no code changes)
/cli:mode:bug-index --cd "src/module" "specific error description"
```
## Output Routing
**Output Destination Logic**:
- **Active session exists AND bug is session-relevant**:
- Save to `.workflow/WFS-[id]/.chat/bug-index-[timestamp].md`
- **No active session OR quick debugging**:
- Save to `.workflow/.scratchpad/bug-index-[description]-[timestamp].md`
**Examples**:
- During active session `WFS-payment-fix`, analyzing payment bug → `.chat/bug-index-20250105-143022.md`
- No session, quick null pointer investigation → `.scratchpad/bug-index-null-pointer-20250105-143045.md`
## Notes
- Command templates and file patterns: see intelligent-tools-strategy.md (loaded in memory)
- Scratchpad directory details: see workflow-architecture.md
- Template path: `~/.claude/prompt-templates/bug-fix.md`
- Uses `@**/*` for in CONTEXT field for comprehensive codebase context

View File

@@ -9,162 +9,129 @@ allowed-tools: SlashCommand(*), Bash(*), Task(*)
## Purpose
Systematic code analysis with execution path tracing template (`~/.claude/prompt-templates/code-analysis.md`).
Systematic code analysis with execution path tracing template (`~/.claude/workflows/cli-templates/prompts/analysis/code-execution-tracing.txt`).
**Tool Selection**:
- **gemini** (default) - Best for code analysis and tracing
- **qwen** - Fallback when Gemini unavailable
- **codex** - Alternative for complex analysis tasks
**Supported Tools**: codex, gemini (default), qwen
**Key Feature**: `--cd` flag for directory-scoped analysis
## Parameters
- `--agent` - Use cli-execution-agent for automated context discovery (5-phase intelligent mode)
- `--tool <codex|gemini|qwen>` - Tool selection (default: gemini, ignored in agent mode)
- `--tool <gemini|qwen|codex>` - Tool selection (default: gemini)
- `--agent` - Use cli-execution-agent for automated context discovery
- `--enhance` - Enhance analysis target with `/enhance-prompt` first
- `--cd "path"` - Target directory for focused analysis
- `<analysis-target>` (Required) - Code analysis target or question
## Tool Usage
**Gemini** (Primary):
```bash
/cli:mode:code-analysis --tool gemini "trace auth flow"
# OR (default)
/cli:mode:code-analysis "trace auth flow"
```
**Qwen** (Fallback):
```bash
/cli:mode:code-analysis --tool qwen "trace auth flow"
```
**Codex** (Alternative):
```bash
/cli:mode:code-analysis --tool codex "trace auth flow"
```
## Execution Flow
### Standard Mode (Default)
1. **Parse tool selection**: Extract `--tool` flag (default: gemini)
2. **If `--enhance` flag present**: Execute `/enhance-prompt "[analysis-target]"` first
3. Parse analysis target (original or enhanced)
4. Detect target directory (from `--cd` or auto-infer)
5. Build command for selected tool with code-analysis template
6. Execute deep analysis (read-only, no code modification)
7. Save to `.workflow/WFS-[id]/.chat/code-analysis-[timestamp].md`
1. Parse tool selection (default: gemini)
2. Optional: enhance analysis target with `/enhance-prompt`
3. Detect target directory from `--cd` or auto-infer
4. Build command with execution-tracing template
5. Execute analysis (read-only)
6. Save to `.workflow/WFS-[id]/.chat/code-analysis-[timestamp].md`
### Agent Mode (`--agent` flag)
Delegate code analysis to `cli-execution-agent` for intelligent execution path tracing with automated context discovery.
Delegates to `cli-execution-agent` for intelligent context discovery and analysis.
## Core Rules
- **Read-only**: Analyzes code, does NOT modify files
- **Template**: Uses `code-execution-tracing.txt` for systematic analysis
- **Output**: Saves to `.workflow/WFS-[id]/.chat/`
## CLI Command Templates
**Gemini/Qwen** (default, read-only analysis):
```bash
cd [dir] && gemini -p "
PURPOSE: [goal]
TASK: Execution path tracing
MODE: analysis
CONTEXT: @**/*
EXPECTED: Trace, call diagram
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/code-execution-tracing.txt)
"
# Qwen: Replace 'gemini' with 'qwen'
```
**Codex** (analysis + optimization suggestions):
```bash
codex -C [dir] --full-auto exec "
PURPOSE: [goal]
TASK: Path analysis
MODE: analysis
CONTEXT: @**/*
EXPECTED: Trace, optimization
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/code-execution-tracing.txt)
" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
## Agent Execution Context
When `--agent` flag is used, delegate to agent:
**Agent invocation**:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Analyze code execution paths with automated context discovery",
description="Code execution path analysis",
prompt=`
Task: ${analysis_target}
Mode: code-analysis (execution tracing)
Tool Preference: ${tool_flag || 'auto-select'}
${cd_flag ? `Directory Scope: ${cd_path}` : ''}
Template: code-analysis
Mode: code-analysis
Tool: ${tool_flag || 'auto-select'} // gemini|qwen|codex
Directory: ${cd_path || 'auto-detect'}
Template: code-execution-tracing
Agent will autonomously:
- Discover execution paths and call flows
- Build analysis prompt with code-analysis template
- Execute deep tracing analysis
- Generate call diagrams and save log
Agent responsibilities:
1. Context Discovery:
- Identify entry points and call chains
- Discover related files (MCP/ripgrep)
- Map execution flow paths
2. CLI Command Generation:
- Build Gemini/Qwen/Codex command
- Include discovered context
- Apply code-execution-tracing.txt template
3. Execution & Output:
- Execute analysis with selected tool
- Save to .workflow/WFS-[id]/.chat/
`
)
```
The agent handles all phases internally.
## Output
## Core Rules
1. **Analysis Only**: This command analyzes code and provides insights - it does NOT modify code
2. **Tool Selection**: Use `--tool` value or default to gemini
3. **Enhance First (if flagged)**: Execute `/enhance-prompt` before analysis
4. **Directory Context**: Use `cd` when `--cd` provided or auto-detected
5. **Template Required**: Always use code-analysis template
6. **Session Output**: Save analysis results to session chat
## Analysis Capabilities (via Template)
- **Systematic Code Analysis**: Break down complex code into manageable parts
- **Execution Path Tracing**: Track variable states and call stacks
- **Control & Data Flow**: Understand code logic and data transformations
- **Call Flow Visualization**: Diagram function calling sequences
- **Logical Reasoning**: Explain "why" behind code behavior
- **Debugging Insights**: Identify potential bugs or inefficiencies
## Command Template
```bash
cd [directory] && gemini -p "
PURPOSE: [analysis goal]
TASK: Systematic code analysis and execution path tracing
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md [entire codebase in directory]
EXPECTED: Execution trace, call flow diagram, debugging insights
RULES: $(cat ~/.claude/prompt-templates/code-analysis.md) | Focus on [aspect]
"
```
## Examples
**Basic Code Analysis (Standard Mode)**:
```bash
/cli:mode:code-analysis "trace authentication execution flow"
# Executes: Gemini with code-analysis template
# Returns: Execution trace, call diagram, debugging insights
```
**Intelligent Code Analysis (Agent Mode)**:
```bash
/cli:mode:code-analysis --agent "trace JWT token validation from request to database"
# Phase 1: Classifies as deep analysis, keywords ['jwt', 'token', 'validation', 'database']
# Phase 2: MCP discovers request handler → middleware → service → repository chain
# Phase 3: Builds analysis prompt with code-analysis template + complete call path
# Phase 4: Executes Gemini with traced execution paths
# Phase 5: Saves detailed analysis with call flow diagrams and variable states
# Returns: Complete execution trace + call diagram + data flow analysis
```
**Standard Template Example**:
```bash
cd . && gemini -p "
PURPOSE: Trace authentication execution flow
TASK: Analyze complete auth flow from request to response
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md
EXPECTED: Step-by-step execution trace with call diagram, variable states
RULES: $(cat ~/.claude/prompt-templates/code-analysis.md) | Focus on control flow
"
```
**Directory-Specific Analysis**:
```bash
cd src/auth && gemini -p "
PURPOSE: Understand JWT token validation logic
TASK: Trace JWT validation from middleware to service layer
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md
EXPECTED: Validation flow diagram, token lifecycle analysis
RULES: $(cat ~/.claude/prompt-templates/code-analysis.md) | Focus on security
"
```
## Code Tracing Workflow
```bash
# 1. Find entry points and related files
rg "function.*authenticate|class.*AuthService" --files-with-matches
rg "authenticate|login" -g "*.ts"
# 2. Build call graph understanding
# entry → middleware → service → repository
# 3. Execute deep analysis (analysis only, no code changes)
/cli:mode:code-analysis --cd "src" "trace execution from entry point"
```
## Output Routing
**Output Destination Logic**:
- **Active session exists AND analysis is session-relevant**:
- Save to `.workflow/WFS-[id]/.chat/code-analysis-[timestamp].md`
- **No active session OR standalone analysis**:
- Save to `.workflow/.scratchpad/code-analysis-[description]-[timestamp].md`
**Examples**:
- During active session `WFS-auth-refactor`, analyzing auth flow → `.chat/code-analysis-20250105-143022.md`
- No session, tracing request lifecycle → `.scratchpad/code-analysis-request-flow-20250105-143045.md`
- **With session**: `.workflow/WFS-[id]/.chat/code-analysis-[timestamp].md`
- **No session**: `.workflow/.scratchpad/code-analysis-[desc]-[timestamp].md`
## Notes
- Command templates and file patterns: see intelligent-tools-strategy.md (loaded in memory)
- Scratchpad directory details: see workflow-architecture.md
- Template path: `~/.claude/prompt-templates/code-analysis.md`
- Uses `@**/*` for in CONTEXT field for comprehensive code context
- Template: `~/.claude/workflows/cli-templates/prompts/analysis/code-execution-tracing.txt`
- See `intelligent-tools-strategy.md` for detailed tool usage

View File

@@ -9,160 +9,121 @@ allowed-tools: SlashCommand(*), Bash(*), Task(*)
## Purpose
Comprehensive planning and architecture analysis with strategic planning template (`~/.claude/prompt-templates/plan.md`).
Strategic software architecture planning template (`~/.claude/workflows/cli-templates/prompts/planning/architecture-planning.txt`).
**Supported Tools**: codex, gemini (default), qwen
**Key Feature**: `--cd` flag for directory-scoped planning
**Tool Selection**:
- **gemini** (default) - Best for architecture planning
- **qwen** - Fallback when Gemini unavailable
- **codex** - Alternative for implementation planning
## Parameters
- `--agent` - Use cli-execution-agent for automated context discovery (5-phase intelligent mode)
- `--tool <codex|gemini|qwen>` - Tool selection (default: gemini, ignored in agent mode)
- `--enhance` - Enhance topic with `/enhance-prompt` first
- `--tool <gemini|qwen|codex>` - Tool selection (default: gemini)
- `--agent` - Use cli-execution-agent for automated context discovery
- `--enhance` - Enhance task with `/enhance-prompt`
- `--cd "path"` - Target directory for focused planning
- `<topic>` (Required) - Planning topic or architectural question
- `<planning-task>` (Required) - Architecture planning task or modification requirements
## Tool Usage
**Gemini** (Primary):
```bash
--tool gemini # or omit (default)
```
**Qwen** (Fallback):
```bash
--tool qwen
```
**Codex** (Alternative):
```bash
--tool codex
```
## Execution Flow
### Standard Mode (Default)
### Standard Mode
1. Parse tool selection (default: gemini)
2. Optional: enhance with `/enhance-prompt`
3. Detect directory from `--cd` or auto-infer
4. Build command with architecture-planning template
5. Execute planning (read-only, no code generation)
6. Save to `.workflow/WFS-[id]/.chat/`
1. **Parse tool selection**: Extract `--tool` flag (default: gemini)
2. **If `--enhance` flag present**: Execute `/enhance-prompt "[topic]"` first
3. Parse topic (original or enhanced)
4. Detect target directory (from `--cd` or auto-infer)
5. Build command for selected tool with planning template
6. Execute analysis (read-only, no code modification)
7. Save to `.workflow/WFS-[id]/.chat/plan-[timestamp].md`
### Agent Mode (`--agent`)
### Agent Mode (`--agent` flag)
Delegates to agent for intelligent planning:
Delegate planning to `cli-execution-agent` for intelligent strategic planning with automated architecture discovery.
**Agent invocation**:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Create strategic plan with automated architecture discovery",
description="Architecture modification planning",
prompt=`
Task: ${planning_topic}
Mode: plan (strategic planning)
Tool Preference: ${tool_flag || 'auto-select'}
${cd_flag ? `Directory Scope: ${cd_path}` : ''}
Template: plan
Task: ${planning_task}
Mode: architecture-planning
Tool: ${tool_flag || 'auto-select'} // gemini|qwen|codex
Directory: ${cd_path || 'auto-detect'}
Template: architecture-planning
Agent will autonomously:
- Discover project structure and existing architecture
- Build planning prompt with plan template
- Execute strategic planning analysis
- Generate implementation roadmap and save
Agent responsibilities:
1. Context Discovery:
- Analyze current architecture
- Identify affected components
- Map dependencies and impacts
2. CLI Command Generation:
- Build Gemini/Qwen/Codex command
- Include architecture context
- Apply architecture-planning.txt template
3. Execution & Output:
- Execute strategic planning
- Generate modification plan
- Save to .workflow/.chat/
`
)
```
The agent handles all phases internally.
## Core Rules
1. **Analysis Only**: This command provides planning recommendations and insights - it does NOT modify code
2. **Enhance First (if flagged)**: Execute `/enhance-prompt` before planning
3. **Directory Context**: Use `cd` when `--cd` provided or auto-detected
4. **Template Required**: Always use planning template
5. **Session Output**: Save analysis results to session chat
- **Planning only**: Creates modification plans, does NOT generate code
- **Template**: Uses `architecture-planning.txt` for strategic planning
- **Output**: Saves to `.workflow/WFS-[id]/.chat/`
## Planning Capabilities (via Template)
- Strategic architecture insights and recommendations
- Implementation roadmaps and suggestions
- Key technical decisions analysis
- Risk assessment
- Resource planning
## Command Template
## CLI Command Templates
**Gemini/Qwen** (default, planning only):
```bash
cd [directory] && gemini -p "
PURPOSE: [planning goal from topic]
TASK: Comprehensive planning and architecture analysis
cd [dir] && gemini -p "
PURPOSE: [goal]
TASK: Architecture planning
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md [entire codebase in directory]
EXPECTED: Strategic insights, implementation recommendations, key decisions
RULES: $(cat ~/.claude/prompt-templates/plan.md) | Focus on [topic area]
CONTEXT: @**/*
EXPECTED: Modification plan, impact analysis
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/planning/architecture-planning.txt)
"
# Qwen: Replace 'gemini' with 'qwen'
```
## Examples
**Basic Planning Analysis (Standard Mode)**:
**Codex** (planning + implementation guidance):
```bash
/cli:mode:plan "design user dashboard architecture"
# Executes: Gemini with planning template
# Returns: Architecture recommendations, component design, roadmap
```
**Intelligent Planning (Agent Mode)**:
```bash
/cli:mode:plan --agent "design microservices architecture for payment system"
# Phase 1: Classifies as architectural planning, keywords ['microservices', 'payment', 'architecture']
# Phase 2: MCP discovers existing services, payment flows, integration patterns
# Phase 3: Builds planning prompt with plan template + current architecture context
# Phase 4: Executes Gemini with comprehensive project understanding
# Phase 5: Saves planning document with implementation roadmap and migration strategy
# Returns: Strategic architecture plan + implementation roadmap + risk assessment
```
**Standard Template Example**:
```bash
cd . && gemini -p "
PURPOSE: Design user dashboard architecture
TASK: Plan dashboard component structure and data flow
codex -C [dir] --full-auto exec "
PURPOSE: [goal]
TASK: Architecture planning
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md
EXPECTED: Architecture recommendations, component design, data flow diagram
RULES: $(cat ~/.claude/prompt-templates/plan.md) | Focus on scalability
"
CONTEXT: @**/*
EXPECTED: Plan, implementation roadmap
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/planning/architecture-planning.txt)
" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
**Directory-Specific Planning**:
```bash
cd src/api && gemini -p "
PURPOSE: Plan API refactoring strategy
TASK: Analyze current API structure and recommend improvements
MODE: analysis
CONTEXT: @CLAUDE.md @**/*CLAUDE.md
EXPECTED: Refactoring roadmap, breaking change analysis, migration plan
RULES: $(cat ~/.claude/prompt-templates/plan.md) | Maintain backward compatibility
"
```
## Output
## Planning Workflow
```bash
# 1. Discover project structure
~/.claude/scripts/get_modules_by_depth.sh
find . -name "*.ts" -type f
# 2. Gather existing architecture info
rg "architecture|design" --files-with-matches
# 3. Execute planning analysis (analysis only, no code changes)
/cli:mode:plan "topic for strategic planning"
```
## Output Routing
**Output Destination Logic**:
- **Active session exists AND planning is session-relevant**:
- Save to `.workflow/WFS-[id]/.chat/plan-[timestamp].md`
- **No active session OR exploratory planning**:
- Save to `.workflow/.scratchpad/plan-[description]-[timestamp].md`
**Examples**:
- During active session `WFS-dashboard`, planning dashboard architecture → `.chat/plan-20250105-143022.md`
- No session, exploring new feature idea → `.scratchpad/plan-feature-idea-20250105-143045.md`
- **With session**: `.workflow/WFS-[id]/.chat/plan-[timestamp].md`
- **No session**: `.workflow/.scratchpad/plan-[desc]-[timestamp].md`
## Notes
- Command templates and file patterns: see intelligent-tools-strategy.md (loaded in memory)
- Scratchpad directory details: see workflow-architecture.md
- Template path: `~/.claude/prompt-templates/plan.md`
- Uses `@**/*` for in CONTEXT field for comprehensive project context
- Template: `~/.claude/workflows/cli-templates/prompts/planning/architecture-planning.txt`
- See `intelligent-tools-strategy.md` for detailed tool usage

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,182 @@
---
name: load-skill-memory
description: Activate SKILL package (auto-detect or manual) and load documentation based on task intent
argument-hint: "[skill_name] \"task intent description\""
allowed-tools: Bash(*), Read(*), Skill(*)
---
# Memory Load SKILL Command (/memory:load-skill-memory)
## 1. Overview
The `memory:load-skill-memory` command **activates SKILL package** (auto-detect from task or manual specification) and intelligently loads documentation based on user's task intent. The system automatically determines which documentation files to read based on the intent description.
**Core Philosophy**:
- **Flexible Activation**: Auto-detect skill from task description/paths, or user explicitly specifies
- **Intent-Driven Loading**: System analyzes task intent to determine documentation scope
- **Intelligent Selection**: Automatically chooses appropriate documentation level and modules
- **Direct Context Loading**: Loads selected documentation into conversation memory
**When to Use**:
- Manually activate a known SKILL package for a specific task
- Load SKILL context when system hasn't auto-triggered it
- Force reload SKILL documentation with specific intent focus
**Note**: Normal SKILL activation happens automatically via description triggers or path mentions (system extracts skill name from file paths for intelligent triggering). Use this command only when manual activation is needed.
## 2. Parameters
- `[skill_name]` (Optional): Name of SKILL package to activate
- If omitted: System auto-detects from task description or file paths
- If specified: Direct activation of named SKILL package
- Example: `my_project`, `api_service`
- Must match directory name under `.claude/skills/`
- `"task intent description"` (Required): Description of what you want to do
- Used for both: auto-detection (if skill_name omitted) and documentation scope selection
- **Analysis tasks**: "分析builder pattern实现", "理解参数系统架构"
- **Modification tasks**: "修改workflow逻辑", "增强thermal template功能"
- **Learning tasks**: "学习接口设计模式", "了解测试框架使用"
- **With paths**: "修改D:\projects\my_project\src\auth.py的认证逻辑" (auto-extracts `my_project`)
## 3. Execution Flow
### Step 1: Determine SKILL Name (if not provided)
**Auto-Detection Strategy** (when skill_name parameter is omitted):
1. **Path Extraction**: Scan task description for file paths
- Extract potential project names from path segments
- Example: `"修改D:\projects\my_project\src\auth.py"` → extracts `my_project`
2. **Keyword Matching**: Match task keywords against SKILL descriptions
- Search for project-specific terms, domain keywords
3. **Validation**: Check if extracted name matches `.claude/skills/{skill_name}/`
**Result**: Either uses provided skill_name or auto-detected name for activation
### Step 2: Activate SKILL and Analyze Intent
**Activate SKILL Package**:
```javascript
Skill(command: "${skill_name}") // Uses provided or auto-detected name
```
**What Happens After Activation**:
1. If SKILL exists in memory: System reads `.claude/skills/${skill_name}/SKILL.md`
2. If SKILL not found in memory: Error - SKILL package doesn't exist
3. SKILL description triggers are loaded into memory
4. Progressive loading mechanism becomes available
5. Documentation structure is now accessible
**Intent Analysis**:
Based on task intent description, system determines:
- **Action type**: analyzing, modifying, learning
- **Scope**: specific module, architecture overview, complete system
- **Depth**: quick reference, detailed API, full documentation
### Step 3: Intelligent Documentation Loading
**Loading Strategy**:
The system automatically selects documentation based on intent keywords:
1. **Quick Understanding** ("了解", "快速理解", "什么是"):
- Load: Level 0 (README.md only, ~2K tokens)
- Use case: Quick overview of capabilities
2. **Specific Module Analysis** ("分析XXX模块", "理解XXX实现"):
- Load: Module-specific README.md + API.md (~5K tokens)
- Use case: Deep dive into specific component
3. **Architecture Review** ("架构", "设计模式", "整体结构"):
- Load: README.md + ARCHITECTURE.md (~10K tokens)
- Use case: System design understanding
4. **Implementation/Modification** ("修改", "增强", "实现"):
- Load: Relevant module docs + EXAMPLES.md (~15K tokens)
- Use case: Code modification with examples
5. **Comprehensive Learning** ("学习", "完整了解", "深入理解"):
- Load: Level 3 (All documentation, ~40K tokens)
- Use case: Complete system mastery
**Documentation Loaded into Memory**:
After loading, the selected documentation content is available in conversation memory for subsequent operations.
## 4. Usage Examples
### Example 1: Manual Specification
**User Command**:
```bash
/memory:load-skill-memory my_project "修改认证模块增加OAuth支持"
```
**Execution**:
```javascript
// Step 1: Use provided skill_name
skill_name = "my_project" // Directly from parameter
// Step 2: Activate SKILL
Skill(command: "my_project")
// Step 3: Intent Analysis
Keywords: ["修改", "认证模块", "增加", "OAuth"]
Action: modifying (implementation)
Scope: auth module + examples
// Load documentation based on intent
Read(.workflow/docs/my_project/auth/README.md)
Read(.workflow/docs/my_project/auth/API.md)
Read(.workflow/docs/my_project/EXAMPLES.md)
```
### Example 2: Auto-Detection from Path
**User Command**:
```bash
/memory:load-skill-memory "修改D:\projects\my_project\src\services\api.py的接口逻辑"
```
**Execution**:
```javascript
// Step 1: Auto-detect skill_name from path
Path detected: "D:\projects\my_project\src\services\api.py"
Extracted: "my_project"
Validated: .claude/skills/my_project/ exists
skill_name = "my_project"
// Step 2: Activate SKILL
Skill(command: "my_project")
// Step 3: Intent Analysis
Keywords: ["修改", "services", "接口逻辑"]
Action: modifying (implementation)
Scope: services module + examples
// Load documentation based on intent
Read(.workflow/docs/my_project/services/README.md)
Read(.workflow/docs/my_project/services/API.md)
Read(.workflow/docs/my_project/EXAMPLES.md)
```
## 5. Intent Keyword Mapping
**Quick Reference**:
- **Triggers**: "了解", "快速", "什么是", "简介"
- **Loads**: README.md only (~2K)
**Module-Specific**:
- **Triggers**: "XXX模块", "XXX组件", "分析XXX"
- **Loads**: Module README + API (~5K)
**Architecture**:
- **Triggers**: "架构", "设计", "整体结构", "系统设计"
- **Loads**: README + ARCHITECTURE (~10K)
**Implementation**:
- **Triggers**: "修改", "增强", "实现", "开发", "集成"
- **Loads**: Relevant module + EXAMPLES (~15K)
**Comprehensive**:
- **Triggers**: "完整", "深入", "全面", "学习整个"
- **Loads**: All documentation (~40K)

View File

@@ -99,9 +99,9 @@ Task(
prompt=`
## Mission: Load Project Memory Context
**Task Context**: "${task_description}"
**Mode**: Read-only analysis
**Tool**: ${tool || 'gemini'}
**Task**: Load project memory context for: "${task_description}"
**Mode**: analysis
**Tool Preference**: ${tool || 'gemini'}
## Execution Steps

View File

@@ -0,0 +1,534 @@
---
name: skill-memory
description: Generate SKILL package index from project documentation
argument-hint: "[path] [--tool <gemini|qwen|codex>] [--regenerate] [--mode <full|partial>] [--cli-execute]"
allowed-tools: SlashCommand(*), TodoWrite(*), Bash(*), Read(*), Write(*)
---
# Memory SKILL Package Generator
## Orchestrator Role
**Pure Orchestrator**: Execute documentation generation workflow, then generate SKILL.md index. Does NOT create task JSON files.
**Auto-Continue Workflow**: This command runs **fully autonomously** once triggered. Each phase completes and automatically triggers the next phase without user interaction.
**Execution Paths**:
- **Full Path**: All 4 phases (no existing docs OR `--regenerate` specified)
- **Skip Path**: Phase 1 → Phase 4 (existing docs found AND no `--regenerate` flag)
- **Phase 4 Always Executes**: SKILL.md index is never skipped, always generated or updated
## Core Rules
1. **Start Immediately**: First action is TodoWrite initialization, second action is Phase 1 execution
2. **No Task JSON**: This command does not create task JSON files - delegates to /memory:docs
3. **Parse Every Output**: Extract required data from each command output (session_id, task_count, file paths)
4. **Auto-Continue**: After completing each phase, update TodoWrite and immediately execute next phase
5. **Track Progress**: Update TodoWrite after EVERY phase completion before starting next phase
6. **Direct Generation**: Phase 4 directly generates SKILL.md using Write tool
7. **No Manual Steps**: User should never be prompted for decisions between phases
---
## 4-Phase Execution
### Phase 1: Prepare Arguments
**Goal**: Parse command arguments and check existing documentation
**Step 1: Get Target Path and Project Name**
```bash
# Get current directory (or use provided path)
bash(pwd)
# Get project name from directory
bash(basename "$(pwd)")
# Get project root
bash(git rev-parse --show-toplevel 2>/dev/null || pwd)
```
**Output**:
- `target_path`: `/d/my_project`
- `project_name`: `my_project`
- `project_root`: `/d/my_project`
**Step 2: Set Default Parameters**
```bash
# Default values (use these unless user specifies otherwise):
# - tool: "gemini"
# - mode: "full"
# - regenerate: false (no --regenerate flag)
# - cli_execute: false (no --cli-execute flag)
```
**Step 3: Check Existing Documentation**
```bash
# Check if docs directory exists
bash(test -d .workflow/docs/my_project && echo "exists" || echo "not_exists")
# Count existing documentation files
bash(find .workflow/docs/my_project -name "*.md" 2>/dev/null | wc -l || echo 0)
```
**Output**:
- `docs_exists`: `exists` or `not_exists`
- `existing_docs`: `5` (or `0` if no docs)
**Step 4: Determine Execution Path**
**Decision Logic**:
```javascript
if (existing_docs > 0 && !regenerate_flag) {
// Documentation exists and no regenerate flag
SKIP_DOCS_GENERATION = true
message = "Documentation already exists, skipping Phase 2 and Phase 3. Use --regenerate to force regeneration."
} else if (regenerate_flag) {
// Force regeneration: delete existing docs
bash(rm -rf .workflow/docs/my_project 2>/dev/null || true)
SKIP_DOCS_GENERATION = false
message = "Regenerating documentation from scratch."
} else {
// No existing docs
SKIP_DOCS_GENERATION = false
message = "No existing documentation found, generating new documentation."
}
```
**Summary Variables**:
- `PROJECT_NAME`: `my_project`
- `TARGET_PATH`: `/d/my_project`
- `DOCS_PATH`: `.workflow/docs/my_project`
- `TOOL`: `gemini` (default) or user-specified
- `MODE`: `full` (default) or user-specified
- `CLI_EXECUTE`: `false` (default) or `true` if --cli-execute flag
- `REGENERATE`: `false` (default) or `true` if --regenerate flag
- `EXISTING_DOCS`: Count of existing documentation files
- `SKIP_DOCS_GENERATION`: `true` if skipping Phase 2/3, `false` otherwise
**Completion & TodoWrite**:
- If `SKIP_DOCS_GENERATION = true`: Mark phase 1 completed, phase 2&3 completed (skipped), phase 4 in_progress
- If `SKIP_DOCS_GENERATION = false`: Mark phase 1 completed, phase 2 in_progress
**Next Action**:
- If skipping: Display skip message → Jump to Phase 4 (SKILL.md generation)
- If not skipping: Display preparation results → Continue to Phase 2 (documentation planning)
---
### Phase 2: Call /memory:docs
**Skip Condition**: This phase is **skipped if SKIP_DOCS_GENERATION = true** (documentation already exists without --regenerate flag)
**Goal**: Trigger documentation generation workflow
**Command**:
```bash
SlashCommand(command="/memory:docs [targetPath] --tool [tool] --mode [mode] [--cli-execute]")
```
**Example**:
```bash
/memory:docs /d/my_app --tool gemini --mode full
/memory:docs /d/my_app --tool gemini --mode full --cli-execute
```
**Note**: The `--regenerate` flag is handled in Phase 1 by deleting existing documentation. This command always calls `/memory:docs` without the regenerate flag, relying on docs.md's built-in update detection.
**Parse Output**:
- Extract session ID: `WFS-docs-[timestamp]` (store as `docsSessionId`)
- Extract task count (store as `taskCount`)
**Completion Criteria**:
- `/memory:docs` command executed successfully
- Session ID extracted and stored
- Task count retrieved
- Task files created in `.workflow/[docsSessionId]/.task/`
- workflow-session.json exists
**TodoWrite**: Mark phase 2 completed, phase 3 in_progress
**Next Action**: Display docs planning results (session ID, task count) → Auto-continue to Phase 3
---
### Phase 3: Execute Documentation Generation
**Skip Condition**: This phase is **skipped if SKIP_DOCS_GENERATION = true** (documentation already exists without --regenerate flag)
**Goal**: Execute documentation generation tasks
**Command**:
```bash
SlashCommand(command="/workflow:execute")
```
**Note**: `/workflow:execute` automatically discovers active session from Phase 2
**Completion Criteria**:
- `/workflow:execute` command executed successfully
- Documentation files generated in `.workflow/docs/[projectName]/`
- All tasks marked as completed in session
- At minimum: module documentation files exist (API.md and/or README.md)
- For full mode: Project README, ARCHITECTURE, EXAMPLES files generated
**TodoWrite**: Mark phase 3 completed, phase 4 in_progress
**Next Action**: Display execution results (file count, module count) → Auto-continue to Phase 4
---
### Phase 4: Generate SKILL.md Index
**Note**: This phase is **NEVER skipped** - it always executes to generate or update the SKILL index.
**Step 1: Read Key Files** (Use Read tool)
- `.workflow/docs/{project_name}/README.md` (required)
- `.workflow/docs/{project_name}/ARCHITECTURE.md` (optional)
**Step 2: Discover Structure**
```bash
bash(find .workflow/docs/{project_name} -name "*.md" | sed 's|.workflow/docs/{project_name}/||' | awk -F'/' '{if(NF>=2) print $1"/"$2}' | sort -u)
```
**Step 3: Generate Intelligent Description**
Extract from README + structure: Function (capabilities), Modules (names), Keywords (API/CLI/auth/etc.)
**Format**: `{Project} {core capabilities} (located at {project_path}). Load this SKILL when analyzing, modifying, or learning about {domain_description} or files under this path, especially when no relevant context exists in memory.`
**Key Elements**:
- **Path Reference**: Use `TARGET_PATH` from Phase 1 for precise location identification
- **Domain Description**: Extract human-readable domain/feature area from README (e.g., "workflow management", "thermal modeling")
- **Trigger Optimization**: Include project path, emphasize "especially when no relevant context exists in memory"
- **Action Coverage**: analyzing (分析), modifying (修改), learning (了解)
**Example**: "Workflow orchestration system with CLI tools and documentation generation (located at /d/Claude_dms3). Load this SKILL when analyzing, modifying, or learning about workflow management or files under this path, especially when no relevant context exists in memory."
**Step 4: Write SKILL.md** (Use Write tool)
```bash
bash(mkdir -p .claude/skills/{project_name})
```
`.claude/skills/{project_name}/SKILL.md`:
```yaml
---
name: {project_name}
description: {intelligent description from Step 3}
version: 1.0.0
---
# {Project Name} SKILL Package
## Documentation: `../../../.workflow/docs/{project_name}/`
## Progressive Loading
### Level 0: Quick Start (~2K)
- [README](../../../.workflow/docs/{project_name}/README.md)
### Level 1: Core Modules (~8K)
{Module READMEs}
### Level 2: Complete (~25K)
All modules + [Architecture](../../../.workflow/docs/{project_name}/ARCHITECTURE.md)
### Level 3: Deep Dive (~40K)
Everything + [Examples](../../../.workflow/docs/{project_name}/EXAMPLES.md)
```
**Completion Criteria**:
- SKILL.md file created at `.claude/skills/{project_name}/SKILL.md`
- Intelligent description generated from documentation
- Progressive loading levels (0-3) properly structured
- Module index includes all documented modules
- All file references use relative paths
**TodoWrite**: Mark phase 4 completed
**Final Action**: Report completion summary to user
**Return to User**:
```
SKILL Package Generation Complete
Project: {project_name}
Documentation: .workflow/docs/{project_name}/ ({doc_count} files)
SKILL Index: .claude/skills/{project_name}/SKILL.md
Generated:
- {task_count} documentation tasks completed
- SKILL.md with progressive loading (4 levels)
- Module index with {module_count} modules
Usage:
- Load Level 0: Quick project overview (~2K tokens)
- Load Level 1: Core modules (~8K tokens)
- Load Level 2: Complete docs (~25K tokens)
- Load Level 3: Everything (~40K tokens)
```
---
## Implementation Details
### Critical Rules
1. **No User Prompts Between Phases**: Never ask user questions or wait for input between phases
2. **Immediate Phase Transition**: After TodoWrite update, immediately execute next phase command
3. **Status-Driven Execution**: Check TodoList status after each phase:
- If next task is "pending" → Mark it "in_progress" and execute
- If all tasks are "completed" → Report final summary
4. **Phase Completion Pattern**:
```
Phase N completes → Update TodoWrite (N=completed, N+1=in_progress) → Execute Phase N+1
```
### TodoWrite Patterns
#### Initialization (Before Phase 1)
**FIRST ACTION**: Create TodoList with all 4 phases
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "in_progress", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "pending", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "pending", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "pending", "activeForm": "Generating SKILL.md"}
]})
```
**SECOND ACTION**: Execute Phase 1 immediately
#### Full Path (SKIP_DOCS_GENERATION = false)
**After Phase 1**:
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "completed", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "in_progress", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "pending", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "pending", "activeForm": "Generating SKILL.md"}
]})
// Auto-continue to Phase 2
```
**After Phase 2**:
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "completed", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "completed", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "in_progress", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "pending", "activeForm": "Generating SKILL.md"}
]})
// Auto-continue to Phase 3
```
**After Phase 3**:
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "completed", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "completed", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "completed", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "in_progress", "activeForm": "Generating SKILL.md"}
]})
// Auto-continue to Phase 4
```
**After Phase 4**:
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "completed", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "completed", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "completed", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "completed", "activeForm": "Generating SKILL.md"}
]})
// Report completion summary to user
```
#### Skip Path (SKIP_DOCS_GENERATION = true)
**After Phase 1** (detects existing docs, skips Phase 2 & 3):
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "completed", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "completed", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "completed", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "in_progress", "activeForm": "Generating SKILL.md"}
]})
// Display skip message: "Documentation already exists, skipping Phase 2 and Phase 3. Use --regenerate to force regeneration."
// Jump directly to Phase 4
```
**After Phase 4**:
```javascript
TodoWrite({todos: [
{"content": "Parse arguments and prepare", "status": "completed", "activeForm": "Parsing arguments"},
{"content": "Call /memory:docs to plan documentation", "status": "completed", "activeForm": "Calling /memory:docs"},
{"content": "Execute documentation generation", "status": "completed", "activeForm": "Executing documentation"},
{"content": "Generate SKILL.md index", "status": "completed", "activeForm": "Generating SKILL.md"}
]})
// Report completion summary to user
```
### Execution Flow Diagrams
#### Full Path Flow
```
User triggers command
[TodoWrite] Initialize 4 phases (Phase 1 = in_progress)
[Execute] Phase 1: Parse arguments
[TodoWrite] Phase 1 = completed, Phase 2 = in_progress
[Execute] Phase 2: Call /memory:docs
[TodoWrite] Phase 2 = completed, Phase 3 = in_progress
[Execute] Phase 3: Call /workflow:execute
[TodoWrite] Phase 3 = completed, Phase 4 = in_progress
[Execute] Phase 4: Generate SKILL.md
[TodoWrite] Phase 4 = completed
[Report] Display completion summary
```
#### Skip Path Flow
```
User triggers command
[TodoWrite] Initialize 4 phases (Phase 1 = in_progress)
[Execute] Phase 1: Parse arguments, detect existing docs
[TodoWrite] Phase 1 = completed, Phase 2&3 = completed (skipped), Phase 4 = in_progress
[Display] Skip message: "Documentation already exists, skipping Phase 2 and Phase 3"
[Execute] Phase 4: Generate SKILL.md (always runs)
[TodoWrite] Phase 4 = completed
[Report] Display completion summary
```
### Error Handling
- If any phase fails, mark it as "in_progress" (not completed)
- Report error details to user
- Do NOT auto-continue to next phase on failure
---
## Parameters
```bash
/memory:skill-memory [path] [--tool <gemini|qwen|codex>] [--regenerate] [--mode <full|partial>] [--cli-execute]
```
- **path**: Target directory (default: current directory)
- **--tool**: CLI tool for documentation (default: gemini)
- `gemini`: Comprehensive documentation
- `qwen`: Architecture analysis
- `codex`: Implementation validation
- **--regenerate**: Force regenerate all documentation
- When enabled: Deletes existing `.workflow/docs/{project_name}/` before regeneration
- Ensures fresh documentation from source code
- **--mode**: Documentation mode (default: full)
- `full`: Complete docs (modules + README + ARCHITECTURE + EXAMPLES)
- `partial`: Module docs only
- **--cli-execute**: Enable CLI-based documentation generation (optional)
- When enabled: CLI generates docs directly in implementation_approach
- When disabled (default): Agent generates documentation content
---
## Examples
### Example 1: Generate SKILL Package (Default)
```bash
/memory:skill-memory
```
**Workflow**:
1. Phase 1: Detects current directory, checks existing docs
2. Phase 2: Calls `/memory:docs . --tool gemini --mode full` (Agent Mode)
3. Phase 3: Executes documentation generation via `/workflow:execute`
4. Phase 4: Generates SKILL.md at `.claude/skills/{project_name}/SKILL.md`
### Example 2: Regenerate with Qwen
```bash
/memory:skill-memory /d/my_app --tool qwen --regenerate
```
**Workflow**:
1. Phase 1: Parses target path, detects regenerate flag, deletes existing docs
2. Phase 2: Calls `/memory:docs /d/my_app --tool qwen --mode full`
3. Phase 3: Executes documentation regeneration
4. Phase 4: Generates updated SKILL.md
### Example 3: Partial Mode (Modules Only)
```bash
/memory:skill-memory --mode partial
```
**Workflow**:
1. Phase 1: Detects partial mode
2. Phase 2: Calls `/memory:docs . --tool gemini --mode partial` (Agent Mode)
3. Phase 3: Executes module documentation only
4. Phase 4: Generates SKILL.md with module-only index
### Example 4: CLI Execute Mode
```bash
/memory:skill-memory --cli-execute
```
**Workflow**:
1. Phase 1: Detects CLI execute mode
2. Phase 2: Calls `/memory:docs . --tool gemini --mode full --cli-execute` (CLI Mode)
3. Phase 3: Executes CLI-based documentation generation
4. Phase 4: Generates SKILL.md at `.claude/skills/{project_name}/SKILL.md`
### Example 5: Skip Path (Existing Docs)
```bash
/memory:skill-memory
```
**Scenario**: Documentation already exists in `.workflow/docs/{project_name}/`
**Workflow**:
1. Phase 1: Detects existing docs (5 files), sets SKIP_DOCS_GENERATION = true
2. Display: "Documentation already exists, skipping Phase 2 and Phase 3. Use --regenerate to force regeneration."
3. Phase 4: Generates or updates SKILL.md index only (~5-10x faster)
---
## Benefits
- **Pure Orchestrator**: No task JSON generation, delegates to /memory:docs
- **Auto-Continue**: Autonomous 4-phase execution without user interaction
- **Intelligent Skip**: Detects existing docs and skips regeneration for fast SKILL updates
- **Always Fresh Index**: Phase 4 always executes to ensure SKILL.md stays synchronized
- **Simplified**: ~70% less code than previous version
- **Maintainable**: Changes to /memory:docs automatically apply
- **Direct Generation**: Phase 4 directly writes SKILL.md
- **Flexible**: Supports all /memory:docs options (tool, mode, cli-execute)
## Architecture
```
skill-memory (orchestrator)
├─ Phase 1: Prepare (bash commands, skip decision)
├─ Phase 2: /memory:docs (task planning, skippable)
├─ Phase 3: /workflow:execute (task execution, skippable)
└─ Phase 4: Write SKILL.md (direct file generation, always runs)
No task JSON created by this command
All documentation tasks managed by /memory:docs
Smart skip logic: 5-10x faster when docs exist
```

View File

@@ -0,0 +1,477 @@
---
name: tech-research
description: Generate tech stack SKILL packages using Exa research via agent delegation
argument-hint: "[session-id | tech-stack-name] [--regenerate] [--tool <gemini|qwen>]"
allowed-tools: SlashCommand(*), TodoWrite(*), Bash(*), Read(*), Write(*), Task(*)
---
# Tech Stack Research SKILL Generator
## Overview
**Pure Orchestrator with Agent Delegation**: Prepares context paths and delegates ALL work to agent. Agent produces files directly.
**Auto-Continue Workflow**: Runs fully autonomously once triggered. Each phase completes and automatically triggers the next phase.
**Execution Paths**:
- **Full Path**: All 3 phases (no existing SKILL OR `--regenerate` specified)
- **Skip Path**: Phase 1 → Phase 3 (existing SKILL found AND no `--regenerate` flag)
- **Phase 3 Always Executes**: SKILL index is always generated or updated
**Agent Responsibility**:
- Agent does ALL the work: context reading, Exa research, content synthesis, file writing
- Orchestrator only provides context paths and waits for completion
## Core Rules
1. **Start Immediately**: First action is TodoWrite initialization, second action is Phase 1 execution
2. **Context Path Delegation**: Pass session directory or tech stack name to agent, let agent do discovery
3. **Agent Produces Files**: Agent directly writes all module files, orchestrator does NOT parse agent output
4. **Auto-Continue**: After completing each phase, update TodoWrite and immediately execute next phase
5. **No User Prompts**: Never ask user questions or wait for input between phases
6. **Track Progress**: Update TodoWrite after EVERY phase completion before starting next phase
7. **Lightweight Index**: Phase 3 only generates SKILL.md index by reading existing files
---
## 3-Phase Execution
### Phase 1: Prepare Context Paths
**Goal**: Detect input mode, prepare context paths for agent, check existing SKILL
**Input Mode Detection**:
```bash
# Get input parameter
input="$1"
# Detect mode
if [[ "$input" == WFS-* ]]; then
MODE="session"
SESSION_ID="$input"
CONTEXT_PATH=".workflow/${SESSION_ID}"
else
MODE="direct"
TECH_STACK_NAME="$input"
CONTEXT_PATH="$input" # Pass tech stack name as context
fi
```
**Check Existing SKILL**:
```bash
# For session mode, peek at session to get tech stack name
if [[ "$MODE" == "session" ]]; then
bash(test -f ".workflow/${SESSION_ID}/workflow-session.json")
Read(.workflow/${SESSION_ID}/workflow-session.json)
# Extract tech_stack_name (minimal extraction)
fi
# Normalize and check
normalized_name=$(echo "$TECH_STACK_NAME" | tr '[:upper:]' '[:lower:]' | tr ' ' '-')
bash(test -d ".claude/skills/${normalized_name}" && echo "exists" || echo "not_exists")
bash(find ".claude/skills/${normalized_name}" -name "*.md" 2>/dev/null | wc -l || echo 0)
```
**Skip Decision**:
```javascript
if (existing_files > 0 && !regenerate_flag) {
SKIP_GENERATION = true
message = "Tech stack SKILL already exists, skipping Phase 2. Use --regenerate to force regeneration."
} else if (regenerate_flag) {
bash(rm -rf ".claude/skills/${normalized_name}")
SKIP_GENERATION = false
message = "Regenerating tech stack SKILL from scratch."
} else {
SKIP_GENERATION = false
message = "No existing SKILL found, generating new tech stack documentation."
}
```
**Output Variables**:
- `MODE`: `session` or `direct`
- `SESSION_ID`: Session ID (if session mode)
- `CONTEXT_PATH`: Path to session directory OR tech stack name
- `TECH_STACK_NAME`: Extracted or provided tech stack name
- `SKIP_GENERATION`: Boolean - whether to skip Phase 2
**TodoWrite**:
- If skipping: Mark phase 1 completed, phase 2 completed, phase 3 in_progress
- If not skipping: Mark phase 1 completed, phase 2 in_progress
---
### Phase 2: Agent Produces All Files
**Skip Condition**: Skipped if `SKIP_GENERATION = true`
**Goal**: Delegate EVERYTHING to agent - context reading, Exa research, content synthesis, and file writing
**Agent Task Specification**:
```
Task(
subagent_type: "general-purpose",
description: "Generate tech stack SKILL: {CONTEXT_PATH}",
prompt: "
Generate a complete tech stack SKILL package with Exa research.
**Context Provided**:
- Mode: {MODE}
- Context Path: {CONTEXT_PATH}
**Templates Available**:
- Module Format: ~/.claude/workflows/cli-templates/prompts/tech/tech-module-format.txt
- SKILL Index: ~/.claude/workflows/cli-templates/prompts/tech/tech-skill-index.txt
**Your Responsibilities**:
1. **Extract Tech Stack Information**:
IF MODE == 'session':
- Read `.workflow/{SESSION_ID}/workflow-session.json`
- Read `.workflow/{SESSION_ID}/.process/context-package.json`
- Extract tech_stack: {language, frameworks, libraries}
- Build tech stack name: \"{language}-{framework1}-{framework2}\"
- Example: \"typescript-react-nextjs\"
IF MODE == 'direct':
- Tech stack name = CONTEXT_PATH
- Parse composite: split by '-' delimiter
- Example: \"typescript-react-nextjs\" → [\"typescript\", \"react\", \"nextjs\"]
2. **Execute Exa Research** (4-6 parallel queries):
Base Queries (always execute):
- mcp__exa__get_code_context_exa(query: \"{tech} core principles best practices 2025\", tokensNum: 8000)
- mcp__exa__get_code_context_exa(query: \"{tech} common patterns architecture examples\", tokensNum: 7000)
- mcp__exa__web_search_exa(query: \"{tech} configuration setup tooling 2025\", numResults: 5)
- mcp__exa__get_code_context_exa(query: \"{tech} testing strategies\", tokensNum: 5000)
Component Queries (if composite):
- For each additional component:
mcp__exa__get_code_context_exa(query: \"{main_tech} {component} integration\", tokensNum: 5000)
3. **Read Module Format Template**:
Read template for structure guidance:
```bash
Read(~/.claude/workflows/cli-templates/prompts/tech/tech-module-format.txt)
```
4. **Synthesize Content into 6 Modules**:
Follow template structure from tech-module-format.txt:
- **principles.md** - Core concepts, philosophies (~3K tokens)
- **patterns.md** - Implementation patterns with code examples (~5K tokens)
- **practices.md** - Best practices, anti-patterns, pitfalls (~4K tokens)
- **testing.md** - Testing strategies, frameworks (~3K tokens)
- **config.md** - Setup, configuration, tooling (~3K tokens)
- **frameworks.md** - Framework integration (only if composite, ~4K tokens)
Each module follows template format:
- Frontmatter (YAML)
- Main sections with clear headings
- Code examples from Exa research
- Best practices sections
- References to Exa sources
5. **Write Files Directly**:
```javascript
// Create directory
bash(mkdir -p \".claude/skills/{tech_stack_name}\")
// Write each module file using Write tool
Write({ file_path: \".claude/skills/{tech_stack_name}/principles.md\", content: ... })
Write({ file_path: \".claude/skills/{tech_stack_name}/patterns.md\", content: ... })
Write({ file_path: \".claude/skills/{tech_stack_name}/practices.md\", content: ... })
Write({ file_path: \".claude/skills/{tech_stack_name}/testing.md\", content: ... })
Write({ file_path: \".claude/skills/{tech_stack_name}/config.md\", content: ... })
// Write frameworks.md only if composite
// Write metadata.json
Write({
file_path: \".claude/skills/{tech_stack_name}/metadata.json\",
content: JSON.stringify({
tech_stack_name,
components,
is_composite,
generated_at: timestamp,
source: \"exa-research\",
research_summary: { total_queries, total_sources }
})
})
```
6. **Report Completion**:
Provide summary:
- Tech stack name
- Files created (count)
- Exa queries executed
- Sources consulted
**CRITICAL**:
- MUST read external template files before generating content (step 3 for modules, step 4 for index)
- You have FULL autonomy - read files, execute Exa, synthesize content, write files
- Do NOT return JSON or structured data - produce actual .md files
- Handle errors gracefully (Exa failures, missing files, template read failures)
- If tech stack cannot be determined, ask orchestrator to clarify
"
)
```
**Completion Criteria**:
- Agent task executed successfully
- 5-6 modular files written to `.claude/skills/{tech_stack_name}/`
- metadata.json written
- Agent reports completion
**TodoWrite**: Mark phase 2 completed, phase 3 in_progress
---
### Phase 3: Generate SKILL.md Index
**Note**: This phase **ALWAYS executes** - generates or updates the SKILL index.
**Goal**: Read generated module files and create SKILL.md index with loading recommendations
**Steps**:
1. **Verify Generated Files**:
```bash
bash(find ".claude/skills/${TECH_STACK_NAME}" -name "*.md" -type f | sort)
```
2. **Read metadata.json**:
```javascript
Read(.claude/skills/${TECH_STACK_NAME}/metadata.json)
// Extract: tech_stack_name, components, is_composite, research_summary
```
3. **Read Module Headers** (optional, first 20 lines):
```javascript
Read(.claude/skills/${TECH_STACK_NAME}/principles.md, limit: 20)
// Repeat for other modules
```
4. **Read SKILL Index Template**:
```javascript
Read(~/.claude/workflows/cli-templates/prompts/tech/tech-skill-index.txt)
```
5. **Generate SKILL.md Index**:
Follow template from tech-skill-index.txt with variable substitutions:
- `{TECH_STACK_NAME}`: From metadata.json
- `{MAIN_TECH}`: Primary technology
- `{ISO_TIMESTAMP}`: Current timestamp
- `{QUERY_COUNT}`: From research_summary
- `{SOURCE_COUNT}`: From research_summary
- Conditional sections for composite tech stacks
Template provides structure for:
- Frontmatter with metadata
- Overview and tech stack description
- Module organization (Core/Practical/Config sections)
- Loading recommendations (Quick/Implementation/Complete)
- Usage guidelines and auto-trigger keywords
- Research metadata and version history
6. **Write SKILL.md**:
```javascript
Write({
file_path: `.claude/skills/${TECH_STACK_NAME}/SKILL.md`,
content: generatedIndexMarkdown
})
```
**Completion Criteria**:
- SKILL.md index written
- All module files verified
- Loading recommendations included
**TodoWrite**: Mark phase 3 completed
**Final Report**:
```
Tech Stack SKILL Package Complete
Tech Stack: {TECH_STACK_NAME}
Location: .claude/skills/{TECH_STACK_NAME}/
Files: SKILL.md + 5-6 modules + metadata.json
Exa Research: {queries} queries, {sources} sources
Usage: Skill(command: "{TECH_STACK_NAME}")
```
---
## Implementation Details
### TodoWrite Patterns
**Initialization** (Before Phase 1):
```javascript
TodoWrite({todos: [
{"content": "Prepare context paths", "status": "in_progress", "activeForm": "Preparing context paths"},
{"content": "Agent produces all module files", "status": "pending", "activeForm": "Agent producing files"},
{"content": "Generate SKILL.md index", "status": "pending", "activeForm": "Generating SKILL index"}
]})
```
**Full Path** (SKIP_GENERATION = false):
```javascript
// After Phase 1
TodoWrite({todos: [
{"content": "Prepare context paths", "status": "completed", ...},
{"content": "Agent produces all module files", "status": "in_progress", ...},
{"content": "Generate SKILL.md index", "status": "pending", ...}
]})
// After Phase 2
TodoWrite({todos: [
{"content": "Prepare context paths", "status": "completed", ...},
{"content": "Agent produces all module files", "status": "completed", ...},
{"content": "Generate SKILL.md index", "status": "in_progress", ...}
]})
// After Phase 3
TodoWrite({todos: [
{"content": "Prepare context paths", "status": "completed", ...},
{"content": "Agent produces all module files", "status": "completed", ...},
{"content": "Generate SKILL.md index", "status": "completed", ...}
]})
```
**Skip Path** (SKIP_GENERATION = true):
```javascript
// After Phase 1 (skip Phase 2)
TodoWrite({todos: [
{"content": "Prepare context paths", "status": "completed", ...},
{"content": "Agent produces all module files", "status": "completed", ...}, // Skipped
{"content": "Generate SKILL.md index", "status": "in_progress", ...}
]})
```
### Execution Flow
**Full Path**:
```
User → TodoWrite Init → Phase 1 (prepare) → Phase 2 (agent writes files) → Phase 3 (write index) → Report
```
**Skip Path**:
```
User → TodoWrite Init → Phase 1 (detect existing) → Phase 3 (update index) → Report
```
### Error Handling
**Phase 1 Errors**:
- Invalid session ID: Report error, verify session exists
- Missing context-package: Warn, fall back to direct mode
- No tech stack detected: Ask user to specify tech stack name
**Phase 2 Errors (Agent)**:
- Agent task fails: Retry once, report if fails again
- Exa API failures: Agent handles internally with retries
- Incomplete results: Warn user, proceed with partial data if minimum sections available
**Phase 3 Errors**:
- Write failures: Report which files failed
- Missing files: Note in SKILL.md, suggest regeneration
---
## Parameters
```bash
/memory:tech-research [session-id | "tech-stack-name"] [--regenerate] [--tool <gemini|qwen>]
```
**Arguments**:
- **session-id | tech-stack-name**: Input source (auto-detected by WFS- prefix)
- Session mode: `WFS-user-auth-v2` - Extract tech stack from workflow
- Direct mode: `"typescript"`, `"typescript-react-nextjs"` - User specifies
- **--regenerate**: Force regenerate existing SKILL (deletes and recreates)
- **--tool**: Reserved for future CLI integration (default: gemini)
---
## Examples
**Generated File Structure** (for all examples):
```
.claude/skills/{tech-stack}/
├── SKILL.md # Index (Phase 3)
├── principles.md # Agent (Phase 2)
├── patterns.md # Agent
├── practices.md # Agent
├── testing.md # Agent
├── config.md # Agent
├── frameworks.md # Agent (if composite)
└── metadata.json # Agent
```
### Direct Mode - Single Stack
```bash
/memory:tech-research "typescript"
```
**Workflow**:
1. Phase 1: Detects direct mode, checks existing SKILL
2. Phase 2: Agent executes 4 Exa queries, writes 5 modules
3. Phase 3: Generates SKILL.md index
### Direct Mode - Composite Stack
```bash
/memory:tech-research "typescript-react-nextjs"
```
**Workflow**:
1. Phase 1: Decomposes into ["typescript", "react", "nextjs"]
2. Phase 2: Agent executes 6 Exa queries (4 base + 2 components), writes 6 modules (adds frameworks.md)
3. Phase 3: Generates SKILL.md index with framework integration
### Session Mode - Extract from Workflow
```bash
/memory:tech-research WFS-user-auth-20251104
```
**Workflow**:
1. Phase 1: Reads session, extracts tech stack: `python-fastapi-sqlalchemy`
2. Phase 2: Agent researches Python + FastAPI + SQLAlchemy, writes 6 modules
3. Phase 3: Generates SKILL.md index
### Regenerate Existing
```bash
/memory:tech-research "react" --regenerate
```
**Workflow**:
1. Phase 1: Deletes existing SKILL due to --regenerate
2. Phase 2: Agent executes fresh Exa research (latest 2025 practices)
3. Phase 3: Generates updated SKILL.md
### Skip Path - Fast Update
```bash
/memory:tech-research "python"
```
**Scenario**: SKILL already exists with 7 files
**Workflow**:
1. Phase 1: Detects existing SKILL, sets SKIP_GENERATION = true
2. Phase 2: **SKIPPED**
3. Phase 3: Updates SKILL.md index only (5-10x faster)

View File

@@ -0,0 +1,517 @@
---
name: workflow-skill-memory
description: Generate SKILL package from archived workflow sessions for progressive context loading
argument-hint: "session <session-id> | all"
allowed-tools: Task(*), TodoWrite(*), Bash(*), Read(*), Write(*)
---
# Workflow SKILL Memory Generator
## Overview
Generate SKILL package from archived workflow sessions using agent-driven analysis. Supports single-session incremental updates or parallel processing of all sessions.
**Scope**: Only processes WFS-* workflow sessions. Other session types (e.g., doc sessions) are automatically ignored.
## Usage
```bash
/memory:workflow-skill-memory session WFS-<session-id> # Process single WFS session
/memory:workflow-skill-memory all # Process all WFS sessions in parallel
```
## Execution Modes
### Mode 1: Single Session (`session <session-id>`)
**Purpose**: Incremental update - process one archived session and merge into existing SKILL package
**Workflow**:
1. **Validate session**: Check if session exists in `.workflow/.archives/{session-id}/`
2. **Invoke agent**: Call `universal-executor` to analyze session and update SKILL documents
3. **Agent tasks**:
- Read session data from `.workflow/.archives/{session-id}/`
- Extract lessons, conflicts, and outcomes
- Use Gemini for intelligent aggregation (optional)
- Update or create SKILL documents using templates
- Regenerate SKILL.md index
**Command Example**:
```bash
/memory:workflow-skill-memory session WFS-user-auth
```
**Expected Output**:
```
Session WFS-user-auth processed
Updated:
- sessions-timeline.md (1 session added)
- lessons-learned.md (3 lessons merged)
- conflict-patterns.md (1 conflict added)
- SKILL.md (index regenerated)
```
---
### Mode 2: All Sessions (`all`)
**Purpose**: Full regeneration - process all archived sessions in parallel for complete SKILL package
**Workflow**:
1. **List sessions**: Read manifest.json to get all archived session IDs
2. **Parallel invocation**: Launch multiple `universal-executor` agents in parallel (one per session)
3. **Agent coordination**:
- Each agent processes one session independently
- Agents use Gemini for analysis
- Agents collect data into JSON (no direct file writes)
- Final aggregator agent merges results and generates SKILL documents
**Command Example**:
```bash
/memory:workflow-skill-memory all
```
**Expected Output**:
```
All sessions processed in parallel
Sessions: 8 total
Updated:
- sessions-timeline.md (8 sessions)
- lessons-learned.md (24 lessons aggregated)
- conflict-patterns.md (12 conflicts documented)
- SKILL.md (index regenerated)
```
---
## Implementation Flow
### Phase 1: Validation and Setup
**Step 1.1: Parse Command Arguments**
Extract mode and session ID:
```javascript
if (args === "all") {
mode = "all"
} else if (args.startsWith("session ")) {
mode = "session"
session_id = args.replace("session ", "").trim()
} else {
ERROR = "Invalid arguments. Usage: session <session-id> | all"
EXIT
}
```
**Step 1.2: Validate Archive Directory**
```bash
bash(test -d .workflow/.archives && echo "exists" || echo "missing")
```
If missing, report error and exit.
**Step 1.3: Mode-Specific Validation**
**Single Session Mode**:
```bash
# Validate session ID format (must start with WFS-)
if [[ ! "$session_id" =~ ^WFS- ]]; then
ERROR = "Invalid session ID format. Only WFS-* sessions are supported"
EXIT
fi
# Check if session exists
bash(test -d .workflow/.archives/{session_id} && echo "exists" || echo "missing")
```
If missing, report error: "Session {session_id} not found in archives"
**All Sessions Mode**:
```bash
# Read manifest and filter only WFS- sessions
bash(cat .workflow/.archives/manifest.json | jq -r '.archives[].session_id | select(startswith("WFS-"))')
```
Store filtered session IDs in array. Ignore doc sessions and other non-WFS sessions.
**Step 1.4: TodoWrite Initialization**
**Single Session Mode**:
```javascript
TodoWrite({todos: [
{"content": "Validate session existence", "status": "completed", "activeForm": "Validating session"},
{"content": "Invoke agent to process session", "status": "in_progress", "activeForm": "Invoking agent"},
{"content": "Verify SKILL package updated", "status": "pending", "activeForm": "Verifying update"}
]})
```
**All Sessions Mode**:
```javascript
TodoWrite({todos: [
{"content": "Read manifest and list sessions", "status": "completed", "activeForm": "Reading manifest"},
{"content": "Invoke agents in parallel", "status": "in_progress", "activeForm": "Invoking agents"},
{"content": "Verify SKILL package regenerated", "status": "pending", "activeForm": "Verifying regeneration"}
]})
```
---
### Phase 2: Agent Invocation
#### Single Session Mode - Agent Task
Invoke `universal-executor` with session-specific task:
**Agent Prompt Structure**:
```
Task: Process Workflow Session for SKILL Package
Context:
- Session ID: {session_id}
- Session Path: .workflow/.archives/{session_id}/
- Mode: Incremental update
Objectives:
1. Read session data:
- workflow-session.json (metadata)
- IMPL_PLAN.md (implementation summary)
- TODO_LIST.md (if exists)
- manifest.json entry for lessons
2. Extract key information:
- Description, tags, metrics
- Lessons (successes, challenges, watch_patterns)
- Context package path (reference only)
- Key outcomes from IMPL_PLAN
3. Use Gemini for aggregation (optional):
Command pattern:
cd .workflow/.archives/{session_id} && gemini -p "
PURPOSE: Extract lessons and conflicts from workflow session
TASK:
• Analyze IMPL_PLAN and lessons from manifest
• Identify success patterns and challenges
• Extract conflict patterns with resolutions
• Categorize by functional domain
MODE: analysis
CONTEXT: @IMPL_PLAN.md @workflow-session.json
EXPECTED: Structured lessons and conflicts in JSON format
RULES: Template reference from skill-aggregation.txt
"
3.5. **Generate SKILL.md Description** (CRITICAL for auto-loading):
Read skill-index.txt template Section: "Description Field Generation"
Execute command to get project root:
```bash
git rev-parse --show-toplevel # Example output: /d/Claude_dms3
```
Apply description format:
```
Progressive workflow development history (located at {project_root}).
Load this SKILL when continuing development, analyzing past implementations,
or learning from workflow history, especially when no relevant context exists in memory.
```
**Validation**:
- [ ] Path uses forward slashes (not backslashes)
- [ ] All three use cases present
- [ ] Trigger optimization phrase included
- [ ] Path is absolute (starts with / or drive letter)
4. Read templates for formatting guidance:
- ~/.claude/workflows/cli-templates/prompts/workflow/skill-sessions-timeline.txt
- ~/.claude/workflows/cli-templates/prompts/workflow/skill-lessons-learned.txt
- ~/.claude/workflows/cli-templates/prompts/workflow/skill-conflict-patterns.txt
- ~/.claude/workflows/cli-templates/prompts/workflow/skill-index.txt
**CRITICAL**: From skill-index.txt, read these sections:
- "Description Field Generation" - Rules for generating description
- "Variable Substitution Guide" - All required variables
- "Generation Instructions" - Step-by-step generation process
- "Validation Checklist" - Final validation steps
5. Update SKILL documents:
- sessions-timeline.md: Append new session, update domain grouping
- lessons-learned.md: Merge lessons into categories, update frequencies
- conflict-patterns.md: Add conflicts, update recurring pattern frequencies
- SKILL.md: Regenerate index with updated counts
**For SKILL.md generation**:
- Follow "Generation Instructions" from skill-index.txt (Steps 1-7)
- Use git command for project_root: `git rev-parse --show-toplevel`
- Apply "Description Field Generation" rules
- Validate using "Validation Checklist"
- Increment version (patch level)
6. Return result JSON:
{
"status": "success",
"session_id": "{session_id}",
"updates": {
"sessions_added": 1,
"lessons_merged": count,
"conflicts_added": count
}
}
```
---
#### All Sessions Mode - Parallel Agent Tasks
**Step 2.1: Launch parallel session analyzers**
Invoke multiple agents in parallel (one message with multiple Task calls):
**Per-Session Agent Prompt**:
```
Task: Extract Session Data for SKILL Package
Context:
- Session ID: {session_id}
- Mode: Parallel analysis (no direct file writes)
Objectives:
1. Read session data (same as single mode)
2. Extract key information (same as single mode)
3. Use Gemini for analysis (same as single mode)
4. Return structured data JSON:
{
"status": "success",
"session_id": "{session_id}",
"data": {
"metadata": {
"description": "...",
"archived_at": "...",
"tags": [...],
"metrics": {...}
},
"lessons": {
"successes": [...],
"challenges": [...],
"watch_patterns": [...]
},
"conflicts": [
{
"type": "architecture|dependencies|testing|performance",
"pattern": "...",
"resolution": "...",
"code_impact": [...]
}
],
"impl_summary": "First 200 chars of IMPL_PLAN",
"context_package_path": "..."
}
}
```
**Step 2.2: Aggregate results**
After all session agents complete, invoke aggregator agent:
**Aggregator Agent Prompt**:
```
Task: Aggregate Session Results and Generate SKILL Package
Context:
- Mode: Full regeneration
- Input: JSON results from {session_count} session agents
Objectives:
1. Aggregate all session data:
- Collect metadata from all sessions
- Merge lessons by category
- Group conflicts by type
- Sort sessions by date
2. Use Gemini for final aggregation:
gemini -p "
PURPOSE: Aggregate lessons and conflicts from all workflow sessions
TASK:
• Group successes by functional domain
• Categorize challenges by severity (HIGH/MEDIUM/LOW)
• Identify recurring conflict patterns
• Calculate frequencies and prioritize
MODE: analysis
CONTEXT: [Provide aggregated JSON data]
EXPECTED: Final aggregated structure for SKILL documents
RULES: Template reference from skill-aggregation.txt
"
3. Read templates for formatting (same 4 templates as single mode)
4. Generate all SKILL documents:
- sessions-timeline.md (all sessions, sorted by date)
- lessons-learned.md (aggregated lessons with frequencies)
- conflict-patterns.md (recurring patterns with resolutions)
- SKILL.md (index with progressive loading)
5. Write files to .claude/skills/workflow-progress/
6. Return result JSON:
{
"status": "success",
"sessions_processed": count,
"files_generated": ["SKILL.md", "sessions-timeline.md", ...],
"summary": {
"total_sessions": count,
"functional_domains": [...],
"date_range": "...",
"lessons_count": count,
"conflicts_count": count
}
}
```
---
### Phase 3: Verification
**Step 3.1: Check SKILL Package Files**
```bash
bash(ls -lh .claude/skills/workflow-progress/)
```
Verify all 4 files exist:
- SKILL.md
- sessions-timeline.md
- lessons-learned.md
- conflict-patterns.md
**Step 3.2: TodoWrite Completion**
Mark all tasks as completed.
**Step 3.3: Display Summary**
**Single Session Mode**:
```
Session {session_id} processed successfully
Updated:
- sessions-timeline.md
- lessons-learned.md
- conflict-patterns.md
- SKILL.md
SKILL Location: .claude/skills/workflow-progress/SKILL.md
```
**All Sessions Mode**:
```
All sessions processed in parallel
Sessions: {count} total
Functional Domains: {domain_list}
Date Range: {earliest} - {latest}
Generated:
- sessions-timeline.md ({count} sessions)
- lessons-learned.md ({lessons_count} lessons)
- conflict-patterns.md ({conflicts_count} conflicts)
- SKILL.md (4-level progressive loading)
SKILL Location: .claude/skills/workflow-progress/SKILL.md
Usage:
- Level 0: Quick refresh (~2K tokens)
- Level 1: Recent history (~8K tokens)
- Level 2: Complete analysis (~25K tokens)
- Level 3: Deep dive (~40K tokens)
```
---
## Agent Guidelines
### Agent Capabilities
**universal-executor agents can**:
- Read files from `.workflow/.archives/`
- Execute bash commands
- Call Gemini CLI for intelligent analysis
- Read template files for formatting guidance
- Write SKILL package files (single mode) or return JSON (parallel mode)
- Return structured results
### Gemini Usage Pattern
**When to use Gemini**:
- Aggregating lessons from multiple sources
- Identifying recurring patterns
- Classifying conflicts by type and severity
- Extracting structured data from IMPL_PLAN
**Fallback Strategy**: If Gemini fails or times out, use direct file parsing with structured extraction logic.
---
## Template System
### Template Files
All templates located in: `~/.claude/workflows/cli-templates/prompts/workflow/`
1. **skill-sessions-timeline.txt**: Format for sessions-timeline.md
2. **skill-lessons-learned.txt**: Format for lessons-learned.md
3. **skill-conflict-patterns.txt**: Format for conflict-patterns.md
4. **skill-index.txt**: Format for SKILL.md index
5. **skill-aggregation.txt**: Rules for Gemini aggregation (existing)
### Template Usage in Agent
**Agents read templates to understand**:
- File structure and markdown format
- Data sources (which files to read)
- Update strategy (incremental vs full)
- Formatting rules and conventions
- Aggregation logic (for Gemini)
**Templates are NOT shown in this command documentation** - agents read them directly as needed.
---
## Error Handling
### Validation Errors
- **No archives directory**: "Error: No workflow archives found at .workflow/.archives/"
- **Invalid session ID format**: "Error: Invalid session ID format. Only WFS-* sessions are supported"
- **Session not found**: "Error: Session {session_id} not found in archives"
- **No WFS sessions in manifest**: "Error: No WFS-* workflow sessions found in manifest.json"
### Agent Errors
- If agent fails, report error message from agent result
- If Gemini times out, agents use fallback direct parsing
- If template read fails, agents use inline format
### Recovery
- Single session mode: Can be retried without affecting other sessions
- All sessions mode: If one agent fails, others continue; retry failed sessions individually
## Integration
### Called by `/workflow:session:complete`
Automatically invoked after session archival:
```bash
SlashCommand(command="/memory:workflow-skill-memory session {session_id}")
```
### Manual Invocation
Users can manually process sessions:
```bash
/memory:workflow-skill-memory session WFS-custom-feature # Single session
/memory:workflow-skill-memory all # Full regeneration
```

View File

@@ -10,13 +10,12 @@ argument-hint: "task-id"
Breaks down complex tasks into executable subtasks with context inheritance and agent assignment.
## Core Principles
**Task System:** @~/.claude/workflows/workflow-architecture.md
**File Cohesion:** Related files must stay in same task
**10-Task Limit:** Total tasks cannot exceed 10 (triggers re-scoping)
## Core Features
⚠️ **CRITICAL**: Manual breakdown with safety controls to prevent file conflicts and task limit violations.
**CRITICAL**: Manual breakdown with safety controls to prevent file conflicts and task limit violations.
### Breakdown Process
1. **Session Check**: Verify active session contains parent task
@@ -51,7 +50,7 @@ Interactive process:
Task: Build authentication module
Current total tasks: 6/10
⚠️ MANUAL BREAKDOWN REQUIRED
MANUAL BREAKDOWN REQUIRED
Define subtasks manually (remaining capacity: 4 tasks):
1. Enter subtask title: User authentication core
@@ -60,11 +59,11 @@ Define subtasks manually (remaining capacity: 4 tasks):
2. Enter subtask title: OAuth integration
Focus files: services/OAuthService.js, routes/oauth.js
⚠️ FILE CONFLICT DETECTED:
FILE CONFLICT DETECTED:
- routes/auth.js appears in multiple subtasks
- Recommendation: Merge related authentication routes
⚠️ SIMILAR FUNCTIONALITY WARNING:
SIMILAR FUNCTIONALITY WARNING:
- "User authentication" and "OAuth integration" both handle auth
- Consider combining into single task
@@ -84,10 +83,10 @@ AskUserQuestion({
User selected: "Proceed with breakdown"
Task IMPL-1 broken down:
IMPL-1: Build authentication module (container)
├── IMPL-1.1: User authentication core @code-developer
└── IMPL-1.2: OAuth integration @code-developer
Task IMPL-1 broken down:
IMPL-1: Build authentication module (container)
├── IMPL-1.1: User authentication core -> @code-developer
└── IMPL-1.2: OAuth integration -> @code-developer
Files updated: .task/IMPL-1.json + 2 subtask files + TODO_LIST.md
```
@@ -138,7 +137,6 @@ Files updated: .task/IMPL-1.json + 2 subtask files + TODO_LIST.md
## Implementation Details
See @~/.claude/workflows/workflow-architecture.md for:
- Complete task JSON schema
- Implementation field structure
- Context inheritance rules
@@ -169,45 +167,38 @@ See @~/.claude/workflows/workflow-architecture.md for:
```bash
/task:breakdown impl-1
impl-1: Build authentication (container)
├── impl-1.1: Design schema @planning-agent
├── impl-1.2: Implement logic + tests @code-developer
└── impl-1.3: Execute & fix tests @test-fix-agent
impl-1: Build authentication (container)
├── impl-1.1: Design schema -> @planning-agent
├── impl-1.2: Implement logic + tests -> @code-developer
└── impl-1.3: Execute & fix tests -> @test-fix-agent
```
## Error Handling
```bash
# Task not found
Task IMPL-5 not found
Task IMPL-5 not found
# Already broken down
⚠️ Task IMPL-1 already has subtasks
Task IMPL-1 already has subtasks
# Wrong status
Cannot breakdown completed task IMPL-2
Cannot breakdown completed task IMPL-2
# 10-task limit exceeded
Breakdown would exceed 10-task limit (current: 8, proposed: 4)
Suggestion: Re-scope project into smaller iterations
Breakdown would exceed 10-task limit (current: 8, proposed: 4)
Suggestion: Re-scope project into smaller iterations
# File conflicts detected
⚠️ File conflict: routes/auth.js appears in IMPL-1.1 and IMPL-1.2
Recommendation: Merge subtasks or redistribute files
File conflict: routes/auth.js appears in IMPL-1.1 and IMPL-1.2
Recommendation: Merge subtasks or redistribute files
# Similar functionality warning
⚠️ Similar functions detected: "user login" and "authentication"
Consider consolidating related functionality
Similar functions detected: "user login" and "authentication"
Consider consolidating related functionality
# Manual breakdown required
Automatic breakdown disabled. Use manual breakdown process.
Automatic breakdown disabled. Use manual breakdown process.
```
## Related Commands
- `/task:create` - Create new tasks
- `/task:execute` - Execute subtasks
- `/workflow:status` - View task hierarchy
- `/workflow:plan` - Plan within 10-task limit
**System ensures**: Manual breakdown control with file cohesion enforcement, similar functionality detection, and 10-task limit compliance

View File

@@ -37,7 +37,7 @@ Creates new implementation tasks with automatic context awareness and ID generat
Output:
```
Task created: IMPL-1
Task created: IMPL-1
Title: Build authentication module
Type: feature
Agent: code-developer
@@ -73,7 +73,7 @@ Status: pending
### Analysis Triggers
When implementation details incomplete:
```bash
⚠️ Task requires analysis for implementation details
Task requires analysis for implementation details
Suggest running: gemini analysis for file locations and dependencies
```
@@ -117,16 +117,16 @@ Based on task type and title keywords:
```bash
# No workflow session
No active workflow found
Use: /workflow init "project name"
No active workflow found
Use: /workflow init "project name"
# Duplicate task
⚠️ Similar task exists: IMPL-3
Continue anyway? (y/n)
Similar task exists: IMPL-3
Continue anyway? (y/n)
# Max depth exceeded
Cannot create IMPL-1.2.1 (max 2 levels)
Use: IMPL-2 for new main task
Cannot create IMPL-1.2.1 (max 2 levels)
Use: IMPL-2 for new main task
```
## Examples
@@ -135,7 +135,7 @@ Based on task type and title keywords:
```bash
/task:create "Implement user authentication"
Created IMPL-1: Implement user authentication
Created IMPL-1: Implement user authentication
Type: feature
Agent: code-developer
Status: pending
@@ -145,14 +145,8 @@ Status: pending
```bash
/task:create "Fix login validation bug" --type=bugfix
Created IMPL-2: Fix login validation bug
Created IMPL-2: Fix login validation bug
Type: bugfix
Agent: code-developer
Status: pending
```
## Related Commands
- `/task:breakdown` - Break into subtasks
- `/task:execute` - Execute with agent
- `/context` - View task details
```

View File

@@ -4,12 +4,12 @@ description: Execute tasks with appropriate agents and context-aware orchestrati
argument-hint: "task-id"
---
### 🚀 **Command Overview: `/task:execute`**
## Command Overview: /task:execute
- **Purpose**: Executes tasks using intelligent agent selection, context preparation, and progress tracking.
- **Core Principles**: @~/.claude/workflows/workflow-architecture.md
**Purpose**: Executes tasks using intelligent agent selection, context preparation, and progress tracking.
### ⚙️ **Execution Modes**
## Execution Modes
- **auto (Default)**
- Fully autonomous execution with automatic agent selection.
@@ -22,7 +22,7 @@ argument-hint: "task-id"
- Optional manual review using `@universal-executor`.
- Used only when explicitly requested by user.
### 🤖 **Agent Selection Logic**
## Agent Selection Logic
The system determines the appropriate agent for a task using the following logic.
@@ -52,11 +52,11 @@ FUNCTION select_agent(task, agent_override):
END FUNCTION
```
### 🔄 **Core Execution Protocol**
## Core Execution Protocol
`Pre-Execution` **->** `Execution` **->** `Post-Execution`
`Pre-Execution` -> `Execution` -> `Post-Execution`
### ✅ **Pre-Execution Protocol**
### Pre-Execution Protocol
`Validate Task & Dependencies` **->** `Prepare Execution Context` **->** `Coordinate with TodoWrite`
@@ -65,7 +65,7 @@ END FUNCTION
- **Session Context Injection**: Provides workflow directory paths to agents for TODO_LIST.md and summary management.
- **TodoWrite Coordination**: Generates execution Todos and checkpoints, syncing with `TODO_LIST.md`.
### 🏁 **Post-Execution Protocol**
### Post-Execution Protocol
`Update Task Status` **->** `Generate Summary` **->** `Save Artifacts` **->** `Sync All Progress` **->** `Validate File Integrity`
@@ -73,7 +73,7 @@ END FUNCTION
- Creates a summary in `.summaries/`.
- Stores outputs and syncs progress across the entire workflow session.
### 🧠 **Task & Subtask Execution Logic**
### Task & Subtask Execution Logic
This logic defines how single, multiple, or parent tasks are handled.
@@ -99,7 +99,7 @@ FUNCTION execute_task_command(task_id, mode, parallel_flag):
END FUNCTION
```
### 🛡️ **Error Handling & Recovery Logic**
### Error Handling & Recovery Logic
```pseudo
FUNCTION pre_execution_check(task):
@@ -124,7 +124,7 @@ END FUNCTION
```
### 📄 **Simplified Context Structure (JSON)**
### Simplified Context Structure (JSON)
This is the simplified data structure loaded to provide context for task execution.
@@ -213,7 +213,7 @@ This is the simplified data structure loaded to provide context for task executi
}
```
### 🎯 **Agent-Specific Context**
### Agent-Specific Context
Different agents receive context tailored to their function, including implementation details:
@@ -243,13 +243,13 @@ Different agents receive context tailored to their function, including implement
- Dependency validation from implementation.context_notes.dependencies
- Architecture compliance checks
### 🗃️ **Simplified File Output**
### Simplified File Output
- **Task JSON File (`.task/<task-id>.json`)**: Updated with status and last attempt time only.
- **Session File (`workflow-session.json`)**: Updated task stats (completed count).
- **Summary File**: Generated in `.summaries/` upon completion (optional).
### 📝 **Simplified Summary Template**
### Simplified Summary Template
Optional summary file generated at `.summaries/IMPL-[task-id]-summary.md`.

View File

@@ -24,7 +24,7 @@ Replans individual tasks or batch processes multiple tasks with change tracking
- **Change Documentation**: Track all modifications
- **Progress Tracking**: TodoWrite integration for batch operations
⚠️ **CRITICAL**: Validates active session before replanning
**CRITICAL**: Validates active session before replanning
## Operation Modes
@@ -189,7 +189,7 @@ AskUserQuestion({
User selected: "Yes, rollback"
Task rolled back to version 1.1
Task rolled back to version 1.1
```
## Batch Processing with TodoWrite
@@ -201,7 +201,7 @@ When processing multiple tasks, automatically creates TodoWrite task list:
**Batch Replan Progress**:
- [x] IMPL-002: Add FR-12 draft saving acceptance criteria
- [x] IMPL-003: Add FR-14 history tracking acceptance criteria
- [⧗] IMPL-004: Add FR-09 response surface explicit coverage
- [ ] IMPL-004: Add FR-09 response surface explicit coverage
- [ ] IMPL-008: Add NFR performance validation steps
```
@@ -255,9 +255,9 @@ AskUserQuestion({
User selected: "Yes, apply"
Version 1.2 created
Context updated
Backup saved to .task/backup/IMPL-1-v1.1.json
Version 1.2 created
Context updated
Backup saved to .task/backup/IMPL-1-v1.1.json
```
### Single Task - File Input
@@ -267,9 +267,9 @@ User selected: "Yes, apply"
Loading requirements.md...
Applying specification changes...
Task updated with new requirements
Version 1.1 created
Backup saved to .task/backup/IMPL-2-v1.0.json
Task updated with new requirements
Version 1.1 created
Backup saved to .task/backup/IMPL-2-v1.0.json
```
### Batch Mode - From Verification Report
@@ -286,23 +286,23 @@ Found 4 tasks requiring replanning:
Creating task tracking list...
Processing IMPL-002...
Backup created: .task/backup/IMPL-002-v1.0.json
Updated to v1.1
Backup created: .task/backup/IMPL-002-v1.0.json
Updated to v1.1
Processing IMPL-003...
Backup created: .task/backup/IMPL-003-v1.0.json
Updated to v1.1
Backup created: .task/backup/IMPL-003-v1.0.json
Updated to v1.1
Processing IMPL-004...
Backup created: .task/backup/IMPL-004-v1.0.json
Updated to v1.1
Backup created: .task/backup/IMPL-004-v1.0.json
Updated to v1.1
Processing IMPL-008...
Backup created: .task/backup/IMPL-008-v1.0.json
Updated to v1.1
Backup created: .task/backup/IMPL-008-v1.0.json
Updated to v1.1
Batch replan completed: 4/4 successful
📋 Summary report saved
Batch replan completed: 4/4 successful
Summary report saved
```
### Batch Mode - Auto-detection
@@ -320,35 +320,35 @@ Entering batch mode...
### Single Task Errors
```bash
# Task not found
Task IMPL-5 not found
Check task ID with /workflow:status
Task IMPL-5 not found
Check task ID with /workflow:status
# Task completed
⚠️ Task IMPL-1 is completed (cannot replan)
Create new task for additional work
Task IMPL-1 is completed (cannot replan)
Create new task for additional work
# File not found
File requirements.md not found
Check file path
File requirements.md not found
Check file path
# No input provided
Please specify changes needed
Provide text, file, or verification report
Please specify changes needed
Provide text, file, or verification report
```
### Batch Mode Errors
```bash
# Invalid verification report
File does not contain valid verification report format
Check report structure or use single task mode
File does not contain valid verification report format
Check report structure or use single task mode
# Partial failures
⚠️ Batch completed with errors: 3/4 successful
Review error details in summary report
Batch completed with errors: 3/4 successful
Review error details in summary report
# No replan recommendations found
Verification report contains no replan recommendations
Check report content or use /workflow:action-plan-verify first
Verification report contains no replan recommendations
Check report content or use /workflow:action-plan-verify first
```
## Batch Mode Integration
@@ -429,16 +429,4 @@ TodoWrite({
TodoWrite({
todos: updateTaskStatus(taskId, "completed")
});
```
## Related Commands
- `/workflow:status` - View task structure and versions
- `/workflow:action-plan-verify` - Generate verification report for batch mode
- `/task:execute` - Execute replanned task
- `/task:create` - Create new tasks
- `/task:breakdown` - Break down complex tasks
## Context
$ARGUMENTS
```

View File

@@ -152,12 +152,12 @@ bash(printf "%s\n%s" "3.2.1" "3.2.2" | sort -V | tail -n 1)
**Scenario 1: Up to date**
```
You are on the latest stable version (3.2.1)
You are on the latest stable version (3.2.1)
```
**Scenario 2: Upgrade available**
```
⬆️ A newer stable version is available: v3.2.2
A newer stable version is available: v3.2.2
Your version: 3.2.1
To upgrade:
@@ -167,7 +167,7 @@ Bash: bash <(curl -fsSL https://raw.githubusercontent.com/catlog22/Claude-Code-W
**Scenario 3: Development version**
```
You are running a development version (3.4.0-dev)
You are running a development version (3.4.0-dev)
This is newer than the latest stable release (v3.3.0)
```
@@ -252,7 +252,3 @@ ERROR: version.json is invalid or corrupted
### Timeout Configuration
All network calls should use `timeout: 30000` (30 seconds) to handle slow connections.
## Related Commands
- `/cli:cli-init` - Initialize CLI configurations
- `/workflow:session:list` - List workflow sessions

View File

@@ -242,10 +242,10 @@ Output a Markdown report (no file writes) with the following structure:
| Requirement ID | Requirement Summary | Has Task? | Task IDs | Priority Match | Notes |
|----------------|---------------------|-----------|----------|----------------|-------|
| FR-01 | User authentication | Yes | IMPL-1.1, IMPL-1.2 | Match | Complete |
| FR-02 | Data export | Yes | IMPL-2.3 | ⚠️ Mismatch | High req → Med priority task |
| FR-03 | Profile management | No | - | - | **CRITICAL: Zero coverage** |
| NFR-01 | Response time <200ms | No | - | - | **HIGH: No performance tasks** |
| FR-01 | User authentication | Yes | IMPL-1.1, IMPL-1.2 | Match | Complete |
| FR-02 | Data export | Yes | IMPL-2.3 | Mismatch | High req → Med priority task |
| FR-03 | Profile management | No | - | - | **CRITICAL: Zero coverage** |
| NFR-01 | Response time <200ms | No | - | - | **HIGH: No performance tasks** |
**Coverage Metrics**:
- Functional Requirements: 85% (17/20 covered)
@@ -264,7 +264,7 @@ Output a Markdown report (no file writes) with the following structure:
### Dependency Graph Issues
**Circular Dependencies**: None detected
**Circular Dependencies**: None detected
**Broken Dependencies**:
- IMPL-2.3 depends on "IMPL-2.4" (non-existent)
@@ -323,12 +323,12 @@ Output a Markdown report (no file writes) with the following structure:
#### Action Recommendations
**If CRITICAL Issues Exist**:
- **BLOCK EXECUTION** - Resolve critical issues before proceeding
- **BLOCK EXECUTION** - Resolve critical issues before proceeding
- Use TodoWrite to track all required fixes
- Fix broken dependencies and circular references
**If Only HIGH/MEDIUM/LOW Issues**:
- ⚠️ **PROCEED WITH CAUTION** - Fix high-priority issues first
- **PROCEED WITH CAUTION** - Fix high-priority issues first
- Use TodoWrite to systematically track and complete all improvements
#### TodoWrite-Based Remediation Workflow

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,36 @@ allowed-tools: SlashCommand(*), Task(*), TodoWrite(*), Read(*), Write(*), Bash(*
# Workflow Brainstorm Parallel Auto Command
## Coordinator Role
**This command is a pure orchestrator**: Execute 3 phases in sequence (interactive framework → parallel role analysis → synthesis), delegate to specialized commands/agents, and ensure complete execution through **automatic continuation**.
**Execution Model - Auto-Continue Workflow**:
This workflow runs **fully autonomously** once triggered. Phase 1 (artifacts) handles user interaction, Phase 2 (role agents) runs in parallel.
1. **User triggers**: `/workflow:brainstorm:auto-parallel "topic" [--count N]`
2. **Phase 1 executes** → artifacts command (interactive framework) → Auto-continues
3. **Phase 2 executes** → Parallel role agents (N agents run concurrently) → Auto-continues
4. **Phase 3 executes** → Synthesis command → Reports final summary
**Auto-Continue Mechanism**:
- TodoList tracks current phase status
- After Phase 1 (artifacts) completion, automatically load roles and launch Phase 2 agents
- After Phase 2 (all agents) completion, automatically execute Phase 3 synthesis
- Progress updates shown at each phase for visibility
## Core Rules
1. **Start Immediately**: First action is TodoWrite initialization, second action is Phase 1 command execution
2. **No Preliminary Analysis**: Do not analyze topic before Phase 1 - artifacts handles all analysis
3. **Parse Every Output**: Extract selected_roles from workflow-session.json after Phase 1
4. **Auto-Continue via TodoList**: Check TodoList status to execute next pending phase automatically
5. **Track Progress**: Update TodoWrite after every phase completion
6. **TodoWrite Extension**: artifacts command EXTENDS parent TodoList (NOT replaces)
## Usage
```bash
/workflow:brainstorm:auto-parallel "<topic>" [--count N]
```
@@ -19,361 +48,293 @@ allowed-tools: SlashCommand(*), Task(*), TodoWrite(*), Read(*), Write(*), Bash(*
**Parameters**:
- `topic` (required): Topic or challenge description (structured format recommended)
- `--count N` (optional): Number of roles to auto-select (default: 3, max: 9)
- `--count N` (optional): Number of roles to select (default: 3, max: 9)
**⚠️ User Intent Preservation**: Topic description is stored in session metadata as authoritative reference throughout entire brainstorming workflow and plan generation.
## 3-Phase Execution
## Role Selection Logic
- **Technical & Architecture**: `architecture|system|performance|database|security` → system-architect, data-architect, security-expert, subject-matter-expert
- **API & Backend**: `api|endpoint|rest|graphql|backend|interface|contract|service` → api-designer, system-architect, data-architect
- **Product & UX**: `user|ui|ux|interface|design|product|feature|experience` → ui-designer, user-researcher, product-manager, ux-expert, product-owner
- **Business & Process**: `business|process|workflow|cost|innovation|testing` → business-analyst, innovation-lead, test-strategist
- **Agile & Delivery**: `agile|sprint|scrum|team|collaboration|delivery` → scrum-master, product-owner
- **Domain Expertise**: `domain|standard|compliance|expertise|regulation` → subject-matter-expert
- **Multi-role**: Complex topics automatically select N complementary roles (N specified by --count, default 3)
- **Default**: `product-manager` if no clear match
- **Count Parameter**: `--count N` determines number of roles to auto-select (default: 3, max: 9)
### Phase 1: Interactive Framework Generation
**Template Loading**: `bash($(cat "~/.claude/workflows/cli-templates/planning-roles/<role-name>.md"))`
**Template Source**: `.claude/workflows/cli-templates/planning-roles/`
**Available Roles**: api-designer, data-architect, product-manager, product-owner, scrum-master, subject-matter-expert, system-architect, test-strategist, ui-designer, ux-expert
**Command**: `SlashCommand(command="/workflow:brainstorm:artifacts \"{topic}\" --count {N}")`
**Example**:
**What It Does**:
- Topic analysis: Extract challenges, generate task-specific questions
- Role selection: Recommend count+2 roles, user selects via AskUserQuestion
- Role questions: Generate 3-4 questions per role, collect user decisions
- Conflict resolution: Detect and resolve cross-role conflicts
- Guidance generation: Transform Q&A to declarative guidance-specification.md
**Parse Output**:
- **⚠️ Memory Check**: If `selected_roles[]` already in conversation memory from previous load, skip file read
- Extract: `selected_roles[]` from workflow-session.json (if not in memory)
- Extract: `session_id` from workflow-session.json (if not in memory)
- Verify: guidance-specification.md exists
**Validation**:
- guidance-specification.md created with confirmed decisions
- workflow-session.json contains selected_roles[] (metadata only, no content duplication)
- Session directory `.workflow/WFS-{topic}/.brainstorming/` exists
**TodoWrite**: Mark phase 1 completed, phase 2 in_progress
**After Phase 1**: Auto-continue to Phase 2 (role agent assignment)
**⚠️ TodoWrite Coordination**: artifacts EXTENDS parent TodoList by:
- Marking parent task "Execute artifacts..." as in_progress
- APPENDING artifacts sub-tasks (Phase 1-5) after parent task
- PRESERVING all other auto-parallel tasks (role agents, synthesis)
- When artifacts Phase 5 completes, marking parent task as completed
---
### Phase 2: Parallel Role Analysis Execution
**For Each Selected Role**:
```bash
bash($(cat "~/.claude/workflows/cli-templates/planning-roles/system-architect.md"))
bash($(cat "~/.claude/workflows/cli-templates/planning-roles/ui-designer.md"))
```
## Core Workflow
### Structured Topic Processing → Role Analysis → Synthesis
The command follows a structured three-phase approach with dedicated document types:
**Phase 1: Framework Generation** ⚠️ COMMAND EXECUTION
- **Role selection**: Auto-select N roles based on topic keywords and --count parameter (default: 3, see Role Selection Logic)
- **Call artifacts command**: Execute `/workflow:brainstorm:artifacts "{topic}" --roles "{role1,role2,...,roleN}"` using SlashCommand tool
- **Role-specific framework**: Generate framework with sections tailored to selected roles
- **⚠️ User intent storage**: Topic saved in workflow-session.json as primary reference for all downstream phases
**Phase 2: Role Analysis Execution** ⚠️ PARALLEL AGENT ANALYSIS
- **Parallel execution**: Multiple roles execute simultaneously for faster completion
- **Independent agents**: Each role gets dedicated conceptual-planning-agent running in parallel
- **Shared framework**: All roles reference the same topic framework for consistency
- **Concurrent generation**: Role-specific analysis documents generated simultaneously
- **Progress tracking**: Parallel agents update progress independently
**Phase 3: Synthesis Generation** ⚠️ COMMAND EXECUTION
- **Call synthesis command**: Execute `/workflow:brainstorm:synthesis` using SlashCommand tool
- **⚠️ User intent injection**: Synthesis loads original topic from session metadata as highest priority reference
- **Intent alignment**: Synthesis validates all role insights against user's original objectives
## Implementation Standards
### Simplified Command Orchestration ⚠️ STREAMLINED
Auto command coordinates independent specialized commands:
**Command Sequence**:
1. **Role Selection**: Auto-select N relevant roles based on topic keywords and --count parameter (default: 3)
2. **Generate Role-Specific Framework**: Use SlashCommand to execute `/workflow:brainstorm:artifacts "{topic}" --roles "{role1,role2,...,roleN}"` (stores user intent in session)
3. **Parallel Role Analysis**: Execute selected role agents in parallel, each reading their specific framework section
4. **Generate Synthesis**: Use SlashCommand to execute `/workflow:brainstorm:synthesis` (loads user intent from session as primary reference)
**SlashCommand Integration**:
1. **artifacts command**: Called via SlashCommand tool with `--roles` parameter for role-specific framework generation
2. **role agents**: Each agent reads its dedicated section in the role-specific framework
3. **synthesis command**: Called via SlashCommand tool for final integration with role-targeted insights
4. **Command coordination**: SlashCommand handles execution and validation
**Role Selection Logic**:
- **Technical**: `architecture|system|performance|database` → system-architect, data-architect, subject-matter-expert
- **API & Backend**: `api|endpoint|rest|graphql|backend|interface|contract|service` → api-designer, system-architect, data-architect
- **Product & UX**: `user|ui|ux|interface|design|product|feature|experience` → ui-designer, ux-expert, product-manager, product-owner
- **Agile & Delivery**: `agile|sprint|scrum|team|collaboration|delivery` → scrum-master, product-owner
- **Domain Expertise**: `domain|standard|compliance|expertise|regulation` → subject-matter-expert
- **Auto-select**: N most relevant roles based on topic analysis (N from --count parameter, default: 3)
### Parameter Parsing
**Count Parameter Handling**:
```bash
# Parse --count parameter from user input
IF user_input CONTAINS "--count":
EXTRACT count_value FROM "--count N" pattern
IF count_value > 9:
count_value = 9 # Cap at maximum 9 roles
END IF
ELSE:
count_value = 3 # Default to 3 roles
END IF
```
**Role Selection with Count**:
1. **Analyze topic keywords**: Identify relevant role categories
2. **Rank roles by relevance**: Score based on keyword matches
3. **Select top N roles**: Pick N most relevant roles (N = count_value)
4. **Ensure diversity**: Balance across different expertise areas
5. **Minimum guarantee**: Always include at least one role (default to product-manager if no matches)
### Simplified Processing Standards
**Core Principles**:
1. **Minimal preprocessing** - Only workflow-session.json and basic role selection
2. **Agent autonomy** - Agents handle their own context and validation
3. **Parallel execution** - Multiple agents can work simultaneously
4. **Post-processing synthesis** - Integration happens after agent completion
5. **TodoWrite control** - Progress tracking throughout all phases
**Implementation Rules**:
- **Role count**: N roles auto-selected based on --count parameter (default: 3, max: 9) and keyword mapping
- **No upfront validation**: Agents handle their own context requirements
- **Parallel execution**: Each agent operates concurrently without dependencies
- **Synthesis at end**: Integration only after all agents complete
**Agent Self-Management** (Agents decide their own approach):
- **Context gathering**: Agents determine what questions to ask
- **Template usage**: Agents load and apply their own role templates
- **Analysis depth**: Agents determine appropriate level of detail
- **Documentation**: Agents create their own file structure and content
### Session Management ⚠️ CRITICAL
- **⚡ FIRST ACTION**: Check for all `.workflow/.active-*` markers before role processing
- **Multiple sessions support**: Different Claude instances can have different active brainstorming sessions
- **User selection**: If multiple active sessions found, prompt user to select which one to work with
- **Auto-session creation**: `WFS-[topic-slug]` only if no active session exists
- **Session continuity**: MUST use selected active session for all role processing
- **Context preservation**: Each role's context and agent output stored in session directory
- **Session isolation**: Each session maintains independent brainstorming state and role assignments
## Document Generation
**Command Coordination Workflow**: artifacts → parallel role analysis → synthesis
**Output Structure**: Coordinated commands generate framework, role analyses, and synthesis documents as defined in their respective command specifications.
## Agent Prompt Templates
### Task Agent Invocation Template
```python
Task(subagent_type="conceptual-planning-agent",
prompt="""Execute brainstorming analysis: {role-name} perspective for {topic}
## Role Assignment
**ASSIGNED_ROLE**: {role-name}
**TOPIC**: {user-provided-topic}
**OUTPUT_LOCATION**: .workflow/WFS-{topic}/.brainstorming/{role}/
## Execution Instructions
Task(conceptual-planning-agent): "
[FLOW_CONTROL]
### Flow Control Steps
**AGENT RESPONSIBILITY**: Execute these pre_analysis steps sequentially with context accumulation:
Execute {role-name} analysis for existing topic framework
## Context Loading
ASSIGNED_ROLE: {role-name}
OUTPUT_LOCATION: .workflow/WFS-{session}/.brainstorming/{role}/
TOPIC: {user-provided-topic}
## Flow Control Steps
1. **load_topic_framework**
- Action: Load structured topic discussion framework
- Command: Read(.workflow/WFS-{topic}/.brainstorming/guidance-specification.md)
- Output: topic_framework
- Fallback: Continue with session metadata if file not found
- Command: Read(.workflow/WFS-{session}/.brainstorming/guidance-specification.md)
- Output: topic_framework_content
2. **load_role_template**
- Action: Load {role-name} planning template
- Command: Read(~/.claude/workflows/cli-templates/planning-roles/{role}.md)
- Output: role_template
- Output: role_template_guidelines
3. **load_session_metadata**
- Action: Load session metadata and original user intent
- Command: Read(.workflow/WFS-{topic}/workflow-session.json)
- Output: session_metadata (contains original user prompt in 'project' or 'description' field)
- Command: Read(.workflow/WFS-{session}/workflow-session.json)
- Output: session_context (contains original user prompt as PRIMARY reference)
### Implementation Context
**User Intent Authority**: Original user prompt from session_metadata.project is PRIMARY reference
**Topic Framework**: Use loaded guidance-specification.md for structured analysis
**Role Focus**: {role-name} domain expertise and perspective aligned with user intent
**Analysis Type**: Address framework discussion points from role perspective, filtered by user objectives
**Template Framework**: Combine role template with topic framework structure
**Structured Approach**: Create analysis.md addressing all topic framework points relevant to user's goals
## Analysis Requirements
**Primary Reference**: Original user prompt from workflow-session.json is authoritative
**Framework Source**: Address all discussion points in guidance-specification.md from {role-name} perspective
**Role Focus**: {role-name} domain expertise aligned with user intent
**Structured Approach**: Create analysis.md addressing framework discussion points
**Template Integration**: Apply role template guidelines within framework structure
### Session Context
**Workflow Directory**: .workflow/WFS-{topic}/.brainstorming/
**Output Directory**: .workflow/WFS-{topic}/.brainstorming/{role}/
**Session JSON**: .workflow/WFS-{topic}/workflow-session.json
## Expected Deliverables
1. **analysis.md**: Comprehensive {role-name} analysis addressing all framework discussion points
- **File Naming**: MUST start with `analysis` prefix (e.g., `analysis.md`, `analysis-1.md`, `analysis-2.md`)
- **FORBIDDEN**: Never use `recommendations.md` or any filename not starting with `analysis`
- **Auto-split if large**: If content >800 lines, split to `analysis-1.md`, `analysis-2.md` (max 3 files: analysis.md, analysis-1.md, analysis-2.md)
- **Content**: Includes both analysis AND recommendations sections within analysis files
2. **Framework Reference**: Include @../guidance-specification.md reference in analysis
3. **User Intent Alignment**: Validate analysis aligns with original user objectives from session_context
### Dependencies & Context
**Topic**: {user-provided-topic}
**Role Template**: ~/.claude/workflows/cli-templates/planning-roles/{role}.md
**User Requirements**: To be gathered through interactive questioning
## Completion Requirements
1. Execute all flow control steps in sequence (load topic framework, role template, session metadata with user intent)
2. User Intent Alignment: Validate analysis aligns with original user objectives from session_metadata
3. Address Topic Framework: Respond to all discussion points in guidance-specification.md from role perspective
4. Filter by User Goals: Prioritize insights directly relevant to user's stated objectives
5. Apply role template guidelines within topic framework structure
6. Generate structured role analysis addressing framework points aligned with user intent
7. Create single comprehensive deliverable in OUTPUT_LOCATION:
- analysis.md (structured analysis addressing all topic framework points with role-specific insights filtered by user goals)
8. Include framework reference: @../guidance-specification.md in analysis.md
9. Update workflow-session.json with completion status""",
description="Execute {role-name} brainstorming analysis")
## Completion Criteria
- Address each discussion point from guidance-specification.md with {role-name} expertise
- Provide actionable recommendations from {role-name} perspective within analysis files
- All output files MUST start with `analysis` prefix (no recommendations.md or other naming)
- Reference framework document using @ notation for integration
- Update workflow-session.json with completion status
"
```
### Parallel Role Agent调用示例
```bash
# Execute N roles in parallel using single message with multiple Task calls
# (N determined by --count parameter, default 3, shown below with 3 roles as example)
**Parallel Execution**:
- Launch N agents simultaneously (one message with multiple Task calls)
- Each agent operates independently reading same guidance-specification.md
- All agents update progress concurrently
Task(subagent_type="conceptual-planning-agent",
prompt="Execute brainstorming analysis: {role-1} perspective for {topic}...",
description="Execute {role-1} brainstorming analysis")
**Input**:
- `selected_roles[]` from Phase 1
- `session_id` from Phase 1
- guidance-specification.md path
Task(subagent_type="conceptual-planning-agent",
prompt="Execute brainstorming analysis: {role-2} perspective for {topic}...",
description="Execute {role-2} brainstorming analysis")
**Validation**:
- Each role creates `.workflow/WFS-{topic}/.brainstorming/{role}/analysis.md` (primary file)
- If content is large (>800 lines), may split to `analysis-1.md`, `analysis-2.md` (max 3 files total)
- **File naming pattern**: ALL files MUST start with `analysis` prefix (use `analysis*.md` for globbing)
- **FORBIDDEN naming**: No `recommendations.md`, `recommendations-*.md`, or any non-`analysis` prefixed files
- All N role analyses completed
Task(subagent_type="conceptual-planning-agent",
prompt="Execute brainstorming analysis: {role-3} perspective for {topic}...",
description="Execute {role-3} brainstorming analysis")
**TodoWrite**: Mark all N role agent tasks completed, phase 3 in_progress
# ... repeat for remaining N-3 roles if --count > 3
**After Phase 2**: Auto-continue to Phase 3 (synthesis)
---
### Phase 3: Synthesis Generation
**Command**: `SlashCommand(command="/workflow:brainstorm:synthesis --session {sessionId}")`
**What It Does**:
- Load original user intent from workflow-session.json
- Read all role analysis.md files
- Integrate role insights into synthesis-specification.md
- Validate alignment with user's original objectives
**Input**: `sessionId` from Phase 1
**Validation**:
- `.workflow/WFS-{topic}/.brainstorming/synthesis-specification.md` exists
- Synthesis references all role analyses
**TodoWrite**: Mark phase 3 completed
**Return to User**:
```
Brainstorming complete for session: {sessionId}
Roles analyzed: {count}
Synthesis: .workflow/WFS-{topic}/.brainstorming/synthesis-specification.md
✅ Next Steps:
1. /workflow:concept-clarify --session {sessionId} # Optional refinement
2. /workflow:plan --session {sessionId} # Generate implementation plan
```
### Direct Synthesis Process (Command-Driven)
**Synthesis execution**: Use SlashCommand to execute `/workflow:brainstorm:synthesis` after role completion
## TodoWrite Control Flow ⚠️ CRITICAL
### Workflow Progress Tracking
**MANDATORY**: Use Claude Code's built-in TodoWrite tool throughout entire brainstorming workflow:
## TodoWrite Pattern
```javascript
// Phase 1: Create initial todo list for command-coordinated brainstorming workflow
TodoWrite({
todos: [
{
content: "Initialize brainstorming session and detect active sessions",
status: "pending",
activeForm: "Initializing brainstorming session"
},
{
content: "Parse --count parameter and select N roles based on topic keyword analysis",
status: "pending",
activeForm: "Parsing parameters and selecting roles for brainstorming"
},
{
content: "Execute artifacts command with selected roles for role-specific framework",
status: "pending",
activeForm: "Generating role-specific topic framework"
},
{
content: "Execute [role-1] analysis [conceptual-planning-agent] [FLOW_CONTROL] addressing framework",
status: "pending",
activeForm: "Executing [role-1] structured framework analysis"
},
{
content: "Execute [role-2] analysis [conceptual-planning-agent] [FLOW_CONTROL] addressing framework",
status: "pending",
activeForm: "Executing [role-2] structured framework analysis"
},
// ... repeat for N roles (N determined by --count parameter, default 3)
{
content: "Execute [role-N] analysis [conceptual-planning-agent] [FLOW_CONTROL] addressing framework",
status: "pending",
activeForm: "Executing [role-N] structured framework analysis"
},
{
content: "Execute synthesis command using SlashCommand for final integration",
status: "pending",
activeForm: "Executing synthesis command for integrated analysis"
}
]
});
// Initialize (before Phase 1)
TodoWrite({todos: [
{"content": "Parse --count parameter from user input", "status": "in_progress", "activeForm": "Parsing count parameter"},
{"content": "Execute artifacts command for interactive framework generation", "status": "pending", "activeForm": "Executing artifacts interactive framework"},
{"content": "Load selected_roles from workflow-session.json", "status": "pending", "activeForm": "Loading selected roles"},
// Role agent tasks added dynamically after Phase 1 based on selected_roles count
{"content": "Execute synthesis command for final integration", "status": "pending", "activeForm": "Executing synthesis integration"}
]})
// Phase 2: Update status as workflow progresses - ONLY ONE task should be in_progress at a time
TodoWrite({
todos: [
{
content: "Initialize brainstorming session and detect active sessions",
status: "completed", // Mark completed preprocessing
activeForm: "Initializing brainstorming session"
},
{
content: "Select roles for topic analysis and create workflow-session.json",
status: "in_progress", // Mark current task as in_progress
activeForm: "Selecting roles and creating session metadata"
},
// ... other tasks remain pending
]
});
// After Phase 1 (artifacts completes, roles loaded)
// Note: artifacts EXTENDS this list by appending its Phase 1-5 sub-tasks
TodoWrite({todos: [
{"content": "Parse --count parameter from user input", "status": "completed", "activeForm": "Parsing count parameter"},
{"content": "Execute artifacts command for interactive framework generation", "status": "completed", "activeForm": "Executing artifacts interactive framework"},
{"content": "Load selected_roles from workflow-session.json", "status": "in_progress", "activeForm": "Loading selected roles"},
{"content": "Execute system-architect analysis [conceptual-planning-agent]", "status": "pending", "activeForm": "Executing system-architect analysis"},
{"content": "Execute ui-designer analysis [conceptual-planning-agent]", "status": "pending", "activeForm": "Executing ui-designer analysis"},
{"content": "Execute product-manager analysis [conceptual-planning-agent]", "status": "pending", "activeForm": "Executing product-manager analysis"},
// ... (N role tasks based on --count parameter)
{"content": "Execute synthesis command for final integration", "status": "pending", "activeForm": "Executing synthesis integration"}
]})
// Phase 3: Parallel agent execution tracking (N roles, N from --count parameter)
TodoWrite({
todos: [
// ... previous completed tasks
{
content: "Execute [role-1] analysis [conceptual-planning-agent] [FLOW_CONTROL]",
status: "in_progress", // Executing in parallel
activeForm: "Executing [role-1] brainstorming analysis"
},
{
content: "Execute [role-2] analysis [conceptual-planning-agent] [FLOW_CONTROL]",
status: "in_progress", // Executing in parallel
activeForm: "Executing [role-2] brainstorming analysis"
},
// ... repeat for remaining N-2 roles
{
content: "Execute [role-N] analysis [conceptual-planning-agent] [FLOW_CONTROL]",
status: "in_progress", // Executing in parallel
activeForm: "Executing [role-N] brainstorming analysis"
}
]
});
// After Phase 2 (all agents launched in parallel)
TodoWrite({todos: [
// ... previous completed tasks
{"content": "Load selected_roles from workflow-session.json", "status": "completed", "activeForm": "Loading selected roles"},
{"content": "Execute system-architect analysis [conceptual-planning-agent]", "status": "in_progress", "activeForm": "Executing system-architect analysis"},
{"content": "Execute ui-designer analysis [conceptual-planning-agent]", "status": "in_progress", "activeForm": "Executing ui-designer analysis"},
{"content": "Execute product-manager analysis [conceptual-planning-agent]", "status": "in_progress", "activeForm": "Executing product-manager analysis"},
// ... (all N agents in_progress simultaneously)
{"content": "Execute synthesis command for final integration", "status": "pending", "activeForm": "Executing synthesis integration"}
]})
// After Phase 2 (all agents complete)
TodoWrite({todos: [
// ... previous completed tasks
{"content": "Execute system-architect analysis [conceptual-planning-agent]", "status": "completed", "activeForm": "Executing system-architect analysis"},
{"content": "Execute ui-designer analysis [conceptual-planning-agent]", "status": "completed", "activeForm": "Executing ui-designer analysis"},
{"content": "Execute product-manager analysis [conceptual-planning-agent]", "status": "completed", "activeForm": "Executing product-manager analysis"},
{"content": "Execute synthesis command for final integration", "status": "in_progress", "activeForm": "Executing synthesis integration"}
]})
```
**TodoWrite Integration Rules**:
1. **Create initial todos**: All workflow phases at start
2. **Mark in_progress**: Multiple parallel tasks can be in_progress simultaneously
3. **Update immediately**: After each task completion
4. **Track agent execution**: Include [agent-type] and [FLOW_CONTROL] markers for parallel agents
5. **Final synthesis**: Mark synthesis as in_progress only after all parallel agents complete
## Input Processing
**Count Parameter Parsing**:
```javascript
// Extract --count from user input
IF user_input CONTAINS "--count":
EXTRACT count_value FROM "--count N" pattern
IF count_value > 9:
count_value = 9 // Cap at maximum 9 roles
ELSE:
count_value = 3 // Default to 3 roles
// Pass to artifacts command
EXECUTE: /workflow:brainstorm:artifacts "{topic}" --count {count_value}
```
**Topic Structuring**:
1. **Already Structured** → Pass directly to artifacts
```
User: "GOAL: Build platform SCOPE: 100 users CONTEXT: Real-time"
→ Pass as-is to artifacts
```
2. **Simple Text** → Pass directly (artifacts handles structuring)
```
User: "Build collaboration platform"
→ artifacts will analyze and structure
```
## Session Management
**⚡ FIRST ACTION**: Check for `.workflow/.active-*` markers before Phase 1
**Multiple Sessions Support**:
- Different Claude instances can have different active brainstorming sessions
- If multiple active sessions found, prompt user to select
- If single active session found, use it
- If no active session exists, create `WFS-[topic-slug]`
**Session Continuity**:
- MUST use selected active session for all phases
- Each role's context stored in session directory
- Session isolation: Each session maintains independent state
## Output Structure
**Phase 1 Output**:
- `.workflow/WFS-{topic}/.brainstorming/guidance-specification.md` (framework content)
- `.workflow/WFS-{topic}/workflow-session.json` (metadata: selected_roles[], topic, timestamps)
**Phase 2 Output**:
- `.workflow/WFS-{topic}/.brainstorming/{role}/analysis.md` (one per role)
**Phase 3 Output**:
- `.workflow/WFS-{topic}/.brainstorming/synthesis-specification.md` (integrated analysis)
**⚠️ Storage Separation**: Guidance content in .md files, metadata in .json (no duplication)
## Available Roles
- data-architect (数据架构师)
- product-manager (产品经理)
- product-owner (产品负责人)
- scrum-master (敏捷教练)
- subject-matter-expert (领域专家)
- system-architect (系统架构师)
- test-strategist (测试策略师)
- ui-designer (UI 设计师)
- ux-expert (UX 专家)
**Role Selection**: Handled by artifacts command (intelligent recommendation + user selection)
## Error Handling
- **Role selection failure**: artifacts defaults to product-manager with explanation
- **Agent execution failure**: Agent-specific retry with minimal dependencies
- **Template loading issues**: Agent handles graceful degradation
- **Synthesis conflicts**: Synthesis highlights disagreements without resolution
## Reference Information
### Structured Processing Schema
Each role processing follows structured framework pattern:
- **topic_framework**: Structured discussion framework document
- **role**: Selected planning role name with framework reference
- **agent**: Dedicated conceptual-planning-agent instance
- **structured_analysis**: Agent addresses all framework discussion points
- **output**: Role-specific analysis.md addressing topic framework structure
**File Structure**:
```
.workflow/WFS-[topic]/
├── .active-brainstorming
├── workflow-session.json # Session metadata ONLY
└── .brainstorming/
├── guidance-specification.md # Framework (Phase 1)
├── {role-1}/
│ └── analysis.md # Role analysis (Phase 2)
├── {role-2}/
│ └── analysis.md
├── {role-N}/
│ └── analysis.md
└── synthesis-specification.md # Integration (Phase 3)
```
### File Structure Reference
**Architecture**: @~/.claude/workflows/workflow-architecture.md
**Role Templates**: @~/.claude/workflows/cli-templates/planning-roles/
**Template Source**: `~/.claude/workflows/cli-templates/planning-roles/`
### Execution Integration
Command coordination model: artifacts command → parallel role analysis → synthesis command
## Error Handling
- **Role selection failure**: Default to `product-manager` with explanation
- **Agent execution failure**: Agent-specific retry with minimal dependencies
- **Template loading issues**: Agent handles graceful degradation
- **Synthesis conflicts**: Synthesis agent highlights disagreements without resolution
## Quality Standards
### Agent Autonomy Excellence
- **Single role focus**: Each agent handles exactly one role independently
- **Self-contained execution**: Agent manages own context, validation, and output
- **Parallel processing**: Multiple agents can execute simultaneously
- **Complete ownership**: Agent produces entire role-specific analysis package
### Minimal Coordination Excellence
- **Lightweight handoff**: Only topic and role assignment provided
- **Agent self-management**: Agents handle their own workflow and validation
- **Concurrent operation**: No inter-agent dependencies enabling parallel execution
- **Reference-based synthesis**: Post-processing integration without content duplication
- **TodoWrite orchestration**: Progress tracking and workflow control throughout entire process

View File

@@ -2,7 +2,7 @@
name: synthesis
description: Clarify and refine role analyses through intelligent Q&A and targeted updates
argument-hint: "[optional: --session session-id]"
allowed-tools: Task(conceptual-planning-agent), TodoWrite(*), Read(*), Write(*), Edit(*), Glob(*), AskUserQuestion(*)
allowed-tools: Task(conceptual-planning-agent), TodoWrite(*), Read(*), Write(*), Edit(*), Glob(*)
---
## Overview
@@ -11,7 +11,7 @@ Three-phase workflow to eliminate ambiguities and enhance conceptual depth in ro
**Phase 1-2 (Main Flow)**: Session detection → File discovery → Path preparation
**Phase 3A (Analysis Agent)**: Cross-role analysis → CLI concept enhancement → Generate recommendations
**Phase 3A (Analysis Agent)**: Cross-role analysis → Generate recommendations
**Phase 4 (Main Flow)**: User selects enhancements → User answers clarifications → Build update plan
@@ -22,7 +22,6 @@ Three-phase workflow to eliminate ambiguities and enhance conceptual depth in ro
**Key Features**:
- Multi-agent architecture (analysis agent + parallel update agents)
- Clear separation: Agent analysis vs Main flow interaction
- CLI-powered concept enhancement (Gemini)
- Parallel document updates (one agent per role)
- User intent alignment validation
@@ -36,7 +35,7 @@ Three-phase workflow to eliminate ambiguities and enhance conceptual depth in ro
[
{"content": "Detect session and validate analyses", "status": "in_progress", "activeForm": "Detecting session"},
{"content": "Discover role analysis file paths", "status": "pending", "activeForm": "Discovering paths"},
{"content": "Execute analysis agent (cross-role + CLI enhancement)", "status": "pending", "activeForm": "Executing analysis agent"},
{"content": "Execute analysis agent (cross-role analysis)", "status": "pending", "activeForm": "Executing analysis agent"},
{"content": "Present enhancements for user selection", "status": "pending", "activeForm": "Presenting enhancements"},
{"content": "Generate and present clarification questions", "status": "pending", "activeForm": "Clarifying with user"},
{"content": "Build update plan from user input", "status": "pending", "activeForm": "Building update plan"},
@@ -110,15 +109,8 @@ Analyze role documents, identify conflicts/gaps, and generate enhancement recomm
- Action: Identify consensus themes, conflicts, gaps, underspecified areas
- Output: consensus_themes, conflicting_views, gaps_list, ambiguities
4. **cli_concept_enhancement**
- Action: Execute intelligent CLI analysis with fallback chain
- Dynamic Prompt: \"PURPOSE: Cross-role synthesis | TASK: conflicts/gaps/enhancements | MODE: analysis | CONTEXT: @**/* | EXPECTED: EP-001,EP-002,... | RULES: Eliminate ambiguities\"
- Fallback Chain: `cd {brainstorm_dir} && gemini -p \"$PROMPT\" -m gemini-2.5-pro` → (if fail) `qwen -p \"$PROMPT\"` → (if fail) `codex -C {brainstorm_dir} --full-auto exec \"$PROMPT\" -m gpt-5`
- Error Handling: Gemini 429 OK if results exist | 40min timeout | One attempt per tool
- Output: cli_enhancement_points
5. **generate_recommendations**
- Action: Combine cross-role analysis + CLI enhancements into structured recommendations
4. **generate_recommendations**
- Action: Convert cross-role analysis findings into structured enhancement recommendations
- Format: EP-001, EP-002, ... (sequential numbering)
- Fields: id, title, affected_roles, category, current_state, enhancement, rationale, priority
- Taxonomy: Map to 9 categories (User Intent, Requirements, Architecture, UX, Feasibility, Risk, Process, Decisions, Terminology)
@@ -140,62 +132,72 @@ Return JSON array:
...
]
### Agent Context Summary
**Tools Used**: Gemini (primary) → Qwen (fallback) → Codex (last resort)
**Mode**: analysis (read-only)
**Timeout**: 40min
**Dependencies**: @intelligent-tools-strategy.md
**Validation**: Enhancement recommendations + 9-category taxonomy mapping
"
```
### Phase 4: Main Flow User Interaction
**Main flow handles all user interaction**:
**Main flow handles all user interaction via text output**:
1. **Present Enhancement Options**:
```python
AskUserQuestion(
questions=[{
"question": "Which enhancements would you like to apply?",
"header": "Enhancements",
"multiSelect": true,
"options": [
{"label": "EP-001: ...", "description": "... (affects: role1, role2)"},
{"label": "EP-002: ...", "description": "..."},
...
]
}]
)
**⚠️ CRITICAL**: ALL questions MUST use Chinese (所有问题必须用中文) for better user understanding
1. **Present Enhancement Options** (multi-select):
```markdown
===== Enhancement 选择 =====
请选择要应用的改进建议(可多选):
a) EP-001: API Contract Specification
影响角色system-architect, api-designer
说明:添加详细的请求/响应 schema 定义
b) EP-002: User Intent Validation
影响角色product-manager, ux-expert
说明:明确用户需求优先级和验收标准
c) EP-003: Error Handling Strategy
影响角色system-architect
说明:统一异常处理和降级方案
支持格式1abc 或 1a 1b 1c 或 1a,b,c
请输入选择(可跳过输入 skip
```
2. **Generate Clarification Questions** (based on analysis agent output):
-**ALL questions in Chinese (所有问题必须用中文)**
- Use 9-category taxonomy scan results
- Create max 5 prioritized questions
- Prioritize most critical questions (no hard limit)
- Each with 2-4 options + descriptions
3. **Interactive Clarification Loop**:
```python
# Present ONE question at a time
FOR question in clarification_questions (max 5):
AskUserQuestion(
questions=[{
"question": "Question {N}/5: {text}",
"header": "Clarification",
"multiSelect": false,
"options": [
{"label": "Option A", "description": "..."},
{"label": "Option B", "description": "..."},
...
]
}]
)
# Record answer
# Continue to next question
3. **Interactive Clarification Loop** (max 10 questions per round):
```markdown
===== Clarification 问题 (第 1/2 轮) =====
【问题1 - 用户意图】MVP 阶段的核心目标是什么?
a) 快速验证市场需求
说明:最小功能集,快速上线获取反馈
b) 建立技术壁垒
说明:完善架构,为长期发展打基础
c) 实现功能完整性
说明:覆盖所有规划功能,延迟上线
【问题2 - 架构决策】技术栈选择的优先考虑因素?
a) 团队熟悉度
说明:使用现有技术栈,降低学习成本
b) 技术先进性
说明:采用新技术,提升竞争力
c) 生态成熟度
说明:选择成熟方案,保证稳定性
...最多10个问题
请回答 (格式: 1a 2b 3c...)
```
Wait for user input → Parse all answers in batch → Continue to next round if needed
4. **Build Update Plan**:
```python
```
update_plan = {
"role1": {
"enhancements": [EP-001, EP-003],
@@ -433,19 +435,4 @@ Update `workflow-session.json`:
- Valid Markdown
- Cross-references maintained
## Next Steps
**Standard**:
```bash
/workflow:plan --session WFS-{session-id}
/workflow:action-plan-verify --session WFS-{session-id} # Optional
/workflow:execute --session WFS-{session-id}
```
**TDD**:
```bash
/workflow:tdd-plan --session WFS-{session-id} "description"
/workflow:action-plan-verify --session WFS-{session-id} # Optional
/workflow:execute --session WFS-{session-id}
```

View File

@@ -11,6 +11,17 @@ Orchestrates autonomous workflow execution through systematic task discovery, ag
**Resume Mode**: When called with `--resume-session` flag, skips discovery phase and directly enters TodoWrite generation and agent execution for the specified session.
## Performance Optimization Strategy
**Lazy Loading**: Task JSONs read **on-demand** during execution, not upfront. TODO_LIST.md + IMPL_PLAN.md provide metadata for planning.
| Metric | Before | After | Improvement |
|--------|--------|-------|-------------|
| **Initial Load** | All task JSONs (~2,300 lines) | TODO_LIST.md only (~650 lines) | **72% reduction** |
| **Startup Time** | Seconds | Milliseconds | **~90% faster** |
| **Memory** | All tasks | 1-2 tasks | **90% less** |
| **Scalability** | 10-20 tasks | 100+ tasks | **5-10x** |
## Core Rules
**Complete entire workflow autonomously without user interruption, using TodoWrite for comprehensive progress tracking.**
**Execute all discovered pending tasks sequentially until workflow completion or blocking dependency.**
@@ -63,40 +74,69 @@ Orchestrates autonomous workflow execution through systematic task discovery, ag
### Phase 1: Discovery (Normal Mode Only)
1. **Check Active Sessions**: Find `.workflow/.active-*` markers
2. **Select Session**: If multiple found, prompt user selection
3. **Load Session State**: Read `workflow-session.json` and `IMPL_PLAN.md`
4. **Scan Tasks**: Analyze `.task/*.json` files for ready tasks
3. **Load Session Metadata**: Read `workflow-session.json` ONLY (minimal context)
4. **DO NOT read task JSONs yet** - defer until execution phase
**Note**: In resume mode, this phase is completely skipped.
### Phase 2: Analysis (Normal Mode Only)
1. **Dependency Resolution**: Build execution order based on `depends_on`
2. **Status Validation**: Filter tasks with `status: "pending"` and met dependencies
3. **Agent Assignment**: Determine agent type from `meta.agent` or `meta.type`
4. **Context Preparation**: Load dependency summaries and inherited context
### Phase 2: Planning Document Analysis (Normal Mode Only)
**Optimized to avoid reading all task JSONs upfront**
1. **Read IMPL_PLAN.md**: Understand overall strategy, task breakdown summary, dependencies
2. **Read TODO_LIST.md**: Get current task statuses and execution progress
3. **Extract Task Metadata**: Parse task IDs, titles, and dependency relationships from TODO_LIST.md
4. **Build Execution Queue**: Determine ready tasks based on TODO_LIST.md status and dependencies
**Key Optimization**: Use IMPL_PLAN.md and TODO_LIST.md as primary sources instead of reading all task JSONs
**Note**: In resume mode, this phase is also skipped as session analysis was already completed by `/workflow:status`.
### Phase 3: Planning (Resume Mode Entry Point)
### Phase 3: TodoWrite Generation (Resume Mode Entry Point)
**This is where resume mode directly enters after skipping Phases 1 & 2**
1. **Create TodoWrite List**: Generate task list with status markers from session state
2. **Mark Initial Status**: Set first pending task as `in_progress`
1. **Create TodoWrite List**: Generate task list from TODO_LIST.md (not from task JSONs)
- Parse TODO_LIST.md to extract all tasks with current statuses
- Identify first pending task with met dependencies
- Generate comprehensive TodoWrite covering entire workflow
2. **Mark Initial Status**: Set first ready task as `in_progress` in TodoWrite
3. **Prepare Session Context**: Inject workflow paths for agent use (using provided session-id)
4. **Prepare Complete Task JSON**: Include pre_analysis and flow control steps for agent consumption
5. **Validate Prerequisites**: Ensure all required context is available from existing session
4. **Validate Prerequisites**: Ensure IMPL_PLAN.md and TODO_LIST.md exist and are valid
**Resume Mode Behavior**:
- Load existing session state directly from `.workflow/{session-id}/`
- Use session's task files and summaries without discovery
- Generate TodoWrite from current session progress
- Proceed immediately to agent execution
- Load existing TODO_LIST.md directly from `.workflow/{session-id}/`
- Extract current progress from TODO_LIST.md
- Generate TodoWrite from TODO_LIST.md state
- Proceed immediately to agent execution (Phase 4)
### Phase 4: Execution
1. **Pass Task with Flow Control**: Include complete task JSON with `pre_analysis` steps for agent execution
2. **Launch Agent**: Invoke specialized agent with complete context including flow control steps
3. **Monitor Progress**: Track agent execution and handle errors without user interruption
4. **Collect Results**: Gather implementation results and outputs
5. **Continue Workflow**: Automatically proceed to next pending task until completion
### Phase 4: Execution (Lazy Task Loading)
**Key Optimization**: Read task JSON **only when needed** for execution
1. **Identify Next Task**: From TodoWrite, get the next `in_progress` task ID
2. **Load Task JSON on Demand**: Read `.task/{task-id}.json` for current task ONLY
3. **Validate Task Structure**: Ensure all 5 required fields exist (id, title, status, meta, context, flow_control)
4. **Pass Task with Flow Control**: Include complete task JSON with `pre_analysis` steps for agent execution
5. **Launch Agent**: Invoke specialized agent with complete context including flow control steps
6. **Monitor Progress**: Track agent execution and handle errors without user interruption
7. **Collect Results**: Gather implementation results and outputs
8. **Update TODO_LIST.md**: Mark current task as completed in TODO_LIST.md
9. **Continue Workflow**: Identify next pending task from TODO_LIST.md and repeat from step 1
**Execution Loop Pattern**:
```
while (TODO_LIST.md has pending tasks) {
next_task_id = getTodoWriteInProgressTask()
task_json = Read(.workflow/{session}/.task/{next_task_id}.json) // Lazy load
executeTaskWithAgent(task_json)
updateTodoListMarkCompleted(next_task_id)
advanceTodoWriteToNextTask()
}
```
**Benefits**:
- Reduces initial context loading by ~90%
- Only reads task JSON when actually executing
- Scales better for workflows with many tasks
- Faster startup time for workflow execution
### Phase 5: Completion
1. **Update Task Status**: Mark completed tasks in JSON files
@@ -108,27 +148,33 @@ Orchestrates autonomous workflow execution through systematic task discovery, ag
## Task Discovery & Queue Building
### Session Discovery Process (Normal Mode)
### Session Discovery Process (Normal Mode - Optimized)
```
├── Check for .active-* markers in .workflow/
├── If multiple active sessions found → Prompt user to select
├── Locate selected session's workflow folder
├── Load selected session's workflow-session.json and IMPL_PLAN.md
├── Scan selected session's .task/ directory for task JSON files
├── Analyze task statuses and dependencies for selected session only
── Build execution queue of ready tasks from selected session
├── Load session metadata: workflow-session.json (minimal context)
├── Read IMPL_PLAN.md (strategy overview and task summary)
├── Read TODO_LIST.md (current task statuses and dependencies)
── Parse TODO_LIST.md to extract task metadata (NO JSON loading)
├── Build execution queue from TODO_LIST.md
└── Generate TodoWrite from TODO_LIST.md state
```
### Resume Mode Process (--resume-session flag)
**Key Change**: Task JSONs are NOT loaded during discovery - they are loaded lazily during execution
### Resume Mode Process (--resume-session flag - Optimized)
```
├── Use provided session-id directly (skip discovery)
├── Validate .workflow/{session-id}/ directory exists
├── Load session's workflow-session.json and IMPL_PLAN.md directly
├── Scan session's .task/ directory for task JSON files
├── Use existing task statuses and dependencies (no re-analysis needed)
└── Build execution queue from session state (prioritize pending/in-progress tasks)
├── Read TODO_LIST.md for current progress
├── Parse TODO_LIST.md to extract task IDs and statuses
├── Generate TodoWrite from TODO_LIST.md (prioritize in-progress/pending tasks)
└── Enter Phase 4 (Execution) with lazy task JSON loading
```
**Key Change**: Completely skip IMPL_PLAN.md and task JSON loading - use TODO_LIST.md only
### Task Status Logic
```
pending + dependencies_met → executable
@@ -141,52 +187,72 @@ blocked → skip until dependencies clear
### Parallel Execution Algorithm
**Core principle**: Execute independent tasks concurrently in batches based on dependency graph.
#### Algorithm Steps
#### Algorithm Steps (Optimized with Lazy Loading)
```javascript
function executeBatchWorkflow(sessionId) {
// 1. Build dependency graph from task JSONs
const graph = buildDependencyGraph(`.workflow/${sessionId}/.task/*.json`);
// 1. Build dependency graph from TODO_LIST.md (NOT task JSONs)
const graph = buildDependencyGraphFromTodoList(`.workflow/${sessionId}/TODO_LIST.md`);
// 2. Process batches until graph is empty
while (!graph.isEmpty()) {
// 3. Identify current batch (tasks with in-degree = 0)
const batch = graph.getNodesWithInDegreeZero();
// 4. Check for parallel execution opportunities
const parallelGroups = groupByExecutionGroup(batch);
// 4. Load task JSONs ONLY for current batch (lazy loading)
const batchTaskJsons = batch.map(taskId =>
Read(`.workflow/${sessionId}/.task/${taskId}.json`)
);
// 5. Execute batch concurrently
// 5. Check for parallel execution opportunities
const parallelGroups = groupByExecutionGroup(batchTaskJsons);
// 6. Execute batch concurrently
await Promise.all(
parallelGroups.map(group => executeBatch(group))
);
// 6. Update graph: remove completed tasks and their edges
// 7. Update graph: remove completed tasks and their edges
graph.removeNodes(batch);
// 7. Update TodoWrite to reflect completed batch
// 8. Update TODO_LIST.md and TodoWrite to reflect completed batch
updateTodoListAfterBatch(batch);
updateTodoWriteAfterBatch(batch);
}
// 8. All tasks complete - auto-complete session
// 9. All tasks complete - auto-complete session
SlashCommand("/workflow:session:complete");
}
function buildDependencyGraph(taskFiles) {
const tasks = loadAllTaskJSONs(taskFiles);
function buildDependencyGraphFromTodoList(todoListPath) {
const todoContent = Read(todoListPath);
const tasks = parseTodoListTasks(todoContent);
const graph = new DirectedGraph();
tasks.forEach(task => {
graph.addNode(task.id, task);
// Add edges for dependencies
task.context.depends_on?.forEach(depId => {
graph.addEdge(depId, task.id); // Edge from dependency to task
});
graph.addNode(task.id, { id: task.id, title: task.title, status: task.status });
task.dependencies?.forEach(depId => graph.addEdge(depId, task.id));
});
return graph;
}
function parseTodoListTasks(todoContent) {
// Parse: - [ ] **IMPL-001**: Task title → [📋](./.task/IMPL-001.json)
const taskPattern = /- \[([ x])\] \*\*([A-Z]+-\d+(?:\.\d+)?)\*\*: (.+?) →/g;
const tasks = [];
let match;
while ((match = taskPattern.exec(todoContent)) !== null) {
tasks.push({
status: match[1] === 'x' ? 'completed' : 'pending',
id: match[2],
title: match[3]
});
}
return tasks;
}
function groupByExecutionGroup(tasks) {
const groups = {};
@@ -338,11 +404,12 @@ TodoWrite({
- **Workflow Completion Check**: When all tasks marked `completed`, auto-call `/workflow:session:complete`
#### TODO_LIST.md Update Timing
- **Before Agent Launch**: Update TODO_LIST.md to mark task as `in_progress` (⚠️)
- **After Task Complete**: Update TODO_LIST.md to mark as `completed` (✅), advance to next
- **On Error**: Keep as `in_progress` in TODO_LIST.md, add error note
- **Workflow Complete**: When all tasks completed, call `/workflow:session:complete`
- **Session End**: Sync all TODO_LIST.md statuses with JSON task files
**Single source of truth for task status** - enables lazy loading by providing task metadata without reading JSONs
- **Before Agent Launch**: Mark task as `in_progress`
- **After Task Complete**: Mark as `completed`, advance to next
- **On Error**: Keep as `in_progress`, add error note
- **Workflow Complete**: Call `/workflow:session:complete`
### 3. Agent Context Management
**Comprehensive context preparation** for autonomous agent execution:
@@ -423,7 +490,7 @@ Task(subagent_type="{meta.agent}",
3. **Implement Solution**: Follow `flow_control.implementation_approach` using accumulated context
4. **Complete Task**:
- Update task status: `jq '.status = \"completed\"' {session.task_json_path} > temp.json && mv temp.json {session.task_json_path}`
- Update TODO list: {session.todo_list_path}
- Update TODO_LIST.md: Mark task as [x] completed in {session.todo_list_path}
- Generate summary: {session.summaries_dir}/{task.id}-summary.md
- Check workflow completion and call `/workflow:session:complete` if all tasks done

View File

@@ -153,7 +153,7 @@ CONTEXT: Existing user database schema, REST API endpoints
**Relationship with Brainstorm Phase**:
- If brainstorm role analyses exist ([role]/analysis.md files), Phase 3 analysis incorporates them as input
- **⚠️ User's original intent is ALWAYS primary**: New or refined user goals override brainstorm recommendations
- **User's original intent is ALWAYS primary**: New or refined user goals override brainstorm recommendations
- **Role analysis.md files define "WHAT"**: Requirements, design specs, role-specific insights
- **IMPL_PLAN.md defines "HOW"**: Executable task breakdown, dependencies, implementation sequence
- Task generation translates high-level role analyses into concrete, actionable work items
@@ -192,12 +192,12 @@ Planning complete for session: [sessionId]
Tasks generated: [count]
Plan: .workflow/[sessionId]/IMPL_PLAN.md
Recommended Next Steps:
Recommended Next Steps:
1. /workflow:action-plan-verify --session [sessionId] # Verify plan quality before execution
2. /workflow:status # Review task breakdown
3. /workflow:execute # Start implementation (after verification)
⚠️ Quality Gate: Consider running /workflow:action-plan-verify to catch issues early
Quality Gate: Consider running /workflow:action-plan-verify to catch issues early
```
## TodoWrite Pattern
@@ -216,7 +216,7 @@ TodoWrite({todos: [
TodoWrite({todos: [
{"content": "Execute session discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Execute context gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Execute conflict resolution", "status": "in_progress", "activeForm": "Executing conflict resolution"},
{"content": "Resolve conflicts and apply fixes", "status": "in_progress", "activeForm": "Resolving conflicts"},
{"content": "Execute task generation", "status": "pending", "activeForm": "Executing task generation"}
]})
@@ -231,7 +231,7 @@ TodoWrite({todos: [
TodoWrite({todos: [
{"content": "Execute session discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Execute context gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Execute conflict resolution", "status": "completed", "activeForm": "Executing conflict resolution"},
{"content": "Resolve conflicts and apply fixes", "status": "completed", "activeForm": "Resolving conflicts"},
{"content": "Execute task generation", "status": "in_progress", "activeForm": "Executing task generation"}
]})
```
@@ -286,12 +286,18 @@ Phase 2: context-gather --session sessionId "structured-description"
Phase 3: conflict-resolution [AUTO-TRIGGERED if conflict_risk ≥ medium]
↓ Input: sessionId + contextPath + conflict_risk
↓ CLI-powered conflict detection and resolution strategy generation
Output: CONFLICT_RESOLUTION.md (if conflict_risk ≥ medium)
↓ CLI-powered conflict detection (JSON output)
AskUserQuestion: Present conflicts + resolution strategies
↓ User selects strategies (or skip)
↓ Apply modifications via Edit tool:
↓ - Update guidance-specification.md
↓ - Update role analyses (*.md)
↓ - Mark context-package.json as "resolved"
↓ Output: Modified brainstorm artifacts (NO report file)
↓ Skip if conflict_risk is none/low → proceed directly to Phase 4
Phase 4: task-generate[--agent] --session sessionId
↓ Input: sessionId + conflict resolution decisions (if exists) + session memory
↓ Input: sessionId + resolved brainstorm artifacts + session memory
↓ Output: IMPL_PLAN.md, task JSONs, TODO_LIST.md
Return summary to user
@@ -300,8 +306,7 @@ Return summary to user
**Session Memory Flow**: Each phase receives session ID, which provides access to:
- Previous task summaries
- Existing context and analysis
- Brainstorming artifacts
- Conflict resolution decisions (if Phase 3 executed)
- Brainstorming artifacts (potentially modified by Phase 3)
- Session-specific configuration
**Structured Description Benefits**:
@@ -318,24 +323,24 @@ Return summary to user
## Coordinator Checklist
**Pre-Phase**: Convert user input to structured format (GOAL/SCOPE/CONTEXT)
Initialize TodoWrite before any command (Phase 3 added dynamically after Phase 2)
Execute Phase 1 immediately with structured description
Parse session ID from Phase 1 output, store in memory
Pass session ID and structured description to Phase 2 command
Parse context path from Phase 2 output, store in memory
**Extract conflict_risk from context-package.json**: Determine Phase 3 execution
**If conflict_risk ≥ medium**: Launch Phase 3 conflict-resolution with sessionId and contextPath
Wait for Phase 3 completion (if executed), verify CONFLICT_RESOLUTION.md created
**If conflict_risk is none/low**: Skip Phase 3, proceed directly to Phase 4
**Build Phase 4 command** based on flags:
- **Pre-Phase**: Convert user input to structured format (GOAL/SCOPE/CONTEXT)
- Initialize TodoWrite before any command (Phase 3 added dynamically after Phase 2)
- Execute Phase 1 immediately with structured description
- Parse session ID from Phase 1 output, store in memory
- Pass session ID and structured description to Phase 2 command
- Parse context path from Phase 2 output, store in memory
- **Extract conflict_risk from context-package.json**: Determine Phase 3 execution
- **If conflict_risk ≥ medium**: Launch Phase 3 conflict-resolution with sessionId and contextPath
- Wait for Phase 3 completion (if executed), verify CONFLICT_RESOLUTION.md created
- **If conflict_risk is none/low**: Skip Phase 3, proceed directly to Phase 4
- **Build Phase 4 command** based on flags:
- Base command: `/workflow:tools:task-generate` (or `-agent` if `--agent` flag)
- Add `--session [sessionId]`
- Add `--cli-execute` if flag present
Pass session ID to Phase 4 command
Verify all Phase 4 outputs
Update TodoWrite after each phase (dynamically adjust for Phase 3 presence)
After each phase, automatically continue to next phase based on TodoList status
- Pass session ID to Phase 4 command
- Verify all Phase 4 outputs
- Update TodoWrite after each phase (dynamically adjust for Phase 3 presence)
- After each phase, automatically continue to next phase based on TodoList status
## Structure Template Reference
@@ -363,3 +368,22 @@ CONSTRAINTS: [Limitations or boundaries]
# Phase 2
/workflow:tools:context-gather --session WFS-123 "GOAL: Build authentication\nSCOPE: JWT, login, registration\nCONTEXT: REST API"
```
## Related Commands
**Prerequisite Commands**:
- `/workflow:brainstorm:artifacts` - Optional: Generate role-based analyses before planning (if complex requirements need multiple perspectives)
- `/workflow:brainstorm:synthesis` - Optional: Refine brainstorm analyses with clarifications
**Called by This Command** (5 phases):
- `/workflow:session:start` - Phase 1: Create or discover workflow session
- `/workflow:tools:context-gather` - Phase 2: Gather project context and analyze codebase
- `/workflow:tools:conflict-resolution` - Phase 3: Detect and resolve conflicts (auto-triggered if conflict_risk ≥ medium)
- `/compact` - Phase 3: Memory optimization (if context approaching limits)
- `/workflow:tools:task-generate` - Phase 4: Generate task JSON files with manual approach
- `/workflow:tools:task-generate-agent` - Phase 4: Generate task JSON files with agent-driven approach (when `--agent` flag used)
**Follow-up Commands**:
- `/workflow:action-plan-verify` - Recommended: Verify plan quality and catch issues before execution
- `/workflow:status` - Review task breakdown and current progress
- `/workflow:execute` - Begin implementation of generated tasks

View File

@@ -89,5 +89,17 @@ The special `--resume-session` flag tells `/workflow:execute`:
3. **Agent coordination**: TodoWrite and agent execution initiated successfully
4. **Context preservation**: Session state and progress properly maintained
## Related Commands
**Prerequisite Commands**:
- `/workflow:plan` or `/workflow:execute` - Workflow must be in progress or paused
**Called by This Command** (2 phases):
- `/workflow:status` - Phase 1: Analyze current session status and identify resume point
- `/workflow:execute` - Phase 2: Resume execution with `--resume-session` flag
**Follow-up Commands**:
- None - Workflow continues automatically via `/workflow:execute`
---
*Sequential command coordination for workflow session resumption*

View File

@@ -4,17 +4,17 @@ description: Optional specialized review (security, architecture, docs) for comp
argument-hint: "[--type=security|architecture|action-items|quality] [optional: session-id]"
---
### 🚀 Command Overview: `/workflow:review`
## Command Overview: /workflow:review
**Optional specialized review** for completed implementations. In the standard workflow, **passing tests = approved code**. Use this command only when specialized review is required (security, architecture, compliance, docs).
## Philosophy: "Tests Are the Review"
- **Default**: All tests pass Code approved
- 🔍 **Optional**: Specialized reviews for:
- 🔒 Security audits (vulnerabilities, auth/authz)
- 🏗️ Architecture compliance (patterns, technical debt)
- 📋 Action items verification (requirements met, acceptance criteria)
- **Default**: All tests pass -> Code approved
- **Optional**: Specialized reviews for:
- Security audits (vulnerabilities, auth/authz)
- Architecture compliance (patterns, technical debt)
- Action items verification (requirements met, acceptance criteria)
## Review Types
@@ -44,13 +44,13 @@ fi
# Step 2: Validation
if [ ! -d ".workflow/${sessionId}" ]; then
echo "Session ${sessionId} not found"
echo "Session ${sessionId} not found"
exit 1
fi
# Check for completed tasks
if [ ! -d ".workflow/${sessionId}/.summaries" ] || [ -z "$(find .workflow/${sessionId}/.summaries/ -name "IMPL-*.md" -type f 2>/dev/null)" ]; then
echo "No completed implementation found. Complete implementation first"
echo "No completed implementation found. Complete implementation first"
exit 1
fi
@@ -59,7 +59,7 @@ review_type="${TYPE_ARG:-quality}"
# Redirect docs review to specialized command
if [ "$review_type" = "docs" ]; then
echo "💡 For documentation generation, please use:"
echo "For documentation generation, please use:"
echo " /workflow:tools:docs"
echo ""
echo "The docs command provides:"
@@ -73,7 +73,7 @@ fi
# BASH_EXECUTION_STOPS → MODEL_ANALYSIS_BEGINS
```
### 🧠 Model Analysis Phase
### Model Analysis Phase
After bash validation, the model takes control to:
@@ -205,7 +205,7 @@ After bash validation, the model takes control to:
```bash
# If architecture or quality issues found, suggest memory update
if [ "$review_type" = "architecture" ] || [ "$review_type" = "quality" ]; then
echo "💡 Consider updating project documentation:"
echo "Consider updating project documentation:"
echo " /update-memory-related"
fi
```
@@ -226,7 +226,7 @@ After bash validation, the model takes control to:
/workflow:review --type=docs
```
## Features
## Features
- **Simple Validation**: Check session exists and has completed tasks
- **No Complex Orchestration**: Direct analysis, no multi-phase pipeline
@@ -240,10 +240,10 @@ After bash validation, the model takes control to:
```
Standard Workflow:
plan execute test-gen execute
plan -> execute -> test-gen -> execute (complete)
Optional Review (when needed):
plan execute test-gen execute review (security/architecture/docs)
plan -> execute -> test-gen -> execute -> review (security/architecture/docs)
```
**When to Use**:
@@ -256,11 +256,3 @@ Optional Review (when needed):
- Regular development (tests are sufficient)
- Simple bug fixes (test-fix-agent handles it)
- Minor changes (update-memory-related is enough)
## Related Commands
- `/workflow:execute` - Must complete implementation first
- `/workflow:test-gen` - Primary quality gate (tests)
- `/workflow:tools:docs` - Generate hierarchical documentation (use instead of `--type=docs`)
- `/update-memory-related` - Update CLAUDE.md docs after architecture findings
- `/workflow:status` - Check session status

View File

@@ -1,6 +1,6 @@
---
name: complete
description: Mark the active workflow session as complete and remove active flag
description: Mark the active workflow session as complete, archive it with lessons learned, and remove active flag
examples:
- /workflow:session:complete
- /workflow:session:complete --detailed
@@ -9,7 +9,7 @@ examples:
# Complete Workflow Session (/workflow:session:complete)
## Overview
Mark the currently active workflow session as complete, update its status, and remove the active flag marker.
Mark the currently active workflow session as complete, analyze it for lessons learned, move it to the archive directory, and remove the active flag marker.
## Usage
```bash
@@ -19,87 +19,129 @@ Mark the currently active workflow session as complete, update its status, and r
## Implementation Flow
### Step 1: Find Active Session
### Phase 1: Prepare for Archival (Minimal Manual Operations)
**Purpose**: Find active session, move to archive location, pass control to agent. Minimal operations.
#### Step 1.1: Find Active Session and Get Name
```bash
ls .workflow/.active-* 2>/dev/null | head -1
```
# Find active marker
bash(find .workflow/ -name ".active-*" -type f | head -1)
### Step 2: Get Session Name
# Extract session name from marker path
bash(basename .workflow/.active-WFS-session-name | sed 's/^\.active-//')
```
**Output**: Session name `WFS-session-name`
#### Step 1.2: Move Session to Archive
```bash
basename .workflow/.active-WFS-session-name | sed 's/^\.active-//'
# Create archive directory if needed
bash(mkdir -p .workflow/.archives/)
# Move session to archive location
bash(mv .workflow/WFS-session-name .workflow/.archives/WFS-session-name)
```
**Result**: Session now at `.workflow/.archives/WFS-session-name/`
### Phase 2: Agent-Orchestrated Completion (All Data Processing)
**Purpose**: Agent analyzes archived session, generates metadata, updates manifest, and removes active marker.
#### Agent Invocation
Invoke `universal-executor` agent to complete the archival process.
**Agent Task**:
```
Task(
subagent_type="universal-executor",
description="Complete session archival",
prompt=`
Complete workflow session archival. Session already moved to archive location.
## Context
- Session: .workflow/.archives/WFS-session-name/
- Active marker: .workflow/.active-WFS-session-name
## Tasks
1. **Extract session data** from workflow-session.json (session_id, description/topic, started_at/timestamp, completed_at, status)
- If status != "completed", update it with timestamp
2. **Count files**: tasks (.task/*.json) and summaries (.summaries/*.md)
3. **Generate lessons**: Use gemini with ~/.claude/workflows/cli-templates/prompts/archive/analysis-simple.txt (fallback: analyze files directly)
- Return: {successes, challenges, watch_patterns}
4. **Build archive entry**:
- Calculate: duration_hours, success_rate, tags (3-5 keywords)
- Construct complete JSON with session_id, description, archived_at, archive_path, metrics, tags, lessons
5. **Update manifest**: Initialize .workflow/.archives/manifest.json if needed, append entry
6. **Remove active marker**
7. **Return result**: {"status": "success", "session_id": "...", "archived_at": "...", "metrics": {...}, "lessons_summary": {...}}
## Error Handling
- On failure: return {"status": "error", "task": "...", "message": "..."}
- Do NOT remove marker if failed
`
)
```
### Step 3: Update Session Status
**Expected Output**:
- Agent returns JSON result confirming successful archival
- Display completion summary to user based on agent response
## Workflow Execution Strategy
### Two-Phase Approach (Optimized)
**Phase 1: Minimal Manual Setup** (2 simple operations)
- Find active session and extract name
- Move session to archive location
- **No data extraction** - agent handles all data processing
- **No counting** - agent does this from archive location
- **Total**: 2 bash commands (find + move)
**Phase 2: Agent-Driven Completion** (1 agent invocation)
- Extract all session data from archived location
- Count tasks and summaries
- Generate lessons learned analysis
- Build complete archive metadata
- Update manifest
- Remove active marker
- Return success/error result
## Quick Commands
```bash
jq '.status = "completed"' .workflow/WFS-session/workflow-session.json > temp.json
mv temp.json .workflow/WFS-session/workflow-session.json
# Phase 1: Find and move
bash(find .workflow/ -name ".active-*" -type f | head -1)
bash(basename .workflow/.active-WFS-session-name | sed 's/^\.active-//')
bash(mkdir -p .workflow/.archives/)
bash(mv .workflow/WFS-session-name .workflow/.archives/WFS-session-name)
# Phase 2: Agent completes archival
Task(subagent_type="universal-executor", description="Complete session archival", prompt=`...`)
```
### Step 4: Add Completion Timestamp
## Archive Query Commands
After archival, you can query the manifest:
```bash
jq '.completed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' .workflow/WFS-session/workflow-session.json > temp.json
mv temp.json .workflow/WFS-session/workflow-session.json
# List all archived sessions
jq '.archives[].session_id' .workflow/.archives/manifest.json
# Find sessions by keyword
jq '.archives[] | select(.description | test("auth"; "i"))' .workflow/.archives/manifest.json
# Get specific session details
jq '.archives[] | select(.session_id == "WFS-user-auth")' .workflow/.archives/manifest.json
# List all watch patterns across sessions
jq '.archives[].lessons.watch_patterns[]' .workflow/.archives/manifest.json
```
### Step 5: Count Final Statistics
```bash
find .workflow/WFS-session/.task/ -name "*.json" -type f 2>/dev/null | wc -l
find .workflow/WFS-session/.summaries/ -name "*.md" -type f 2>/dev/null | wc -l
```
### Step 6: Remove Active Marker
```bash
rm .workflow/.active-WFS-session-name
```
## Simple Bash Commands
### Basic Operations
- **Find active session**: `find .workflow/ -name ".active-*" -type f`
- **Get session name**: `basename marker | sed 's/^\.active-//'`
- **Update status**: `jq '.status = "completed"' session.json > temp.json`
- **Add timestamp**: `jq '.completed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"'`
- **Count tasks**: `find .task/ -name "*.json" -type f | wc -l`
- **Count completed**: `find .summaries/ -name "*.md" -type f 2>/dev/null | wc -l`
- **Remove marker**: `rm .workflow/.active-session`
### Completion Result
```
Session WFS-user-auth completed
- Status: completed
- Started: 2025-09-15T10:00:00Z
- Completed: 2025-09-15T16:30:00Z
- Duration: 6h 30m
- Total tasks: 8
- Completed tasks: 8
- Success rate: 100%
```
### Detailed Summary (--detailed flag)
```
Session Completion Summary:
├── Session: WFS-user-auth
├── Project: User authentication system
├── Total time: 6h 30m
├── Tasks completed: 8/8 (100%)
├── Files generated: 24 files
├── Summaries created: 8 summaries
├── Status: All tasks completed successfully
└── Location: .workflow/WFS-user-auth/
```
### Error Handling
```bash
# No active session
find .workflow/ -name ".active-*" -type f 2>/dev/null || echo "No active session found"
# Incomplete tasks
task_count=$(find .task/ -name "*.json" -type f | wc -l)
summary_count=$(find .summaries/ -name "*.md" -type f 2>/dev/null | wc -l)
test $task_count -eq $summary_count || echo "Warning: Not all tasks completed"
```
## Related Commands
- `/workflow:session:list` - View all sessions including completed
- `/workflow:session:start` - Start new session
- `/workflow:status` - Check completion status before completing

View File

@@ -59,19 +59,19 @@ jq -r '.created_at // "unknown"' .workflow/WFS-session/workflow-session.json
```
Workflow Sessions:
WFS-oauth-integration (ACTIVE)
[ACTIVE] WFS-oauth-integration
Project: OAuth2 authentication system
Status: active
Progress: 3/8 tasks completed
Created: 2025-09-15T10:30:00Z
⏸️ WFS-user-profile (PAUSED)
[PAUSED] WFS-user-profile
Project: User profile management
Status: paused
Progress: 1/5 tasks completed
Created: 2025-09-14T14:15:00Z
📁 WFS-database-migration (COMPLETED)
[COMPLETED] WFS-database-migration
Project: Database schema migration
Status: completed
Progress: 4/4 tasks completed
@@ -81,10 +81,10 @@ Total: 3 sessions (1 active, 1 paused, 1 completed)
```
### Status Indicators
- ****: Active session
- **⏸️**: Paused session
- **📁**: Completed session
- ****: Error/corrupted session
- **[ACTIVE]**: Active session
- **[PAUSED]**: Paused session
- **[COMPLETED]**: Completed session
- **[ERROR]**: Error/corrupted session
### Quick Commands
```bash
@@ -96,9 +96,4 @@ ls .workflow/.active-* | basename | sed 's/^\.active-//'
# Show recent sessions
ls -t .workflow/WFS-*/workflow-session.json | head -3
```
## Related Commands
- `/workflow:session:start` - Create new session
- `/workflow:session:switch` - Switch to different session
- `/workflow:session:status` - Detailed session info
```

View File

@@ -64,9 +64,4 @@ Session WFS-user-auth resumed
- Paused at: 2025-09-15T14:30:00Z
- Resumed at: 2025-09-15T15:45:00Z
- Ready for: /workflow:execute
```
## Related Commands
- `/workflow:session:pause` - Pause current session
- `/workflow:execute` - Continue workflow execution
- `/workflow:session:list` - Show all sessions
```

View File

@@ -212,9 +212,4 @@ bash(echo '{"session_id":"WFS-test","project":"test project","status":"planning"
- Pattern: `WFS-[lowercase-slug]`
- Characters: `a-z`, `0-9`, `-` only
- Max length: 50 characters
- Uniqueness: Add numeric suffix if collision (`WFS-auth-2`, `WFS-auth-3`)
## Related Commands
- `/workflow:plan` - Uses `--auto` mode for session management
- `/workflow:execute` - Uses discovery mode for session selection
- `/workflow:session:status` - Shows detailed session information
- Uniqueness: Add numeric suffix if collision (`WFS-auth-2`, `WFS-auth-3`)

View File

@@ -51,11 +51,11 @@ find .workflow/WFS-session/.summaries/ -name "*.md" -type f 2>/dev/null | wc -l
**Progress**: 3/8 tasks completed
## Active Tasks
- [⚠️] impl-1: Current task in progress
- [IN PROGRESS] impl-1: Current task in progress
- [ ] impl-2: Next pending task
## Completed Tasks
- [] impl-0: Setup completed
- [COMPLETED] impl-0: Setup completed
```
## Simple Bash Commands
@@ -112,13 +112,8 @@ Summary: .summaries/impl-1-summary.md
### Validation Results
```
Session file valid
8 task files found
3 summaries found
⚠️ 5 tasks pending completion
```
## Related Commands
- `/workflow:execute` - Uses this for task discovery
- `/workflow:resume` - Uses this for progress analysis
- `/workflow:session:status` - Shows session metadata
Session file valid
8 task files found
3 summaries found
5 tasks pending completion
```

View File

@@ -171,14 +171,14 @@ Total tasks: [M] (1 task per simple feature + subtasks for complex features)
Task breakdown:
- Simple features: [K] tasks (IMPL-1 to IMPL-K)
- Complex features: [L] features with [P] subtasks
- Total task count: [M] (within 10-task limit)
- Total task count: [M] (within 10-task limit)
Structure:
- IMPL-1: {Feature 1 Name} (Internal: 🔴 Red → 🟢 Green → 🔵 Refactor)
- IMPL-2: {Feature 2 Name} (Internal: 🔴 Red → 🟢 Green → 🔵 Refactor)
- IMPL-1: {Feature 1 Name} (Internal: Red → Green → Refactor)
- IMPL-2: {Feature 2 Name} (Internal: Red → Green → Refactor)
- IMPL-3: {Complex Feature} (Container)
- IMPL-3.1: {Sub-feature A} (Internal: 🔴 Red → 🟢 Green → 🔵 Refactor)
- IMPL-3.2: {Sub-feature B} (Internal: 🔴 Red → 🟢 Green → 🔵 Refactor)
- IMPL-3.1: {Sub-feature A} (Internal: Red → Green → Refactor)
- IMPL-3.2: {Sub-feature B} (Internal: Red → Green → Refactor)
[...]
Plans generated:
@@ -192,12 +192,12 @@ TDD Configuration:
- Green phase includes test-fix cycle (max 3 iterations)
- Auto-revert on max iterations reached
Recommended Next Steps:
Recommended Next Steps:
1. /workflow:action-plan-verify --session [sessionId] # Verify TDD plan quality and dependencies
2. /workflow:execute --session [sessionId] # Start TDD execution
3. /workflow:tdd-verify [sessionId] # Post-execution TDD compliance check
⚠️ Quality Gate: Consider running /workflow:action-plan-verify to validate TDD task structure and dependencies
Quality Gate: Consider running /workflow:action-plan-verify to validate TDD task structure and dependencies
```
## TodoWrite Pattern
@@ -258,11 +258,6 @@ Convert user input to TDD-structured format:
- **Command failure**: Keep phase in_progress, report error
- **TDD validation failure**: Report incomplete chains or wrong dependencies
## Related Commands
- `/workflow:plan` - Standard (non-TDD) planning
- `/workflow:execute` - Execute TDD tasks
- `/workflow:tdd-verify` - Verify TDD compliance
- `/workflow:status` - View progress
## TDD Workflow Enhancements
### Overview
@@ -294,7 +289,7 @@ IMPL (Green phase) tasks now include automatic test-fix cycle for resilient impl
```
1. Write minimal implementation code
2. Execute test suite
3. IF tests pass → Complete task
3. IF tests pass → Complete task
4. IF tests fail → Enter fix cycle:
a. Gemini diagnoses with bug-fix template
b. Apply fix (manual or Codex)
@@ -304,10 +299,10 @@ IMPL (Green phase) tasks now include automatic test-fix cycle for resilient impl
```
**Benefits**:
- Faster feedback within Green phase
- Autonomous recovery from implementation errors
- Systematic debugging with Gemini
- Safe rollback prevents broken state
- Faster feedback within Green phase
- Autonomous recovery from implementation errors
- Systematic debugging with Gemini
- Safe rollback prevents broken state
#### 3. Agent-Driven Planning
**From plan --agent workflow**
@@ -335,7 +330,7 @@ Supports action-planning-agent for more autonomous TDD planning with:
### Migration Notes
**Backward Compatibility**: Fully compatible
**Backward Compatibility**: Fully compatible
- Existing TDD workflows continue to work
- New features are additive, not breaking
- Phase 3 can be skipped if test-context-gather not available
@@ -367,3 +362,23 @@ Supports action-planning-agent for more autonomous TDD planning with:
- `meta.max_iterations`: Fix attempts (default: 3)
- `meta.use_codex`: Auto-fix mode (default: false)
## Related Commands
**Prerequisite Commands**:
- None - TDD planning is self-contained (can optionally run brainstorm commands before)
**Called by This Command** (6 phases):
- `/workflow:session:start` - Phase 1: Create or discover TDD workflow session
- `/workflow:tools:context-gather` - Phase 2: Gather project context and analyze codebase
- `/workflow:tools:test-context-gather` - Phase 3: Analyze existing test patterns and coverage
- `/workflow:tools:conflict-resolution` - Phase 4: Detect and resolve conflicts (auto-triggered if conflict_risk ≥ medium)
- `/compact` - Phase 4: Memory optimization (if context approaching limits)
- `/workflow:tools:task-generate-tdd` - Phase 5: Generate TDD task chains with Red-Green-Refactor cycles
- `/workflow:tools:task-generate-tdd --agent` - Phase 5: Generate TDD tasks with agent-driven approach (when `--agent` flag used)
**Follow-up Commands**:
- `/workflow:action-plan-verify` - Recommended: Verify TDD plan quality and structure before execution
- `/workflow:status` - Review TDD task breakdown
- `/workflow:execute` - Begin TDD implementation
- `/workflow:tdd-verify` - Post-execution: Verify TDD compliance and generate quality report

View File

@@ -118,14 +118,14 @@ RULES: Focus on TDD best practices and workflow adherence. Be specific about vio
TDD Verification Report - Session: {sessionId}
## Chain Validation
Feature 1: TEST-1.1 → IMPL-1.1 → REFACTOR-1.1 (Complete)
Feature 2: TEST-2.1 → IMPL-2.1 → REFACTOR-2.1 (Complete)
⚠️ Feature 3: TEST-3.1 → IMPL-3.1 (Missing REFACTOR phase)
[COMPLETE] Feature 1: TEST-1.1 → IMPL-1.1 → REFACTOR-1.1 (Complete)
[COMPLETE] Feature 2: TEST-2.1 → IMPL-2.1 → REFACTOR-2.1 (Complete)
[INCOMPLETE] Feature 3: TEST-3.1 → IMPL-3.1 (Missing REFACTOR phase)
## Test Execution
All TEST tasks produced failing tests
All IMPL tasks made tests pass
All REFACTOR tasks maintained green tests
All TEST tasks produced failing tests
All IMPL tasks made tests pass
All REFACTOR tasks maintained green tests
## Coverage Metrics
Line Coverage: {percentage}%
@@ -271,20 +271,20 @@ Status: {EXCELLENT | GOOD | NEEDS IMPROVEMENT | FAILED}
## Chain Analysis
### Feature 1: {Feature Name}
**Status**: Complete
**Status**: Complete
**Chain**: TEST-1.1 → IMPL-1.1 → REFACTOR-1.1
- **Red Phase**: Test created and failed with clear message
- **Green Phase**: Minimal implementation made test pass
- **Refactor Phase**: Code improved, tests remained green
- **Red Phase**: Test created and failed with clear message
- **Green Phase**: Minimal implementation made test pass
- **Refactor Phase**: Code improved, tests remained green
### Feature 2: {Feature Name}
**Status**: ⚠️ Incomplete
**Status**: Incomplete
**Chain**: TEST-2.1 → IMPL-2.1 (Missing REFACTOR-2.1)
- **Red Phase**: Test created and failed
- ⚠️ **Green Phase**: Implementation seems over-engineered
- **Refactor Phase**: Missing
- **Red Phase**: Test created and failed
- **Green Phase**: Implementation seems over-engineered
- **Refactor Phase**: Missing
**Issues**:
- REFACTOR-2.1 task not completed
@@ -306,16 +306,16 @@ Status: {EXCELLENT | GOOD | NEEDS IMPROVEMENT | FAILED}
## TDD Cycle Validation
### Red Phase (Write Failing Test)
- {N}/{total} features had failing tests initially
- ⚠️ Feature 3: No evidence of initial test failure
- {N}/{total} features had failing tests initially
- Feature 3: No evidence of initial test failure
### Green Phase (Make Test Pass)
- {N}/{total} implementations made tests pass
- All implementations minimal and focused
- {N}/{total} implementations made tests pass
- All implementations minimal and focused
### Refactor Phase (Improve Quality)
- ⚠️ {N}/{total} features completed refactoring
- Feature 2, 4: Refactoring step skipped
- {N}/{total} features completed refactoring
- Feature 2, 4: Refactoring step skipped
## Best Practices Assessment
@@ -351,8 +351,3 @@ Status: {EXCELLENT | GOOD | NEEDS IMPROVEMENT | FAILED}
{Summary of compliance status and next steps}
```
## Related Commands
- `/workflow:tdd-plan` - Creates TDD workflow
- `/workflow:execute` - Executes TDD tasks
- `/workflow:tools:tdd-coverage-analysis` - Analyzes test coverage
- `/workflow:status` - Views workflow progress

View File

@@ -10,7 +10,7 @@ allowed-tools: SlashCommand(*), TodoWrite(*), Read(*), Bash(*), Task(*)
## Overview
Orchestrates dynamic test-fix workflow execution through iterative cycles of testing, analysis, and fixing. **Unlike standard execute, this command dynamically generates intermediate tasks** during execution based on test results and CLI analysis, enabling adaptive problem-solving.
**⚠️ CRITICAL - Orchestrator Boundary**:
**CRITICAL - Orchestrator Boundary**:
- This command is the **ONLY place** where test failures are handled
- All CLI analysis (Gemini/Qwen), fix task generation (IMPL-fix-N.json), and iteration management happen HERE
- Agents (@test-fix-agent) only execute single tasks and return results
@@ -59,22 +59,22 @@ Orchestrates dynamic test-fix workflow execution through iterative cycles of tes
## Responsibility Matrix
**⚠️ CRITICAL - Clear division of labor between orchestrator and agents:**
**CRITICAL - Clear division of labor between orchestrator and agents:**
| Responsibility | test-cycle-execute (Orchestrator) | @test-fix-agent (Executor) |
|----------------|----------------------------|---------------------------|
| Manage iteration loop | Controls loop flow | Executes single task |
| Run CLI analysis (Gemini/Qwen) | Runs between agent tasks | Not involved |
| Generate IMPL-fix-N.json | Creates task files | Not involved |
| Run tests | Delegates to agent | Executes test command |
| Apply fixes | Delegates to agent | Modifies code |
| Detect test failures | Analyzes results and decides next action | Executes tests and reports outcomes |
| Add tasks to queue | Manages queue | Not involved |
| Update iteration state | Maintains overall iteration state | Updates individual task status only |
| Manage iteration loop | Yes - Controls loop flow | No - Executes single task |
| Run CLI analysis (Gemini/Qwen) | Yes - Runs between agent tasks | No - Not involved |
| Generate IMPL-fix-N.json | Yes - Creates task files | No - Not involved |
| Run tests | No - Delegates to agent | Yes - Executes test command |
| Apply fixes | No - Delegates to agent | Yes - Modifies code |
| Detect test failures | Yes - Analyzes results and decides next action | Yes - Executes tests and reports outcomes |
| Add tasks to queue | Yes - Manages queue | No - Not involved |
| Update iteration state | Yes - Maintains overall iteration state | Yes - Updates individual task status only |
**Key Principle**: Orchestrator manages the "what" and "when"; agents execute the "how".
**⚠️ ENFORCEMENT**: If test failures occur outside this orchestrator, do NOT handle them inline - always call `/workflow:test-cycle-execute` instead.
**ENFORCEMENT**: If test failures occur outside this orchestrator, do NOT handle them inline - always call `/workflow:test-cycle-execute` instead.
## Execution Lifecycle
@@ -653,10 +653,3 @@ mv temp.json iteration-state.json
5. **Verify No Regressions**: Check all tests pass, not just previously failing ones
6. **Preserve Context**: All iteration artifacts saved for debugging
## Related Commands
- `/workflow:test-fix-gen` - Planning phase (creates initial tasks)
- `/workflow:execute` - Standard workflow execution (no dynamic iteration)
- `/workflow:status` - Check progress and iteration state
- `/workflow:session:complete` - Mark session complete (auto-called on success)
- `/task:create` - Manually create additional tasks if needed

View File

@@ -13,7 +13,7 @@ allowed-tools: SlashCommand(*), TodoWrite(*), Read(*), Bash(*)
This command creates an independent test-fix workflow session for existing code. It orchestrates a 5-phase process to analyze implementation, generate test requirements, and create executable test generation and fix tasks.
**⚠️ CRITICAL - Command Scope**:
**CRITICAL - Command Scope**:
- **This command ONLY generates task JSON files** (IMPL-001.json, IMPL-002.json)
- **Does NOT execute tests or apply fixes** - all execution happens in separate orchestrator
- **Must call `/workflow:test-cycle-execute`** after this command to actually run tests and fixes
@@ -274,7 +274,7 @@ Review artifacts:
- Test plan: .workflow/[testSessionId]/IMPL_PLAN.md
- Task list: .workflow/[testSessionId]/TODO_LIST.md
⚠️ CRITICAL - Next Steps:
CRITICAL - Next Steps:
1. Review IMPL_PLAN.md
2. **MUST execute: /workflow:test-cycle-execute**
- This command only generated task JSON files
@@ -284,7 +284,7 @@ Review artifacts:
**TodoWrite**: Mark phase 5 completed
**⚠️ BOUNDARY NOTE**:
**BOUNDARY NOTE**:
- Command completes here - only task JSON files generated
- All test execution, failure detection, CLI analysis, fix generation happens in `/workflow:test-cycle-execute`
- This command does NOT handle test failures or apply fixes
@@ -462,25 +462,23 @@ WFS-test-[session]/
- Use `--use-codex` for autonomous fix application
- Use `--cli-execute` for enhanced generation capabilities
### Related Commands
## Related Commands
**Planning Phase**:
- `/workflow:plan` - Create implementation workflow
- `/workflow:session:start` - Initialize workflow session
**Prerequisite Commands**:
- `/workflow:plan` or `/workflow:execute` - Complete implementation session (for Session Mode)
- None for Prompt Mode (ad-hoc test generation)
**Context Gathering**:
- `/workflow:tools:test-context-gather` - Session-based context (Phase 2 for session mode)
- `/workflow:tools:context-gather` - Prompt-based context (Phase 2 for prompt mode)
**Called by This Command** (5 phases):
- `/workflow:session:start` - Phase 1: Create independent test workflow session
- `/workflow:tools:test-context-gather` - Phase 2 (Session Mode): Gather source session context
- `/workflow:tools:context-gather` - Phase 2 (Prompt Mode): Analyze codebase directly
- `/workflow:tools:test-concept-enhanced` - Phase 3: Generate test requirements using Gemini
- `/workflow:tools:test-task-generate` - Phase 4: Generate test task JSONs with fix cycle specification
- `/workflow:tools:test-task-generate --use-codex` - Phase 4: With automated Codex fixes (when `--use-codex` flag used)
- `/workflow:tools:test-task-generate --cli-execute` - Phase 4: With CLI execution mode (when `--cli-execute` flag used)
**Analysis & Task Generation**:
- `/workflow:tools:test-concept-enhanced` - Gemini test analysis (Phase 3)
- `/workflow:tools:test-task-generate` - Generate test tasks (Phase 4)
**Follow-up Commands**:
- `/workflow:status` - Review generated test tasks
- `/workflow:test-cycle-execute` - Execute test generation and iterative fix cycles
- `/workflow:execute` - Standard execution of generated test tasks
**Execution**:
- `/workflow:test-cycle-execute` - Execute test-fix workflow (recommended for IMPL-002)
- `/workflow:execute` - Execute standard workflow tasks
- `/workflow:status` - Check task progress
**Review & Management**:
- `/workflow:review` - Review workflow results
- `/workflow:session:complete` - Mark session complete

View File

@@ -24,7 +24,7 @@ allowed-tools: SlashCommand(*), TodoWrite(*), Read(*), Bash(*)
3. Analyze implementation with concept-enhanced → Parse ANALYSIS_RESULTS.md
4. Generate test task from analysis → Return summary
**⚠️ Command Scope**: This command ONLY prepares test workflow artifacts. It does NOT execute tests or implementation. Task execution requires separate user action.
**Command Scope**: This command ONLY prepares test workflow artifacts. It does NOT execute tests or implementation. Task execution requires separate user action.
## Core Rules
@@ -36,7 +36,7 @@ allowed-tools: SlashCommand(*), TodoWrite(*), Read(*), Bash(*)
6. **Track Progress**: Update TodoWrite after every phase completion
7. **Automatic Detection**: context-gather auto-detects test session and gathers source session context
8. **Parse --use-codex Flag**: Extract flag from arguments and pass to Phase 4 (test-task-generate)
9. **⚠️ Command Boundary**: This command ends at Phase 5 summary. Test execution is NOT part of this command.
9. **Command Boundary**: This command ends at Phase 5 summary. Test execution is NOT part of this command.
## 5-Phase Execution
@@ -177,13 +177,13 @@ allowed-tools: SlashCommand(*), TodoWrite(*), Read(*), Bash(*)
---
### Phase 5: Return Summary (⚠️ Command Ends Here)
### Phase 5: Return Summary (Command Ends Here)
**⚠️ Important**: This is the final phase of `/workflow:test-gen`. The command completes and returns control to the user. No automatic execution occurs.
**Important**: This is the final phase of `/workflow:test-gen`. The command completes and returns control to the user. No automatic execution occurs.
**Return to User**:
```
Test workflow preparation complete!
Test workflow preparation complete!
Source Session: [sourceSessionId]
Test Session: [testSessionId]
@@ -198,17 +198,17 @@ Test Framework: [detected framework]
Test Files to Generate: [count]
Fix Mode: [Manual|Codex Automated] (based on --use-codex flag)
📋 Review Generated Artifacts:
Review Generated Artifacts:
- Test plan: .workflow/[testSessionId]/IMPL_PLAN.md
- Task list: .workflow/[testSessionId]/TODO_LIST.md
- Analysis: .workflow/[testSessionId]/.process/TEST_ANALYSIS_RESULTS.md
⚠️ Ready for execution. Use appropriate workflow commands to proceed.
Ready for execution. Use appropriate workflow commands to proceed.
```
**TodoWrite**: Mark phase 5 completed
**⚠️ Command Boundary**: After this phase, the command terminates and returns to user prompt.
**Command Boundary**: After this phase, the command terminates and returns to user prompt.
---
@@ -244,7 +244,7 @@ Update status to `in_progress` when starting each phase, mark `completed` when d
│ ↓ │
│ Phase 5: Return summary │
└─────────────────────────────────────────────────────────┘
⚠️ COMMAND ENDS - Control returns to user
COMMAND ENDS - Control returns to user
Artifacts Created:
├── .workflow/WFS-test-[session]/
@@ -330,8 +330,18 @@ See `/workflow:tools:test-task-generate` for complete JSON schemas.
## Related Commands
- `/workflow:tools:test-context-gather` - Phase 2 (coverage analysis)
- `/workflow:tools:test-concept-enhanced` - Phase 3 (Gemini test analysis)
- `/workflow:tools:test-task-generate` - Phase 4 (task generation)
- `/workflow:execute` - Execute workflow
- `/workflow:status` - Check progress
**Prerequisite Commands**:
- `/workflow:plan` or `/workflow:execute` - Complete implementation session that needs test validation
**Called by This Command** (5 phases):
- `/workflow:session:start` - Phase 1: Create independent test workflow session
- `/workflow:tools:test-context-gather` - Phase 2: Analyze test coverage and gather source session context
- `/workflow:tools:test-concept-enhanced` - Phase 3: Generate test requirements and strategy using Gemini
- `/workflow:tools:test-task-generate` - Phase 4: Generate test generation and execution task JSONs
- `/workflow:tools:test-task-generate --use-codex` - Phase 4: With automated Codex fixes (when `--use-codex` flag used)
- `/workflow:tools:test-task-generate --cli-execute` - Phase 4: With CLI execution mode (when `--cli-execute` flag used)
**Follow-up Commands**:
- `/workflow:status` - Review generated test tasks
- `/workflow:test-cycle-execute` - Execute test generation and fix cycles
- `/workflow:execute` - Execute generated test tasks

View File

@@ -7,361 +7,465 @@ examples:
- /workflow:tools:conflict-resolution --session WFS-payment --context .workflow/WFS-payment/.process/context-package.json
---
# Conflict Resolution Command (/workflow:tools:conflict-resolution)
# Conflict Resolution Command
## Overview
Analyzes potential conflicts between implementation plan and existing codebase, generating multiple resolution strategies for user selection.
## Purpose
Analyzes conflicts between implementation plans and existing codebase, generating multiple resolution strategies.
**Trigger Condition**: Only execute when context-package.json indicates conflict_risk is "medium" or "high"
**Scope**: Detection and strategy generation only - NO code modification or task creation.
**Scope**: Conflict detection and resolution strategy generation only. Does NOT modify code or generate tasks.
**Trigger**: Auto-executes in `/workflow:plan` Phase 3 when `conflict_risk ≥ medium`.
**Usage**: Automatically triggered in `/workflow:plan` Phase 3 when conflict risk detected.
## Core Responsibilities
## Core Philosophy & Responsibilities
- **Conflict Detection**: Analyze plan vs existing code architecture inconsistencies
- **Multi-Strategy Generation**: Generate 2-4 resolution options per conflict
- **CLI-Powered Analysis**: Use Gemini/Qwen/Codex for deep code analysis
- **Graceful Fallback**: Use Claude analysis if CLI tools unavailable
- **User Decision**: Present strategies for user selection, never auto-apply
- **Single Output**: Generate CONFLICT_RESOLUTION.md with findings and options
| Responsibility | Description |
|---------------|-------------|
| **Detect Conflicts** | Analyze plan vs existing code inconsistencies |
| **Generate Strategies** | Provide 2-4 resolution options per conflict |
| **CLI Analysis** | Use Gemini/Qwen (Claude fallback) |
| **User Decision** | Present options, never auto-apply |
| **Single Output** | `CONFLICT_RESOLUTION.md` with findings |
## Conflict Detection Categories
## Conflict Categories
**Architecture Conflicts**:
- New architecture incompatible with existing patterns
- Module structure changes affecting existing components
- Design pattern migrations required
### 1. Architecture Conflicts
- Incompatible design patterns
- Module structure changes
- Pattern migration requirements
**API & Interface Conflicts**:
- Breaking changes to existing API contracts
- Function signature modifications
- Public interface changes affecting dependents
### 2. API Conflicts
- Breaking contract changes
- Signature modifications
- Public interface impacts
**Data Model Conflicts**:
- Database schema modifications
- Data type changes breaking compatibility
- Migration requirements for existing data
### 3. Data Model Conflicts
- Schema modifications
- Type breaking changes
- Data migration needs
**Dependency Conflicts**:
- Version conflicts with existing dependencies
- New dependencies incompatible with current setup
- Breaking changes in dependency updates
### 4. Dependency Conflicts
- Version incompatibilities
- Setup conflicts
- Breaking updates
## Execution Lifecycle
## Execution Flow
### Phase 1: Validation & Trigger Check
1. **Session Validation**: Verify `.workflow/{session_id}/` exists
2. **Context Package Loading**: Read and parse context-package.json
3. **Conflict Risk Check**:
```javascript
if (context_package.conflict_detection.conflict_risk in ["none", "low"]) {
SKIP: "No significant conflicts detected"
EXIT
}
```
4. **Agent Preparation**: Prepare agent task prompt with conflict analysis requirements
### Phase 1: Validation
```
1. Verify session directory exists
2. Load context-package.json
3. Check conflict_risk (skip if none/low)
4. Prepare agent task prompt
```
### Phase 2: Agent-Delegated Conflict Analysis
### Phase 2: CLI-Powered Analysis
**Agent Invocation**:
**Agent Delegation**:
```javascript
Task(
subagent_type="cli-execution-agent",
description="Detect and analyze code conflicts",
prompt=`
## Execution Context
Task(subagent_type="cli-execution-agent", prompt=`
## Context
- Session: {session_id}
- Risk: {conflict_risk}
- Files: {existing_files_list}
**Session ID**: {session_id}
**Mode**: Conflict Detection and Resolution Strategy Generation
**Conflict Risk**: {conflict_risk}
## Analysis Steps
## Input Context
### 1. Load Context
- Read existing files from conflict_detection.existing_files
- Load plan from .workflow/{session_id}/.process/context-package.json
- Extract role analyses and requirements
**Context Package**: {context_path}
**Existing Files**: {existing_files_list}
**Affected Modules**: {affected_modules}
### 2. Execute CLI Analysis
## Analysis Task
Primary (Gemini):
cd {project_root} && gemini -p "
PURPOSE: Detect conflicts between plan and codebase
TASK:
• Compare architectures
• Identify breaking API changes
• Detect data model incompatibilities
• Assess dependency conflicts
MODE: analysis
CONTEXT: @{existing_files} @.workflow/{session_id}/**/*
EXPECTED: Conflict list with severity ratings
RULES: Focus on breaking changes and migration needs
"
### Step 1: Load Existing Codebase Context
1. **Load Existing Files** (from context package existing_files)
- Read all files listed in conflict_detection.existing_files
- Analyze current architecture patterns
- Identify current API contracts and interfaces
Fallback: Qwen (same prompt) → Claude (manual analysis)
2. **Load Plan Requirements** (from context-package.json)
- Read .workflow/{session_id}/.process/context-package.json
- Extract role analysis paths from brainstorm_artifacts.role_analyses[]
- Load each role analysis file
- Extract requirements and design decisions
- Identify planned changes
### 3. Generate Strategies (2-4 per conflict)
### Step 2: CLI-Powered Conflict Analysis
Execute conflict analysis using CLI tools:
Template per conflict:
- Severity: Critical/High/Medium
- Category: Architecture/API/Data/Dependency
- Affected files + impact
- Options with pros/cons, effort, risk
- Recommended strategy + rationale
**Primary Tool - Gemini Analysis**:
\`\`\`bash
cd {project_root} && gemini -p "
PURPOSE: Analyze conflicts between plan and existing code
TASK:
• Compare existing architecture with planned changes
• Identify API contract breaking changes
• Detect data model incompatibilities
• Assess dependency conflicts
MODE: analysis
CONTEXT: @{existing_files_pattern} @.workflow/{session_id}/**/*
EXPECTED: Conflict list with severity and affected areas
RULES: Focus on breaking changes and migration complexity
"
\`\`\`
### 4. Return Structured Conflict Data
**Fallback - Qwen Analysis** (if Gemini unavailable):
Same prompt structure, replace 'gemini' with 'qwen'
⚠️ DO NOT generate CONFLICT_RESOLUTION.md file
**Fallback - Claude Analysis** (if CLI unavailable):
- Manual file reading and comparison
- Pattern matching for common conflict types
- Heuristic-based conflict detection
Return JSON format for programmatic processing:
### Step 3: Generate Resolution Strategies
For each detected conflict, generate 2-4 resolution options:
\`\`\`json
{
"conflicts": [
{
"id": "CON-001",
"brief": "一行中文冲突摘要",
"severity": "Critical|High|Medium",
"category": "Architecture|API|Data|Dependency",
"affected_files": [
".workflow/{session}/.brainstorm/guidance-specification.md",
".workflow/{session}/.brainstorm/system-architect/analysis.md"
],
"description": "详细描述冲突 - 什么不兼容",
"impact": {
"scope": "影响的模块/组件",
"compatibility": "Yes|No|Partial",
"migration_required": true|false,
"estimated_effort": "人天估计"
},
"strategies": [
{
"name": "策略名称(中文)",
"approach": "实现方法简述",
"complexity": "Low|Medium|High",
"risk": "Low|Medium|High",
"effort": "时间估计",
"pros": ["优点1", "优点2"],
"cons": ["缺点1", "缺点2"],
"modifications": [
{
"file": ".workflow/{session}/.brainstorm/guidance-specification.md",
"section": "## 2. System Architect Decisions",
"change_type": "update",
"old_content": "原始内容片段(用于定位)",
"new_content": "修改后的内容",
"rationale": "为什么这样改"
},
{
"file": ".workflow/{session}/.brainstorm/system-architect/analysis.md",
"section": "## Design Decisions",
"change_type": "update",
"old_content": "原始内容片段",
"new_content": "修改后的内容",
"rationale": "修改理由"
}
]
},
{
"name": "策略2名称",
"approach": "...",
"complexity": "Medium",
"risk": "Low",
"effort": "1-2天",
"pros": ["优点"],
"cons": ["缺点"],
"modifications": [...]
}
],
"recommended": 0,
"modification_suggestions": [
"建议1具体的修改方向或注意事项",
"建议2可能需要考虑的边界情况",
"建议3相关的最佳实践或模式"
]
}
],
"summary": {
"total": 2,
"critical": 1,
"high": 1,
"medium": 0
}
}
\`\`\`
**Strategy Template**:
⚠️ CRITICAL Requirements for modifications field:
- old_content: Must be exact text from target file (20-100 chars for unique match)
- new_content: Complete replacement text (maintains formatting)
- change_type: "update" (replace), "add" (insert), "remove" (delete)
- file: Full path relative to project root
- section: Markdown heading for context (helps locate position)
- Minimum 2 strategies per conflict, max 4
- All text in Chinese for user-facing fields (brief, name, pros, cons)
- modification_suggestions: 2-5 actionable suggestions for custom handling (Chinese)
Quality Standards:
- Each strategy must have actionable modifications
- old_content must be precise enough for Edit tool matching
- new_content preserves markdown formatting and structure
- Recommended strategy (index) based on lowest complexity + risk
- modification_suggestions must be specific, actionable, and context-aware
- Each suggestion should address a specific aspect (compatibility, migration, testing, etc.)
`)
```
**Agent Internal Flow**:
```
1. Load context package
2. Check conflict_risk (exit if none/low)
3. Read existing files + plan artifacts
4. Run CLI analysis (Gemini→Qwen→Claude)
5. Parse conflict findings
6. Generate 2-4 strategies per conflict with modifications
7. Return JSON to stdout (NOT file write)
8. Return execution log path
```
### Phase 3: User Confirmation via Text Interaction
**Command parses agent JSON output and presents conflicts to user via text**:
```javascript
// 1. Parse agent JSON output
const conflictData = JSON.parse(agentOutput);
const conflicts = conflictData.conflicts; // No 4-conflict limit
// 2. Format conflicts as text output (max 10 per round)
const batchSize = 10;
const batches = chunkArray(conflicts, batchSize);
for (const [batchIdx, batch] of batches.entries()) {
const totalBatches = batches.length;
// Output batch header
console.log(`===== 冲突解决 (第 ${batchIdx + 1}/${totalBatches} 轮) =====\n`);
// Output each conflict in batch
batch.forEach((conflict, idx) => {
const questionNum = batchIdx * batchSize + idx + 1;
console.log(`【问题${questionNum} - ${conflict.category}${conflict.id}: ${conflict.brief}`);
conflict.strategies.forEach((strategy, sIdx) => {
const optionLetter = String.fromCharCode(97 + sIdx); // a, b, c, ...
console.log(`${optionLetter}) ${strategy.name}`);
console.log(` 说明:${strategy.approach}`);
console.log(` 复杂度: ${strategy.complexity} | 风险: ${strategy.risk} | 工作量: ${strategy.effort}`);
});
// Add custom option
const customLetter = String.fromCharCode(97 + conflict.strategies.length);
console.log(`${customLetter}) 自定义修改`);
console.log(` 说明:根据修改建议自行处理,不应用预设策略`);
// Show modification suggestions
if (conflict.modification_suggestions && conflict.modification_suggestions.length > 0) {
console.log(` 修改建议:`);
conflict.modification_suggestions.forEach(suggestion => {
console.log(` - ${suggestion}`);
});
}
console.log();
});
console.log(`请回答 (格式: 1a 2b 3c...)`);
// Wait for user input
const userInput = await readUserInput();
// Parse answers
const answers = parseUserAnswers(userInput, batch);
}
// 3. Build selected strategies (exclude custom selections)
const selectedStrategies = answers.filter(a => !a.isCustom).map(a => a.strategy);
const customConflicts = answers.filter(a => a.isCustom).map(a => ({
id: a.conflict.id,
brief: a.conflict.brief,
suggestions: a.conflict.modification_suggestions
}));
```
**Text Output Example**:
```markdown
### Conflict: {conflict_name}
**Severity**: Critical | High | Medium
**Category**: Architecture | API | Data Model | Dependency
**Affected Files**: {file_list}
**Impact**: {impact_description}
===== 冲突解决 (第 1/1 轮) =====
#### Option 1: {strategy_name}
**Approach**: {brief_description}
**Pros**:
- {advantage_1}
- {advantage_2}
**Cons**:
- {disadvantage_1}
- {disadvantage_2}
**Effort**: Low | Medium | High
**Risk**: Low | Medium | High
【问题1 - Architecture】CON-001: 现有认证系统与计划不兼容
a) 渐进式迁移
说明:保留现有系统,逐步迁移到新方案
复杂度: Medium | 风险: Low | 工作量: 3-5天
b) 完全重写
说明:废弃旧系统,从零实现新认证
复杂度: High | 风险: Medium | 工作量: 7-10天
c) 自定义修改
说明:根据修改建议自行处理,不应用预设策略
修改建议:
- 评估现有认证系统的兼容性,考虑是否可以通过适配器模式桥接
- 检查JWT token格式和验证逻辑是否需要调整
- 确保用户会话管理与新架构保持一致
#### Option 2: {strategy_name}
...
【问题2 - Data】CON-002: 数据库 schema 冲突
a) 添加迁移脚本
说明:创建数据库迁移脚本处理 schema 变更
复杂度: Low | 风险: Low | 工作量: 1-2天
b) 自定义修改
说明:根据修改建议自行处理,不应用预设策略
修改建议:
- 检查现有表结构是否支持新增字段,避免破坏性变更
- 考虑使用数据库版本控制工具如Flyway或Liquibase
- 准备数据迁移和回滚策略
**Recommended**: Option {N} - {rationale}
请回答 (格式: 1a 2b)
```
### Step 4: Generate CONFLICT_RESOLUTION.md
Create comprehensive conflict resolution document:
**User Input Examples**:
- `1a 2a` → Conflict 1: 渐进式迁移, Conflict 2: 添加迁移脚本
- `1b 2b` → Conflict 1: 完全重写, Conflict 2: 自定义修改
- `1c 2c` → Both choose custom modification (user handles manually with suggestions)
**Output Location**: \`.workflow/{session_id}/.process/CONFLICT_RESOLUTION.md\`
### Phase 4: Apply Modifications
**Required Structure**:
1. **Executive Summary**: Total conflicts, severity distribution, overall risk
2. **Conflict Analysis**: Detailed per-conflict analysis with categories
3. **Resolution Strategies**: Multiple options per conflict with pros/cons
4. **Recommended Actions**: Prioritized recommendations with rationale
5. **Migration Considerations**: Data/API migration requirements if any
```javascript
// 1. Extract modifications from selected strategies
const modifications = [];
selectedStrategies.forEach(strategy => {
if (strategy !== "skip") {
modifications.push(...strategy.modifications);
}
});
### Output Requirements
// 2. Apply each modification using Edit tool
modifications.forEach(mod => {
if (mod.change_type === "update") {
Edit({
file_path: mod.file,
old_string: mod.old_content,
new_string: mod.new_content
});
}
// Handle "add" and "remove" similarly
});
**Quality Standards**:
- Minimum 2 resolution options per conflict
- Clear pros/cons for each strategy
- Effort and risk estimates included
- Recommended strategy with clear rationale
- Actionable migration steps if required
// 3. Update context-package.json
const contextPackage = JSON.parse(Read(contextPath));
contextPackage.conflict_detection.conflict_risk = "resolved";
contextPackage.conflict_detection.resolved_conflicts = conflicts.map(c => c.id);
contextPackage.conflict_detection.resolved_at = new Date().toISOString();
Write(contextPath, JSON.stringify(contextPackage, null, 2));
## Output
Generate CONFLICT_RESOLUTION.md and report completion status:
- Conflicts detected: {count}
- Severity distribution: Critical: {N}, High: {N}, Medium: {N}
- Resolution strategies: {total_options}
- Output location: .workflow/{session_id}/.process/CONFLICT_RESOLUTION.md
\`
)
// 4. Output custom conflict summary (if any)
if (customConflicts.length > 0) {
console.log("\n===== 需要自定义处理的冲突 =====\n");
customConflicts.forEach(conflict => {
console.log(`${conflict.id}${conflict.brief}`);
console.log("修改建议:");
conflict.suggestions.forEach(suggestion => {
console.log(` - ${suggestion}`);
});
console.log();
});
}
// 5. Return summary
return {
resolved: modifications.length,
custom: customConflicts.length,
modified_files: [...new Set(modifications.map(m => m.file))],
custom_conflicts: customConflicts
};
```
**Agent Execution Flow** (Internal to cli-execution-agent):
1. Parse session ID and context path, load context-package.json
2. Check conflict_risk, exit if none/low
3. Load existing codebase files from conflict_detection.existing_files
4. Load plan requirements from session brainstorming artifacts
5. Execute CLI tool analysis (Gemini/Qwen/Claude fallback)
6. Parse conflict findings from CLI output
7. Generate resolution strategies (2-4 options per conflict)
8. Create CONFLICT_RESOLUTION.md with structured findings
9. Verify output file exists at correct path
10. Return execution log path
**Command Execution**: Launch agent via Task tool, wait for completion
### Phase 3: Output Validation
1. **File Verification**: Confirm `.workflow/{session_id}/.process/CONFLICT_RESOLUTION.md` exists
2. **Content Validation**: Verify required sections present
3. **Strategy Quality**: Ensure minimum 2 options per conflict
4. **Agent Log**: Retrieve agent execution log from `.workflow/{session_id}/.chat/`
5. **Success Criteria**: File exists, contains all required sections, strategies actionable
## CONFLICT_RESOLUTION.md Format
**Template Reference**: Resolution document focuses on **conflict identification, impact analysis, and strategic options** (NOT implementation).
### Required Structure
```markdown
# Conflict Resolution Report
**Session**: WFS-{session-id}
**Generated**: {timestamp}
**Conflict Risk**: {medium|high}
**Total Conflicts**: {count}
## Executive Summary
**Overall Assessment**: {summary_paragraph}
**Severity Distribution**:
- Critical: {count} - Blocking issues requiring immediate resolution
- High: {count} - Significant issues affecting core functionality
- Medium: {count} - Moderate issues with workarounds available
**Recommended Priority**: {conflict_id_1}, {conflict_id_2}, ...
---
## Conflict Analysis
### Conflict 1: {conflict_name}
**ID**: CON-001
**Severity**: Critical | High | Medium
**Category**: Architecture | API | Data Model | Dependency
**Affected Files**:
- {file_1}
- {file_2}
**Description**: {detailed_conflict_description}
**Impact Analysis**:
- **Scope**: {which_modules_affected}
- **Backward Compatibility**: {yes/no/partial}
- **Migration Required**: {yes/no}
- **Estimated Effort**: {person-days}
#### Resolution Strategies
##### Option 1: {strategy_name}
**Approach**: {implementation_approach}
**Pros**:
- {advantage_1}
- {advantage_2}
**Cons**:
- {disadvantage_1}
- {disadvantage_2}
**Implementation Complexity**: Low | Medium | High
**Risk Level**: Low | Medium | High
**Estimated Effort**: {time_estimate}
##### Option 2: {strategy_name}
...
**Recommended Strategy**: Option {N}
**Rationale**: {why_this_option_is_best}
---
## Recommended Actions
### Priority 1: Address Critical Conflicts
1. {conflict_id}: {brief_action} - {recommended_strategy}
2. ...
### Priority 2: Resolve High-Severity Issues
1. {conflict_id}: {brief_action} - {recommended_strategy}
2. ...
### Priority 3: Handle Medium Issues
1. {conflict_id}: {brief_action} - {recommended_strategy}
2. ...
## Migration Considerations
**Data Migration**:
- {migration_task_1}
- {migration_task_2}
**API Versioning**:
- {versioning_strategy}
**Rollback Strategy**:
- {rollback_plan}
---
## Next Steps
**Before Implementation**:
1. Review and select resolution strategies
2. Update IMPL_PLAN.md with conflict resolution decisions
3. Validate migration requirements
**Proceed to**:
- /workflow:plan continue → Proceed with task generation
**Validation**:
```
✓ Agent returns valid JSON structure
✓ Text output displays all conflicts (max 10 per round)
✓ User selections captured correctly
✓ Edit tool successfully applies modifications
✓ guidance-specification.md updated
✓ Role analyses (*.md) updated
✓ context-package.json marked as resolved
✓ Agent log saved to .workflow/{session_id}/.chat/
```
### Content Focus
- ✅ Conflict detection with severity classification
- ✅ Multiple resolution strategies per conflict
- ✅ Pros/cons analysis for each strategy
- ✅ Effort and risk estimates
- ✅ Migration considerations
- ❌ Direct code changes or patches
- ❌ Implementation details (save for IMPL_PLAN)
- ❌ Task breakdowns (handled by task generation)
## Output Format: Agent JSON Response
## Execution Management
**Focus**: Structured conflict data with actionable modifications for programmatic processing.
### Error Handling & Recovery
1. **Pre-execution**: Verify conflict_risk warrants execution
2. **Agent Monitoring**: Track agent execution status via Task tool
3. **Validation**: Check CONFLICT_RESOLUTION.md generation on completion
4. **Error Recovery**:
- Agent execution failure → report error, check agent logs
- Missing output file → retry agent execution once
- CLI tool failure → fallback to Claude analysis
5. **Graceful Degradation**: If all analysis methods fail, generate basic conflict report from heuristics
**Format**: JSON to stdout (NO file generation)
## Integration & Success Criteria
**Structure**: Defined in Phase 2, Step 4 (agent prompt)
### Input/Output Interface
### Key Requirements
| Requirement | Details |
|------------|---------|
| **Conflict batching** | Max 10 conflicts per round (no total limit) |
| **Strategy count** | 2-4 strategies per conflict |
| **Modifications** | Each strategy includes file paths, old_content, new_content |
| **User-facing text** | Chinese (brief, strategy names, pros/cons) |
| **Technical fields** | English (severity, category, complexity, risk) |
| **old_content precision** | 20-100 chars for unique Edit tool matching |
| **File targets** | guidance-specification.md, role analyses (*.md) |
## Error Handling
### Recovery Strategy
```
1. Pre-check: Verify conflict_risk ≥ medium
2. Monitor: Track agent via Task tool
3. Validate: Parse agent JSON output
4. Recover:
- Agent failure → check logs + report error
- Invalid JSON → retry once with Claude fallback
- CLI failure → fallback to Claude analysis
- Edit tool failure → report affected files + rollback option
- User cancels → mark as "unresolved", continue to task-generate
5. Degrade: If all fail, generate minimal conflict report and skip modifications
```
### Rollback Handling
```
If Edit tool fails mid-application:
1. Log all successfully applied modifications
2. Output rollback option via text interaction
3. If rollback selected: restore files from git or backups
4. If continue: mark partial resolution in context-package.json
```
## Integration
### Interface
**Input**:
- `--session` (required): Session ID (e.g., WFS-auth)
- `--context` (required): Context package path
- Context package must have conflict_risk ≥ medium
- `--session` (required): WFS-{session-id}
- `--context` (required): context-package.json path
- Requires: `conflict_risk ≥ medium`
**Output**:
- Single file: `CONFLICT_RESOLUTION.md` at `.workflow/{session_id}/.process/`
- No code modifications
- Modified files:
- `.workflow/{session_id}/.brainstorm/guidance-specification.md`
- `.workflow/{session_id}/.brainstorm/{role}/analysis.md`
- `.workflow/{session_id}/.process/context-package.json` (conflict_risk → resolved)
- NO report file generation
### Quality & Success Validation
**Quality Checks**: Completeness, strategy diversity, actionability
**User Interaction**:
- Text-based strategy selection (max 10 conflicts per round)
- Each conflict: 2-4 strategy options + "自定义修改" option (with suggestions)
**Success Criteria**:
- ✅ Conflict detection complete (all categories scanned)
- ✅ Minimum 2 resolution strategies per conflict
- ✅ Clear pros/cons for each strategy
- ✅ Effort and risk estimates provided
- ✅ Recommended strategy with rationale
- ✅ Migration considerations documented
- ✅ CLI-powered analysis (with fallback handling)
- ✅ Robust error handling (validation, retry, degradation)
- ✅ Agent execution log saved to session chat directory
### Success Criteria
```
✓ CLI analysis returns valid JSON structure
✓ Conflicts presented in batches (max 10 per round)
✓ Min 2 strategies per conflict with modifications
✓ Each conflict includes 2-5 modification_suggestions
✓ Text output displays all conflicts correctly with suggestions
✓ User selections captured and processed
✓ Edit tool applies modifications successfully
✓ Custom conflicts displayed with suggestions for manual handling
✓ guidance-specification.md updated with resolved conflicts
✓ Role analyses (*.md) updated with resolved conflicts
✓ context-package.json marked as "resolved"
✓ No CONFLICT_RESOLUTION.md file generated
✓ Modification summary includes custom conflict count
✓ Agent log saved to .workflow/{session_id}/.chat/
✓ Error handling robust (validate/retry/degrade)
```
## Related Commands
- `/context:gather` - Generates conflict_detection data required by this command
- `/workflow:plan` - Automatically calls this command when conflict_risk ≥ medium
- `/task:create` - Creates tasks based on selected resolution strategies
| Command | Relationship |
|---------|--------------|
| `/workflow:tools:context-gather` | Generates input conflict_detection data |
| `/workflow:plan` | Auto-triggers this when risk ≥ medium |
| `/workflow:tools:task-generate` | Uses resolved conflicts from updated brainstorm files |
| `/workflow:brainstorm:artifacts` | Generates guidance-specification.md (modified by this command) |

View File

@@ -1,422 +1,282 @@
---
name: gather
description: Intelligently collect project context using universal-executor agent based on task description and package into standardized JSON
description: Intelligently collect project context using context-search-agent based on task description and package into standardized JSON
argument-hint: "--session WFS-session-id \"task description\""
examples:
- /workflow:tools:context-gather --session WFS-user-auth "Implement user authentication system"
- /workflow:tools:context-gather --session WFS-payment "Refactor payment module API"
- /workflow:tools:context-gather --session WFS-bugfix "Fix login validation error"
allowed-tools: Task(*), Read(*), Glob(*)
---
# Context Gather Command (/workflow:tools:context-gather)
## Overview
Agent-driven intelligent context collector that gathers relevant information from project codebase, documentation, and dependencies based on task descriptions, generating standardized context packages.
Orchestrator command that invokes `context-search-agent` to gather comprehensive project context for implementation planning. Generates standardized `context-package.json` with codebase analysis, dependencies, and conflict detection.
**Agent**: `context-search-agent` (`.claude/agents/context-search-agent.md`)
## Core Philosophy
- **Agent-Driven**: Delegate execution to universal-executor agent for autonomous operation
- **Two-Phase Flow**: Discovery (context loading) → Execution (context gathering and packaging)
- **Memory-First**: Reuse loaded documents from conversation memory
- **Ripgrep-Enhanced**: Use ripgrep and native tools for code analysis and file discovery
- **Intelligent Collection**: Auto-identify relevant resources based on keyword analysis
- **Comprehensive Coverage**: Collect code, documentation, configurations, and dependencies
- **Standardized Output**: Generate unified format context-package.json
## Execution Lifecycle
- **Agent Delegation**: Delegate all discovery to `context-search-agent` for autonomous execution
- **Detection-First**: Check for existing context-package before executing
- **Plan Mode**: Full comprehensive analysis (vs lightweight brainstorm mode)
- **Standardized Output**: Generate `.workflow/{session}/.process/context-package.json`
### Phase 1: Discovery & Context Loading
**⚡ Memory-First Rule**: Skip file loading if documents already in conversation memory
## Execution Flow
### Step 1: Context-Package Detection
**Execute First** - Check if valid package already exists:
**Agent Context Package**:
```javascript
{
"session_id": "WFS-[session-id]",
"task_description": "[user provided task description]",
"session_metadata": {
// If in memory: use cached content
// Else: Load from .workflow/{session-id}/workflow-session.json
},
"search_tools": {
// Agent will use these native tools to discover project context
"ripgrep": true,
"find": true,
"exa_code": true,
"exa_web": true
const contextPackagePath = `.workflow/${session_id}/.process/context-package.json`;
if (file_exists(contextPackagePath)) {
const existing = Read(contextPackagePath);
// Validate package belongs to current session
if (existing?.metadata?.session_id === session_id) {
console.log("✅ Valid context-package found for session:", session_id);
console.log("📊 Stats:", existing.statistics);
console.log("⚠️ Conflict Risk:", existing.conflict_detection.risk_level);
return existing; // Skip execution, return existing
} else {
console.warn("⚠️ Invalid session_id in existing package, re-generating...");
}
}
// Agent will autonomously execute:
// - Project structure analysis: bash(~/.claude/scripts/get_modules_by_depth.sh)
// - Documentation loading: Read(CLAUDE.md), Read(README.md)
```
**Discovery Actions**:
1. **Load Session Context** (if not in memory)
```javascript
if (!memory.has("workflow-session.json")) {
Read(.workflow/{session-id}/workflow-session.json)
}
```
### Step 2: Invoke Context-Search Agent
### Phase 2: Agent Execution (Context Gathering & Packaging)
**Only execute if Step 1 finds no valid package**
**Agent Invocation**:
```javascript
Task(
subagent_type="universal-executor",
description="Gather project context and generate context package",
subagent_type="context-search-agent",
description="Gather comprehensive context for plan",
prompt=`
## Execution Context
You are executing as context-search-agent (.claude/agents/context-search-agent.md).
**Session ID**: WFS-{session-id}
**Task Description**: {task_description}
**Mode**: Agent-Driven Context Gathering
## Execution Mode
**PLAN MODE** (Comprehensive) - Full Phase 1-3 execution
## Phase 1: Discovery Results (Provided Context)
## Session Information
- **Session ID**: ${session_id}
- **Task Description**: ${task_description}
- **Output Path**: .workflow/${session_id}/.process/context-package.json
### Session Metadata
{session_metadata_content}
## Mission
Execute complete context-search-agent workflow for implementation planning:
### Search Tools
- ripgrep: Available for content search and pattern matching
- find: Available for file discovery
- exa-code: Available for external research
- exa-web: Available for web search
### Phase 1: Initialization & Pre-Analysis
1. **Detection**: Check for existing context-package (early exit if valid)
2. **Foundation**: Initialize code-index, get project structure, load docs
3. **Analysis**: Extract keywords, determine scope, classify complexity
## Phase 2: Context Gathering Task
### Phase 2: Multi-Source Context Discovery
Execute all 4 discovery tracks:
- **Track 1**: Historical archive analysis (query manifest.json for lessons learned)
- **Track 2**: Reference documentation (CLAUDE.md, architecture docs)
- **Track 3**: Web examples (use Exa MCP for unfamiliar tech/APIs)
- **Track 4**: Codebase analysis (5-layer discovery: files, content, patterns, deps, config/tests)
### Core Responsibilities
1. **Project Structure Analysis**: Execute get_modules_by_depth.sh for architecture overview
2. **Documentation Loading**: Load CLAUDE.md, README.md and relevant documentation
3. **Keyword Extraction**: Extract core keywords from task description
4. **Smart File Discovery**: Use ripgrep and find to locate relevant files
5. **Code Structure Analysis**: Analyze project structure to identify relevant modules
6. **Dependency Discovery**: Identify tech stack and dependency relationships
7. **Context Packaging**: Generate standardized JSON context package
### Phase 3: Synthesis, Assessment & Packaging
1. Apply relevance scoring and build dependency graph
2. Synthesize 4-source data (archive > docs > code > web)
3. Integrate brainstorm artifacts (if .brainstorming/ exists, read content)
4. Perform conflict detection with risk assessment
5. **Inject historical conflicts** from archive analysis into conflict_detection
6. Generate and validate context-package.json
### Execution Process
## Output Requirements
Complete context-package.json with:
- **metadata**: task_description, keywords, complexity, tech_stack, session_id
- **project_context**: architecture_patterns, coding_conventions, tech_stack
- **assets**: {documentation[], source_code[], config[], tests[]} with relevance scores
- **dependencies**: {internal[], external[]} with dependency graph
- **brainstorm_artifacts**: {guidance_specification, role_analyses[], synthesis_output} with content
- **conflict_detection**: {risk_level, risk_factors, affected_modules[], mitigation_strategy, historical_conflicts[]}
#### Step 0: Foundation Setup (Execute First)
1. **Project Structure Analysis**
Execute to get comprehensive architecture overview:
\`\`\`javascript
bash(~/.claude/scripts/get_modules_by_depth.sh)
\`\`\`
2. **Load Project Documentation** (if not in memory)
Load core project documentation:
\`\`\`javascript
Read(CLAUDE.md)
Read(README.md)
// Load other relevant documentation based on session context
\`\`\`
#### Step 1: Task Analysis
1. **Keyword Extraction**
- Parse task description to extract core keywords
- Identify technical domain (auth, API, frontend, backend, etc.)
- Determine complexity level (simple, medium, complex)
2. **Scope Determination**
- Define collection scope based on keywords
- Identify potentially involved modules and components
- Set file type filters
#### Step 2: File Discovery with Native Tools
1. **Code File Location**
Use ripgrep and find commands:
\`\`\`bash
# Find files by pattern
find . -name "*{keyword}*" -type f
# Search code content with ripgrep
rg "{keyword_patterns}" --type-add 'custom:*.{ts,js,py,go,md}' -t custom -C 3
# Get file summaries (find function/class definitions)
rg "^(class|function|export|def|interface)" relevant/file.ts
\`\`\`
2. **Configuration Files Discovery**
Locate: package.json, requirements.txt, Cargo.toml, tsconfig.json, etc.
3. **Test Files Location**
Find test files related to task keywords
#### Step 3: Intelligent Filtering & Association
1. **Relevance Scoring**
- Score based on keyword match degree
- Score based on file path relevance
- Score based on code content relevance
2. **Dependency Analysis**
- Analyze import/require statements
- Identify inter-module dependencies
- Determine core and optional dependencies
#### Step 3.5: Brainstorm Artifacts Discovery
Discover and catalog brainstorming documents (if `.brainstorming/` exists):
- Guidance specification, role analyses (`*/analysis*.md`), synthesis output
- Catalog role analyses by role with file type and timestamp
#### Step 4: Context Packaging
Generate standardized context-package.json following the format below
#### Step 5: Conflict Detection & Risk Assessment
**Purpose**: Analyze existing codebase to determine conflict risk level
1. **Existing Code Detection**
- Count relevant existing source files discovered in Step 2
- Identify modules that overlap with task scope
- Flag existence of implementations related to task keywords
2. **Architecture Analysis**
- Compare task requirements with existing architecture patterns
- Identify potential architectural changes required
- Detect breaking changes to current structure
3. **API & Dependency Analysis**
- Check for existing API endpoints/contracts that may change
- Identify shared dependencies and interface changes
- Detect potential breaking changes to public APIs
4. **Data Model Analysis**
- Identify existing data models/schemas in task scope
- Check for schema modification requirements
- Detect potential data migration needs
5. **Risk Level Calculation**
Calculate conflict_risk based on:
- **none**: No existing code, new feature/module
- **low**: < 5 existing files, minimal changes
- **medium**: 5-15 existing files OR architectural changes OR API changes
- **high**: >15 existing files OR data model changes OR breaking changes
### Required Output
**Output Location**: \`.workflow/{session-id}/.process/context-package.json\`
**Output Format**:
\`\`\`json
{
"metadata": {
"task_description": "Implement user authentication system",
"timestamp": "2025-09-29T10:30:00Z",
"keywords": ["user", "authentication", "JWT", "login"],
"complexity": "medium",
"tech_stack": ["typescript", "node.js", "express"],
"session_id": "WFS-user-auth"
},
"assets": [
{
"type": "documentation",
"path": "CLAUDE.md",
"relevance": "Project development standards and conventions",
"priority": "high"
},
{
"type": "documentation",
"path": ".workflow/docs/architecture/security.md",
"relevance": "Security architecture design guidance",
"priority": "high"
},
{
"type": "source_code",
"path": "src/auth/AuthService.ts",
"relevance": "Existing authentication service implementation",
"priority": "high"
},
{
"type": "source_code",
"path": "src/models/User.ts",
"relevance": "User data model definition",
"priority": "medium"
},
{
"type": "config",
"path": "package.json",
"relevance": "Project dependencies and tech stack",
"priority": "medium"
},
{
"type": "test",
"path": "tests/auth/*.test.ts",
"relevance": "Authentication related test cases",
"priority": "medium"
}
],
"tech_stack": {
"frameworks": ["express", "typescript"],
"libraries": ["jsonwebtoken", "bcrypt"],
"testing": ["jest", "supertest"]
},
"statistics": {
"total_files": 15,
"source_files": 8,
"docs_files": 4,
"config_files": 2,
"test_files": 1
},
"brainstorm_artifacts": {
"guidance_specification": {
"path": ".workflow/WFS-user-auth/.brainstorming/guidance-specification.md",
"exists": true
},
"role_analyses": [
{
"role": "system-architect",
"files": [
{"path": ".workflow/WFS-user-auth/.brainstorming/system-architect/analysis.md", "type": "primary"},
{"path": ".workflow/WFS-user-auth/.brainstorming/system-architect/analysis-api.md", "type": "supplementary"}
]
},
{
"role": "ui-designer",
"files": [
{"path": ".workflow/WFS-user-auth/.brainstorming/ui-designer/analysis.md", "type": "primary"}
]
}
],
"synthesis_output": {
"path": ".workflow/WFS-user-auth/.brainstorming/synthesis-specification.md",
"exists": true
}
},
"conflict_detection": {
"conflict_risk": "medium",
"existing_files": [
"src/auth/AuthService.ts",
"src/models/User.ts",
"src/middleware/auth.ts"
],
"has_existing_code": true,
"affected_modules": ["auth", "user-model"],
"detection_criteria": {
"existing_code_count": 8,
"architecture_changes": false,
"api_changes": true,
"data_model_changes": false
},
"risk_rationale": "Medium risk due to existing auth code and potential API changes"
}
}
\`\`\`
### Quality Validation
Before completion, verify:
- [ ] context-package.json created in correct location
## Quality Validation
Before completion verify:
- [ ] Valid JSON format with all required fields
- [ ] Metadata includes task description, keywords, complexity
- [ ] Assets array contains relevant files with priorities
- [ ] Tech stack accurately identified
- [ ] Statistics section provides file counts
- [ ] File relevance accuracy >80%
- [ ] No sensitive information exposed
- [ ] Dependency graph complete (max 2 transitive levels)
- [ ] Conflict risk level calculated correctly
- [ ] No sensitive data exposed
- [ ] Total files ≤50 (prioritize high-relevance)
### Performance Optimization
**Large Project Optimization**:
- File count limit: Maximum 50 files per type
- Size filtering: Skip oversized files (>10MB)
- Depth limit: Maximum search depth of 3 levels
- Use ripgrep for efficient discovery
**Native Tools Integration**:
Agent should use ripgrep and find commands:
\`\`\`bash
# Find files by pattern
find . -name "*{keyword}*" -type f
# Search code content with ripgrep
rg "{keyword_patterns}" --type ts --type js --type py --type go --type md -C 3
# Alternative: use glob patterns
rg "{keyword_patterns}" -g "*.{ts,js,py,go,md}" -C 3
# Count matches
rg "{keyword_patterns}" -c
# List files with matches
rg "{keyword_patterns}" --files-with-matches
\`\`\`
## Output
Generate context-package.json and report completion:
- Task description: {description}
- Keywords extracted: {count}
- Files collected: {total}
- Source files: {count}
- Documentation: {count}
- Configuration: {count}
- Tests: {count}
- Tech stack identified: {frameworks/libraries}
- Output location: .workflow/{session-id}/.process/context-package.json
\`
Execute autonomously following agent documentation.
Report completion with statistics.
`
)
\`\`\`
## Command Integration
### Usage
```bash
# Basic usage
/workflow:tools:context-gather --session WFS-auth "Implement JWT authentication"
# Called by /workflow:plan
SlashCommand(command="/workflow:tools:context-gather --session WFS-[id] \\"[task description]\\"")
```
### Agent Context Passing
### Step 3: Output Verification
After agent completes, verify output:
**Memory-Aware Context Assembly**:
```javascript
// Assemble minimal context package for agent
// Agent will execute project structure analysis and documentation loading
const agentContext = {
session_id: "WFS-[id]",
task_description: "[user provided task description]",
// Verify file was created
const outputPath = `.workflow/${session_id}/.process/context-package.json`;
if (!file_exists(outputPath)) {
throw new Error("❌ Agent failed to generate context-package.json");
}
```
// Use memory if available, else load
session_metadata: memory.has("workflow-session.json")
? memory.get("workflow-session.json")
: Read(.workflow/WFS-[id]/workflow-session.json),
## Parameter Reference
// Search tools - agent will use these native tools
search_tools: {
ripgrep: true,
find: true,
exa_code: true,
exa_web: true
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `--session` | string | ✅ | Workflow session ID (e.g., WFS-user-auth) |
| `task_description` | string | ✅ | Detailed task description for context extraction |
## Output Schema
Refer to `context-search-agent.md` Phase 3.7 for complete `context-package.json` schema.
**Key Sections**:
- **metadata**: Session info, keywords, complexity, tech stack
- **project_context**: Architecture patterns, conventions, tech stack
- **assets**: Categorized files with relevance scores (documentation, source_code, config, tests)
- **dependencies**: Internal and external dependency graphs
- **brainstorm_artifacts**: Brainstorm documents with full content (if exists)
- **conflict_detection**: Risk assessment with mitigation strategies and historical conflicts
## Historical Archive Analysis
### Track 1: Query Archive Manifest
The context-search-agent MUST perform historical archive analysis as Track 1 in Phase 2:
**Step 1: Check for Archive Manifest**
```bash
# Check if archive manifest exists
if [[ -f .workflow/.archives/manifest.json ]]; then
# Manifest available for querying
fi
```
**Step 2: Extract Task Keywords**
```javascript
// From current task description, extract key entities and operations
const keywords = extractKeywords(task_description);
// Examples: ["User", "model", "authentication", "JWT", "reporting"]
```
**Step 3: Search Archive for Relevant Sessions**
```javascript
// Query manifest for sessions with matching tags or descriptions
const relevantArchives = archives.filter(archive => {
return archive.tags.some(tag => keywords.includes(tag)) ||
keywords.some(kw => archive.description.toLowerCase().includes(kw.toLowerCase()));
});
```
**Step 4: Extract Watch Patterns**
```javascript
// For each relevant archive, check watch_patterns for applicability
const historicalConflicts = [];
relevantArchives.forEach(archive => {
archive.lessons.watch_patterns?.forEach(pattern => {
// Check if pattern trigger matches current task
if (isPatternRelevant(pattern.pattern, task_description)) {
historicalConflicts.push({
source_session: archive.session_id,
pattern: pattern.pattern,
action: pattern.action,
files_to_check: pattern.related_files,
archived_at: archive.archived_at
});
}
});
});
```
**Step 5: Inject into Context Package**
```json
{
"conflict_detection": {
"risk_level": "medium",
"risk_factors": ["..."],
"affected_modules": ["..."],
"mitigation_strategy": "...",
"historical_conflicts": [
{
"source_session": "WFS-auth-feature",
"pattern": "When modifying User model",
"action": "Check reporting-service and auditing-service dependencies",
"files_to_check": ["src/models/User.ts", "src/services/reporting.ts"],
"archived_at": "2025-09-16T09:00:00Z"
}
]
}
}
// Note: Agent will execute these steps autonomously:
// - bash(~/.claude/scripts/get_modules_by_depth.sh) for project structure
// - Read(CLAUDE.md) and Read(README.md) for documentation
```
## Session ID Integration
### Risk Level Escalation
### Session ID Usage
- **Required Parameter**: `--session WFS-session-id`
- **Session Context Loading**: Load existing session state and metadata
- **Session Continuity**: Maintain context across workflow pipeline phases
If `historical_conflicts` array is not empty, minimum risk level should be "medium":
### Session Validation
```javascript
// Validate session exists
const sessionPath = `.workflow/${session_id}`;
if (!fs.existsSync(sessionPath)) {
console.error(`❌ Session ${session_id} not found`);
process.exit(1);
if (historicalConflicts.length > 0 && currentRisk === "low") {
conflict_detection.risk_level = "medium";
conflict_detection.risk_factors.push(
`${historicalConflicts.length} historical conflict pattern(s) detected from past sessions`
);
}
```
## Success Criteria
- Valid context-package.json generated in correct location
- Contains sufficient relevant information (>80% relevance)
- Execution completes within reasonable time (<2 minutes)
- All required fields present and properly formatted
- Agent reports completion status with statistics
### Archive Query Algorithm
```markdown
1. IF .workflow/.archives/manifest.json does NOT exist → Skip Track 1, continue to Track 2
2. IF manifest exists:
a. Load manifest.json
b. Extract keywords from task_description (nouns, verbs, technical terms)
c. Filter archives where:
- ANY tag matches keywords (case-insensitive) OR
- description contains keywords (case-insensitive substring match)
d. For each relevant archive:
- Read lessons.watch_patterns array
- Check if pattern.pattern keywords overlap with task_description
- If relevant: Add to historical_conflicts array
e. IF historical_conflicts.length > 0:
- Set risk_level = max(current_risk, "medium")
- Add to risk_factors
3. Continue to Track 2 (reference documentation)
```
## Usage Examples
### Basic Usage
```bash
/workflow:tools:context-gather --session WFS-auth-feature "Implement JWT authentication with refresh tokens"
```
## Success Criteria
- ✅ Valid context-package.json generated in `.workflow/{session}/.process/`
- ✅ Contains >80% relevant files based on task keywords
- ✅ Execution completes within 2 minutes
- ✅ All required schema fields present and valid
- ✅ Conflict risk accurately assessed
- ✅ Agent reports completion with statistics
## Error Handling
| Error | Cause | Resolution |
|-------|-------|------------|
| Package validation failed | Invalid session_id in existing package | Re-run agent to regenerate |
| Agent execution timeout | Large codebase or slow MCP | Increase timeout, check code-index status |
| Missing required fields | Agent incomplete execution | Check agent logs, verify schema compliance |
| File count exceeds limit | Too many relevant files | Agent should auto-prioritize top 50 by relevance |
## Notes
- **Detection-first**: Always check for existing package before invoking agent
- **Agent autonomy**: Agent handles all discovery logic per `.claude/agents/context-search-agent.md`
- **No redundancy**: This command is a thin orchestrator, all logic in agent
- **Plan-specific**: Use this for implementation planning; brainstorm mode uses direct agent call

View File

@@ -19,6 +19,7 @@ Autonomous task JSON and IMPL_PLAN.md generation using action-planning-agent wit
- **MCP-Enhanced**: Use MCP tools for advanced code analysis and research
- **Pre-Selected Templates**: Command selects correct template based on `--cli-execute` flag **before** invoking agent
- **Agent Simplicity**: Agent receives pre-selected template and focuses only on content generation
- **Path Clarity**: All `focus_paths` prefer absolute paths (e.g., `D:\\project\\src\\module`), or clear relative paths from project root (e.g., `./src/module`)
## Execution Lifecycle
@@ -49,6 +50,7 @@ Autonomous task JSON and IMPL_PLAN.md generation using action-planning-agent wit
"synthesis_output": {"path": "...", "exists": true},
"conflict_resolution": {"path": "...", "exists": true} // if conflict_risk >= medium
},
"context_package_path": ".workflow/{session-id}/.process/context-package.json",
"context_package": {
// If in memory: use cached content
// Else: Load from .workflow/{session-id}/.process/context-package.json
@@ -149,9 +151,11 @@ Task(
- Includes conflict_risk assessment
### Conflict Resolution (Conditional)
{conflict_resolution_content}
- Exists only if conflict_risk was medium/high
- Contains conflict detection results and resolution strategies
If conflict_risk was medium/high, modifications have been applied to:
- **guidance-specification.md**: Design decisions updated to resolve conflicts
- **Role analyses (*.md)**: Recommendations adjusted for compatibility
- **context-package.json**: Marked as "resolved" with conflict IDs
- NO separate CONFLICT_RESOLUTION.md file (conflicts resolved in-place)
### MCP Analysis Results (Optional)
**Code Structure**: {mcp_code_index_results}
@@ -334,9 +338,11 @@ const agentContext = {
? memory.get("workflow-session.json")
: Read(.workflow/WFS-[id]/workflow-session.json),
context_package_path: ".workflow/WFS-[id]/.process/context-package.json",
context_package: memory.has("context-package.json")
? memory.get("context-package.json")
: Read(.workflow/WFS-[id]/.process/context-package.json),
: Read(".workflow/WFS-[id]/.process/context-package.json"),
// Extract brainstorm artifacts from context package
brainstorm_artifacts: extractBrainstormArtifacts(context_package),

View File

@@ -49,6 +49,7 @@ Generate TDD-specific tasks from analysis results with complete Red-Green-Refact
- **Feature-Complete Tasks**: Each task contains complete Red-Green-Refactor cycle
- **Phase-Explicit**: Internal phases clearly marked in flow_control.implementation_approach
- **Task Merging**: Prefer single task per feature over decomposition
- **Path Clarity**: All `focus_paths` prefer absolute paths (e.g., `D:\\project\\src\\module`), or clear relative paths from project root (e.g., `./src/module`)
- **Artifact-Aware**: Integrates brainstorming outputs
- **Memory-First**: Reuse loaded documents from memory
- **Context-Aware**: Analyzes existing codebase and test patterns
@@ -134,6 +135,7 @@ For each feature, generate task(s) with ID format:
"id": "IMPL-N", // Task identifier
"title": "Feature description with TDD", // Human-readable title
"status": "pending", // pending | in_progress | completed | container
"context_package_path": ".workflow/{session-id}/.process/context-package.json", // Path to smart context package
"meta": {
"type": "feature", // Task type
"agent": "@code-developer", // Assigned agent
@@ -156,7 +158,7 @@ For each feature, generate task(s) with ID format:
"expected_failure": "Why test should fail initially"
}
],
"focus_paths": ["src/path/", "tests/path/"], // Files to modify
"focus_paths": ["D:\\project\\src\\path", "./tests/path"], // Absolute or clear relative paths from project root
"acceptance": [ // Success criteria
"All tests pass (Red → Green)",
"Code refactored (Refactor complete)",
@@ -259,6 +261,7 @@ identifier: WFS-{session-id}
source: "User requirements" | "File: path"
conflict_resolution: .workflow/{session-id}/.process/CONFLICT_RESOLUTION.md # if exists
context_package: .workflow/{session-id}/.process/context-package.json
context_package_path: .workflow/{session-id}/.process/context-package.json
test_context: .workflow/{session-id}/.process/test-context-package.json # if exists
workflow_type: "tdd"
verification_history:
@@ -411,6 +414,7 @@ Update workflow-session.json with TDD metadata:
├── CONFLICT_RESOLUTION.md # Conflict resolution strategies (if conflict_risk ≥ medium)
├── test-context-package.json # Test coverage analysis
├── context-package.json # Input from context-gather
├── context_package_path # Path to smart context package
└── green-fix-iteration-*.md # Fix logs from Green phase test-fix cycles
```

View File

@@ -40,6 +40,7 @@ This command is built on a set of core principles to ensure efficient and reliab
- **Role Analysis-Driven**: All generated tasks originate from role-specific `analysis.md` files (enhanced in synthesis phase), ensuring direct link between requirements/design and implementation
- **Artifact-Aware**: Automatically detects and integrates all brainstorming outputs (role analyses, guidance-specification.md, enhancements) to enrich task context
- **Context-Rich**: Embeds comprehensive context (requirements, focus paths, acceptance criteria, artifact references) directly into each task JSON
- **Path Clarity**: All `focus_paths` prefer absolute paths (e.g., `D:\\project\\src\\module`), or clear relative paths from project root (e.g., `./src/module`)
- **Flow-Control Ready**: Pre-defines clear execution sequence (`pre_analysis`, `implementation_approach`) within each task
- **Memory-First**: Prioritizes using documents already loaded in conversation memory to avoid redundant file operations
- **Mode-Flexible**: Supports both agent-driven execution (default) and CLI tool execution (with `--cli-execute` flag)
@@ -173,6 +174,7 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
"id": "IMPL-N[.M]",
"title": "Descriptive task name",
"status": "pending|active|completed|blocked|container",
"context_package_path": ".workflow/WFS-[session]/.process/context-package.json",
"meta": {
"type": "feature|bugfix|refactor|test-gen|test-fix|docs",
"agent": "@code-developer|@test-fix-agent|@universal-executor",
@@ -181,7 +183,7 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
},
"context": {
"requirements": ["Clear requirement from analysis"],
"focus_paths": ["src/module/path", "tests/module/path"],
"focus_paths": ["D:\\project\\src\\module\\path", "./tests/module/path"],
"acceptance": ["Measurable acceptance criterion"],
"parent": "IMPL-N",
"depends_on": ["IMPL-N.M"],
@@ -193,20 +195,10 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
"priority": "highest",
"usage": "Role-specific requirements, design specs, enhanced by synthesis. Paths loaded dynamically from context-package.json (supports multiple files per role: analysis.md, analysis-01.md, analysis-api.md, etc.). Common roles: product-manager, system-architect, ui-designer, data-architect, ux-expert."
},
{
"path": ".workflow/WFS-[session]/.process/context-package.json",
"priority": "critical",
"usage": "Smart context with focus paths, module structure, dependency graph, existing patterns, tech stack. Use for: environment setup, dependency resolution, pattern discovery, conflict detection results"
},
{
"path": ".workflow/WFS-[session]/.process/CONFLICT_RESOLUTION.md",
"priority": "high",
"usage": "Conflict resolution strategies and selected approaches (conditional, exists only if conflict_risk was medium/high). Use for: understanding code conflicts, applying resolution strategies, migration planning"
},
{
"path": ".workflow/WFS-[session]/.brainstorming/guidance-specification.md",
"priority": "medium",
"usage": "Discussion context and framework structure"
"priority": "high",
"usage": "Finalized design decisions (potentially modified by conflict resolution if conflict_risk was medium/high). Use for: understanding resolved requirements, design choices, conflict resolutions applied in-place"
}
]
},
@@ -215,8 +207,9 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
{
"step": "load_context_package",
"action": "Load context package for artifact paths",
"note": "Context package path is now at top-level field: context_package_path",
"commands": [
"Read(.workflow/WFS-[session]/.process/context-package.json)"
"Read({{context_package_path}})"
],
"output_to": "context_package",
"on_error": "fail"
@@ -226,7 +219,7 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
"action": "Load role analyses from context-package.json (supports multiple files per role)",
"note": "Paths loaded from context-package.json → brainstorm_artifacts.role_analyses[]. Supports analysis*.md automatically.",
"commands": [
"Read(.workflow/WFS-[session]/.process/context-package.json)",
"Read({{context_package_path}})",
"Extract(brainstorm_artifacts.role_analyses[].files[].path)",
"Read(each extracted path)"
],
@@ -235,17 +228,17 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
},
{
"step": "load_planning_context",
"action": "Load plan-generated context intelligence and conflict resolution",
"note": "CRITICAL: context-package.json provides smart context (focus paths, dependencies, patterns). CONFLICT_RESOLUTION.md (if exists) provides conflict resolution strategies.",
"action": "Load plan-generated context intelligence with resolved conflicts",
"note": "CRITICAL: context-package.json (from context_package_path) provides smart context (focus paths, dependencies, patterns) and conflict resolution status. If conflict_risk was medium/high, conflicts have been resolved in guidance-specification.md and role analyses.",
"commands": [
"Read(.workflow/WFS-[session]/.process/context-package.json)",
"bash(test -f .workflow/WFS-[session]/.process/CONFLICT_RESOLUTION.md && cat .workflow/WFS-[session]/.process/CONFLICT_RESOLUTION.md || echo 'No conflicts detected')"
"Read({{context_package_path}})",
"Read(.workflow/WFS-[session]/.brainstorming/guidance-specification.md)"
],
"output_to": "planning_context",
"on_error": "fail",
"usage_guidance": {
"context-package.json": "Use for focus_paths validation, dependency resolution, existing pattern discovery, module structure understanding, conflict_risk assessment",
"CONFLICT_RESOLUTION.md": "Apply selected conflict resolution strategies, understand migration requirements (conditional, may not exist if no conflicts)"
"context-package.json": "Use for focus_paths validation, dependency resolution, existing pattern discovery, module structure understanding, conflict_risk status (resolved/none/low)",
"guidance-specification.md": "Use for finalized design decisions (includes applied conflict resolutions if any)"
}
},
{
@@ -269,22 +262,22 @@ This enhanced 5-field schema embeds all necessary context, artifacts, and execut
{
"step": 1,
"title": "Implement task following role analyses and context",
"description": "Implement '[title]' following this priority: 1) role analysis.md files (requirements, design specs, enhancements from synthesis), 2) context-package.json (smart context, focus paths, patterns), 3) CONFLICT_RESOLUTION.md (if exists, conflict resolution strategies). Role analyses are enhanced by synthesis phase with concept improvements and clarifications.",
"description": "Implement '[title]' following this priority: 1) role analysis.md files (requirements, design specs, enhancements from synthesis), 2) guidance-specification.md (finalized decisions with resolved conflicts), 3) context-package.json (smart context, focus paths, patterns). Role analyses are enhanced by synthesis phase with concept improvements and clarifications. If conflict_risk was medium/high, conflict resolutions are already applied in-place.",
"modification_points": [
"Apply requirements and design specs from role analysis documents",
"Use enhancements and clarifications from synthesis phase",
"Apply conflict resolution strategies (if conflicts were detected)",
"Use finalized decisions from guidance-specification.md (includes resolved conflicts)",
"Use context-package.json for focus paths and dependency resolution",
"Consult specific role artifacts for implementation details when needed",
"Integrate with existing patterns"
],
"logic_flow": [
"Load role analyses (requirements, design, enhancements from synthesis)",
"Load context-package.json (smart context: focus paths, dependencies, patterns, conflict_risk)",
"Load CONFLICT_RESOLUTION.md (if exists, conflict resolution strategies)",
"Load guidance-specification.md (finalized decisions with resolved conflicts if any)",
"Load context-package.json (smart context: focus paths, dependencies, patterns, conflict_risk status)",
"Extract requirements and design decisions from role documents",
"Review synthesis enhancements and clarifications",
"Apply conflict resolution strategies (if applicable)",
"Use finalized decisions (conflicts already resolved if applicable)",
"Identify modification targets using context package",
"Implement following role requirements and design specs",
"Consult role artifacts for detailed specifications when needed",
@@ -309,12 +302,13 @@ source: "User requirements" | "File: path" | "Issue: ISS-001"
role_analyses: .workflow/{session-id}/.brainstorming/[role]/analysis*.md
artifacts: .workflow/{session-id}/.brainstorming/
context_package: .workflow/{session-id}/.process/context-package.json # CCW smart context
conflict_resolution: .workflow/{session-id}/.process/CONFLICT_RESOLUTION.md # Conditional, if conflict_risk >= medium
guidance_specification: .workflow/{session-id}/.brainstorming/guidance-specification.md # Finalized decisions with resolved conflicts
workflow_type: "standard | tdd | design" # Indicates execution model
verification_history: # CCW quality gates
synthesis_clarify: "passed | skipped | pending" # Brainstorm phase clarification
action_plan_verify: "pending"
phase_progression: "brainstorm → synthesis → context → conflict_resolution → planning" # CCW workflow phases
conflict_resolution: "resolved | none | low" # Status from context-package.json
phase_progression: "brainstorm → synthesis → context → conflict_resolution (if needed) → planning" # CCW workflow phases
---
# Implementation Plan: {Project Title}
@@ -383,15 +377,16 @@ Core requirements, objectives, technical approach summary (2-3 paragraphs max).
**Context Intelligence (context-package.json)**:
- **What**: Smart context gathered by CCW's context-gather phase
- **Content**: Focus paths, dependency graph, existing patterns, module structure, tech stack, conflict_risk assessment
- **Content**: Focus paths, dependency graph, existing patterns, module structure, tech stack, conflict_risk status
- **Usage**: Tasks load this via `flow_control.preparatory_steps` for environment setup and conflict awareness
- **CCW Value**: Automated intelligent context discovery replacing manual file exploration
**Conflict Resolution (CONFLICT_RESOLUTION.md)**:
- **What**: Conflict analysis and resolution strategies (conditional, exists only if conflict_risk >= medium)
- **Content**: Conflict detection results, resolution options, selected strategies, migration requirements
- **Usage**: Referenced in task planning for applying conflict resolution strategies and understanding code conflicts
- **CCW Value**: CLI-powered conflict detection and strategic resolution guidance for complex codebases
**Conflict Resolution Status**:
- **What**: Conflict resolution applied in-place to brainstorm artifacts (if conflict_risk was >= medium)
- **Location**: guidance-specification.md and role analyses (*.md) contain resolved conflicts
- **Status**: Check context-package.json → conflict_detection.conflict_risk ("resolved" | "none" | "low")
- **Usage**: Read finalized decisions from guidance-specification.md (includes applied resolutions)
- **CCW Value**: Interactive conflict resolution with user confirmation, modifications applied automatically
### Role Analysis Documents (Highest Priority)
Role analyses provide specialized perspectives on the implementation:
@@ -406,10 +401,9 @@ Role analyses provide specialized perspectives on the implementation:
- **topic-framework.md**: Role-specific discussion points and analysis framework
**Artifact Priority in Development**:
1. context-package.json (primary source: smart context AND brainstorm artifact catalog in `brainstorm_artifacts`)
2. role/analysis*.md (paths from context-package.json: requirements, design specs, enhanced by synthesis)
3. CONFLICT_RESOLUTION.md (path from context-package.json: conflict strategies, if conflict_risk >= medium)
4. guidance-specification.md (path from context-package.json: discussion framework)
1. {context_package_path} (primary source: smart context AND brainstorm artifact catalog in `brainstorm_artifacts` + conflict_risk status)
2. role/analysis*.md (paths from context-package.json: requirements, design specs, enhanced by synthesis, with resolved conflicts if any)
3. guidance-specification.md (path from context-package.json: finalized decisions with resolved conflicts if any)
## 4. Implementation Strategy
@@ -566,21 +560,19 @@ The command organizes outputs into a standard directory structure.
│ ├── IMPL-1.1.json # Leaf task with flow_control
│ └── IMPL-1.2.json # Leaf task with flow_control
├── .brainstorming # Input artifacts from brainstorm + synthesis
│ ├── guidance-specification.md # Discussion framework
│ └── {role}/analysis*.md # Role analyses (enhanced by synthesis, may have multiple files per role)
│ ├── guidance-specification.md # Finalized decisions (with resolved conflicts if any)
│ └── {role}/analysis*.md # Role analyses (enhanced by synthesis, with resolved conflicts if any)
└── .process/
── context-package.json # Input from context-gather (smart context + conflict_risk)
└── CONFLICT_RESOLUTION.md # Input from conflict-resolution (conditional, if conflict_risk >= medium)
── context-package.json # Input from context-gather (smart context + conflict_risk status)
```
## 7. Artifact Integration
The command intelligently detects and integrates artifacts from the `.brainstorming/` directory.
#### Artifact Priority
1. **context-package.json** (critical): Primary source - smart context AND all brainstorm artifact paths in `brainstorm_artifacts` section
2. **role/analysis*.md** (highest): Paths from context-package.json → role-specific requirements, design specs, enhanced by synthesis
3. **CONFLICT_RESOLUTION.md** (high): Path from context-package.json → conflict strategies (conditional, if conflict_risk >= medium)
4. **guidance-specification.md** (medium): Path from context-package.json → discussion framework from brainstorming
1. **context-package.json** (critical): Primary source - smart context AND all brainstorm artifact paths in `brainstorm_artifacts` section + conflict_risk status
2. **role/analysis*.md** (highest): Paths from context-package.json → role-specific requirements, design specs, enhanced by synthesis, with resolved conflicts applied in-place
3. **guidance-specification.md** (high): Path from context-package.json → finalized decisions with resolved conflicts (if conflict_risk was >= medium)
#### Artifact-Task Mapping
Artifacts are mapped to tasks based on their relevance to the task's domain.
@@ -598,8 +590,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
**Key Points**:
- **Sequential Steps**: Steps execute in order defined in `implementation_approach` array
- **Context Delivery**: Each codex command receives context via CONTEXT field: `@.workflow/WFS-session/.process/context-package.json` (role analyses loaded dynamically from context package)
- **Multi-Step Tasks**: First step provides full context, subsequent steps use `resume --last` to maintain session continuity
- **Context Delivery**: Each codex command receives context via CONTEXT field: `@{context_package_path}` (role analyses loaded dynamically from context package)- **Multi-Step Tasks**: First step provides full context, subsequent steps use `resume --last` to maintain session continuity
- **Step Dependencies**: Later steps reference outputs from earlier steps via `depends_on` field
### Example 1: Agent Mode - Simple Task (Default, No Command)
@@ -607,6 +598,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
{
"id": "IMPL-001",
"title": "Implement user authentication module",
"context_package_path": ".workflow/WFS-session/.process/context-package.json",
"context": {
"depends_on": [],
"focus_paths": ["src/auth"],
@@ -623,7 +615,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
"step": "load_role_analyses",
"action": "Load role analyses from context-package.json",
"commands": [
"Read(.workflow/WFS-session/.process/context-package.json)",
"Read({{context_package_path}})",
"Extract(brainstorm_artifacts.role_analyses[].files[].path)",
"Read(each extracted path)"
],
@@ -633,7 +625,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
{
"step": "load_context",
"action": "Load context package for project structure",
"commands": ["Read(.workflow/WFS-session/.process/context-package.json)"],
"commands": ["Read({{context_package_path}})"],
"output_to": "context_pkg",
"on_error": "fail"
}
@@ -668,6 +660,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
{
"id": "IMPL-002",
"title": "Implement user authentication module",
"context_package_path": ".workflow/WFS-session/.process/context-package.json",
"context": {
"depends_on": [],
"focus_paths": ["src/auth"],
@@ -680,7 +673,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
"step": "load_role_analyses",
"action": "Load role analyses from context-package.json",
"commands": [
"Read(.workflow/WFS-session/.process/context-package.json)",
"Read({{context_package_path}})",
"Extract(brainstorm_artifacts.role_analyses[].files[].path)",
"Read(each extracted path)"
],
@@ -693,7 +686,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
"step": 1,
"title": "Implement authentication with Codex",
"description": "Create JWT-based authentication module",
"command": "bash(codex -C src/auth --full-auto exec \"PURPOSE: Implement user authentication TASK: JWT-based auth with login/registration MODE: auto CONTEXT: @.workflow/WFS-session/.process/context-package.json EXPECTED: Complete auth module with tests RULES: Load role analyses from context-package.json → brainstorm_artifacts\" --skip-git-repo-check -s danger-full-access)",
"command": "bash(codex -C src/auth --full-auto exec \"PURPOSE: Implement user authentication TASK: JWT-based auth with login/registration MODE: auto CONTEXT: @{{context_package_path}} EXPECTED: Complete auth module with tests RULES: Load role analyses from context-package.json → brainstorm_artifacts\" --skip-git-repo-check -s danger-full-access)",
"modification_points": ["Create auth service", "Implement endpoints", "Add JWT middleware"],
"logic_flow": ["Validate credentials", "Generate JWT", "Return token"],
"depends_on": [],
@@ -710,6 +703,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
{
"id": "IMPL-003",
"title": "Implement role-based access control",
"context_package_path": ".workflow/WFS-session/.process/context-package.json",
"context": {
"depends_on": ["IMPL-002"],
"focus_paths": ["src/auth", "src/middleware"],
@@ -722,7 +716,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
"step": "load_context",
"action": "Load context and role analyses from context-package.json",
"commands": [
"Read(.workflow/WFS-session/.process/context-package.json)",
"Read({{context_package_path}})",
"Extract(brainstorm_artifacts.role_analyses[].files[].path)",
"Read(each extracted path)"
],
@@ -735,7 +729,7 @@ When using `--cli-execute`, each step in `implementation_approach` includes a `c
"step": 1,
"title": "Create RBAC models",
"description": "Define role and permission data models",
"command": "bash(codex -C src/auth --full-auto exec \"PURPOSE: Create RBAC models TASK: Role and permission models MODE: auto CONTEXT: @.workflow/WFS-session/.process/context-package.json EXPECTED: Models with migrations RULES: Load role analyses from context-package.json → brainstorm_artifacts\" --skip-git-repo-check -s danger-full-access)",
"command": "bash(codex -C src/auth --full-auto exec \"PURPOSE: Create RBAC models TASK: Role and permission models MODE: auto CONTEXT: @{{context_package_path}} EXPECTED: Models with migrations RULES: Load role analyses from context-package.json → brainstorm_artifacts\" --skip-git-repo-check -s danger-full-access)",
"modification_points": ["Define role model", "Define permission model", "Create migrations"],
"logic_flow": ["Design schema", "Implement models", "Generate migrations"],
"depends_on": [],

View File

@@ -1,265 +1,188 @@
---
name: test-context-gather
description: Collect test coverage context and identify files requiring test generation
description: Intelligently collect test coverage context using test-context-search-agent and package into standardized test-context JSON
argument-hint: "--session WFS-test-session-id"
examples:
- /workflow:tools:test-context-gather --session WFS-test-auth
- /workflow:tools:test-context-gather --session WFS-test-payment
allowed-tools: Task(*), Read(*), Glob(*)
---
# Test Context Gather Command
# Test Context Gather Command (/workflow:tools:test-context-gather)
## Overview
Specialized context collector for test generation workflows that analyzes test coverage, identifies missing tests, and packages implementation context from source sessions.
Orchestrator command that invokes `test-context-search-agent` to gather comprehensive test coverage context for test generation workflows. Generates standardized `test-context-package.json` with coverage analysis, framework detection, and source implementation context.
**Agent**: `test-context-search-agent` (`.claude/agents/test-context-search-agent.md`)
## Core Philosophy
- **Coverage-First**: Analyze existing test coverage before planning
- **Gap Identification**: Locate implementation files without corresponding tests
- **Agent Delegation**: Delegate all test coverage analysis to `test-context-search-agent` for autonomous execution
- **Detection-First**: Check for existing test-context-package before executing
- **Coverage-First**: Analyze existing test coverage before planning new tests
- **Source Context Loading**: Import implementation summaries from source session
- **Framework Detection**: Auto-detect test framework and patterns
- **Ripgrep-Powered**: Leverage ripgrep and native tools for precise analysis
- **Standardized Output**: Generate `.workflow/{test_session_id}/.process/test-context-package.json`
## Core Responsibilities
- Load source session implementation context
- Analyze current test coverage using ripgrep
- Identify files requiring test generation
- Detect test framework and conventions
- Package test context for analysis phase
## Execution Flow
## Execution Lifecycle
### Step 1: Test-Context-Package Detection
### Phase 1: Session Validation & Source Loading
**Execute First** - Check if valid package already exists:
1. **Test Session Validation**
- Load `.workflow/{test_session_id}/workflow-session.json`
- Extract `meta.source_session` reference
- Validate test session type is "test-gen"
```javascript
const testContextPath = `.workflow/${test_session_id}/.process/test-context-package.json`;
2. **Source Session Context Loading**
- Read `.workflow/{source_session_id}/workflow-session.json`
- Load implementation summaries from `.workflow/{source_session_id}/.summaries/`
- Extract changed files and implementation scope
- Identify implementation patterns and tech stack
if (file_exists(testContextPath)) {
const existing = Read(testContextPath);
### Phase 2: Test Coverage Analysis (Ripgrep)
1. **Existing Test Discovery**
```bash
# Find all test files
find . -name "*.test.*" -type f
find . -name "*.spec.*" -type f
find . -name "*test_*.py" -type f
# Search for test patterns
rg "describe|it|test|@Test" -g "*.test.*"
```
2. **Coverage Gap Analysis**
```bash
# For each implementation file from source session
# Check if corresponding test file exists
# Example: src/auth/AuthService.ts -> tests/auth/AuthService.test.ts
# src/utils/validator.py -> tests/test_validator.py
# Output: List of files without tests
```
3. **Test Statistics**
- Count total test files
- Count implementation files from source session
- Calculate coverage percentage
- Identify coverage gaps by module
### Phase 3: Test Framework Detection
1. **Framework Identification**
```bash
# Check package.json or requirements.txt
rg "jest|mocha|jasmine|pytest|unittest|rspec" -g "package.json" -g "requirements.txt" -g "Gemfile" -C 2
# Analyze existing test patterns
rg "describe\(|it\(|test\(|def test_" -g "*.test.*" -C 3
```
2. **Convention Analysis**
- Test file naming patterns (*.test.ts vs *.spec.ts)
- Test directory structure (tests/ vs __tests__ vs src/**/*.test.*)
- Assertion library (expect, assert, should)
- Mocking framework (jest.fn, sinon, unittest.mock)
### Phase 4: Context Packaging
Generate `test-context-package.json`:
```json
{
"metadata": {
"test_session_id": "WFS-test-auth",
"source_session_id": "WFS-auth",
"timestamp": "2025-10-04T10:30:00Z",
"task_type": "test-generation",
"complexity": "medium"
},
"source_context": {
"implementation_summaries": [
{
"task_id": "IMPL-001",
"summary_path": ".workflow/WFS-auth/.summaries/IMPL-001-summary.md",
"changed_files": [
"src/auth/AuthService.ts",
"src/auth/TokenValidator.ts",
"src/middleware/auth.ts"
],
"implementation_type": "feature"
}
],
"tech_stack": ["typescript", "express", "jsonwebtoken"],
"project_patterns": {
"architecture": "layered",
"error_handling": "try-catch with custom errors",
"async_pattern": "async/await"
}
},
"test_coverage": {
"existing_tests": [
"tests/auth/AuthService.test.ts",
"tests/middleware/auth.test.ts"
],
"missing_tests": [
{
"implementation_file": "src/auth/TokenValidator.ts",
"suggested_test_file": "tests/auth/TokenValidator.test.ts",
"priority": "high",
"reason": "New implementation without tests"
}
],
"coverage_stats": {
"total_implementation_files": 3,
"files_with_tests": 2,
"files_without_tests": 1,
"coverage_percentage": 66.7
}
},
"test_framework": {
"framework": "jest",
"version": "^29.0.0",
"test_pattern": "**/*.test.ts",
"test_directory": "tests/",
"assertion_library": "expect",
"mocking_framework": "jest",
"conventions": {
"file_naming": "*.test.ts",
"test_structure": "describe/it blocks",
"setup_teardown": "beforeEach/afterEach"
}
},
"assets": [
{
"type": "implementation_summary",
"path": ".workflow/WFS-auth/.summaries/IMPL-001-summary.md",
"relevance": "Source implementation context",
"priority": "highest"
},
{
"type": "existing_test",
"path": "tests/auth/AuthService.test.ts",
"relevance": "Test pattern reference",
"priority": "high"
},
{
"type": "source_code",
"path": "src/auth/TokenValidator.ts",
"relevance": "Implementation requiring tests",
"priority": "high"
},
{
"type": "documentation",
"path": "CLAUDE.md",
"relevance": "Project conventions",
"priority": "medium"
}
],
"focus_areas": [
"Generate comprehensive tests for TokenValidator",
"Follow existing Jest patterns from AuthService tests",
"Cover happy path, error cases, and edge cases",
"Include integration tests for middleware"
]
// Validate package belongs to current test session
if (existing?.metadata?.test_session_id === test_session_id) {
console.log("✅ Valid test-context-package found for session:", test_session_id);
console.log("📊 Coverage Stats:", existing.test_coverage.coverage_stats);
console.log("🧪 Framework:", existing.test_framework.framework);
console.log("⚠️ Missing Tests:", existing.test_coverage.missing_tests.length);
return existing; // Skip execution, return existing
} else {
console.warn("⚠️ Invalid test_session_id in existing package, re-generating...");
}
}
```
## Output Location
### Step 2: Invoke Test-Context-Search Agent
```
.workflow/{test_session_id}/.process/test-context-package.json
```
**Only execute if Step 1 finds no valid package**
## Native Tools Usage
```javascript
Task(
subagent_type="test-context-search-agent",
description="Gather test coverage context",
prompt=`
You are executing as test-context-search-agent (.claude/agents/test-context-search-agent.md).
### File Discovery
```bash
# Test files
find . -name "*.test.*" -type f
find . -name "*.spec.*" -type f
## Execution Mode
**PLAN MODE** (Comprehensive) - Full Phase 1-3 execution
# Implementation files
find . -name "*.ts" -type f
find . -name "*.js" -type f
```
## Session Information
- **Test Session ID**: ${test_session_id}
- **Output Path**: .workflow/${test_session_id}/.process/test-context-package.json
### Content Search
```bash
# Test framework detection
rg "jest|mocha|pytest" -g "package.json" -g "requirements.txt"
## Mission
Execute complete test-context-search-agent workflow for test generation planning:
# Test pattern analysis
rg "describe|it|test" -g "*.test.*" -C 2
```
### Phase 1: Session Validation & Source Context Loading
1. **Detection**: Check for existing test-context-package (early exit if valid)
2. **Test Session Validation**: Load test session metadata, extract source_session reference
3. **Source Context Loading**: Load source session implementation summaries, changed files, tech stack
### Coverage Analysis
```bash
# For each implementation file
# Check if test exists
implementation_file="src/auth/AuthService.ts"
test_file_patterns=(
"tests/auth/AuthService.test.ts"
"src/auth/AuthService.test.ts"
"src/auth/__tests__/AuthService.test.ts"
### Phase 2: Test Coverage Analysis
Execute coverage discovery:
- **Track 1**: Existing test discovery (find *.test.*, *.spec.* files)
- **Track 2**: Coverage gap analysis (match implementation files to test files)
- **Track 3**: Coverage statistics (calculate percentages, identify gaps by module)
### Phase 3: Framework Detection & Packaging
1. Framework identification from package.json/requirements.txt
2. Convention analysis from existing test patterns
3. Generate and validate test-context-package.json
## Output Requirements
Complete test-context-package.json with:
- **metadata**: test_session_id, source_session_id, task_type, complexity
- **source_context**: implementation_summaries, tech_stack, project_patterns
- **test_coverage**: existing_tests[], missing_tests[], coverage_stats
- **test_framework**: framework, version, test_pattern, conventions
- **assets**: implementation_summary[], existing_test[], source_code[] with priorities
- **focus_areas**: Test generation guidance based on coverage gaps
## Quality Validation
Before completion verify:
- [ ] Valid JSON format with all required fields
- [ ] Source session context loaded successfully
- [ ] Test coverage gaps identified
- [ ] Test framework detected (or marked as 'unknown')
- [ ] Coverage percentage calculated correctly
- [ ] Missing tests catalogued with priority
- [ ] Execution time < 30 seconds (< 60s for large codebases)
Execute autonomously following agent documentation.
Report completion with coverage statistics.
`
)
# Search for test file
for pattern in "${test_file_patterns[@]}"; do
if [ -f "$pattern" ]; then
echo "✅ Test exists: $pattern"
break
fi
done
```
### Step 3: Output Verification
After agent completes, verify output:
```javascript
// Verify file was created
const outputPath = `.workflow/${test_session_id}/.process/test-context-package.json`;
if (!file_exists(outputPath)) {
throw new Error("❌ Agent failed to generate test-context-package.json");
}
// Load and display summary
const testContext = Read(outputPath);
console.log("✅ Test context package generated successfully");
console.log("📊 Coverage:", testContext.test_coverage.coverage_stats.coverage_percentage + "%");
console.log("⚠️ Tests to generate:", testContext.test_coverage.missing_tests.length);
```
## Parameter Reference
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `--session` | string | ✅ | Test workflow session ID (e.g., WFS-test-auth) |
## Output Schema
Refer to `test-context-search-agent.md` Phase 3.2 for complete `test-context-package.json` schema.
**Key Sections**:
- **metadata**: Test session info, source session reference, complexity
- **source_context**: Implementation summaries with changed files and tech stack
- **test_coverage**: Existing tests, missing tests with priorities, coverage statistics
- **test_framework**: Framework name, version, patterns, conventions
- **assets**: Categorized files with relevance (implementation_summary, existing_test, source_code)
- **focus_areas**: Test generation guidance based on analysis
## Usage Examples
### Basic Usage
```bash
/workflow:tools:test-context-gather --session WFS-test-auth
```
### Expected Output
```
✅ Valid test-context-package found for session: WFS-test-auth
📊 Coverage Stats: { total: 3, with_tests: 2, without_tests: 1, percentage: 66.7 }
🧪 Framework: jest
⚠️ Missing Tests: 1
```
## Success Criteria
- ✅ Valid test-context-package.json generated in `.workflow/{test_session_id}/.process/`
- ✅ Source session context loaded successfully
- ✅ Test coverage gaps identified (>90% accuracy)
- ✅ Test framework detected and documented
- ✅ Execution completes within 30 seconds (60s for large codebases)
- ✅ All required schema fields present and valid
- ✅ Coverage statistics calculated correctly
- ✅ Agent reports completion with statistics
## Error Handling
| Error | Cause | Resolution |
|-------|-------|------------|
| Package validation failed | Invalid test_session_id in existing package | Re-run agent to regenerate |
| Source session not found | Invalid source_session reference | Verify test session metadata |
| No implementation summaries | Source session incomplete | Complete source session first |
| No test framework detected | Missing test dependencies | Request user to specify framework |
## Native Tools Implementation
```bash
# File discovery
find . -name "*.test.*" -o -name "*.spec.*" | grep -v node_modules
# Framework detection
grep -r "jest\|mocha\|pytest" package.json requirements.txt 2>/dev/null
# Coverage analysis
for impl_file in $(cat changed_files.txt); do
test_file=$(echo $impl_file | sed 's/src/tests/' | sed 's/\(.*\)\.\(ts\|js\|py\)$/\1.test.\2/')
[ ! -f "$test_file" ] && echo "$impl_file → MISSING TEST"
done
```
| Agent execution timeout | Large codebase or slow analysis | Increase timeout, check file access |
| Missing required fields | Agent incomplete execution | Check agent logs, verify schema compliance |
| No test framework detected | Missing test dependencies | Agent marks as 'unknown', manual specification needed |
## Integration
@@ -267,20 +190,18 @@ done
- `/workflow:test-gen` (Phase 3: Context Gathering)
### Calls
- Ripgrep and find for file analysis
- Bash file operations for coverage analysis
- `test-context-search-agent` - Autonomous test coverage analysis
### Followed By
- `/workflow:tools:test-concept-enhanced` - Analyzes context and plans test generation
- `/workflow:tools:test-concept-enhanced` - Test generation analysis and planning
## Success Criteria
## Notes
- ✅ Source session context loaded successfully
- ✅ Test coverage gaps identified with ripgrep
- ✅ Test framework detected and documented
- ✅ Valid test-context-package.json generated
- ✅ All missing tests catalogued with priority
- ✅ Execution time < 20 seconds
- **Detection-first**: Always check for existing test-context-package before invoking agent
- **Agent autonomy**: Agent handles all coverage analysis logic per `.claude/agents/test-context-search-agent.md`
- **No redundancy**: This command is a thin orchestrator, all logic in agent
- **Framework agnostic**: Supports Jest, Mocha, pytest, RSpec, Go testing, etc.
- **Coverage focus**: Primary goal is identifying implementation files without tests
## Related Commands

View File

@@ -363,7 +363,7 @@ Generate **TWO task JSON files**:
" Source files: [focus_paths]",
" Implementation: [implementation_context]",
" EXPECTED: Root cause analysis, code path tracing, targeted fixes",
" RULES: $(cat ~/.claude/prompt-templates/bug-fix.md) | Bug: [test_failure_description]",
" RULES: $(cat ~/.claude/workflows/cli-templates/prompts/development/bug-diagnosis.txt) | Bug: [test_failure_description]",
" Minimal surgical fixes only - no refactoring",
" \" > fix-iteration-[N]-diagnosis.md)",
" - Parse diagnosis → extract fix_suggestion and target_files",
@@ -690,6 +690,6 @@ The `@test-fix-agent` will execute the task by following the `flow_control.imple
6. **Phase 3**: Generate summary and certify code
7. **Error Recovery**: Revert changes if max iterations reached
**Bug Diagnosis Template**: Uses bug-fix.md template as referenced in bug-index.md for systematic root cause analysis, code path tracing, and targeted fix recommendations.
**Bug Diagnosis Template**: Uses `~/.claude/workflows/cli-templates/prompts/development/bug-diagnosis.txt` template for systematic root cause analysis, code path tracing, and targeted fix recommendations.
**Codex Usage**: The agent uses `codex exec "..." resume --last` pattern ONLY when meta.use_codex=true (--use-codex flag present) to maintain conversation context across multiple fix iterations, ensuring consistency and learning from previous attempts.

View File

@@ -170,128 +170,318 @@ ELSE:
extraction_insufficient = true
```
### Step 2: Interactive Question Workflow (Agent)
### Step 2: Generate Animation Questions (Main Flow)
```bash
# If extraction failed or insufficient, use interactive questioning
IF extraction_insufficient OR extraction_mode == "interactive":
REPORT: "🤔 Launching interactive animation specification mode"
REPORT: "🤔 Interactive animation specification mode"
REPORT: " Context: {has_design_context ? 'Aligning with design tokens' : 'Standalone animation system'}"
REPORT: " Focus: {focus_types}"
# Launch ui-design-agent for interactive questioning
Task(ui-design-agent): `
[ANIMATION_SPECIFICATION_TASK]
Guide user through animation design decisions via structured questions
# Determine question categories based on focus_types
question_categories = []
IF "all" IN focus_types OR "transitions" IN focus_types:
question_categories.append("timing_scale")
question_categories.append("easing_philosophy")
SESSION: {session_id} | MODE: interactive | BASE_PATH: {base_path}
IF "all" IN focus_types OR "interactions" IN focus_types OR "hover" IN focus_types:
question_categories.append("button_interactions")
question_categories.append("card_interactions")
question_categories.append("input_interactions")
## Context
- Design tokens available: {has_design_context}
- Focus areas: {focus_types}
- Extracted data: {animations_extracted ? "Partial CSS data available" : "No CSS data"}
IF "all" IN focus_types OR "page" IN focus_types:
question_categories.append("page_transitions")
## Interactive Workflow
IF "all" IN focus_types OR "loading" IN focus_types:
question_categories.append("loading_states")
For each animation category, ASK user and WAIT for response:
IF "all" IN focus_types OR "scroll" IN focus_types:
question_categories.append("scroll_animations")
```
### 1. Transition Duration Scale
QUESTION: "What timing scale feels right for your design?"
OPTIONS:
- "Fast & Snappy" (100-200ms transitions)
- "Balanced" (200-400ms transitions)
- "Smooth & Deliberate" (400-600ms transitions)
- "Custom" (specify values)
### Step 3: Output Questions in Text Format (Main Flow)
### 2. Easing Philosophy
QUESTION: "What easing style matches your brand?"
OPTIONS:
- "Linear" (constant speed, technical feel)
- "Ease-Out" (fast start, natural feel)
- "Ease-In-Out" (balanced, polished feel)
- "Spring/Bounce" (playful, modern feel)
- "Custom" (specify cubic-bezier)
```markdown
# Generate and output structured questions
REPORT: ""
REPORT: "===== 动画规格交互式配置 ====="
REPORT: ""
### 3. Common Interactions (Ask for each)
FOR interaction IN ["button-hover", "link-hover", "card-hover", "modal-open", "dropdown-toggle"]:
QUESTION: "How should {interaction} animate?"
OPTIONS:
- "Subtle" (color/opacity change only)
- "Lift" (scale + shadow increase)
- "Slide" (transform translateY)
- "Fade" (opacity transition)
- "None" (no animation)
- "Custom" (describe behavior)
question_number = 1
questions_output = []
### 4. Page Transitions
QUESTION: "Should page/route changes have animations?"
IF YES:
ASK: "What style?"
OPTIONS:
- "Fade" (crossfade between views)
- "Slide" (swipe left/right)
- "Zoom" (scale in/out)
- "None"
# Q1: Timing Scale (if included)
IF "timing_scale" IN question_categories:
REPORT: "【问题{question_number} - 时间尺度】您的设计需要什么样的过渡速度?"
REPORT: "a) 快速敏捷"
REPORT: " 说明100-200ms 过渡,适合工具型应用和即时反馈场景"
REPORT: "b) 平衡适中"
REPORT: " 说明200-400ms 过渡,通用选择,符合多数用户预期"
REPORT: "c) 流畅舒缓"
REPORT: " 说明400-600ms 过渡,适合品牌展示和沉浸式体验"
REPORT: "d) 自定义"
REPORT: " 说明:需要指定具体数值和使用场景"
REPORT: ""
questions_output.append({id: question_number, category: "timing_scale", options: ["a", "b", "c", "d"]})
question_number += 1
### 5. Loading States
QUESTION: "What loading animation style?"
OPTIONS:
- "Spinner" (rotating circle)
- "Pulse" (opacity pulse)
- "Skeleton" (shimmer effect)
- "Progress Bar" (linear fill)
- "Custom" (describe)
# Q2: Easing Philosophy (if included)
IF "easing_philosophy" IN question_categories:
REPORT: "【问题{question_number} - 缓动风格】哪种缓动曲线符合您的品牌调性?"
REPORT: "a) 线性匀速"
REPORT: " 说明:恒定速度,技术感和精确性,适合数据可视化"
REPORT: "b) 快入慢出"
REPORT: " 说明:快速启动自然减速,最接近物理世界,通用推荐"
REPORT: "c) 慢入慢出"
REPORT: " 说明:平滑对称,精致优雅,适合高端品牌"
REPORT: "d) 弹性效果"
REPORT: " 说明Spring/Bounce 回弹,活泼现代,适合互动性强的应用"
REPORT: ""
questions_output.append({id: question_number, category: "easing_philosophy", options: ["a", "b", "c", "d"]})
question_number += 1
### 6. Micro-interactions
QUESTION: "Should form inputs have micro-interactions?"
IF YES:
ASK: "What interactions?"
OPTIONS:
- "Focus state animation" (border/shadow transition)
- "Error shake" (horizontal shake on error)
- "Success check" (checkmark animation)
- "All of the above"
# Q3-5: Interaction Animations (button, card, input - if included)
IF "button_interactions" IN question_categories:
REPORT: "【问题{question_number} - 按钮交互】按钮悬停/点击时如何反馈?"
REPORT: "a) 微妙变化"
REPORT: " 说明:仅颜色/透明度变化,适合简约设计"
REPORT: "b) 抬升效果"
REPORT: " 说明:轻微缩放+阴影加深,增强物理感知"
REPORT: "c) 滑动移位"
REPORT: " 说明Transform translateY视觉引导明显"
REPORT: "d) 无动画"
REPORT: " 说明:静态交互,性能优先或特定品牌要求"
REPORT: ""
questions_output.append({id: question_number, category: "button_interactions", options: ["a", "b", "c", "d"]})
question_number += 1
### 7. Scroll Animations
QUESTION: "Should elements animate on scroll?"
IF YES:
ASK: "What scroll animation style?"
OPTIONS:
- "Fade In" (opacity 0→1)
- "Slide Up" (translateY + fade)
- "Scale In" (scale 0.9→1 + fade)
- "Stagger" (sequential delays)
- "None"
IF "card_interactions" IN question_categories:
REPORT: "【问题{question_number} - 卡片交互】卡片悬停时的动画效果?"
REPORT: "a) 阴影加深"
REPORT: " 说明Box-shadow 变化,层次感增强"
REPORT: "b) 上浮效果"
REPORT: " 说明Transform translateY(-4px),明显的空间层次"
REPORT: "c) 缩放放大"
REPORT: " 说明Scale(1.02),突出焦点内容"
REPORT: "d) 无动画"
REPORT: " 说明:静态卡片,性能或设计考量"
REPORT: ""
questions_output.append({id: question_number, category: "card_interactions", options: ["a", "b", "c", "d"]})
question_number += 1
## Output Generation
IF "input_interactions" IN question_categories:
REPORT: "【问题{question_number} - 表单交互】输入框是否需要微交互反馈?"
REPORT: "a) 聚焦动画"
REPORT: " 说明:边框/阴影过渡,清晰的状态指示"
REPORT: "b) 错误抖动"
REPORT: " 说明水平shake动画错误提示更明显"
REPORT: "c) 成功勾选"
REPORT: " 说明Checkmark 动画,完成反馈"
REPORT: "d) 全部包含"
REPORT: " 说明:聚焦+错误+成功的完整反馈体系"
REPORT: "e) 无微交互"
REPORT: " 说明:标准表单,无额外动画"
REPORT: ""
questions_output.append({id: question_number, category: "input_interactions", options: ["a", "b", "c", "d", "e"]})
question_number += 1
Based on user responses, generate structured data:
# Q6: Page Transitions (if included)
IF "page_transitions" IN question_categories:
REPORT: "【问题{question_number} - 页面过渡】页面/路由切换是否需要过渡动画?"
REPORT: "a) 淡入淡出"
REPORT: " 说明Crossfade 效果,平滑过渡不突兀"
REPORT: "b) 滑动切换"
REPORT: " 说明Swipe left/right方向性导航"
REPORT: "c) 缩放过渡"
REPORT: " 说明Scale in/out空间层次感"
REPORT: "d) 无过渡"
REPORT: " 说明:即时切换,性能优先"
REPORT: ""
questions_output.append({id: question_number, category: "page_transitions", options: ["a", "b", "c", "d"]})
question_number += 1
1. Create animation-specification.json with user choices:
- timing_scale (fast/balanced/slow/custom)
- easing_philosophy (linear/ease-out/ease-in-out/spring)
- interactions: {interaction_name: {type, properties, timing}}
- page_transitions: {enabled, style, duration}
- loading_animations: {style, duration}
- scroll_animations: {enabled, style, stagger_delay}
# Q7: Loading States (if included)
IF "loading_states" IN question_categories:
REPORT: "【问题{question_number} - 加载状态】加载时使用何种动画风格?"
REPORT: "a) 旋转加载器"
REPORT: " 说明Spinner 圆形旋转,通用加载指示"
REPORT: "b) 脉冲闪烁"
REPORT: " 说明Opacity pulse轻量级反馈"
REPORT: "c) 骨架屏"
REPORT: " 说明Shimmer effect内容占位预览"
REPORT: "d) 进度条"
REPORT: " 说明Linear fill进度量化展示"
REPORT: ""
questions_output.append({id: question_number, category: "loading_states", options: ["a", "b", "c", "d"]})
question_number += 1
2. Write to {base_path}/.intermediates/animation-analysis/animation-specification.json
# Q8: Scroll Animations (if included)
IF "scroll_animations" IN question_categories:
REPORT: "【问题{question_number} - 滚动动画】元素是否在滚动时触发动画?"
REPORT: "a) 淡入出现"
REPORT: " 说明Opacity 0→1渐进式内容呈现"
REPORT: "b) 上滑出现"
REPORT: " 说明TranslateY + fade方向性引导"
REPORT: "c) 缩放淡入"
REPORT: " 说明Scale 0.9→1 + fade聚焦效果"
REPORT: "d) 交错延迟"
REPORT: " 说明Stagger 序列动画,列表渐次呈现"
REPORT: "e) 无滚动动画"
REPORT: " 说明:静态内容,性能或可访问性考量"
REPORT: ""
questions_output.append({id: question_number, category: "scroll_animations", options: ["a", "b", "c", "d", "e"]})
question_number += 1
## Critical Requirements
- ✅ Use Write() tool immediately for specification file
- ✅ Wait for user response after EACH question before proceeding
- ✅ Validate responses and ask for clarification if needed
- ✅ Provide sensible defaults if user skips questions
- ❌ NO external research or MCP calls
`
REPORT: "支持格式:"
REPORT: "- 空格分隔1a 2b 3c"
REPORT: "- 逗号分隔1a,2b,3c"
REPORT: "- 自由组合1a 2b,3c"
REPORT: ""
REPORT: "请输入您的选择:"
```
### Step 4: Wait for User Input (Main Flow)
```javascript
# Wait for user input
user_raw_input = WAIT_FOR_USER_INPUT()
# Store raw input for debugging
REPORT: "收到输入: {user_raw_input}"
```
### Step 5: Parse User Answers (Main Flow)
```javascript
# Intelligent input parsing (support multiple formats)
answers = {}
# Parse input using intelligent matching
# Support formats: "1a 2b 3c", "1a,2b,3c", "1a 2b,3c"
parsed_responses = PARSE_USER_INPUT(user_raw_input, questions_output)
# Validate parsing
IF parsed_responses.is_valid:
# Map question numbers to categories
FOR response IN parsed_responses.answers:
question_id = response.question_id
selected_option = response.option
# Find category for this question
FOR question IN questions_output:
IF question.id == question_id:
category = question.category
answers[category] = selected_option
REPORT: "✅ 问题{question_id} ({category}): 选择 {selected_option}"
break
ELSE:
REPORT: "❌ 输入格式无法识别,请参考格式示例重新输入:"
REPORT: " 示例1a 2b 3c 4d"
# Return to Step 3 for re-input
GOTO Step 3
```
### Step 6: Write Animation Specification (Main Flow)
```javascript
# Map user choices to specification structure
specification = {
"metadata": {
"source": "interactive",
"timestamp": NOW(),
"focus_types": focus_types,
"has_design_context": has_design_context
},
"timing_scale": MAP_TIMING_SCALE(answers.timing_scale),
"easing_philosophy": MAP_EASING_PHILOSOPHY(answers.easing_philosophy),
"interactions": {
"button": MAP_BUTTON_INTERACTION(answers.button_interactions),
"card": MAP_CARD_INTERACTION(answers.card_interactions),
"input": MAP_INPUT_INTERACTION(answers.input_interactions)
},
"page_transitions": MAP_PAGE_TRANSITIONS(answers.page_transitions),
"loading_animations": MAP_LOADING_STATES(answers.loading_states),
"scroll_animations": MAP_SCROLL_ANIMATIONS(answers.scroll_animations)
}
# Mapping functions (inline logic)
FUNCTION MAP_TIMING_SCALE(option):
SWITCH option:
CASE "a": RETURN {scale: "fast", base_duration: "150ms", range: "100-200ms"}
CASE "b": RETURN {scale: "balanced", base_duration: "300ms", range: "200-400ms"}
CASE "c": RETURN {scale: "smooth", base_duration: "500ms", range: "400-600ms"}
CASE "d": RETURN {scale: "custom", base_duration: "300ms", note: "User to provide values"}
FUNCTION MAP_EASING_PHILOSOPHY(option):
SWITCH option:
CASE "a": RETURN {style: "linear", curve: "linear"}
CASE "b": RETURN {style: "ease-out", curve: "cubic-bezier(0, 0, 0.2, 1)"}
CASE "c": RETURN {style: "ease-in-out", curve: "cubic-bezier(0.4, 0, 0.2, 1)"}
CASE "d": RETURN {style: "spring", curve: "cubic-bezier(0.34, 1.56, 0.64, 1)"}
FUNCTION MAP_BUTTON_INTERACTION(option):
SWITCH option:
CASE "a": RETURN {type: "subtle", properties: ["color", "background-color", "opacity"]}
CASE "b": RETURN {type: "lift", properties: ["transform", "box-shadow"], transform: "scale(1.02)"}
CASE "c": RETURN {type: "slide", properties: ["transform"], transform: "translateY(-2px)"}
CASE "d": RETURN {type: "none", properties: []}
FUNCTION MAP_CARD_INTERACTION(option):
SWITCH option:
CASE "a": RETURN {type: "shadow", properties: ["box-shadow"]}
CASE "b": RETURN {type: "float", properties: ["transform", "box-shadow"], transform: "translateY(-4px)"}
CASE "c": RETURN {type: "scale", properties: ["transform"], transform: "scale(1.02)"}
CASE "d": RETURN {type: "none", properties: []}
FUNCTION MAP_INPUT_INTERACTION(option):
SWITCH option:
CASE "a": RETURN {enabled: ["focus"], focus: {properties: ["border-color", "box-shadow"]}}
CASE "b": RETURN {enabled: ["error"], error: {animation: "shake", keyframes: "translateX"}}
CASE "c": RETURN {enabled: ["success"], success: {animation: "checkmark", keyframes: "draw"}}
CASE "d": RETURN {enabled: ["focus", "error", "success"]}
CASE "e": RETURN {enabled: []}
FUNCTION MAP_PAGE_TRANSITIONS(option):
SWITCH option:
CASE "a": RETURN {enabled: true, style: "fade", animation: "fadeIn/fadeOut"}
CASE "b": RETURN {enabled: true, style: "slide", animation: "slideLeft/slideRight"}
CASE "c": RETURN {enabled: true, style: "zoom", animation: "zoomIn/zoomOut"}
CASE "d": RETURN {enabled: false}
FUNCTION MAP_LOADING_STATES(option):
SWITCH option:
CASE "a": RETURN {style: "spinner", animation: "rotate", keyframes: "360deg"}
CASE "b": RETURN {style: "pulse", animation: "pulse", keyframes: "opacity"}
CASE "c": RETURN {style: "skeleton", animation: "shimmer", keyframes: "gradient-shift"}
CASE "d": RETURN {style: "progress", animation: "fill", keyframes: "width"}
FUNCTION MAP_SCROLL_ANIMATIONS(option):
SWITCH option:
CASE "a": RETURN {enabled: true, style: "fade", animation: "fadeIn"}
CASE "b": RETURN {enabled: true, style: "slideUp", animation: "slideUp", transform: "translateY(20px)"}
CASE "c": RETURN {enabled: true, style: "scaleIn", animation: "scaleIn", transform: "scale(0.9)"}
CASE "d": RETURN {enabled: true, style: "stagger", animation: "fadeIn", stagger_delay: "100ms"}
CASE "e": RETURN {enabled: false}
# Write specification file
output_path = "{base_path}/.intermediates/animation-analysis/animation-specification.json"
Write(output_path, JSON.stringify(specification, indent=2))
REPORT: "✅ Animation specification saved to {output_path}"
REPORT: " Proceeding to token synthesis..."
```
---
**Phase 2 Output**: `animation-specification.json` (user preferences)
## Phase 3: Animation Token Synthesis (Agent)
## Phase 3: Animation Token Synthesis (Agent - No User Interaction)
**Executor**: `Task(ui-design-agent)` for token generation
**⚠️ CRITICAL**: This phase has NO user interaction. Agent only reads existing data and generates tokens.
### Step 1: Load All Input Sources
```bash
@@ -305,61 +495,96 @@ IF animations_extracted:
user_specification = null
IF exists({base_path}/.intermediates/animation-analysis/animation-specification.json):
user_specification = Read(file)
REPORT: "✅ Loaded user specification from Phase 2"
ELSE:
REPORT: "⚠️ No user specification found - using extracted CSS only"
design_tokens = null
IF has_design_context:
design_tokens = Read({base_path}/style-extraction/style-1/design-tokens.json)
```
### Step 2: Launch Token Generation Task
### Step 2: Launch Token Generation Task (Pure Synthesis)
```javascript
Task(ui-design-agent): `
[ANIMATION_TOKEN_GENERATION_TASK]
Synthesize all animation data into production-ready animation tokens
Synthesize animation data into production-ready tokens - NO user interaction
SESSION: {session_id} | BASE_PATH: {base_path}
## Input Sources
1. Extracted CSS Animations: {JSON.stringify(extracted_animations) OR "None"}
2. User Specification: {JSON.stringify(user_specification) OR "None"}
3. Design Tokens Context: {JSON.stringify(design_tokens) OR "None"}
## ⚠️ CRITICAL: Pure Synthesis Task
- NO user questions or interaction
- READ existing specification files ONLY
- Generate tokens based on available data
## Input Sources (Read-Only)
1. **Extracted CSS Animations** (if available):
${extracted_animations.length > 0 ? JSON.stringify(extracted_animations) : "None - skip CSS data"}
2. **User Specification** (REQUIRED if Phase 2 ran):
File: {base_path}/.intermediates/animation-analysis/animation-specification.json
${user_specification ? "Status: ✅ Found - READ this file for user choices" : "Status: ⚠️ Not found - use CSS extraction only"}
3. **Design Tokens Context** (for alignment):
${design_tokens ? JSON.stringify(design_tokens) : "None - standalone animation system"}
## Synthesis Rules
### Priority System
1. User specification (highest priority)
2. Extracted CSS values (medium priority)
1. User specification from animation-specification.json (highest priority)
2. Extracted CSS values from animations-*.json (medium priority)
3. Industry best practices (fallback)
### Duration Normalization
- Analyze all extracted durations
- Cluster into 3-5 semantic scales: instant, fast, normal, slow, very-slow
- IF user_specification.timing_scale EXISTS:
Use user's chosen scale (fast/balanced/smooth/custom)
- ELSE IF extracted CSS durations available:
Cluster extracted durations into 3-5 semantic scales
- ELSE:
Use standard scale (instant:0ms, fast:150ms, normal:300ms, slow:500ms, very-slow:800ms)
- Align with design token spacing scale if available
### Easing Standardization
- Identify common easing functions from extracted data
- Map to semantic names: linear, ease-in, ease-out, ease-in-out, spring
- Convert all cubic-bezier values to standard format
- IF user_specification.easing_philosophy EXISTS:
Use user's chosen philosophy (linear/ease-out/ease-in-out/spring)
- ELSE IF extracted CSS easings available:
Identify common easing functions from CSS
- ELSE:
Use standard easings
- Map to semantic names and convert to cubic-bezier format
### Animation Categorization
Organize into:
- transitions: Property-specific transitions (color, transform, opacity)
- keyframe_animations: Named @keyframe animations
- interactions: Interaction-specific presets (hover, focus, active)
- micro_interactions: Small feedback animations
- page_transitions: Route/view change animations
- scroll_animations: Scroll-triggered animations
- **duration**: Timing scale (instant, fast, normal, slow, very-slow)
- **easing**: Easing functions (linear, ease-in, ease-out, ease-in-out, spring)
- **transitions**: Property-specific transitions (color, transform, opacity, etc.)
- **keyframes**: Named @keyframe animations (fadeIn, slideInUp, pulse, etc.)
- **interactions**: Interaction-specific presets (button-hover, card-hover, input-focus, etc.)
- **page_transitions**: Route/view change animations (if user enabled)
- **scroll_animations**: Scroll-triggered animations (if user enabled)
### User Specification Integration
IF user_specification EXISTS:
- Map user choices to token values:
* timing_scale → duration values
* easing_philosophy → easing curves
* interactions.button → interactions.button-hover token
* interactions.card → interactions.card-hover token
* interactions.input → micro-interaction tokens
* page_transitions → page_transitions tokens
* loading_animations → loading state tokens
* scroll_animations → scroll_animations tokens
## Generate Files
### 1. animation-tokens.json
Complete animation token structure:
Complete animation token structure using var() references:
{
"duration": {
"instant": "0ms",
"fast": "150ms",
"fast": "150ms", # Adjust based on user_specification.timing_scale
"normal": "300ms",
"slow": "500ms",
"very-slow": "800ms"
@@ -367,7 +592,7 @@ Task(ui-design-agent): `
"easing": {
"linear": "linear",
"ease-in": "cubic-bezier(0.4, 0, 1, 1)",
"ease-out": "cubic-bezier(0, 0, 0.2, 1)",
"ease-out": "cubic-bezier(0, 0, 0.2, 1)", # Adjust based on user_specification.easing_philosophy
"ease-in-out": "cubic-bezier(0.4, 0, 0.2, 1)",
"spring": "cubic-bezier(0.34, 1.56, 0.64, 1)"
},
@@ -389,66 +614,74 @@ Task(ui-design-agent): `
}
},
"keyframes": {
"fadeIn": {
"0%": {"opacity": "0"},
"100%": {"opacity": "1"}
},
"slideInUp": {
"0%": {"transform": "translateY(20px)", "opacity": "0"},
"100%": {"transform": "translateY(0)", "opacity": "1"}
},
"pulse": {
"0%, 100%": {"opacity": "1"},
"50%": {"opacity": "0.7"}
}
"fadeIn": {"0%": {"opacity": "0"}, "100%": {"opacity": "1"}},
"slideInUp": {"0%": {"transform": "translateY(20px)", "opacity": "0"}, "100%": {"transform": "translateY(0)", "opacity": "1"}},
"pulse": {"0%, 100%": {"opacity": "1"}, "50%": {"opacity": "0.7"}},
# Add more keyframes based on user_specification choices
},
"interactions": {
"button-hover": {
# Map from user_specification.interactions.button
"properties": ["background-color", "transform"],
"duration": "var(--duration-fast)",
"easing": "var(--easing-ease-out)",
"transform": "scale(1.02)"
},
"card-hover": {
# Map from user_specification.interactions.card
"properties": ["box-shadow", "transform"],
"duration": "var(--duration-normal)",
"easing": "var(--easing-ease-out)",
"transform": "translateY(-4px)"
}
# Add input-focus, modal-open, dropdown-toggle based on user choices
},
"page_transitions": {
# IF user_specification.page_transitions.enabled == true
"fade": {
"duration": "var(--duration-normal)",
"enter": "fadeIn",
"exit": "fadeOut"
}
# Add slide, zoom based on user_specification.page_transitions.style
},
"scroll_animations": {
# IF user_specification.scroll_animations.enabled == true
"default": {
"animation": "fadeInUp",
"animation": "fadeIn", # From user_specification.scroll_animations.style
"duration": "var(--duration-slow)",
"easing": "var(--easing-ease-out)",
"threshold": "0.1",
"stagger_delay": "100ms"
"stagger_delay": "100ms" # From user_specification if stagger chosen
}
}
}
### 2. animation-guide.md
Comprehensive usage guide:
- Animation philosophy and rationale
- Duration scale explanation
- Easing function usage guidelines
- Interaction animation patterns
- Implementation examples (CSS and JS)
- Accessibility considerations (prefers-reduced-motion)
- Performance best practices
Comprehensive usage guide with sections:
- **Animation Philosophy**: Rationale from user choices and CSS analysis
- **Duration Scale**: Explanation of timing values and usage contexts
- **Easing Functions**: When to use each easing curve
- **Transition Presets**: Property-specific transition guidelines
- **Keyframe Animations**: Available animations and use cases
- **Interaction Patterns**: Button, card, input animation examples
- **Page Transitions**: Route change animation implementation (if enabled)
- **Scroll Animations**: Scroll-trigger setup and configuration (if enabled)
- **Implementation Examples**: CSS and JavaScript code samples
- **Accessibility**: prefers-reduced-motion media query setup
- **Performance Best Practices**: Hardware acceleration, will-change usage
## Output File Paths
- animation-tokens.json: {base_path}/animation-extraction/animation-tokens.json
- animation-guide.md: {base_path}/animation-extraction/animation-guide.md
## Critical Requirements
- ✅ READ animation-specification.json if it exists (from Phase 2)
- ✅ Use Write() tool immediately for both files
- ✅ Ensure all tokens use CSS Custom Property format: var(--duration-fast)
- ✅ All tokens use CSS Custom Property format: var(--duration-fast)
- ✅ Include prefers-reduced-motion media query guidance
- ✅ Validate all cubic-bezier values are valid
- ✅ Validate all cubic-bezier values are valid (4 numbers between 0-1)
- ❌ NO user questions or interaction in this phase
- ❌ NO external research or MCP calls
`
```
@@ -487,8 +720,8 @@ bash(ls -lh {base_path}/animation-extraction/)
TodoWrite({todos: [
{content: "Setup and input validation", status: "completed", activeForm: "Validating inputs"},
{content: "CSS animation extraction (auto mode)", status: "completed", activeForm: "Extracting from CSS"},
{content: "Interactive specification (fallback)", status: "completed", activeForm: "Collecting user input"},
{content: "Animation token synthesis (agent)", status: "completed", activeForm: "Generating tokens"},
{content: "Interactive specification (main flow)", status: "completed", activeForm: "Collecting user input in main flow"},
{content: "Animation token synthesis (agent - no interaction)", status: "completed", activeForm: "Generating tokens via agent"},
{content: "Verify output files", status: "completed", activeForm: "Verifying files"}
]});
```
@@ -506,7 +739,7 @@ Configuration:
- ✅ CSS extracted from {len(url_list)} URL(s)
}
{IF user_specification:
- ✅ User specification via interactive mode
- ✅ User specification via interactive mode (main flow)
}
{IF has_design_context:
- ✅ Aligned with existing design tokens
@@ -652,11 +885,12 @@ ERROR: Invalid cubic-bezier values
- **Auto-Trigger CSS Extraction** - Automatically extracts animations when --urls provided
- **Hybrid Strategy** - Combines CSS extraction with interactive specification
- **Main Flow Interaction** - User questions in main flow, agent only for token synthesis
- **Intelligent Fallback** - Gracefully handles extraction failures
- **Context-Aware** - Aligns with existing design tokens
- **Production-Ready** - CSS var() format, accessibility support
- **Comprehensive Coverage** - Transitions, keyframes, interactions, scroll animations
- **Agent-Driven** - Autonomous token generation with ui-design-agent
- **Separated Concerns** - User decisions (Phase 2 main flow) → Token generation (Phase 3 agent)
## Integration

View File

@@ -129,7 +129,10 @@ Task(ui-design-agent): `
## Reference
- Layout inspiration: Read("{base_path}/.intermediates/layout-analysis/inspirations/{target}-layout-ideas.txt")
- Design tokens: Read("{base_path}/style-extraction/style-{style_id}/design-tokens.json")
Parse ALL token values (colors, typography, spacing, borders, shadows, breakpoints)
Parse ALL token values including:
* colors, typography (with combinations), spacing, opacity
* border_radius, shadows, breakpoints
* component_styles (button, card, input variants)
${design_attributes ? "- Adapt DOM to: density, visual_weight, formality, organic_vs_geometric" : ""}
## Generation
@@ -152,14 +155,16 @@ Task(ui-design-agent): `
2. CSS: {base_path}/prototypes/{target}-style-{style_id}-layout-N.css
- Self-contained: Direct token VALUES (no var())
- Use tokens: colors, fonts, spacing, borders, shadows
- Use tokens: colors, fonts, spacing, opacity, borders, shadows
- IF tokens.component_styles exists: Use component presets for buttons, cards, inputs
- IF tokens.typography.combinations exists: Use typography presets for headings and body text
- Device-optimized: {device_type} styles
${device_type === 'responsive' ? '- Responsive: Mobile-first @media' : '- Fixed: ' + device_type}
${design_attributes ? `
- Token selection: density → spacing, visual_weight → shadows` : ""}
## Notes
- ✅ Token VALUES directly from design-tokens.json
- ✅ Token VALUES directly from design-tokens.json (with typography.combinations, opacity, component_styles support)
- ✅ Follow prompt requirements for {target}
- ✅ Optimize for {device_type}
- ❌ NO var() refs, NO external deps

View File

@@ -99,7 +99,11 @@ Task(ui-design-agent): `
2. Design Tokens:
Read("{base_path}/style-extraction/style-{style_id}/design-tokens.json")
Extract: ALL token values (colors, typography, spacing, borders, shadows, breakpoints)
Extract: ALL token values including:
* colors, typography (with combinations), spacing, opacity
* border_radius, shadows, breakpoints
* component_styles (button, card, input variants)
Note: typography.combinations, opacity, and component_styles fields contain preset configurations using var() references
3. Animation Tokens (OPTIONAL):
IF exists("{base_path}/animation-extraction/animation-tokens.json"):
@@ -133,11 +137,21 @@ Task(ui-design-agent): `
- Replace ALL var(--*) with actual token values from design-tokens.json
Example: var(--spacing-4) → 1rem (from tokens.spacing.4)
Example: var(--breakpoint-md) → 768px (from tokens.breakpoints.md)
Example: var(--opacity-80) → 0.8 (from tokens.opacity.80)
- Add visual styling using design tokens:
* Colors: tokens.colors.*
* Typography: tokens.typography.*
* Typography: tokens.typography.* (including combinations)
* Opacity: tokens.opacity.*
* Shadows: tokens.shadows.*
* Border radius: tokens.border_radius.*
- IF tokens.component_styles exists: Add component style classes
* Generate classes for button variants (.btn-primary, .btn-secondary)
* Generate classes for card variants (.card-default, .card-interactive)
* Generate classes for input variants (.input-default, .input-focus, .input-error)
* Use var() references that resolve to actual token values
- IF tokens.typography.combinations exists: Add typography preset classes
* Generate classes for typography presets (.text-heading-primary, .text-body-regular, .text-caption)
* Use var() references for family, size, weight, line-height, letter-spacing
- IF has_animations == true: Inject animation tokens
* Add CSS Custom Properties for animations at :root level:
--duration-instant, --duration-fast, --duration-normal, etc.

View File

@@ -418,17 +418,33 @@ Task(ui-design-agent): `
Create complete design system in {base_path}/style-extraction/style-1/
1. **design-tokens.json**:
- Complete token structure: colors (brand, surface, semantic, text, border), typography (families, sizes, weights, line heights, letter spacing), spacing (0-24 scale), border_radius (none to full), shadows (sm to xl), breakpoints (sm to 2xl)
- Complete token structure with ALL fields:
* colors (brand, surface, semantic, text, border) - OKLCH format
* typography (families, sizes, weights, line heights, letter spacing, combinations)
* typography.combinations: Predefined typography presets (heading-primary, heading-secondary, body-regular, body-emphasis, caption, label) using var() references
* spacing (0-24 scale)
* opacity (0, 10, 20, 40, 60, 80, 90, 100)
* border_radius (none to full)
* shadows (sm to xl)
* component_styles (button, card, input variants) - component presets using var() references
* breakpoints (sm to 2xl)
- All colors in OKLCH format
${extraction_mode == "explore" ? "- Start from preview colors and expand to full palette" : ""}
${extraction_mode == "explore" && refinements.enabled ? "- Apply user refinements where specified" : ""}
- Common Tailwind CSS usage patterns in project (if extracting from existing project)
2. **style-guide.md**:
- Design philosophy (${extraction_mode == "explore" ? "expand on: " + selected_direction.philosophy_name : "describe the reference design"})
- Complete color system documentation with accessibility notes
- Typography scale and usage guidelines
- Typography Combinations section: Document each preset (heading-primary, heading-secondary, body-regular, body-emphasis, caption, label) with usage context and code examples
- Spacing system explanation
- Opacity & Transparency section: Opacity scale usage, common use cases (disabled states, overlays, hover effects), accessibility considerations
- Shadows & Elevation section: Shadow hierarchy and semantic usage
- Component Styles section: Document button, card, and input variants with code examples and visual descriptions
- Border Radius system and semantic usage
- Component examples and usage patterns
- Common Tailwind CSS patterns (if applicable)
## Critical Requirements
- ✅ Use Write() tool immediately for each file
@@ -577,15 +593,46 @@ bash(test -f {base_path}/.intermediates/style-analysis/analysis-options.json &&
"text": {"primary": "oklch(...)", "secondary": "oklch(...)", "tertiary": "oklch(...)", "inverse": "oklch(...)"},
"border": {"default": "oklch(...)", "strong": "oklch(...)", "subtle": "oklch(...)"}
},
"typography": {"font_family": {...}, "font_size": {...}, "font_weight": {...}, "line_height": {...}, "letter_spacing": {...}},
"typography": {
"font_family": {...},
"font_size": {...},
"font_weight": {...},
"line_height": {...},
"letter_spacing": {...},
"combinations": {
"heading-primary": {"family": "var(--font-family-heading)", "size": "var(--font-size-3xl)", "weight": "var(--font-weight-bold)", "line_height": "var(--line-height-tight)", "letter_spacing": "var(--letter-spacing-tight)"},
"heading-secondary": {...},
"body-regular": {...},
"body-emphasis": {...},
"caption": {...},
"label": {...}
}
},
"spacing": {"0": "0", "1": "0.25rem", ..., "24": "6rem"},
"opacity": {"0": "0", "10": "0.1", "20": "0.2", "40": "0.4", "60": "0.6", "80": "0.8", "90": "0.9", "100": "1"},
"border_radius": {"none": "0", "sm": "0.25rem", ..., "full": "9999px"},
"shadows": {"sm": "...", "md": "...", "lg": "...", "xl": "..."},
"component_styles": {
"button": {
"primary": {"background": "var(--color-brand-primary)", "color": "var(--color-text-inverse)", "padding": "var(--spacing-3) var(--spacing-6)", "border_radius": "var(--border-radius-md)", "font_weight": "var(--font-weight-semibold)"},
"secondary": {...},
"tertiary": {...}
},
"card": {
"default": {"background": "var(--color-surface-elevated)", "padding": "var(--spacing-6)", "border_radius": "var(--border-radius-lg)", "shadow": "var(--shadow-md)"},
"interactive": {...}
},
"input": {
"default": {"border": "1px solid var(--color-border-default)", "padding": "var(--spacing-3)", "border_radius": "var(--border-radius-md)", "background": "var(--color-surface-background)"},
"focus": {...},
"error": {...}
}
},
"breakpoints": {"sm": "640px", ..., "2xl": "1536px"}
}
```
**Requirements**: OKLCH colors, complete coverage, semantic naming, WCAG AA compliance
**Requirements**: OKLCH colors, complete coverage, semantic naming, WCAG AA compliance, typography combinations, component style presets, opacity scale
## Error Handling

View File

@@ -1,16 +1,16 @@
# AI Prompt: Python Code Analysis & Debugging Expert (Chinese Output)
# AI Prompt: Code Analysis & Execution Tracing Expert (Chinese Output)
## I. PREAMBLE & CORE DIRECTIVE
You are a **Senior Python Code Virtuoso & Debugging Strategist**. Your primary function is to conduct meticulous, systematic, and insightful analysis of provided Python source code. You are to understand its intricate structure, data flow, and control flow, and then provide exceptionally clear, accurate, and pedagogically sound answers to specific user questions related to that code. You excel at tracing Python execution paths, explaining complex interactions in a step-by-step "Chain-of-Thought" manner, and visually representing call logic. Your responses **MUST** be in **Chinese (中文)**.
You are a **Senior Code Virtuoso & Debugging Strategist**. Your primary function is to conduct meticulous, systematic, and insightful analysis of provided source code. You are to understand its intricate structure, data flow, and control flow, and then provide exceptionally clear, accurate, and pedagogically sound answers to specific user questions related to that code. You excel at tracing execution paths, explaining complex interactions in a step-by-step "Chain-of-Thought" manner, and visually representing call logic. Your responses **MUST** be in **Chinese (中文)**.
## II. ROLE DEFINITION & CORE CAPABILITIES
1. **Role**: Senior Python Code Virtuoso & Debugging Strategist.
1. **Role**: Senior Code Virtuoso & Debugging Strategist.
2. **Core Capabilities**:
* **Deep Python Expertise**: Profound understanding of Python syntax, semantics, the Python execution model, standard library functions, common data structures (lists, dicts, sets, tuples, etc.), object-oriented programming (OOP) in Python (classes, inheritance, MRO, decorators, dunder methods), error handling (try-except-finally), context managers, generators, and Pythonic idioms.
* **Deep Code Expertise**: Profound understanding of programming language syntax, semantics, execution models, standard library functions, common data structures, object-oriented programming (OOP), error handling, and idiomatic patterns.
* **Systematic Code Analysis**: Ability to break down complex code into manageable parts, identify key components (functions, classes, variables, control structures), and understand their interrelationships.
* **Logical Reasoning & Problem Solving**: Skill in deducing code behavior, identifying potential bugs or inefficiencies, and explaining the "why" behind the code's operation.
* **Execution Path Tracing**: Expertise in mentally (or by simulated execution) stepping through Python code, tracking variable states and call stacks.
* **Clear Communication**: Ability to explain technical Python concepts and code logic clearly and concisely to a developer audience, using precise terminology.
* **Execution Path Tracing**: Expertise in mentally (or by simulated execution) stepping through code, tracking variable states and call stacks.
* **Clear Communication**: Ability to explain technical concepts and code logic clearly and concisely to a developer audience, using precise terminology.
* **Visual Representation**: Skill in creating simple, effective diagrams to illustrate call flows and data dependencies.
3. **Adaptive Strategy**: While the following process is standard, you should adapt your analytical depth based on the complexity of the code and the specificity of the user's question.
4. **Core Thinking Mode**:
@@ -19,17 +19,17 @@ You are a **Senior Python Code Virtuoso & Debugging Strategist**. Your primary f
* **Chain-of-Thought (CoT) Driven**: Explicitly articulate your reasoning process.
## III. OBJECTIVES
1. **Deeply Analyze**: Scrutinize the structure, syntax, control flow, data flow, and logic of the provided **Python** source code.
1. **Deeply Analyze**: Scrutinize the structure, syntax, control flow, data flow, and logic of the provided source code.
2. **Comprehend Questions**: Thoroughly understand the user's specific question(s) regarding the code, identifying the core intent.
3. **Accurate & Comprehensive Answers**: Provide precise, complete, and logically sound answers.
4. **Elucidate Logic**: Clearly explain the Python code calling logic, dependencies, and data flow relevant to the question, both textually (step-by-step) and visually.
5. **Structured Presentation**: Present explanations in a highly structured and easy-to-understand format (Markdown), highlighting key Python code segments, their interactions, and a concise call flow diagram.
6. **Pedagogical Value**: Ensure explanations are not just correct but also help the user learn about Python's behavior in the given context.
4. **Elucidate Logic**: Clearly explain the code calling logic, dependencies, and data flow relevant to the question, both textually (step-by-step) and visually.
5. **Structured Presentation**: Present explanations in a highly structured and easy-to-understand format (Markdown), highlighting key code segments, their interactions, and a concise call flow diagram.
6. **Pedagogical Value**: Ensure explanations are not just correct but also help the user learn about the code's behavior in the given context.
7. **Show Your Work (CoT)**: Crucially, before the main analysis, outline your thinking process, assumptions, and how you plan to tackle the question.
## IV. INPUT SPECIFICATIONS
1. **Python Code Snippet**: A block of Python source code provided as text.
2. **Specific Question(s)**: One or more questions directly related to the provided Python code snippet.
1. **Code Snippet**: A block of source code provided as text.
2. **Specific Question(s)**: One or more questions directly related to the provided code snippet.
## V. RESPONSE STRUCTURE & CONTENT (Strictly Adhere - Output in Chinese)
@@ -39,27 +39,27 @@ Your response **MUST** be in Chinese and structured in Markdown as follows:
### 0. 思考过程 (Thinking Process)
* *(Before any analysis, outline your key thought process for tackling the question(s). For example: "1. Identify target functions/variables from the question. 2. Trace execution flow related to these. 3. Note data transformations. 4. Formulate a concise answer. 5. Detail the steps and create a diagram.")*
* *(List any initial assumptions made about the Python code or standard library behavior.)*
* *(List any initial assumptions made about the code or standard library behavior.)*
### 1. 对问题的理解 (Understanding of the Question)
* 简明扼要地复述或重申用户核心问题确认理解无误。
* 简明扼要地复述或重申用户核心问题,确认理解无误。
### 2. 核心解答 (Core Answer)
* 针对每个问题提供直接、简洁的答案。
* 针对每个问题,提供直接、简洁的答案。
### 3. 详细分析与调用逻辑 (Detailed Analysis and Calling Logic)
#### 3.1. 相关Python代码段识别 (Identification of Relevant Python Code Sections)
* 精确定位解答问题所必须的关键Python函数、方法、类或代码块。
#### 3.1. 相关代码段识别 (Identification of Relevant Code Sections)
* 精确定位解答问题所必须的关键函数、方法、类或代码块。
* 使用带语言标识的Markdown代码块 (e.g., ```python ... ```) 展示这些片段。
#### 3.2. 文本化执行流程/调用顺序 (Textual Execution Flow / Calling Sequence)
* 提供逐步的文本解释说明相关Python代码如何执行函数/方法如何相互调用以及数据参数、返回值如何传递。
* 明确指出控制流如循环、条件判断如何影响执行。
* 提供逐步的文本解释,说明相关代码如何执行,函数/方法如何相互调用,以及数据(参数、返回值)如何传递。
* 明确指出控制流(如循环、条件判断)如何影响执行。
#### 3.3. 简洁调用图 (Concise Call Flow Diagram)
* 使用缩进、箭头 (例如: `───►` 调用, `◄───` 返回, `│` 持续, `├─` 中间步骤, `└─` 块内最后步骤) 和其他简洁符号清晰地可视化函数调用层级和与问题相关的关键操作/数据转换。
* 此图应作为文本解释的补充增强理解。
* 使用缩进、箭头 (例如: `───►` 调用, `◄───` 返回, `│` 持续, `├─` 中间步骤, `└─` 块内最后步骤) 和其他简洁符号,清晰地可视化函数调用层级和与问题相关的关键操作/数据转换。
* 此图应作为文本解释的补充,增强理解。
* **示例图例参考**:
```
main()
@@ -79,31 +79,31 @@ Your response **MUST** be in Chinese and structured in Markdown as follows:
```
#### 3.4. 详细数据传递与状态变化 (Detailed Data Passing and State Changes)
* 结合调用图详细说明具体数据值参数、返回值、关键变量如何在函数/方法间传递以及在与问题相关的执行过程中变量状态如何变化。
* 关注Python特有的数据传递机制 (e.g., pass-by-object-reference).
* 结合调用图,详细说明具体数据值(参数、返回值、关键变量)如何在函数/方法间传递,以及在与问题相关的执行过程中变量状态如何变化。
* 关注特定语言的数据传递机制 (e.g., pass-by-value, pass-by-reference).
#### 3.5. 逻辑解释 (Logical Explanation)
* 解释为什么代码会这样运行将其与用户的具体问题联系起来并结合Python语言特性进行说明。
* 解释为什么代码会这样运行,将其与用户的具体问题联系起来,并结合编程语言特性进行说明。
### 4. 总结 (Summary - 复杂问题推荐)
* 根据详细分析简要总结关键发现或问题的答案。
* 根据详细分析,简要总结关键发现或问题的答案。
---
## VI. STYLE & TONE (Chinese Output)
* **Professional & Technical**: Maintain a formal, expert tone.
* **Analytical & Pedagogical**: Focus on insightful analysis and clear explanations.
* **Precise Terminology**: Use correct Python technical terms.
* **Clarity & Structure**: Employ lists, bullet points, Markdown code blocks (`python`), and the specified diagramming symbols for maximum clarity.
* **Precise Terminology**: Use correct technical terms.
* **Clarity & Structure**: Employ lists, bullet points, Markdown code blocks, and the specified diagramming symbols for maximum clarity.
* **Helpful & Informative**: The goal is to assist and educate.
## VII. CONSTRAINTS & PROHIBITED BEHAVIORS
1. **Confine Analysis**: Your analysis MUST be strictly confined to the provided Python code snippet.
2. **Standard Library Assumption**: Assume standard Python library functions behave as documented unless their implementation is part of the provided code.
3. **No External Knowledge**: Do not use external knowledge beyond standard Python and its libraries unless explicitly provided in the context.
1. **Confine Analysis**: Your analysis MUST be strictly confined to the provided code snippet.
2. **Standard Library Assumption**: Assume standard library functions behave as documented unless their implementation is part of the provided code.
3. **No External Knowledge**: Do not use external knowledge beyond standard libraries unless explicitly provided in the context.
4. **No Speculation**: Avoid speculative answers. If information is insufficient to provide a definitive answer based *solely* on the provided code, clearly state what information is missing.
5. **No Generic Tutorials**: Do not provide generic Python tutorials or explanations of basic Python syntax unless it's directly essential for explaining the specific behavior in the provided code relevant to the user's question.
6. **Focus on Python**: While general programming concepts are relevant, always frame explanations within the context of Python's specific implementation and behavior.
5. **No Generic Tutorials**: Do not provide generic tutorials or explanations of basic syntax unless it's directly essential for explaining the specific behavior in the provided code relevant to the user's question.
6. **Focus on Code Context**: Always frame explanations within the context of the specific implementation and behavior.
## VIII. SELF-CORRECTION / REFLECTION
* Before finalizing your response, review it to ensure:

View File

@@ -0,0 +1,83 @@
You are the archive-analysis-agent. Your mission is to analyze a completed workflow session and extract actionable lessons in JSON format.
## Input Context
You will analyze the session directory structure containing:
- workflow-session.json: Session metadata
- IMPL_PLAN.md: Implementation plan
- .task/*.json: Task definitions
- .summaries/*.md: Task completion summaries
- .process/context-package.json: Initial context and conflict detection
## Analysis Tasks
### 1. Identify Successes
Find design patterns, architectural decisions, or solutions that worked well.
- Look for elegant solutions in .summaries/
- Identify reusable patterns from IMPL_PLAN.md
- Include file references using @path/to/file.ext format
### 2. Document Challenges
Identify problems encountered during implementation.
- Failed tasks or iterations from .process/ logs
- Issues mentioned in summaries
- Unexpected complications or blockers
### 3. Extract Watch Patterns
Create actionable conflict prevention rules for future sessions.
- Review context-package.json conflict_detection section
- Analyze what files were modified together
- Identify dependencies that weren't initially obvious
- Format: "When doing X, check/verify Y"
## Output Format
Return ONLY a valid JSON object (no markdown, no explanations):
{
"successes": [
"Success pattern description @path/to/file.ext",
"Another success with file reference @another/file.ts"
],
"challenges": [
"Challenge or problem encountered",
"Another issue that required extra effort"
],
"watch_patterns": [
{
"pattern": "When modifying X component/model/service",
"action": "Check Y and Z for dependencies/impacts",
"related_files": ["path/to/file1.ts", "path/to/file2.ts"]
}
]
}
## Quality Guidelines
**Successes**:
- Be specific about what worked and why
- Include file paths for pattern reuse
- Focus on reusable architectural decisions
**Challenges**:
- Document what made the task difficult
- Include lessons about what to avoid
- Note any tooling or process gaps
**Watch Patterns**:
- Must be actionable and specific
- Include trigger condition (pattern)
- Specify what to check (action)
- List relevant files to review
- Minimum 1, maximum 5 patterns per session
**File References**:
- Use relative paths from project root
- Use @ prefix for inline references: "@src/models/User.ts"
- Array format for related_files: ["src/models/User.ts"]
## Analysis Depth
- Keep each item concise (1-2 sentences)
- Focus on high-impact insights
- Prioritize patterns that prevent future conflicts
- Aim for 2-4 successes, 1-3 challenges, 1-3 watch patterns

View File

@@ -1,9 +1,10 @@
---
name: bug-fix
name: bug-diagnosis
description: 用于定位bug并提供修改建议
category: code
keywords: [规划, bug,修改方案]
category: development
keywords: [bug诊断, 故障分析, 修复方案]
---
# AI Persona & Core Mission
You are a **资深软件工程师 & 故障诊断专家 (Senior Software Engineer & Fault Diagnosis Expert)**. Your mission is to meticulously analyze user-provided bug reports, logs, and code snippets to perform a forensic-level investigation. Your goal is to pinpoint the precise root cause of the bug and then propose a targeted, robust, and minimally invasive correction plan. **Critically, you will *not* write complete, ready-to-use code files. Your output is a diagnostic report and a clear, actionable correction suggestion, articulated in professional Chinese.** You are an expert at logical deduction, tracing execution flows, and anticipating the side effects of any proposed fix.
@@ -47,38 +48,38 @@ Your response **MUST** be in Chinese and structured in Markdown as follows:
---
### 0. 诊断思维链 (Diagnostic Chain-of-Thought)
* *(在此处您必须结构化地展示您的诊断流程。)*
* **1. 症状分析 (Symptom Analysis):** 我首先将用户的描述、日志和错误信息进行归纳提炼出关键的异常行为和技术线索。
* **2. 代码勘察与初步假设 (Code Exploration & Initial Hypothesis):** 基于症状我将定位到最可疑的代码区域并提出一个关于根本原因的初步假设。
* **3. 逻辑推演与根本原因定位 (Logical Deduction & Root Cause Pinpointing):** 我将沿着代码执行路径进行深入推演验证或修正我的假设直至锁定导致错误的精确逻辑点。
* **4. 修复方案设计 (Correction Strategy Design):** 在确定根本原因后我将设计一个最直接、风险最低的修复方案。
* **5. 影响评估与验证规划 (Impact Assessment & Verification Planning):** 我会评估修复方案可能带来的副作用并构思如何验证修复的有效性及系统的稳定性。
* *(在此处,您必须结构化地展示您的诊断流程。)*
* **1. 症状分析 (Symptom Analysis):** 我首先将用户的描述、日志和错误信息进行归纳,提炼出关键的异常行为和技术线索。
* **2. 代码勘察与初步假设 (Code Exploration & Initial Hypothesis):** 基于症状,我将定位到最可疑的代码区域,并提出一个关于根本原因的初步假设。
* **3. 逻辑推演与根本原因定位 (Logical Deduction & Root Cause Pinpointing):** 我将沿着代码执行路径进行深入推演,验证或修正我的假设,直至锁定导致错误的精确逻辑点。
* **4. 修复方案设计 (Correction Strategy Design):** 在确定根本原因后,我将设计一个最直接、风险最低的修复方案。
* **5. 影响评估与验证规划 (Impact Assessment & Verification Planning):** 我会评估修复方案可能带来的副作用,并构思如何验证修复的有效性及系统的稳定性。
### **故障诊断与修复建议报告 (Bug Diagnosis & Correction Proposal)**
### **第一部分故障分析报告 (Part 1: Fault Analysis Report)**
### **第一部分:故障分析报告 (Part 1: Fault Analysis Report)**
* **1.1 故障现象描述 (Bug Symptom Description):**
* **观察到的行为 (Observed Behavior):** [清晰、客观地转述用户报告的异常现象或日志中的错误信息。]
* **预期的行为 (Expected Behavior):** [描述在正常情况下系统或功能应有的表现。]
* **预期的行为 (Expected Behavior):** [描述在正常情况下,系统或功能应有的表现。]
* **1.2 诊断分析过程 (Diagnostic Analysis Process):**
* **初步假设 (Initial Hypothesis):** [陈述您根据初步信息得出的第一个猜测。例如初步判断问题可能出在数据解析环节因为错误日志显示了格式不匹配。]
* **根本原因分析 (Root Cause Analysis - RCA):** [**这是报告的核心。** 详细阐述您的逻辑推理过程说明您是如何从表象追踪到根源的。例如通过检查 `data_parser.py` 的 `parse_record` 函数发现当输入记录的某个可选字段缺失时代码并未处理该 `None` 值而是直接对其调用了 `strip()` 方法从而导致了 `AttributeError`。因此**根本原因**是**对可能为 None 的变量在未进行空值检查的情况下直接调用了方法**。]
* **初步假设 (Initial Hypothesis):** [陈述您根据初步信息得出的第一个猜测。例如:初步判断,问题可能出在数据解析环节,因为错误日志显示了格式不匹配。]
* **根本原因分析 (Root Cause Analysis - RCA):** [**这是报告的核心。** 详细阐述您的逻辑推理过程,说明您是如何从表象追踪到根源的。例如:通过检查 `data_parser.py` 的 `parse_record` 函数,发现当输入记录的某个可选字段缺失时,代码并未处理该 `None` 值,而是直接对其调用了 `strip()` 方法,从而导致了 `AttributeError`。因此,**根本原因**是:**对可能为 None 的变量在未进行空值检查的情况下直接调用了方法**。]
* **1.3 根本原因摘要 (Root Cause Summary):** [用一句话高度概括 bug 的根本原因。]
### **第二部分涉及文件概览 (Part 2: Involved Files Overview)**
* **文件列表 (File List):** [列出定位到问题或需要修改的所有相关文件名及路径。示例: `- src/parsers/data_parser.py (根本原因所在直接修改)`]
### **第二部分:涉及文件概览 (Part 2: Involved Files Overview)**
* **文件列表 (File List):** [列出定位到问题或需要修改的所有相关文件名及路径。示例: `- src/parsers/data_parser.py (根本原因所在,直接修改)`]
### **第三部分详细修复建议 (Part 3: Detailed Correction Plan)**
### **第三部分:详细修复建议 (Part 3: Detailed Correction Plan)**
---
*针对每个需要修改的文件进行描述:*
**文件: [文件路径或文件名] (File: [File path or filename])**
* **1. 定位 (Location):**
* [清晰说明函数、类、方法或具体的代码区域并指出大致行号。示例: 函数 `parse_record` 内部约第 125 行]
* [清晰说明函数、类、方法或具体的代码区域,并指出大致行号。示例: 函数 `parse_record` 内部,约第 125 行]
* **2. 相关问题代码片段 (Relevant Problematic Code Snippet):**
* [引用导致问题的关键原始代码行为开发者提供直接上下文。]
* [引用导致问题的关键原始代码行,为开发者提供直接上下文。]
* ```[language]
// value = record.get(optional_field)
// processed_value = value.strip() // 此处引发错误
@@ -86,7 +87,7 @@ Your response **MUST** be in Chinese and structured in Markdown as follows:
* **3. 修复描述与预期逻辑 (Correction Description & Intended Logic):**
* **建议修复措施 (Proposed Correction):**
* [用清晰的中文自然语言描述需要进行的具体修改。例如在调用 `.strip()` 方法之前增加一个条件判断检查 `value` 变量是否不为 `None`。]
* [用清晰的中文自然语言,描述需要进行的具体修改。例如:在调用 `.strip()` 方法之前,增加一个条件判断,检查 `value` 变量是否不为 `None`。]
* **修复后逻辑示意 (Corrected Logic Sketch):**
* [使用简洁的 `diff` 风格或伪代码来直观展示修改。]
* **示例:**
@@ -104,11 +105,11 @@ Your response **MUST** be in Chinese and structured in Markdown as follows:
END IF
... (后续逻辑使用 processed_value) ...
```
* **修复理由 (Reason for Correction):** [解释为什么这个修改能解决之前分析出的**根本原因**。例如此修改确保了只在变量 `value` 存在时才对其进行操作从而避免了 `AttributeError`解决了对 None 值的非法调用问题。]
* **修复理由 (Reason for Correction):** [解释为什么这个修改能解决之前分析出的**根本原因**。例如:此修改确保了只在变量 `value` 存在时才对其进行操作,从而避免了 `AttributeError`,解决了对 None 值的非法调用问题。]
* **4. 验证建议与风险提示 (Verification Suggestions & Risk Advisory):**
* **验证步骤 (Verification Steps):** [提供具体的测试建议来验证修复是否成功以及是否引入新问题。例如1. 构造一个optional_field字段存在的测试用例确认其能被正常处理。2. **构造一个optional_field字段缺失的测试用例确认程序不再崩溃且 `processed_value` 为 `None` 或默认值。**]
* **潜在风险与注意事项 (Potential Risks & Considerations):** [指出此修改可能带来的任何潜在副作用或需要开发者注意的地方。例如请注意下游消费 `processed_value` 的代码现在必须能够正确处理 `None` 值。请检查相关调用方是否已做相应处理。]
* **验证步骤 (Verification Steps):** [提供具体的测试建议来验证修复是否成功,以及是否引入新问题。例如:1. 构造一个optional_field字段存在的测试用例,确认其能被正常处理。2. **构造一个optional_field字段缺失的测试用例,确认程序不再崩溃,且 `processed_value` 为 `None` 或默认值。**]
* **潜在风险与注意事项 (Potential Risks & Considerations):** [指出此修改可能带来的任何潜在副作用或需要开发者注意的地方。例如:请注意,下游消费 `processed_value` 的代码现在必须能够正确处理 `None` 值。请检查相关调用方是否已做相应处理。]
---
*(对每个需要修改的文件重复上述格式)*

View File

@@ -40,51 +40,51 @@ Your response **MUST** be in Chinese and structured in Markdown as follows:
---
### 0. 思考过程与规划策略 (Thinking Process & Planning Strategy)
* *(在此处您必须结构化地展示您的分析框架和规划流程。)*
* **1. 需求解析 (Requirement Analysis):** 我首先将用户的原始需求进行拆解和澄清确保完全理解其核心目标和边界条件。
* **2. 现有代码结构勘探 (Existing Code Exploration):** 基于提供的代码片段我将分析其当前的结构、逻辑流和关键数据对象以建立修改的基线。
* **3. 核心修改点识别与策略制定 (Identification of Core Modification Points & Strategy Formulation):** 我将识别出需要修改的关键代码位置并为每个修改点制定高级别的技术策略例如是重构、新增还是调整
* **4. 依赖与风险评估 (Dependency & Risk Assessment):** 我会评估提议的修改可能带来的模块间依赖关系变化以及潜在的风险如性能下降、兼容性问题、边界情况处理不当等
* **5. 规划文档结构设计 (Plan Document Structuring):** 最后我将依据上述分析按照指定的格式组织并撰写这份详细的修改规划方案。
* *(在此处,您必须结构化地展示您的分析框架和规划流程。)*
* **1. 需求解析 (Requirement Analysis):** 我首先将用户的原始需求进行拆解和澄清,确保完全理解其核心目标和边界条件。
* **2. 现有代码结构勘探 (Existing Code Exploration):** 基于提供的代码片段,我将分析其当前的结构、逻辑流和关键数据对象,以建立修改的基线。
* **3. 核心修改点识别与策略制定 (Identification of Core Modification Points & Strategy Formulation):** 我将识别出需要修改的关键代码位置,并为每个修改点制定高级别的技术策略(例如,是重构、新增还是调整)
* **4. 依赖与风险评估 (Dependency & Risk Assessment):** 我会评估提议的修改可能带来的模块间依赖关系变化,以及潜在的风险(如性能下降、兼容性问题、边界情况处理不当等)
* **5. 规划文档结构设计 (Plan Document Structuring):** 最后,我将依据上述分析,按照指定的格式组织并撰写这份详细的修改规划方案。
### **代码修改规划方案 (Code Modification Plan)**
### **第一部分需求分析与规划总览 (Part 1: Requirements Analysis & Planning Overview)**
### **第一部分:需求分析与规划总览 (Part 1: Requirements Analysis & Planning Overview)**
* **1.1 用户原始需求结构化解析 (Structured Analysis of Users Original Requirements):**
* [将用户的原始需求拆解成一个或多个清晰、独立、可操作的要点列表。每个要点都是一个明确的目标。]
* **- 需求点 A:** [描述第一个具体需求]
* **- 需求点 B:** [描述第二个具体需求]
* **- ...**
* **1.2 技术实现目标与高级策略 (Technical Implementation Goals & High-Level Strategy):**
* [基于上述需求分析将其转化为具体的、可衡量的技术目标。并简述为达成这些目标将采用的整体技术思路或架构策略。例如为实现【需求点A】我们需要在 `ServiceA` 中引入一个新的处理流程。为实现【需求点B】我们将重构 `ModuleB` 的数据验证逻辑以提高其扩展性。]
* [基于上述需求分析,将其转化为具体的、可衡量的技术目标。并简述为达成这些目标将采用的整体技术思路或架构策略。例如:为实现【需求点A】,我们需要在 `ServiceA` 中引入一个新的处理流程。为实现【需求点B】,我们将重构 `ModuleB` 的数据验证逻辑,以提高其扩展性。]
### **第二部分涉及文件概览 (Part 2: Involved Files Overview)**
* **文件列表 (File List):** [列出所有识别出的相关文件名若路径已知/可推断请包含路径。不仅包括直接修改的文件也包括提供关键上下文或可能受间接影响的文件。示例: `- src/core/module_a.py (直接修改)`, `- src/utils/helpers.py (依赖项可能受影响)`, `- configs/settings.json (配置参考)`]
### **第二部分:涉及文件概览 (Part 2: Involved Files Overview)**
* **文件列表 (File List):** [列出所有识别出的相关文件名(若路径已知/可推断,请包含路径)。不仅包括直接修改的文件,也包括提供关键上下文或可能受间接影响的文件。示例: `- src/core/module_a.py (直接修改)`, `- src/utils/helpers.py (依赖项,可能受影响)`, `- configs/settings.json (配置参考)`]
### **第三部分详细修改计划 (Part 3: Detailed Modification Plan)**
### **第三部分:详细修改计划 (Part 3: Detailed Modification Plan)**
---
*针对每个需要直接修改的文件进行描述:*
**文件: [文件路径或文件名] (File: [File path or filename])**
* **1. 位置 (Location):**
* [清晰说明函数、类、方法或具体的代码区域如果可能指出大致行号范围。示例: 函数 `calculate_total_price` 内部约第 75-80 行]
* [清晰说明函数、类、方法或具体的代码区域,如果可能,指出大致行号范围。示例: 函数 `calculate_total_price` 内部,约第 75-80 行]
* **1.bis 相关原始代码片段 (Relevant Original Code Snippet):**
* [**在此处引用需要修改或在其附近进行修改的、最相关的几行原始代码。** 这为开发者提供了直接的上下文。如果代码未提供则注明相关代码未提供根据描述进行规划。]
* [**在此处引用需要修改或在其附近进行修改的、最相关的几行原始代码。** 这为开发者提供了直接的上下文。如果代码未提供,则注明相关代码未提供,根据描述进行规划。]
* ```[language]
// 引用相关的1-5行原始代码
```
* **2. 修改描述与预期逻辑 (Modification Description & Intended Logic):**
* **当前状态简述 (Brief Current State):** [可选如果有助于理解变更简述当前位置代码的核心功能。]
* **当前状态简述 (Brief Current State):** [可选,如果有助于理解变更,简述当前位置代码的核心功能。]
* **拟议修改点 (Proposed Changes):**
* [分步骤详细描述需要进行的逻辑更改。用清晰的中文自然语言解释 *什么* 需要被改变或添加。]
* **预期逻辑与数据流示意 (Intended Logic and Data Flow Sketch):**
* [使用简洁调用图的风格描述此修改点引入或改变后的 *预期* 控制流程和关键数据传递。]
* [使用简洁调用图的风格,描述此修改点引入或改变后的 *预期* 控制流程和关键数据传递。]
* [**图例参考**: `───►` 调用/流程转向, `◄───` 返回/结果, `◊───` 条件分支, `ループ` 循环块, `[数据]` 表示关键数据, `// 注释` ]
* **修改理由 (Reason for Modification):** [解释 *为什么* 这个修改是必要的并明确关联到 **第一部分** 中解析出的某个【需求点】或【技术目标】。]
* **预期结果 (Intended Outcome):** [描述此修改完成后该代码段预期的行为或产出。]
* **修改理由 (Reason for Modification):** [解释 *为什么* 这个修改是必要的,并明确关联到 **第一部分** 中解析出的某个【需求点】或【技术目标】。]
* **预期结果 (Intended Outcome):** [描述此修改完成后,该代码段预期的行为或产出。]
* **3. 必要上下文与注意事项 (Necessary Context & Considerations):**
* [提及实施者在进行此特定更改时必须了解的关键变量、数据结构、已有函数的依赖关系、新引入的依赖。]

View File

@@ -0,0 +1,359 @@
Template for generating tech stack module documentation files
## Purpose
Guide agent to create modular tech stack documentation from Exa research results.
## File Location
`.claude/skills/{tech_stack_name}/*.md`
## Module Structure
Each module should include:
- **Frontmatter**: YAML with module name and tech stack
- **Main Sections**: Clear headings with hierarchical organization
- **Code Examples**: Real examples from Exa research
- **Best Practices**: Do's and don'ts sections
- **References**: Attribution to Exa sources
---
## Module 1: principles.md (~3K tokens)
**Purpose**: Core concepts, philosophies, and fundamental principles
**Frontmatter**:
```yaml
---
module: principles
tech_stack: {tech_stack_name}
description: Core concepts and philosophies
tokens: ~3000
---
```
**Structure**:
```markdown
# {Tech} Principles
## Core Concepts
- Fundamental principle 1
- Fundamental principle 2
- Key philosophy
## Design Philosophy
- Approach to problem-solving
- Architectural principles
- Core values
## Key Features
- Feature 1: Description
- Feature 2: Description
## When to Use
- Use case scenarios
- Best fit situations
## References
- Source 1 from Exa
- Source 2 from Exa
```
---
## Module 2: patterns.md (~5K tokens)
**Purpose**: Implementation patterns with code examples
**Frontmatter**:
```yaml
---
module: patterns
tech_stack: {tech_stack_name}
description: Implementation patterns with examples
tokens: ~5000
---
```
**Structure**:
```markdown
# {Tech} Patterns
## Common Patterns
### Pattern 1: {Name}
**Use Case**: When to use this pattern
**Implementation**:
\`\`\`{language}
// Code example from Exa
\`\`\`
**Benefits**: Why use this pattern
### Pattern 2: {Name}
[Same structure]
## Architectural Patterns
- Pattern descriptions
- Code examples
## Component Patterns
- Reusable component structures
- Integration examples
## References
- Exa sources with pattern examples
```
---
## Module 3: practices.md (~4K tokens)
**Purpose**: Best practices, anti-patterns, pitfalls
**Frontmatter**:
```yaml
---
module: practices
tech_stack: {tech_stack_name}
description: Best practices and anti-patterns
tokens: ~4000
---
```
**Structure**:
```markdown
# {Tech} Best Practices
## Do's
✅ **Practice 1**: Description
- Rationale
- Example scenario
✅ **Practice 2**: Description
## Don'ts
❌ **Anti-pattern 1**: What to avoid
- Why it's problematic
- Better alternative
❌ **Anti-pattern 2**: What to avoid
## Common Pitfalls
1. **Pitfall 1**: Description and solution
2. **Pitfall 2**: Description and solution
## Performance Considerations
- Optimization techniques
- Common bottlenecks
## Security Best Practices
- Security considerations
- Common vulnerabilities
## References
- Exa sources for best practices
```
---
## Module 4: testing.md (~3K tokens)
**Purpose**: Testing strategies, frameworks, and examples
**Frontmatter**:
```yaml
---
module: testing
tech_stack: {tech_stack_name}
description: Testing strategies and frameworks
tokens: ~3000
---
```
**Structure**:
```markdown
# {Tech} Testing
## Testing Strategies
- Unit testing approach
- Integration testing approach
- E2E testing approach
## Testing Frameworks
### Framework 1
- Setup
- Basic usage
- Example:
\`\`\`{language}
// Test example from Exa
\`\`\`
## Test Patterns
- Common test patterns
- Mock strategies
- Assertion best practices
## Coverage Recommendations
- What to test
- Coverage targets
## References
- Exa sources for testing examples
```
---
## Module 5: config.md (~3K tokens)
**Purpose**: Setup, configuration, and tooling
**Frontmatter**:
```yaml
---
module: config
tech_stack: {tech_stack_name}
description: Setup, configuration, and tooling
tokens: ~3000
---
```
**Structure**:
```markdown
# {Tech} Configuration
## Installation
\`\`\`bash
# Installation commands
\`\`\`
## Basic Configuration
\`\`\`{config-format}
// Configuration example from Exa
\`\`\`
## Common Configurations
### Development
- Dev config setup
- Hot reload configuration
### Production
- Production optimizations
- Build configurations
## Tooling
- Recommended tools
- IDE/Editor setup
- Linters and formatters
## Environment Setup
- Environment variables
- Config file structure
## References
- Exa sources for configuration
```
---
## Module 6: frameworks.md (~4K tokens) [CONDITIONAL]
**Purpose**: Framework integration patterns (only for composite tech stacks)
**Condition**: Only generate if `is_composite = true`
**Frontmatter**:
```yaml
---
module: frameworks
tech_stack: {tech_stack_name}
description: Framework integration patterns
tokens: ~4000
conditional: composite_only
---
```
**Structure**:
```markdown
# {Main Tech} + {Framework} Integration
## Integration Overview
- How {main_tech} works with {framework}
- Architecture considerations
## Setup
\`\`\`bash
# Integration setup commands
\`\`\`
## Integration Patterns
### Pattern 1: {Name}
\`\`\`{language}
// Integration example from Exa
\`\`\`
## Best Practices
- Integration best practices
- Common pitfalls
## Examples
- Real-world integration examples
- Code samples from Exa
## References
- Exa sources for integration patterns
```
---
## Metadata File: metadata.json
**Purpose**: Store generation metadata and research summary
**Structure**:
```json
{
"tech_stack_name": "typescript-react-nextjs",
"components": ["typescript", "react", "nextjs"],
"is_composite": true,
"generated_at": "2025-11-04T22:00:00Z",
"source": "exa-research",
"research_summary": {
"total_queries": 6,
"total_sources": 25,
"query_list": [
"typescript core principles best practices 2025",
"react common patterns architecture examples",
"nextjs configuration setup tooling 2025",
"testing strategies",
"react nextjs integration",
"typescript react integration"
]
}
}
```
---
## Generation Guidelines
### Content Synthesis from Exa
- Extract relevant code examples from Exa results
- Synthesize information from multiple sources
- Maintain technical accuracy
- Cite sources in References section
### Formatting Rules
- Use clear markdown headers
- Include code fences with language specification
- Use emoji for Do's (✅) and Don'ts (❌)
- Keep token estimates accurate
### Error Handling
- If Exa query fails, note in References section
- If insufficient data, mark section as "Limited research available"
- Handle missing components gracefully
### Token Distribution
- Total budget: ~22K tokens for 6 modules
- Adjust module size based on content availability
- Prioritize quality over hitting exact token counts

View File

@@ -0,0 +1,185 @@
Template for generating tech stack SKILL.md index file
## Purpose
Create main SKILL package index with module references and loading recommendations.
## File Location
`.claude/skills/{tech_stack_name}/SKILL.md`
## Template Structure
```markdown
---
name: {TECH_STACK_NAME}
description: {MAIN_TECH} development guidelines from industry standards (Exa research)
version: 1.0.0
generated: {ISO_TIMESTAMP}
source: exa-research
---
# {TechStackTitle} SKILL Package
## Overview
{Brief 1-2 sentence description of the tech stack and purpose of this SKILL package}
**Primary Technology**: {MAIN_TECH}
{IF_COMPOSITE}**Frameworks**: {COMPONENT_LIST}{/IF_COMPOSITE}
## Modular Documentation
### Core Understanding (~8K tokens)
- [Principles](./principles.md) - Core concepts and philosophies
- [Patterns](./patterns.md) - Implementation patterns with examples
### Practical Guidance (~7K tokens)
- [Best Practices](./practices.md) - Do's, don'ts, anti-patterns
- [Testing](./testing.md) - Testing strategies and frameworks
### Configuration & Integration (~7K tokens)
- [Configuration](./config.md) - Setup, tooling, configuration
{IF_COMPOSITE}- [Frameworks](./frameworks.md) - Integration patterns{/IF_COMPOSITE}
## Loading Recommendations
### Quick Reference (~7K tokens)
Load for quick consultation on core concepts:
- principles.md
- practices.md
**Use When**: Need quick reminder of best practices or core principles
### Implementation Focus (~8K tokens)
Load for active development work:
- patterns.md
- config.md
**Use When**: Writing code, setting up projects, implementing features
### Complete Package (~22K tokens)
Load all modules for comprehensive understanding:
- All 5-6 modules
**Use When**: Learning tech stack, architecture reviews, comprehensive reference
## Usage
**Load this SKILL when**:
- Starting new {TECH_STACK} projects
- Reviewing {TECH_STACK} code
- Learning {TECH_STACK} best practices
- Implementing {TECH_STACK} patterns
- Troubleshooting {TECH_STACK} issues
**Auto-triggers on**:
- Keywords: {TECH_KEYWORDS}
- File types: {FILE_EXTENSIONS}
## Research Metadata
- **Generated**: {ISO_TIMESTAMP}
- **Source**: Exa Research (web search + code context)
- **Queries Executed**: {QUERY_COUNT}
- **Sources Consulted**: {SOURCE_COUNT}
- **Research Quality**: {QUALITY_INDICATOR}
## Tech Stack Components
**Primary**: {MAIN_TECH} - {MAIN_TECH_DESCRIPTION}
{IF_COMPOSITE}
**Additional Frameworks**:
{FOR_EACH_COMPONENT}
- **{COMPONENT_NAME}**: {COMPONENT_DESCRIPTION}
{/FOR_EACH_COMPONENT}
{/IF_COMPOSITE}
## Version History
- **v1.0.0** ({DATE}): Initial SKILL package generated from Exa research
---
## Developer Notes
This SKILL package was auto-generated using:
- `/memory:tech-research` command
- Exa AI research APIs (mcp__exa__get_code_context_exa, mcp__exa__web_search_exa)
- Token limit: ~5K per module, ~22K total
To regenerate:
```bash
/memory:tech-research "{tech_stack_name}" --regenerate
```
```
---
## Variable Substitution Guide
### Required Variables
- `{TECH_STACK_NAME}`: Lowercase hyphenated name (e.g., "typescript-react-nextjs")
- `{TechStackTitle}`: Title case display name (e.g., "TypeScript React Next.js")
- `{MAIN_TECH}`: Primary technology (e.g., "TypeScript")
- `{ISO_TIMESTAMP}`: ISO 8601 timestamp (e.g., "2025-11-04T22:00:00Z")
- `{QUERY_COUNT}`: Number of Exa queries executed (e.g., 6)
- `{SOURCE_COUNT}`: Total sources consulted (e.g., 25)
### Conditional Variables
- `{IF_COMPOSITE}...{/IF_COMPOSITE}`: Only include if tech stack has multiple components
- `{COMPONENT_LIST}`: Comma-separated list of framework names
- `{FOR_EACH_COMPONENT}...{/FOR_EACH_COMPONENT}`: Loop through components
### Optional Variables
- `{MAIN_TECH_DESCRIPTION}`: One-line description of primary tech
- `{COMPONENT_DESCRIPTION}`: One-line description per component
- `{TECH_KEYWORDS}`: Comma-separated trigger keywords
- `{FILE_EXTENSIONS}`: File extensions (e.g., ".ts, .tsx, .jsx")
- `{QUALITY_INDICATOR}`: Research quality metric (e.g., "High", "Medium")
---
## Generation Instructions
### Step 1: Read metadata.json
Extract values for variables from metadata.json generated during module creation.
### Step 2: Determine composite status
- Single tech: Omit {IF_COMPOSITE} sections
- Composite: Include frameworks section and integration module reference
### Step 3: Calculate token estimates
- Verify module files exist
- Adjust token estimates based on actual file sizes
- Update loading recommendation estimates
### Step 4: Generate descriptions
- **Overview**: Brief description of tech stack purpose
- **Main tech description**: One-liner for primary technology
- **Component descriptions**: One-liner per additional framework
### Step 5: Build keyword lists
- Extract common keywords from tech stack name
- Add file extensions relevant to tech stack
- Include framework-specific triggers
### Step 6: Format timestamps
- Use ISO 8601 format for all timestamps
- Include timezone (UTC recommended)
### Step 7: Write SKILL.md
- Apply template with all substitutions
- Validate markdown formatting
- Verify all relative paths work
---
## Validation Checklist
- [ ] All module files exist and are referenced
- [ ] Token estimates are reasonably accurate
- [ ] Conditional sections handled correctly (composite vs single)
- [ ] Timestamps in ISO 8601 format
- [ ] All relative paths use ./ prefix
- [ ] Metadata section matches metadata.json
- [ ] Loading recommendations align with actual module sizes
- [ ] Usage section includes relevant trigger keywords

View File

@@ -0,0 +1,172 @@
# SKILL.md Index Generation Context
## Description Field Requirements
When generating final aggregated output, remember to prepare data for SKILL.md description field:
**Required Data Points**:
- Project root path (to be obtained via git command)
- Use cases: "continuing development", "analyzing past implementations", "learning from workflow history"
- Trigger phrase: "especially when no relevant context exists in memory"
**Description Format**:
```
Progressive workflow development history (located at {project_root}).
Load this SKILL when continuing development, analyzing past implementations,
or learning from workflow history, especially when no relevant context exists in memory.
```
---
You are aggregating workflow session history to generate a progressive SKILL package.
## Your Task
Analyze archived workflow sessions and aggregate:
1. **Lessons Learned** - Successes, challenges, and watch patterns
2. **Conflict Patterns** - Recurring conflicts and resolutions
3. **Implementation Summaries** - Key outcomes by functional domain
## Input Data
You will receive:
- Session metadata (session_id, description, tags, metrics)
- Lessons from each session (successes, challenges, watch_patterns)
- IMPL_PLAN summaries
- Context package metadata (keywords, tech_stack, complexity)
## Output Requirements
### 1. Aggregated Lessons
**Successes by Category**:
- Group successful patterns by functional domain (auth, testing, performance, etc.)
- Identify practices that succeeded across multiple sessions
- Mark best practices (success in 3+ sessions)
**Challenges by Severity**:
- HIGH: Blocked development for >4 hours OR repeated in 3+ sessions
- MEDIUM: Required significant rework OR repeated in 2 sessions
- LOW: Minor issues resolved quickly
**Watch Patterns**:
- Identify patterns mentioned in 2+ sessions
- Prioritize by frequency and severity
- Mark CRITICAL patterns (appeared in 3+ sessions with HIGH severity)
**Format**:
```json
{
"successes_by_category": {
"auth": ["JWT implementation with refresh tokens (3 sessions)", ...],
"testing": ["TDD reduced bugs by 60% (2 sessions)", ...]
},
"challenges_by_severity": {
"high": [
{
"challenge": "Token refresh edge cases",
"sessions": ["WFS-user-auth", "WFS-jwt-refresh"],
"frequency": 2
}
],
"medium": [...],
"low": [...]
},
"watch_patterns": [
{
"pattern": "Token concurrency issues",
"frequency": 3,
"severity": "CRITICAL",
"sessions": ["WFS-user-auth", "WFS-jwt-refresh", "WFS-oauth"]
}
]
}
```
### 2. Conflict Patterns
**Analysis**:
- Group conflicts by type (architecture, dependencies, testing, performance)
- Identify recurring patterns (same conflict in different sessions)
- Link successful resolutions to specific sessions
**Format**:
```json
{
"architecture": [
{
"pattern": "Multiple authentication strategies conflict",
"description": "Different auth methods (JWT, OAuth, session) cause integration issues",
"sessions": ["WFS-user-auth", "WFS-oauth"],
"resolution": "Unified auth interface with strategy pattern",
"code_impact": ["src/auth/interface.ts", "src/auth/jwt.ts", "src/auth/oauth.ts"],
"frequency": 2,
"severity": "high"
}
],
"dependencies": [...],
"testing": [...],
"performance": [...]
}
```
### 3. Implementation Summary
**By Functional Domain**:
- Group sessions by primary tag/domain
- Summarize key accomplishments
- Link to context packages and plans
**Format**:
```json
{
"auth": {
"session_count": 3,
"sessions": [
{
"session_id": "WFS-user-auth",
"description": "JWT authentication implementation",
"key_outcomes": [
"JWT token generation and validation",
"Refresh token mechanism",
"Secure password hashing with bcrypt"
],
"context_package": ".workflow/.archives/WFS-user-auth/.process/context-package.json",
"metrics": {"task_count": 5, "success_rate": 100, "duration_hours": 4.5}
}
],
"cumulative_metrics": {
"total_tasks": 15,
"avg_success_rate": 95,
"total_hours": 12.5
}
},
"payment": {...},
"ui": {...}
}
```
## Analysis Guidelines
1. **Identify Patterns**: Look for recurring themes across sessions
2. **Prioritize by Impact**: Focus on high-frequency, high-impact patterns
3. **Link Sessions**: Connect related sessions (same domain, similar challenges)
4. **Extract Wisdom**: Surface actionable insights from lessons learned
5. **Maintain Context**: Keep references to original sessions and files
## Quality Criteria
- ✅ All sessions processed and categorized
- ✅ Patterns identified and frequency counted
- ✅ Severity levels assigned based on impact
- ✅ Resolutions linked to specific sessions
- ✅ Output is valid JSON with no missing fields
- ✅ References (paths) are accurate and complete
## Important Notes
- **NO hallucination**: Only aggregate data from provided sessions
- **Preserve detail**: Keep specific session references for traceability
- **Smart grouping**: Group similar patterns even if wording differs slightly
- **Frequency matters**: Prioritize patterns that appear in multiple sessions
- **Context preservation**: Keep context package paths for on-demand loading

View File

@@ -0,0 +1,98 @@
Template for generating conflict-patterns.md
## Purpose
Document recurring conflict patterns across workflow sessions with resolutions.
## File Location
`.claude/skills/workflow-progress/conflict-patterns.md`
## Update Strategy
- **Incremental mode**: Add new conflicts, update frequency counters for existing patterns
- **Full mode**: Regenerate entire conflict analysis from all sessions
## Structure
```markdown
# Workflow Conflict Patterns
## Architecture Conflicts
### {Conflict_Pattern_Title}
**Pattern**: {concise_pattern_description}
**Sessions**: {session_id_1}, {session_id_2}
**Resolution**: {resolution_strategy}
**Code Impact**:
- Modified: {file_path_1}, {file_path_2}
- Added: {file_path_3}
- Tests: {test_file_path}
**Frequency**: {count} sessions
**Severity**: {high|medium|low}
---
## Dependency Conflicts
### {Conflict_Pattern_Title}
**Pattern**: {concise_pattern_description}
**Sessions**: {session_id_list}
**Resolution**: {resolution_strategy}
**Package Changes**:
- Updated: {package_name}@{version}
- Locked: {dependency_name}
**Frequency**: {count} sessions
**Severity**: {high|medium|low}
---
## Testing Conflicts
### {Conflict_Pattern_Title}
...
---
## Performance Conflicts
### {Conflict_Pattern_Title}
...
```
## Data Sources
- IMPL_PLAN summaries: `.workflow/.archives/{session_id}/IMPL_PLAN.md`
- Context packages: `.workflow/.archives/{session_id}/.process/context-package.json` (reference only)
- Session lessons: `manifest.json` -> `archives[].lessons.challenges`
## Conflict Identification (Use Gemini CLI)
**Command Pattern**:
```bash
gemini -p "
PURPOSE: Identify conflict patterns from workflow sessions
TASK:
• Extract conflicts from IMPL_PLAN and lessons
• Group by type (architecture/dependencies/testing/performance)
• Identify recurring patterns (same conflict in different sessions)
• Link resolutions to specific sessions
MODE: analysis
CONTEXT: @.workflow/.archives/*/IMPL_PLAN.md @.workflow/.archives/manifest.json
EXPECTED: Conflict patterns with frequency and resolution
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/workflow/skill-aggregation.txt)
"
```
**Pattern Grouping**:
- **Architecture**: Design conflicts, incompatible strategies, interface mismatches
- **Dependencies**: Version conflicts, library incompatibilities, package issues
- **Testing**: Mock data inconsistencies, test environment issues, coverage gaps
- **Performance**: Bottlenecks, optimization conflicts, resource issues
## Formatting Rules
- Sort by frequency within each category
- Include code impact for traceability
- Mark high-frequency patterns (3+ sessions) as "RECURRING"
- Keep resolution descriptions actionable
- Use relative paths for file references

View File

@@ -0,0 +1,224 @@
Template for generating SKILL.md (index file)
## Purpose
Create main SKILL package index with progressive loading structure and session references.
## File Location
`.claude/skills/workflow-progress/SKILL.md`
## Update Strategy
- **Always regenerated**: This file is always updated with latest session count, domains, dates
## Structure
```yaml
---
name: workflow-progress
description: Progressive workflow development history (located at {project_root}). Load this SKILL when continuing development, analyzing past implementations, or learning from workflow history, especially when no relevant context exists in memory.
version: {semantic_version}
---
# Workflow Progress SKILL Package
## Documentation: `../../../.workflow/.archives/`
**Total Sessions**: {session_count}
**Functional Domains**: {domain_list}
**Date Range**: {earliest_date} - {latest_date}
## Progressive Loading
### Level 0: Quick Overview (~2K tokens)
- [Sessions Timeline](sessions-timeline.md#recent-sessions-last-5) - Recent 5 sessions
- [Top Conflict Patterns](conflict-patterns.md#top-patterns) - Top 3 recurring conflicts
- Quick reference for last completed work
**Use Case**: Quick context refresh before starting new task
### Level 1: Core History (~8K tokens)
- [Sessions Timeline](sessions-timeline.md) - Recent 10 sessions with details
- [Lessons Learned](lessons-learned.md#best-practices) - Success patterns by category
- [Conflict Patterns](conflict-patterns.md) - Known conflict types and resolutions
- Context package references (metadata only)
**Use Case**: Understanding recent development patterns and avoiding known pitfalls
### Level 2: Complete History (~25K tokens)
- All archived sessions with metadata
- Full lessons learned (successes, challenges, watch patterns)
- Complete conflict analysis with resolutions
- IMPL_PLAN summaries from all sessions
- Context package paths for on-demand loading
**Use Case**: Comprehensive review before major refactoring or architecture changes
### Level 3: Deep Dive (~40K tokens)
- Full IMPL_PLAN.md and TODO_LIST.md from all sessions
- Detailed task completion summaries
- Cross-session dependency analysis
- Direct context package file references
**Use Case**: Investigating specific implementation details or debugging historical decisions
---
## Quick Access
### Recent Sessions
{list of 5 most recent sessions with one-line descriptions}
### By Domain
- **{Domain_1}**: {count} sessions
- **{Domain_2}**: {count} sessions
- **{Domain_3}**: {count} sessions
### Top Watch Patterns
1. {most_frequent_watch_pattern}
2. {second_most_frequent}
3. {third_most_frequent}
---
## Session Index
### {Domain_Category} Sessions
- [{session_id}](../../../.workflow/.archives/{session_id}/) - {one_line_description} ({date})
- Context: [context-package.json](../../../.workflow/.archives/{session_id}/.process/context-package.json)
- Plan: [IMPL_PLAN.md](../../../.workflow/.archives/{session_id}/IMPL_PLAN.md)
- Tags: {tag1}, {tag2}, {tag3}
---
## Usage Examples
### Loading Quick Context
```markdown
Load Level 0 from workflow-progress SKILL for overview of recent work
```
### Investigating {Domain} History
```markdown
Load Level 2 from workflow-progress SKILL, filter by "{domain}" tag
```
### Full Historical Analysis
```markdown
Load Level 3 from workflow-progress SKILL for complete development history
```
```
## Data Sources
- Manifest: `.workflow/.archives/manifest.json`
- All session metadata from manifest entries
## Generation Rules
- Version format: `{major}.{minor}.{patch}` (increment patch for each update)
- Domain list: Extract unique tags from all sessions, sort by frequency
- Date range: Find earliest and latest archived_at timestamps
- Token estimates: Approximate based on content length
- Use relative paths (../../../.workflow/.archives/) for session references
## Formatting Rules
- Keep descriptions concise
- Sort sessions by date (newest first)
- Group sessions by primary tag
- Include only top 5 recent sessions in Quick Access
- Include top 3 watch patterns
---
## Variable Substitution Guide
### Required Variables
- `{project_root}`: Absolute project path from git root (e.g., "/d/Claude_dms3")
- `{semantic_version}`: Version string (e.g., "1.0.0", increment patch for each update)
- `{session_count}`: Total number of archived sessions
- `{domain_list}`: Comma-separated unique tags sorted by frequency
- `{earliest_date}`: Earliest session archived_at timestamp
- `{latest_date}`: Most recent session archived_at timestamp
### Generated Variables
- `{one_line_description}`: Extract from session description (first sentence, max 80 chars)
- `{domain_category}`: Primary tag from session metadata
- `{most_frequent_watch_pattern}`: Top recurring watch pattern across sessions
- `{date}`: Session archived_at in YYYY-MM-DD format
### Description Field Generation
**Format Template**:
```
Progressive workflow development history (located at {project_root}).
Load this SKILL when continuing development, analyzing past implementations,
or learning from workflow history, especially when no relevant context exists in memory.
```
**Generation Rules**:
1. **Project Root**: Use `git rev-parse --show-toplevel` to get absolute path
2. **Use Cases**: ALWAYS include these trigger phrases:
- "continuing development" (开发延续)
- "analyzing past implementations" (分析历史)
- "learning from workflow history" (学习历史)
3. **Trigger Optimization**: MUST include "especially when no relevant context exists in memory"
4. **Path Format**: Use forward slashes for cross-platform compatibility (e.g., "/d/project")
**Why This Matters**:
- **Auto-loading precision**: Path reference ensures Claude loads correct project's SKILL
- **Context awareness**: "when no relevant context exists" prevents redundant loading
- **Action coverage**: Three use cases cover all workflow scenarios
---
## Generation Instructions
### Step 1: Get Project Root
```bash
git rev-parse --show-toplevel # Returns: /d/Claude_dms3
```
### Step 2: Read Manifest
```bash
cat .workflow/.archives/manifest.json
```
Extract:
- Total session count
- All session tags (for domain list)
- Date range (earliest/latest archived_at)
### Step 3: Aggregate Session Data
- Count sessions per domain
- Extract top 5 recent sessions
- Identify top 3 watch patterns from lessons
### Step 4: Generate Description
Apply format template with project_root from Step 1.
### Step 5: Calculate Version
- Read existing SKILL.md version (if exists)
- Increment patch version (e.g., 1.0.5 → 1.0.6)
- Use 1.0.0 for new SKILL package
### Step 6: Build Progressive Loading Sections
- Level 0: Recent 5 sessions + Top 3 conflicts
- Level 1: Recent 10 sessions + Best practices
- Level 2: All sessions + Full lessons + Full conflicts
- Level 3: Include IMPL_PLAN and TODO_LIST references
### Step 7: Write SKILL.md
- Apply all variable substitutions
- Use relative paths: `../../../.workflow/.archives/`
- Validate all referenced files exist
---
## Validation Checklist
- [ ] `{project_root}` uses absolute path with forward slashes
- [ ] Description includes all three use cases
- [ ] Description includes trigger optimization phrase
- [ ] Version incremented correctly
- [ ] All session references use relative paths
- [ ] Domain list sorted by frequency
- [ ] Date range matches manifest
- [ ] Quick Access section has exactly 5 recent sessions
- [ ] Top Watch Patterns section has exactly 3 items
- [ ] All referenced files exist in archives

View File

@@ -0,0 +1,98 @@
Template for generating lessons-learned.md
## Purpose
Aggregate lessons learned from workflow sessions, categorized by functional domain and severity.
## File Location
`.claude/skills/workflow-progress/lessons-learned.md`
## Update Strategy
- **Incremental mode**: Merge new session lessons into existing categories, update frequencies
- **Full mode**: Regenerate entire lessons document from all sessions
## Structure
```markdown
# Workflow Lessons Learned
## Best Practices (Successes)
### {Domain_Category}
- {success_pattern_1} (sessions: {session_id_1}, {session_id_2})
- {success_pattern_2} (sessions: {session_id_3})
### {Domain_Category_2}
...
---
## Known Challenges
### High Priority
- **{challenge_title}**: {description}
- Affected sessions: {session_id_1}, {session_id_2}
- Resolution: {resolution_strategy}
### Medium Priority
- **{challenge_title}**: {description}
- Affected sessions: {session_id_3}
- Resolution: {resolution_strategy}
### Low Priority
...
---
## Watch Patterns
### Critical (3+ sessions)
1. **{pattern_name}**: {description}
- Frequency: {count} sessions
- Affected: {session_list}
- Mitigation: {mitigation_strategy}
### High Priority (2 sessions)
...
### Normal (1 session)
...
```
## Data Sources
- Lessons: `manifest.json` -> `archives[].lessons.{successes|challenges|watch_patterns}`
- Session metadata: `.workflow/.archives/{session_id}/workflow-session.json`
## Aggregation Rules (Use Gemini CLI)
**Command Pattern**:
```bash
gemini -p "
PURPOSE: Aggregate workflow lessons from session data
TASK:
• Group successes by functional domain
• Categorize challenges by severity (HIGH/MEDIUM/LOW)
• Identify watch patterns with frequency >= 2
• Mark CRITICAL patterns (3+ sessions)
MODE: analysis
CONTEXT: @.workflow/.archives/manifest.json
EXPECTED: Aggregated lessons with frequency counts
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/workflow/skill-aggregation.txt)
"
```
**Severity Classification**:
- **HIGH**: Blocked development >4 hours OR repeated in 3+ sessions
- **MEDIUM**: Required significant rework OR repeated in 2 sessions
- **LOW**: Minor issues resolved quickly
**Pattern Identification**:
- Successes in 3+ sessions → "Best Practices"
- Challenges repeated 2+ times → "Known Issues"
- Watch patterns frequency >= 2 → "High Priority Warnings"
- Watch patterns frequency >= 3 → "CRITICAL"
## Formatting Rules
- Sort by frequency (most common first)
- Include session references for traceability
- Use bold for challenge titles
- Keep descriptions concise but actionable

View File

@@ -0,0 +1,53 @@
Template for generating sessions-timeline.md
## Purpose
Create or update chronological timeline of workflow sessions with functional domain grouping.
## File Location
`.claude/skills/workflow-progress/sessions-timeline.md`
## Update Strategy
- **Incremental mode**: Append new session to timeline, keep existing content
- **Full mode**: Regenerate entire timeline from all sessions
## Structure
```markdown
# Workflow Sessions Timeline
## Recent Sessions (Last 5)
### {session_id} ({archived_date})
**Description**: {description}
**Tags**: {tag1}, {tag2}, {tag3}
**Metrics**: {task_count} tasks, {success_rate}% success, {duration_hours} hours
**Context Package**: [{session_id}/context-package.json](../../../.workflow/.archives/{session_id}/.process/context-package.json)
**Key Outcomes**:
- ✅ {success_item_1}
- ✅ {success_item_2}
- ⚠️ Watch: {watch_pattern}
---
## By Functional Domain
### {Domain_Name} ({count} sessions)
- {session_id_1} ({date}) - {one_line_description}
- {session_id_2} ({date}) - {one_line_description}
### {Domain_Name_2} ({count} sessions)
...
```
## Data Sources
- Session metadata: `.workflow/.archives/{session_id}/workflow-session.json`
- Manifest entry: `.workflow/.archives/manifest.json`
- Lessons: `manifest.json` -> `archives[].lessons`
## Formatting Rules
- Sort recent sessions by archived_at (newest first)
- Group by functional domain using tags
- Use relative paths for context package links
- Use ✅ for successes, ⚠️ for watch patterns
- Keep descriptions concise (one line)

View File

@@ -7,6 +7,7 @@ Task JSON Schema - Agent Mode (No Command Field)
"id": "IMPL-N[.M]",
"title": "Descriptive task name",
"status": "pending",
"context_package_path": "{context_package_path}",
"meta": {
"type": "feature|bugfix|refactor|test|docs",
"agent": "@code-developer|@test-fix-agent|@universal-executor"
@@ -52,9 +53,12 @@ Task JSON Schema - Agent Mode (No Command Field)
"on_error": "fail"
},
{
"step": "mcp_codebase_exploration",
"action": "Explore codebase using MCP",
"command": "mcp__code-index__find_files(pattern=\"{file_pattern}\") && mcp__code-index__search_code_advanced(pattern=\"{search_pattern}\")",
"step": "local_codebase_exploration",
"action": "Explore codebase using local search",
"commands": [
"bash(rg '^(function|class|interface).*{keyword}' --type ts -n --max-count 15)",
"bash(find . -name '*{keyword}*' -type f | grep -v node_modules | head -10)"
],
"output_to": "codebase_structure",
"on_error": "skip_optional"
}

View File

@@ -7,6 +7,7 @@ Task JSON Schema - CLI Execute Mode (With Command Field)
"id": "IMPL-N[.M]",
"title": "Descriptive task name",
"status": "pending",
"context_package_path": "{context_package_path}",
"meta": {
"type": "feature|bugfix|refactor|test|docs",
"agent": "@code-developer|@test-fix-agent|@universal-executor"
@@ -52,9 +53,12 @@ Task JSON Schema - CLI Execute Mode (With Command Field)
"on_error": "fail"
},
{
"step": "mcp_codebase_exploration",
"action": "Explore codebase using MCP",
"command": "mcp__code-index__find_files(pattern=\"{file_pattern}\")",
"step": "local_codebase_exploration",
"action": "Explore codebase using local search",
"commands": [
"bash(rg '^(function|class|interface).*{keyword}' --type ts -n --max-count 15)",
"bash(find . -name '*{keyword}*' -type f | grep -v node_modules | head -10)"
],
"output_to": "codebase_structure",
"on_error": "skip_optional"
}

View File

@@ -14,6 +14,7 @@ type: search-guideline
## ⚡ Core Search Tools
**Skill()**: FASTEST way to get context - use FIRST if SKILL exists. Three types: (1) `workflow-progress` for WFS sessions (2) tech SKILLs for stack docs (3) `{project-name}` for project docs
**codebase-retrieval**: Semantic file discovery via Gemini CLI with all files analysis
**rg (ripgrep)**: Fast content search with regex support
**find**: File/directory location by name patterns
@@ -24,6 +25,9 @@ type: search-guideline
| Need | Tool | Use Case |
|------|------|----------|
| **Workflow history** | Skill(workflow-progress) | WFS sessions lessons/conflicts - `/memory:workflow-skill-memory` |
| **Tech stack docs** | Skill({tech-name}) | Stack APIs/guides - `/memory:tech-research` |
| **Project docs** | Skill({project-name}) | Project modules/architecture - `/memory:skill-memory` |
| **Semantic discovery** | codebase-retrieval | Find files relevant to task/feature context |
| **Pattern matching** | rg | Search code content with regex |
| **File name lookup** | find | Locate files by name patterns |
@@ -32,6 +36,11 @@ type: search-guideline
## 🔧 Quick Command Reference
```bash
# SKILL Packages (FIRST PRIORITY - fastest context loading)
Skill(command: "workflow-progress") # Workflow: WFS sessions history, lessons, conflicts
Skill(command: "react-dev") # Tech: React APIs, patterns, best practices
Skill(command: "claude_dms3") # Project: Project modules, architecture, examples
# Semantic File Discovery (codebase-retrieval)
cd [directory] && gemini -p "
PURPOSE: Discover files relevant to task/feature
@@ -42,7 +51,7 @@ EXPECTED: Relevant file paths with relevance explanation
RULES: Focus on direct relevance to task requirements
"
# Program Architecture (MANDATORY FIRST)
# Program Architecture (MANDATORY before planning)
~/.claude/scripts/get_modules_by_depth.sh
# Content Search (rg preferred)

View File

@@ -1,9 +1,3 @@
---
name: intelligent-tools-strategy
description: Strategic decision framework for intelligent tool selection
type: strategic-guideline
---
# Intelligent Tools Selection Strategy
## 📋 Table of Contents
@@ -17,138 +11,139 @@ type: strategic-guideline
## ⚡ Quick Start
### Tool Overview
- **Gemini**: Analysis, understanding, exploration & documentation (primary)
- **Qwen**: Analysis, understanding, exploration & documentation (fallback, same capabilities as Gemini)
- **Codex**: Development, implementation & automation
### Universal Prompt Template
### Model Selection (-m parameter)
All CLI tools (Gemini, Qwen, Codex) share this template structure:
**Gemini Models**:
- `gemini-2.5-pro` - Analysis tasks (default)
```
PURPOSE: [objective + why + success criteria]
TASK: • [step 1] • [step 2] • [step 3]
MODE: [analysis|write|auto]
CONTEXT: @**/* | Memory: [session/tech/module context]
EXPECTED: [format + quality + structure]
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt) | [constraints] | MODE=[permission level]
```
### Tool Selection
- **Analysis/Documentation** → Gemini (preferred) or Qwen (fallback)
- **Implementation/Testing** → Codex
### Quick Command Syntax
**⚠️ Always specify model (`-m`) and analysis template in RULES field**
```bash
# Gemini/Qwen
cd [dir] && gemini -p "[prompt]" -m gemini-3-pro-preview-11-2025 [--approval-mode yolo]
# Codex
codex -C [dir] --full-auto exec "[prompt]" -m gpt-5 [--skip-git-repo-check -s danger-full-access]
```
### Model Selection
**Gemini**:
- `gemini-3-pro-preview-11-2025` - Analysis (default, preferred)
- `gemini-2.5-pro` - Analysis (alternative)
- `gemini-2.5-flash` - Documentation updates
**Qwen Models**:
- `coder-model` - Code analysis (default, -m optional)
- `vision-model` - Image analysis (rare usage)
**Qwen**:
- `coder-model` - Code analysis (default)
- `vision-model` - Image analysis (rare)
**Codex Models**:
**Codex**:
- `gpt-5` - Analysis & execution (default)
- `gpt5-codex` - Large context tasks
**Usage**: `tool -p "prompt" -m model-name` (NOTE: -m placed AFTER prompt)
**Note**: `-m` parameter placed AFTER prompt
### Quick Decision Matrix
| Scenario | Tool | Command Pattern |
|----------|------|-----------------|
| **Exploring/Understanding** | Gemini → Qwen | `cd [dir] && gemini -p "PURPOSE:... CONTEXT: @**/*"` |
| **Architecture/Analysis** | Gemini → Qwen | `cd [dir] && gemini -p "PURPOSE:... CONTEXT: @**/*"` |
| **Building/Fixing** | Codex | `codex -C [dir] --full-auto exec "PURPOSE:... MODE: auto"` |
| **Not sure?** | Multiple | Use tools in parallel |
| **Small task?** | Still use tools | Tools are faster than manual work |
| Scenario | Tool | MODE |
|----------|------|------|
| Exploring/Understanding | Gemini → Qwen | analysis |
| Architecture/Analysis | Gemini → Qwen | analysis |
| Building/Fixing | Codex | auto |
| Documentation Generation | Gemini/Qwen | write |
| Test Generation | Codex | write |
### Core Principles
- **Use tools early and often** - Tools are faster, more thorough, and reliable than manual approaches
- **Use tools early and often** - Tools are faster and more thorough
- **When in doubt, use both** - Parallel usage provides comprehensive coverage
- **Default to tools** - Use specialized tools for most coding tasks, no matter how small
- **Lower barriers** - Engage tools immediately when encountering any complexity
- **⚠️ Write operation protection** - For local codebase write/modify operations, require EXPLICIT user confirmation unless user provides clear instructions containing MODE=write or MODE=auto
- **Default to tools** - Use for most coding tasks, no matter how small
- **Minimize context noise** - Use `cd` + `--include-directories` to focus on relevant files
- **⚠️ Always specify model** - REQUIRED: `-m gemini-3-pro-preview-11-2025` for Gemini, `-m gpt-5` for Codex
- **⚠️ Always use analysis template** - REQUIRED: Include `$(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt)` in RULES field
- **⚠️ Write protection** - Require EXPLICIT MODE=write or MODE=auto specification
---
## 🎯 Tool Specifications
### MODE Options
**analysis** (default for Gemini/Qwen)
- Read-only operations, no file modifications
- Analysis output returned as text response
- Use for: code review, architecture analysis, pattern discovery
- Permission: Default, no special parameters needed
**write** (Gemini/Qwen/Codex)
- File creation/modification/deletion allowed
- Requires explicit MODE=write specification
- Use for: documentation generation, code creation, file modifications
- Permission:
- Gemini/Qwen: `--approval-mode yolo`
- Codex: `--skip-git-repo-check -s danger-full-access`
**auto** (Codex only)
- Full autonomous development operations
- Requires explicit MODE=auto specification
- Use for: feature implementation, bug fixes, autonomous development
- Permission: `--skip-git-repo-check -s danger-full-access`
### Gemini & Qwen
#### Overview
- **Commands**: `gemini` (primary) | `qwen` (fallback)
- **Strengths**: Large context window, pattern recognition
- **Best For**: Analysis, documentation generation, code exploration, architecture review
- **Permissions**: Default read-only analysis, MODE=write requires explicit specification
- **Default MODE**: `analysis` (read-only)
- **⚠️ Write Trigger**: Only when user explicitly requests "generate documentation", "modify code", or specifies MODE=write
- **Priority**: Prefer Gemini; use Qwen as fallback when Gemini unavailable
**Commands**: `gemini` (primary) | `qwen` (fallback)
#### MODE Options
**Strengths**: Large context window, pattern recognition
**analysis** (default) - Read-only analysis and documentation generation
- **⚠️ CRITICAL CONSTRAINT**: Absolutely NO file creation, modification, or deletion operations
- Analysis output should be returned as text response only
- Use for: code review, architecture analysis, pattern discovery, documentation reading
**Best For**: Analysis, documentation generation, code exploration, architecture review
**write** - ⚠️ Create/modify codebase files (requires explicit specification, auto-enables --approval-mode yolo)
- Use for: generating documentation files, creating code files, modifying existing files
**Default MODE**: `analysis` (read-only)
#### Tool Selection
```bash
# Default: Use Gemini
gemini -p "analysis prompt"
**Priority**: Prefer Gemini; use Qwen as fallback when Gemini unavailable
# Fallback: Use Qwen if Gemini unavailable
qwen -p "analysis prompt"
```
#### Error Handling
**⚠️ Gemini 429 Behavior**: May show HTTP 429 error but still return results - ignore error messages, only check if results exist (results present = success, no results = retry/fallback to Qwen)
---
**Error Handling**: Gemini may show HTTP 429 error but still return results - check if results exist (results present = success, no results = retry/fallback to Qwen)
### Codex
#### Overview
- **Command**: `codex --full-auto exec`
- **Strengths**: Autonomous development, mathematical reasoning
- **Best For**: Implementation, testing, automation
- **Permissions**: Requires explicit MODE=auto or MODE=write specification
- **Default MODE**: No default, must be explicitly specified
- **⚠️ Write Trigger**: Only when user explicitly requests "implement", "modify", "generate code" AND specifies MODE
**Command**: `codex --full-auto exec`
#### MODE Options
**Strengths**: Autonomous development, mathematical reasoning
**auto** - ⚠️ Autonomous development with full file operations
- Requires explicit specification
- Enables `-s danger-full-access`
- Use for: feature implementation, bug fixes, autonomous development
**Best For**: Implementation, testing, automation
**write** - ⚠️ Test generation and file modification
- Requires explicit specification
- Use for: test generation, focused file modifications
**Default MODE**: No default, must be explicitly specified
#### Session Management
**Session Management**:
- `codex resume` - Resume previous session (picker)
- `codex resume --last` - Resume most recent session
- `codex -i <image_file>` - Attach image to prompt
**Basic Commands**:
- `codex resume` - Resume previous interactive session (picker by default)
- `codex resume --last` - Resume most recent session directly
- `codex -i <image_file>` - Attach image(s) to initial prompt (useful for UI/design references)
**Multi-task Pattern**:
- **First task**: MUST use full Standard Prompt Template with `exec` to establish complete context
- **Subsequent tasks**: Can use brief prompt with `exec "..." resume --last` (inherits context from session)
**Multi-task Pattern**: First task uses `exec`, subsequent tasks use `exec "..." resume --last` for context continuity
**Prompt Requirements**:
- **Without `resume --last`**: ALWAYS use full Standard Prompt Template
- **With `resume --last`**: Brief description sufficient (previous template context inherited)
**Parameter Position**: `resume --last` must be placed AFTER the prompt string at command END
**Example**:
```bash
# First task - establish session
codex -C project --full-auto exec "Implement auth module" --skip-git-repo-check -s danger-full-access
# Subsequent tasks - continue same session
codex --full-auto exec "Add JWT validation" resume --last --skip-git-repo-check -s danger-full-access
codex --full-auto exec "Write auth tests" resume --last --skip-git-repo-check -s danger-full-access
```
#### Auto-Resume Decision Rules
**When to use `resume --last`**:
- Current task is related to/extends previous Codex task in conversation memory
- Current task requires context from previous implementation
- Current task is part of multi-step workflow (e.g., implement → enhance → test)
- Session memory indicates recent Codex execution on same module/feature
**When NOT to use `resume --last`**:
- First Codex task in conversation
- New independent task unrelated to previous work
- Switching to different module/feature area
- No recent Codex task in conversation memory
**Auto-Resume Rules**:
- **Use `resume --last`**: Related tasks, extending previous work, multi-step workflow
- **Don't use**: First task, new independent work, different module
---
@@ -157,227 +152,310 @@ codex --full-auto exec "Write auth tests" resume --last --skip-git-repo-check -s
### Universal Template Structure
Every command MUST follow this structure:
- [ ] **PURPOSE** - Clear goal and intent
- State the high-level objective of this execution
- Explain why this task is needed
- Define success criteria
- Example: "Analyze authentication module to identify security vulnerabilities"
- [ ] **TASK** - Specific execution task (use list format: • Task item 1 • Task item 2 • Task item 3)
- Break down PURPOSE into concrete, actionable steps
- Use bullet points (•) for multiple sub-tasks
- Order tasks by execution sequence
- Example: "• Review auth implementation patterns • Identify potential security risks • Document findings with recommendations"
- [ ] **MODE** - Execution mode and permission level
- `analysis` (default): Read-only operations, no file modifications
- `write`: File creation/modification/deletion allowed (requires explicit specification)
- `auto`: Full autonomous development operations (Codex only, requires explicit specification)
- Example: "MODE: analysis" or "MODE: write"
- [ ] **CONTEXT** - File references and memory context from previous sessions
- **File Patterns**: Use @ syntax for file references (default: `@**/*` for all files)
- `@**/*` - All files in current directory tree
- `@src/**/*.ts` - TypeScript files in src directory
- `@../shared/**/*` - Files from sibling directory (requires `--include-directories`)
- **Memory Context**: Reference previous session findings and context
- Related tasks: `Building on previous analysis from [session/commit]`
- Tech stack: `Using patterns from [tech-stack-name] documentation`
- Cross-reference: `Related to implementation in [module/file]`
- **Memory Sources**: Include relevant memory sources
- Documentation: `CLAUDE.md`, module-specific docs
- Example: "CONTEXT: @src/auth/**/* @CLAUDE.md | Memory: Building on previous auth refactoring (commit abc123)"
- [ ] **EXPECTED** - Clear expected results
- Specify deliverable format (report, code, documentation, list)
- Define quality criteria
- State output structure requirements
- Example: "Comprehensive security report with categorized findings, risk levels, and actionable recommendations"
- [ ] **RULES** - Template reference and constraints (include mode constraints: analysis=READ-ONLY | write=CREATE/MODIFY/DELETE | auto=FULL operations)
- Reference templates: `$(cat ~/.claude/workflows/cli-templates/prompts/[category]/[template].txt)`
- Specify constraints and boundaries
- Include mode-specific constraints:
- `analysis=READ-ONLY` - No file modifications
- `write=CREATE/MODIFY/DELETE` - File operations allowed
- `auto=FULL operations` - Autonomous development
- Example: "$(cat ~/.claude/workflows/cli-templates/prompts/analysis/security.txt) | Focus on authentication flows only | analysis=READ-ONLY"
---
### Standard Prompt Template
### Standard Command Formats
#### Gemini & Qwen Commands
```bash
# Analysis Mode (read-only, default)
# Use 'gemini' (primary) or 'qwen' (fallback)
cd [directory] && gemini -p "
PURPOSE: [clear analysis goal]
TASK: [specific analysis task]
MODE: analysis
CONTEXT: @**/* [default: all files, or specify file patterns]
EXPECTED: [expected output]
RULES: [template reference and constraints]
"
# Model Selection Examples (NOTE: -m placed AFTER prompt)
cd [directory] && gemini -p "..." -m gemini-2.5-pro # Analysis (default)
cd [directory] && gemini -p "..." -m gemini-2.5-flash # Documentation updates
cd [directory] && qwen -p "..." # coder-model (default, -m optional)
cd [directory] && qwen -p "..." -m vision-model # Image analysis (rare)
# Write Mode (requires explicit MODE=write)
# NOTE: --approval-mode yolo must be placed AFTER the prompt
cd [directory] && gemini -p "
PURPOSE: [clear goal]
TASK: [specific task]
MODE: write
CONTEXT: @**/* [default: all files, or specify file patterns]
EXPECTED: [expected output]
RULES: [template reference and constraints]
" -m gemini-2.5-flash --approval-mode yolo
# Fallback: Replace 'gemini' with 'qwen' if Gemini unavailable
cd [directory] && qwen -p "..." # coder-model default (-m optional)
```
PURPOSE: [clear goal - state objective, why needed, success criteria]
TASK:
• [specific task - actionable step 1]
• [specific task - actionable step 2]
• [specific task - actionable step 3]
MODE: [analysis|write|auto]
CONTEXT: @**/* | Memory: [previous session findings, related implementations, tech stack patterns, workflow context]
EXPECTED: [deliverable format, quality criteria, output structure, testing requirements (if applicable)]
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt) | [additional constraints] | [MODE]=[READ-ONLY|CREATE/MODIFY/DELETE|FULL operations]
```
#### Codex Commands
### Tool-Specific Configuration
Use the **[Standard Prompt Template](#standard-prompt-template)** for all tools. This section only covers tool-specific command syntax.
#### Gemini & Qwen
**Command Format**: `cd [directory] && [tool] -p "[Standard Prompt Template]" [options]`
**Syntax Elements**:
- **Directory**: `cd [directory] &&` (navigate to target directory)
- **Tool**: `gemini` (primary) | `qwen` (fallback)
- **Prompt**: `-p "[Standard Prompt Template]"` (prompt BEFORE options)
- **Model**: `-m [model-name]` (REQUIRED, placed AFTER prompt)
- Gemini: `gemini-3-pro-preview-11-2025` (default) | `gemini-2.5-pro` | `gemini-2.5-flash`
- Qwen: `coder-model` (default) | `vision-model`
- **Write Permission**: `--approval-mode yolo` (ONLY for MODE=write, placed AFTER prompt)
**Command Examples**:
```bash
# Codex Development (requires explicit MODE=auto)
# NOTE: -m, --skip-git-repo-check and -s danger-full-access must be placed at command END
codex -C [directory] --full-auto exec "
PURPOSE: [clear development goal]
TASK: [specific development task]
# Analysis Mode (default, read-only)
cd [directory] && gemini -p "[Standard Prompt Template]" -m gemini-3-pro-preview-11-2025
# Write Mode (requires MODE=write in template + --approval-mode yolo)
cd [directory] && gemini -p "[Standard Prompt Template with MODE: write]" -m gemini-2.5-flash --approval-mode yolo
# Fallback to Qwen
cd [directory] && qwen -p "[Standard Prompt Template]" -m coder-model
# Multi-directory support
cd [directory] && gemini -p "[Standard Prompt Template]" -m gemini-3-pro-preview-11-2025 --include-directories ../shared,../types
```
#### Codex
**Command Format**: `codex -C [directory] --full-auto exec "[Standard Prompt Template]" [options]`
**Syntax Elements**:
- **Directory**: `-C [directory]` (target directory parameter)
- **Execution Mode**: `--full-auto exec` (required for autonomous execution)
- **Prompt**: `exec "[Standard Prompt Template]"` (prompt BEFORE options)
- **Model**: `-m [model-name]` (REQUIRED, placed AFTER prompt, BEFORE flags)
- `gpt-5` (default) | `gpt5-codex` (large context)
- **Write Permission**: `--skip-git-repo-check -s danger-full-access` (ONLY for MODE=auto or MODE=write, placed at command END)
- **Session Resume**: `resume --last` (placed AFTER prompt, BEFORE flags)
**Command Examples**:
```bash
# Auto Mode (requires MODE=auto in template + permission flags)
codex -C [directory] --full-auto exec "[Standard Prompt Template with MODE: auto]" -m gpt-5 --skip-git-repo-check -s danger-full-access
# Write Mode (requires MODE=write in template + permission flags)
codex -C [directory] --full-auto exec "[Standard Prompt Template with MODE: write]" -m gpt-5 --skip-git-repo-check -s danger-full-access
# Session continuity
# First task - MUST use full Standard Prompt Template to establish context
codex -C project --full-auto exec "[Standard Prompt Template with MODE: auto]" -m gpt-5 --skip-git-repo-check -s danger-full-access
# Subsequent tasks - Can use brief prompt ONLY when using 'resume --last'
# (inherits full context from previous session, no need to repeat template)
codex --full-auto exec "Add JWT refresh token validation" resume --last --skip-git-repo-check -s danger-full-access
# With image attachment
codex -C [directory] -i design.png --full-auto exec "[Standard Prompt Template]" -m gpt-5 --skip-git-repo-check -s danger-full-access
```
**Complete Example (Codex with full template)**:
```bash
# First task - establish session with full template
codex -C project --full-auto exec "
PURPOSE: Implement authentication module
TASK: • Create auth service • Add user validation • Setup JWT tokens
MODE: auto
CONTEXT: @**/* [default: all files, or specify file patterns and memory context]
EXPECTED: [expected deliverables]
RULES: [template reference and constraints]
CONTEXT: @**/* | Memory: Following security patterns from project standards
EXPECTED: Complete auth module with tests
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/development/feature.txt) | Follow existing patterns | auto=FULL operations
" -m gpt-5 --skip-git-repo-check -s danger-full-access
# Model Selection Examples (NOTE: -m placed AFTER prompt, BEFORE flags)
codex -C [directory] --full-auto exec "..." -m gpt-5 --skip-git-repo-check -s danger-full-access # Analysis & execution (default)
codex -C [directory] --full-auto exec "..." -m gpt5-codex --skip-git-repo-check -s danger-full-access # Large context tasks
# Codex Test/Write Mode (requires explicit MODE=write)
# NOTE: -m, --skip-git-repo-check and -s danger-full-access must be placed at command END
codex -C [directory] --full-auto exec "
PURPOSE: [clear goal]
TASK: [specific task]
MODE: write
CONTEXT: @**/* [default: all files, or specify file patterns and memory context]
EXPECTED: [expected deliverables]
RULES: [template reference and constraints]
" -m gpt-5 --skip-git-repo-check -s danger-full-access
# Subsequent tasks - brief description with resume
codex --full-auto exec "Add JWT refresh token validation" resume --last --skip-git-repo-check -s danger-full-access
```
---
### Directory Context Configuration
**Tool Directory Navigation**:
- **Gemini & Qwen**: `cd path/to/project && gemini -p "prompt"` (or `qwen`)
- **Codex**: `codex -C path/to/project --full-auto exec "task"` (Codex still supports -C)
- **Path types**: Supports both relative (`../project`) and absolute (`/full/path`) paths
- **Token analysis**: For Gemini/Qwen, token counting happens in current directory
- **Gemini & Qwen**: `cd path/to/project && gemini -p "prompt"`
- **Codex**: `codex -C path/to/project --full-auto exec "task"`
- **Path types**: Supports both relative (`../project`) and absolute (`/full/path`)
#### ⚠️ Critical Directory Scope Rules
#### Critical Directory Scope Rules
**Once `cd` to a directory**:
- **@ references ONLY apply to current directory and its subdirectories**
- @ references ONLY apply to current directory and subdirectories
- `@**/*` = All files within current directory tree
- `@*.ts` = TypeScript files in current directory tree
- `@src/**/*` = Files within src subdirectory (if exists under current directory)
- **CANNOT reference parent or sibling directories via @ alone**
- `@src/**/*` = Files within src subdirectory
- CANNOT reference parent/sibling directories via @ alone
**To reference files outside current directory (TWO-STEP REQUIREMENT)**:
- **Step 1**: Add `--include-directories` parameter to make external directories ACCESSIBLE
- **Step 2**: Explicitly reference external files in CONTEXT field with @ patterns
- **⚠️ BOTH steps are MANDATORY** - missing either step will fail
- Example: `cd src/auth && gemini -p "CONTEXT: @**/* @../shared/**/*" --include-directories ../shared`
- **Rule**: If CONTEXT contains `@../dir/**/*`, command MUST include `--include-directories ../dir`
- Without `--include-directories`, @ patterns CANNOT access parent/sibling directories at all
1. Add `--include-directories` parameter to make external directories ACCESSIBLE
2. Explicitly reference external files in CONTEXT field with @ patterns
3. ⚠️ BOTH steps are MANDATORY
Example: `cd src/auth && gemini -p "CONTEXT: @**/* @../shared/**/*" -m gemini-3-pro-preview-11-2025 --include-directories ../shared`
**Rule**: If CONTEXT contains `@../dir/**/*`, command MUST include `--include-directories ../dir`
#### Multi-Directory Support (Gemini & Qwen)
**Purpose**: For large projects requiring fine-grained access across multiple directories
**Use Case**: When `cd` limits scope but you need to reference files from parent/sibling folders
**Parameter**: `--include-directories <dir1,dir2,...>`
- Includes additional directories in the workspace beyond current `cd` directory
- Can be specified multiple times or as comma-separated values
- Maximum 5 directories can be added
- **REQUIRED** when working in a subdirectory but needing context from parent or sibling directories
- Includes additional directories beyond current `cd` directory
- Can be specified multiple times or comma-separated
- Maximum 5 directories
- REQUIRED when working in subdirectory but needing parent/sibling context
**Syntax Options**:
**Syntax**:
```bash
# Comma-separated format
gemini -p "prompt" --include-directories /path/to/project1,/path/to/project2
gemini -p "prompt" -m gemini-3-pro-preview-11-2025 --include-directories /path/to/project1,/path/to/project2
# Multiple flags format
gemini -p "prompt" --include-directories /path/to/project1 --include-directories /path/to/project2
gemini -p "prompt" -m gemini-3-pro-preview-11-2025 --include-directories /path/to/project1 --include-directories /path/to/project2
# Combined with cd for focused analysis with extended context (RECOMMENDED)
# Recommended: cd + --include-directories
cd src/auth && gemini -p "
PURPOSE: Analyze authentication with shared utilities context
TASK: Review auth implementation and its dependencies
MODE: analysis
CONTEXT: @**/* @../shared/**/* @../types/**/*
EXPECTED: Complete analysis with cross-directory dependencies
RULES: Focus on integration patterns
" --include-directories ../shared,../types
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt) | Focus on integration patterns | analysis=READ-ONLY
" -m gemini-3-pro-preview-11-2025 --include-directories ../shared,../types
```
**Best Practices**:
- **Recommended Pattern**: Use `cd` to navigate to primary focus directory, then use `--include-directories` for additional context
- Example: `cd src/auth && gemini -p "CONTEXT: @**/* @../shared/**/*" --include-directories ../shared,../types`
- **⚠️ CRITICAL**: CONTEXT must explicitly list external files (e.g., `@../shared/**/*`), AND command must include `--include-directories ../shared`
- Benefits: More precise file references (relative to current directory), clearer intent, better context control
- **Enforcement Rule**: When CONTEXT references external directories, ALWAYS add corresponding `--include-directories`
- Use when `cd` alone limits necessary context visibility
- Keep directory count ≤ 5 for optimal performance
- **Pattern matching rule**: `@../dir/**/*` in CONTEXT → `--include-directories ../dir` in command (MANDATORY)
- Prefer `cd + --include-directories` over multiple `cd` commands for cross-directory analysis
---
- Use `cd` to navigate to primary focus directory
- Use `--include-directories` for additional context
- ⚠️ CONTEXT must explicitly list external files AND command must include `--include-directories`
- Benefits: Minimizes irrelevant file interference, more precise file references
- Pattern matching rule: `@../dir/**/*` in CONTEXT → `--include-directories ../dir` in command (MANDATORY)
### CONTEXT Field Configuration
CONTEXT field consists of: **File Patterns** + **Memory Context**
#### File Pattern Reference
**Default Pattern**:
- **All files (default)**: `@**/*` - Use this as default for comprehensive context
**Default**: `@**/*` (all files - use as default for comprehensive context)
**Common Patterns**:
- Source files: `@src/**/*`
- TypeScript: `@*.ts @*.tsx` (multiple @ for multiple patterns)
- With docs: `@CLAUDE.md @**/*CLAUDE.md` (multiple @ for multiple patterns)
- TypeScript: `@*.ts @*.tsx`
- With docs: `@CLAUDE.md @**/*CLAUDE.md`
- Tests: `@src/**/*.test.*`
#### Memory Context Integration
**Purpose**: Leverage previous session findings, related implementations, and established patterns to provide continuity
**Format**: `CONTEXT: [file patterns] | Memory: [memory context]`
**Memory Sources**:
1. **Related Tasks** - Cross-task context
- Previous refactoring, task extensions, conflict resolution
2. **Tech Stack Patterns** - Framework and library conventions
- React hooks patterns, TypeScript utilities, security guidelines
3. **Cross-Module References** - Inter-module dependencies
- Integration points, shared utilities, type dependencies
**Memory Context Examples**:
```bash
# Example 1: Building on related task
CONTEXT: @src/auth/**/* @CLAUDE.md | Memory: Building on previous auth refactoring (commit abc123), implementing refresh token mechanism following React hooks patterns
# Example 2: Cross-module integration
CONTEXT: @src/payment/**/* @src/shared/types/**/* | Memory: Integration with auth module from previous implementation, using shared error handling patterns from @shared/utils/errors.ts
```
**Best Practices**:
- **Always include memory context** when building on previous work
- **Reference commits/tasks**: Use commit hashes or task IDs for traceability
- **Document dependencies** with explicit file references
- **Cross-reference implementations** with file paths
- **Use consistent format**: `CONTEXT: [file patterns] | Memory: [memory context]`
#### Complex Pattern Discovery
For complex file pattern requirements, use semantic discovery tools BEFORE CLI execution:
- **rg (ripgrep)**: Content-based file discovery with regex patterns
- **Code Index MCP**: Semantic file search based on task requirements
- **Workflow**: Discover → Extract precise paths → Build CONTEXT field
For complex file pattern requirements, use semantic discovery BEFORE CLI execution:
**Tools**:
- `rg (ripgrep)` - Content-based file discovery with regex
- `mcp__code-index__search_code_advanced` - Semantic file search
**Workflow**: Discover → Extract precise paths → Build CONTEXT field
**Example**:
```bash
# Step 1: Discover files semantically
rg "export.*Component" --files-with-matches --type ts # Find component files
mcp__code-index__search_code_advanced(pattern="interface.*Props", file_pattern="*.tsx") # Find interface files
rg "export.*Component" --files-with-matches --type ts
mcp__code-index__search_code_advanced(pattern="interface.*Props", file_pattern="*.tsx")
# Step 2: Build precise CONTEXT from discovery results
CONTEXT: @src/components/Auth.tsx @src/types/auth.d.ts @src/hooks/useAuth.ts
# Step 2: Build precise CONTEXT with file patterns + memory
CONTEXT: @src/components/Auth.tsx @src/types/auth.d.ts @src/hooks/useAuth.ts | Memory: Previous refactoring identified type inconsistencies, following React hooks patterns
# Step 3: Execute CLI with precise file references
# Step 3: Execute CLI with precise references
cd src && gemini -p "
PURPOSE: Analyze authentication components
TASK: Review auth component patterns and props interfaces
PURPOSE: Analyze authentication components for type safety improvements
TASK:
• Review auth component patterns and props interfaces
• Identify type inconsistencies in auth components
• Recommend improvements following React best practices
MODE: analysis
CONTEXT: @components/Auth.tsx @types/auth.d.ts @hooks/useAuth.ts
EXPECTED: Pattern analysis and improvement suggestions
RULES: Focus on type safety and component composition
"
CONTEXT: @components/Auth.tsx @types/auth.d.ts @hooks/useAuth.ts | Memory: Previous refactoring identified type inconsistencies, following React hooks patterns, related implementation in @hooks/useAuth.ts (commit abc123)
EXPECTED: Comprehensive analysis report with type safety recommendations, code examples, and references to previous findings
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt) | Focus on type safety and component composition | analysis=READ-ONLY
" -m gemini-3-pro-preview-11-2025
```
---
### RULES Field Configuration
#### Basic Format
```bash
RULES: $(cat ~/.claude/workflows/cli-templates/prompts/[category]/[template].txt) | [constraints]
```
**Basic Format**: `RULES: $(cat ~/.claude/workflows/cli-templates/prompts/[category]/[template].txt) | [constraints]`
#### ⚠️ CRITICAL: Command Substitution Rules
When using `$(cat ...)` for template loading in actual CLI commands:
- **Template reference only, never read**: When user specifies template name, use `$(cat ...)` directly in RULES field, do NOT read template content first
**⚠️ Command Substitution Rules**:
- **Template reference only, never read**: Use `$(cat ...)` directly, do NOT read template content first
- **NEVER use escape characters**: `\$`, `\"`, `\'` will break command substitution
- **In prompt context**: Path in `$(cat ...)` needs NO quotes (tilde expands correctly)
- **In prompt context**: Path needs NO quotes (tilde expands correctly)
- **Correct**: `RULES: $(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt)`
- **WRONG**: `RULES: \$(cat ...)` or `RULES: $(cat \"...\")` or `RULES: $(cat '...')`
- **Why**: Shell executes `$(...)` in subshell where path is safe without quotes
- **WRONG**: `RULES: \$(cat ...)` or `RULES: $(cat \"...\")`
- **Why**: Shell executes `$(...)` in subshell where path is safe
#### Examples
- Single template: `$(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt) | Focus on security`
- Multiple templates: `$(cat template1.txt) $(cat template2.txt) | Enterprise standards`
**Examples**:
- Single: `$(cat ~/.claude/workflows/cli-templates/prompts/analysis/pattern.txt) | Focus on security`
- Multiple: `$(cat template1.txt) $(cat template2.txt) | Enterprise standards`
- No template: `Focus on security patterns, include dependency analysis`
- File patterns: `@src/**/*.ts @CLAUDE.md - Stay within scope`
---
### Template System
#### Base Structure
`~/.claude/workflows/cli-templates/`
#### Available Templates
**Base**: `~/.claude/workflows/cli-templates/`
**Available Templates**:
```
prompts/
├── analysis/
@@ -390,7 +468,7 @@ prompts/
│ ├── refactor.txt - Refactoring tasks
│ └── testing.txt - Test generation
├── memory/
│ └── claude-module-unified.txt - Universal module/file documentation template
│ └── claude-module-unified.txt - Universal module/file documentation
└── planning/
└── task-breakdown.txt - Task decomposition
@@ -405,18 +483,18 @@ tech-stacks/
└── react-dev.md - React architecture
```
#### Task-Template Selection Matrix
**Task-Template Matrix**:
| Task Type | Tool | Use Case | Template |
|-----------|------|----------|-----------|
| **Analysis** | Gemini (Qwen fallback) | Code exploration, architecture review, patterns | `analysis/pattern.txt` |
| **Architecture** | Gemini (Qwen fallback) | System design, architectural analysis | `analysis/architecture.txt` |
| **Documentation** | Gemini (Qwen fallback) | Code docs, API specs, guides | `analysis/quality.txt` |
| **Development** | Codex | Feature implementation, bug fixes, testing | `development/feature.txt` |
| **Planning** | Gemini/Qwen | Task breakdown, migration planning | `planning/task-breakdown.txt` |
| **Security** | Codex | Vulnerability assessment, fixes | `analysis/security.txt` |
| **Refactoring** | Multiple | Gemini/Qwen for analysis, Codex for execution | `development/refactor.txt` |
| **Module Documentation** | Gemini (Qwen fallback) | Universal module/file documentation for all levels | `memory/claude-module-unified.txt` |
| Task Type | Tool | Template |
|-----------|------|----------|
| Analysis | Gemini (Qwen fallback) | `analysis/pattern.txt` |
| Architecture | Gemini (Qwen fallback) | `analysis/architecture.txt` |
| Documentation | Gemini (Qwen fallback) | `analysis/quality.txt` |
| Development | Codex | `development/feature.txt` |
| Planning | Gemini/Qwen | `planning/task-breakdown.txt` |
| Security | Codex | `analysis/security.txt` |
| Refactoring | Multiple | `development/refactor.txt` |
| Module Documentation | Gemini (Qwen fallback) | `memory/claude-module-unified.txt` |
---
@@ -425,82 +503,69 @@ tech-stacks/
### Dynamic Timeout Allocation
**Timeout Ranges**:
- **Simple tasks** (analysis, search): 20-40min (1200000-2400000ms)
- **Medium tasks** (refactoring, documentation): 40-60min (2400000-3600000ms)
- **Complex tasks** (implementation, migration): 60-120min (3600000-7200000ms)
- **Simple** (analysis, search): 20-40min (1200000-2400000ms)
- **Medium** (refactoring, documentation): 40-60min (2400000-3600000ms)
- **Complex** (implementation, migration): 60-120min (3600000-7200000ms)
**Codex Multiplier**: Codex commands use 1.5x of allocated time
**Codex Multiplier**: 1.5x of allocated time
**Application**: All bash() wrapped commands including Gemini, Qwen and Codex executions
**Auto-detection**: Analyze PURPOSE and TASK fields to determine appropriate timeout
**Command Examples**:
```bash
bash(gemini -p "prompt") # Simple analysis: 20-40min
bash(codex -C directory --full-auto exec "task") # Complex implementation: 90-180min
```
---
**Auto-detection**: Analyze PURPOSE and TASK fields to determine timeout
### Permission Framework
#### Write Operation Protection
**⚠️ WRITE PROTECTION**: Local codebase write/modify requires EXPLICIT user confirmation
**⚠️ Single-Use Explicit Authorization**: Each CLI execution requires explicit user command instruction - one command authorizes ONE execution only. Analysis does NOT authorize write operations. Previous authorization does NOT carry over. Each operation needs NEW explicit user directive.
**Mode Hierarchy**:
- **Analysis Mode (default)**: Read-only, safe for auto-execution
- **Write Mode**: Requires user explicitly states MODE=write or MODE=auto in prompt
- **analysis** (default): Read-only, safe for auto-execution
- **write**: Requires explicit MODE=write specification
- **auto**: Requires explicit MODE=auto specification
- **Exception**: User provides clear instructions like "modify", "create", "implement"
#### Tool-Specific Permissions
**Gemini/Qwen Write Access**:
- Use `--approval-mode yolo` ONLY when MODE=write explicitly specified
- **Parameter Position**: Place AFTER the prompt: `gemini -p "..." --approval-mode yolo`
**Codex Write Access**:
- Use `-s danger-full-access` and `--skip-git-repo-check` ONLY when MODE=auto explicitly specified
- **Parameter Position**: Place AFTER the prompt string at command END: `codex ... exec "..." --skip-git-repo-check -s danger-full-access`
**Default Behavior**: All tools default to analysis/read-only mode without explicit write permission
**Tool-Specific Permissions**:
- **Gemini/Qwen**: Use `--approval-mode yolo` ONLY when MODE=write (placed AFTER prompt)
- **Codex**: Use `--skip-git-repo-check -s danger-full-access` ONLY when MODE=auto or MODE=write (placed at command END)
- **Default**: All tools default to analysis/read-only mode
---
## 🔧 Best Practices
### General Guidelines
### Workflow Principles
**Workflow Principles**:
- **Start with templates** - Use predefined templates for consistency
- **Be specific** - Clear PURPOSE, TASK, and EXPECTED fields
- **Be specific** - Clear PURPOSE, TASK, and EXPECTED fields with detailed descriptions
- **Include constraints** - File patterns, scope, requirements in RULES
- **Leverage memory context** - ALWAYS include Memory field when building on previous work
- Cross-reference tasks with file paths and commit hashes
- Document dependencies with explicit file references
- Reference related implementations and patterns
- **Discover patterns first** - Use rg/MCP for complex file discovery before CLI execution
- **Build precise CONTEXT** - Convert discovery results to explicit file references
- **Document context** - Always reference CLAUDE.md for context
- **Default to full context** - Use `@**/*` in CONTEXT for comprehensive analysis unless specific files needed
- **⚠️ No escape characters in CLI commands** - NEVER use `\$`, `\"`, `\'` in actual CLI execution (breaks command substitution and path expansion)
---
- **Build precise CONTEXT** - Convert discovery to explicit file references with memory
- Format: `CONTEXT: [file patterns] | Memory: [memory context]`
- File patterns: `@**/*` (default) or specific patterns
- Memory: Previous sessions, tech stack patterns, cross-references
- **Document context** - Always reference CLAUDE.md and relevant documentation
- **Default to full context** - Use `@**/*` unless specific files needed
- **⚠️ No escape characters** - NEVER use `\$`, `\"`, `\'` in CLI commands
### Context Optimization Strategy
**Directory Navigation**: Use `cd [directory] &&` pattern when analyzing specific areas to reduce irrelevant context
**Directory Navigation**: Use `cd [directory] &&` pattern to reduce irrelevant context
**When to change directory**:
- Specific directory mentioned → Use `cd directory &&` pattern
- Focused analysis needed → Target specific directory with cd
- Multi-directory scope → Use `cd` + `--include-directories` for precise control
- Specific directory mentioned → Use `cd directory &&`
- Focused analysis needed → Target specific directory
- Multi-directory scope → Use `cd` + `--include-directories`
**When to use `--include-directories`**:
- Working in subdirectory but need parent/sibling context
- Cross-directory dependency analysis required
- Multiple related modules need simultaneous access
- **Key benefit**: Excludes unrelated directories, reduces token usage
---
### Workflow Integration (REQUIRED)
### Workflow Integration
When planning any coding task, **ALWAYS** integrate CLI tools:
@@ -509,8 +574,6 @@ When planning any coding task, **ALWAYS** integrate CLI tools:
3. **Implementation Phase**: Use Codex for development
4. **Quality Phase**: Use Codex for testing and validation
---
### Planning Checklist
For every development task:
@@ -519,6 +582,6 @@ For every development task:
- [ ] **Context gathered** - File references and session memory documented (default `@**/*`)
- [ ] **Directory navigation** - Determine if `cd` or `cd + --include-directories` needed
- [ ] **Gemini analysis** completed for understanding
- [ ] **Template selected** - Appropriate template chosen
- [ ] **Template applied** - Use Standard Prompt Template (universal for all tools)
- [ ] **Constraints specified** - File patterns, scope, requirements
- [ ] **Implementation approach** - Tool selection and workflow

View File

@@ -4,7 +4,7 @@
Task commands provide single-execution workflow capabilities with full context awareness, hierarchical organization, and agent orchestration.
## Task JSON Schema
All task files use this simplified 5-field schema (aligned with workflow-architecture.md):
All task files use this simplified 5-field schema:
```json
{

View File

@@ -104,13 +104,14 @@ IMPL-2.1 # Subtask of IMPL-2 (dynamically created)
- **Status inheritance**: Parent status derived from subtask completion
### Enhanced Task JSON Schema
All task files use this unified 5-field schema with optional artifacts enhancement:
All task files use this unified 6-field schema with optional artifacts enhancement:
```json
{
"id": "IMPL-1.2",
"title": "Implement JWT authentication",
"status": "pending|active|completed|blocked|container",
"context_package_path": ".workflow/WFS-session/.process/context-package.json",
"meta": {
"type": "feature|bugfix|refactor|test-gen|test-fix|docs",
@@ -228,6 +229,13 @@ All task files use this unified 5-field schema with optional artifacts enhanceme
### Focus Paths & Context Management
#### Context Package Path (Top-Level Field)
The **context_package_path** field provides the location of the smart context package:
- **Location**: Top-level field (not in `artifacts` array)
- **Path**: `.workflow/WFS-session/.process/context-package.json`
- **Purpose**: References the comprehensive context package containing project structure, dependencies, and brainstorming artifacts catalog
- **Usage**: Loaded in `pre_analysis` steps via `Read({{context_package_path}})`
#### Focus Paths Format
The **focus_paths** field specifies concrete project paths for task implementation:
- **Array of strings**: `["folder1", "folder2", "specific_file.ts"]`
@@ -343,9 +351,12 @@ The `[FLOW_CONTROL]` marker indicates that a task or prompt contains flow contro
"on_error": "skip_optional"
},
{
"step": "mcp_codebase_exploration",
"action": "Explore codebase using MCP",
"command": "mcp__code-index__find_files(pattern=\"*.ts\") && mcp__code-index__search_code_advanced(pattern=\"auth\")",
"step": "local_codebase_exploration",
"action": "Explore codebase using local search",
"commands": [
"bash(rg '^(function|class|interface).*auth' --type ts -n --max-count 15)",
"bash(find . -name '*auth*' -type f | grep -v node_modules | head -10)"
],
"output_to": "codebase_structure"
}
],
@@ -416,7 +427,7 @@ The `[FLOW_CONTROL]` marker indicates that a task or prompt contains flow contro
**Command Types Supported**:
- **Bash commands**: `bash(command)` - Any shell command
- **Tool calls**: `Read(file)`, `Glob(pattern)`, `Grep(pattern)`
- **MCP tools**: `mcp__code-index__find_files()`, `mcp__exa__get_code_context_exa()`
- **MCP tools**: `mcp__exa__get_code_context_exa()`, `mcp__exa__web_search_exa()`
- **CLI commands**: `gemini`, `qwen`, `codex --full-auto exec`
**Example**:
@@ -541,8 +552,6 @@ codex --full-auto exec "task" resume --last --skip-git-repo-check -s danger-full
- `bash(command)` - Execute bash command
**MCP Tools**:
- `mcp__code-index__find_files(pattern="*.ts")` - Find files using code index
- `mcp__code-index__search_code_advanced(pattern="auth")` - Search code patterns
- `mcp__exa__get_code_context_exa(query="...")` - Get code context from Exa
- `mcp__exa__web_search_exa(query="...")` - Web search via Exa

5
.gitignore vendored
View File

@@ -20,4 +20,7 @@ Thumbs.db
settings.local.json
.workflow
version.json
ref
ref
COMMAND_FLOW_STANDARD.md
COMMAND_TEMPLATE_EXECUTOR.md
COMMAND_TEMPLATE_ORCHESTRATOR.md

File diff suppressed because it is too large Load Diff

274
COMMAND_FLOW_STANDARD.md Normal file
View File

@@ -0,0 +1,274 @@
# Command Flow Expression Standard
**用途**规范命令文档中Task、SlashCommand、Skill和Bash调用的标准表达方式
**版本**v2.1.0
---
## 核心原则
1. **统一格式** - 所有调用使用标准化格式
2. **清晰参数** - 必需参数明确标注,可选参数加方括号
3. **减少冗余** - 避免不必要的echo命令和管道操作
4. **工具优先** - 优先使用专用工具Write/Read/Edit而非Bash变通
5. **可读性** - 保持缩进和换行的一致性
---
## 1. Task调用标准Agent启动
### 标准格式
```javascript
Task(
subagent_type="agent-type",
description="Brief description",
prompt=`
FULL TASK PROMPT HERE
`
)
```
### 规范要求
- `subagent_type`: Agent类型字符串
- `description`: 简短描述5-10词动词开头
- `prompt`: 完整任务提示(使用反引号包裹多行内容)
- 参数字段缩进2空格
### 正确示例
```javascript
// CLI执行agent
Task(
subagent_type="cli-execution-agent",
description="Analyze codebase patterns",
prompt=`
PURPOSE: Identify code patterns for refactoring
TASK: Scan project files and extract common patterns
MODE: analysis
CONTEXT: @src/**/*
EXPECTED: Pattern list with usage examples
`
)
// 代码开发agent
Task(
subagent_type="code-developer",
description="Implement authentication module",
prompt=`
GOAL: Build JWT-based authentication
SCOPE: User login, token validation, session management
CONTEXT: @src/auth/**/* @CLAUDE.md
`
)
```
---
## 2. SlashCommand调用标准
### 标准格式
```javascript
SlashCommand(command="/category:command-name [flags] arguments")
```
### 规范要求
单行调用 | 双引号包裹 | 完整路径`/category:command-name` | 参数顺序: 标志→参数值
### 正确示例
```javascript
// 无参数
SlashCommand(command="/workflow:status")
// 带标志和参数
SlashCommand(command="/workflow:session:start --auto \"task description\"")
// 变量替换
SlashCommand(command="/workflow:tools:context-gather --session [sessionId] \"description\"")
// 多个标志
SlashCommand(command="/workflow:plan --agent --cli-execute \"feature description\"")
```
---
## 3. Skill调用标准
### 标准格式
```javascript
Skill(command: "skill-name")
```
### 规范要求
单行调用 | 冒号语法`command:` | 双引号包裹skill-name
### 正确示例
```javascript
// 项目SKILL
Skill(command: "claude_dms3")
// 技术栈SKILL
Skill(command: "react-dev")
// 工作流SKILL
Skill(command: "workflow-progress")
// 变量替换
Skill(command: "${skill_name}")
```
---
## 4. Bash命令标准
### 核心原则:优先使用专用工具
**工具优先级**:
1. **Write工具** → 创建/覆盖文件内容
2. **Edit工具** → 修改现有文件内容
3. **Read工具** → 读取文件内容
4. **Bash命令** → 仅用于真正的系统操作git, npm, test等
### 标准格式
```javascript
bash(command args)
```
### 合理使用Bash的场景
```javascript
// ✅ Git操作
bash(git status --short)
bash(git commit -m "commit message")
// ✅ 包管理器和测试
bash(npm install)
bash(npm test)
// ✅ 文件系统查询和文本处理
bash(find .workflow -name "*.json" -type f)
bash(rg "pattern" --type js --files-with-matches)
```
### 避免Bash的场景
```javascript
// ❌ 文件创建/写入 → 使用Write工具
bash(echo "content" > file.txt) // 错误
Write({file_path: "file.txt", content: "content"}) // 正确
// ❌ 文件读取 → 使用Read工具
bash(cat file.txt) // 错误
Read({file_path: "file.txt"}) // 正确
// ❌ 简单字符串处理 → 在代码中处理
bash(echo "text" | tr '[:upper:]' '[:lower:]') // 错误
"text".toLowerCase() // 正确
```
---
## 5. 组合调用模式(伪代码准则)
### 核心准则
直接写执行逻辑无FUNCTION/END包裹| 用`#`注释分段 | 变量赋值`variable = value` | 条件`IF/ELSE` | 循环`FOR` | 验证`VALIDATE` | 错误`ERROR + EXIT 1`
### 顺序调用(依赖关系)
```pseudo
# Phase 1-2: Session and Context
sessionId = SlashCommand(command="/workflow:session:start --auto \"description\"")
PARSE sessionId from output
VALIDATE: bash(test -d .workflow/{sessionId})
contextPath = SlashCommand(command="/workflow:tools:context-gather --session {sessionId} \"desc\"")
context_json = READ(contextPath)
# Phase 3-4: Conditional and Agent
IF context_json.conflict_risk IN ["medium", "high"]:
SlashCommand(command="/workflow:tools:conflict-resolution --session {sessionId}")
Task(subagent_type="action-planning-agent", description="Generate tasks", prompt=`SESSION: {sessionId}`)
VALIDATE: bash(test -f .workflow/{sessionId}/IMPL_PLAN.md)
RETURN summary
```
### 并行调用(无依赖)
```pseudo
PARALLEL_START:
check_git = bash(git status)
check_count = bash(find .workflow -name "*.json" | wc -l)
check_skill = Skill(command: "project-name")
WAIT_ALL_COMPLETE
VALIDATE results
RETURN summary
```
### 条件分支调用
```pseudo
IF task_type CONTAINS "test": agent = "test-fix-agent"
ELSE IF task_type CONTAINS "implement": agent = "code-developer"
ELSE: agent = "universal-executor"
Skill(command: "project-name")
Task(subagent_type=agent, description="Execute task", prompt=build_prompt(task_type))
VALIDATE output
RETURN result
```
---
## 6. 变量和占位符规范
| 上下文 | 格式 | 示例 |
|--------|------|------|
| **Markdown说明** | `[variableName]` | `[sessionId]`, `[contextPath]` |
| **JavaScript代码** | `${variableName}` | `${sessionId}`, `${contextPath}` |
| **Bash命令** | `$variable` | `$session_id`, `$context_path` |
---
## 7. 快速检查清单
**Task**: subagent_type已指定 | description≤10词 | prompt用反引号 | 缩进2空格
**SlashCommand**: 完整路径 `/category:command` | 标志在前 | 变量用`[var]` | 双引号包裹
**Skill**: 冒号语法 `command:` | 双引号包裹 | 单行格式
**Bash**: 能用Write/Edit/Read工具吗| 避免不必要echo | 真正的系统操作
---
## 8. 常见错误及修复
```javascript
// ❌ 错误1: Bash中不必要的echo
bash(echo '{"status":"active"}' > status.json)
// ✅ 正确: 使用Write工具
Write({file_path: "status.json", content: '{"status":"active"}'})
// ❌ 错误2: Task单行格式
Task(subagent_type="agent", description="Do task", prompt=`...`)
// ✅ 正确: 多行格式
Task(subagent_type="agent", description="Do task", prompt=`...`)
// ❌ 错误3: Skill使用等号
Skill(command="skill-name")
// ✅ 正确: 使用冒号
Skill(command: "skill-name")
```

View File

@@ -0,0 +1,135 @@
# Command Template: Executor
**用途**:直接执行特定功能的执行器命令模板
**特征**:专注于自身功能实现,移除 Related Commands 段落
---
## 模板结构
```markdown
---
name: command-name
description: Brief description of what this command does
argument-hint: "[flags] arguments"
allowed-tools: Read(*), Edit(*), Write(*), Bash(*), TodoWrite(*)
---
# Command Name (/category:command-name)
## Overview
Clear description of what this command does and its purpose.
**Key Characteristics**:
- Executes specific functionality directly
- Does NOT orchestrate other commands
- Focuses on single responsibility
- Returns concrete results
## Core Functionality
- Function 1: Description
- Function 2: Description
- Function 3: Description
## Usage
### Command Syntax
```bash
/category:command-name [FLAGS] <ARGUMENTS>
# Flags
--flag1 Description
--flag2 Description
# Arguments
<arg1> Description
<arg2> Description (optional)
```
### Usage Examples
```bash
# Basic usage
/category:command-name arg1
# With flags
/category:command-name --flag1 --flag2 arg1
```
## Execution Process
### Step 1: Step Name
Description of what happens in this step
**Operations**:
- Operation 1
- Operation 2
**Validation**:
- Check 1
- Check 2
---
### Step 2: Step Name
[Repeat for each step]
---
## Input/Output
### Input Requirements
- Input 1: Description and format
- Input 2: Description and format
### Output Format
```
Output description and structure
```
## Error Handling
### Common Errors
| Error | Cause | Resolution |
|-------|-------|------------|
| Error message 1 | Root cause | How to fix |
| Error message 2 | Root cause | How to fix |
## Best Practices
1. **Practice 1**: Description and rationale
2. **Practice 2**: Description and rationale
3. **Practice 3**: Description and rationale
```
---
## 使用规则
### 核心原则
1. **移除 Related Commands** - 执行器不协调其他命令
2. **专注单一职责** - 每个执行器只做一件事
3. **清晰的步骤划分** - 明确执行流程
4. **完整的错误处理** - 列出常见错误和解决方案
### 可选段落
根据命令特性,以下段落可选:
- **Configuration**: 有配置参数时使用
- **Output Files**: 生成文件时使用
- **Exit Codes**: 有明确退出码时使用
- **Environment Variables**: 依赖环境变量时使用
### 格式要求
- 无 emoji/图标装饰
- 纯文本状态指示器
- 使用表格组织错误信息
- 提供实用的示例代码
## 示例参考
参考已重构的执行器命令:
- `.claude/commands/task/create.md`
- `.claude/commands/task/breakdown.md`
- `.claude/commands/task/execute.md`
- `.claude/commands/cli/execute.md`
- `.claude/commands/version.md`

View File

@@ -0,0 +1,140 @@
# Command Template: Orchestrator
**用途**:协调多个子命令的编排器命令模板
**特征**:保留 Related Commands 段落,明确说明调用的命令链
---
## 模板结构
```markdown
---
name: command-name
description: Brief description of what this command orchestrates
argument-hint: "[flags] arguments"
allowed-tools: SlashCommand(*), TodoWrite(*), Read(*), Bash(*)
---
# Command Name (/category:command-name)
## Overview
Clear description of what this command orchestrates and its role.
**Key Characteristics**:
- Orchestrates X phases/commands
- Coordinates between multiple slash commands
- Does NOT execute directly - delegates to specialized commands
- Manages workflow state and progress tracking
## Core Responsibilities
- Responsibility 1: Description
- Responsibility 2: Description
- Responsibility 3: Description
## Execution Flow
### Phase 1: Phase Name
**Command**: `SlashCommand(command="/command:name args")`
**Input**: Description of inputs
**Expected Behavior**:
- Behavior 1
- Behavior 2
**Parse Output**:
- Extract: variable name (pattern description)
**Validation**:
- Validation rule 1
- Validation rule 2
**TodoWrite**: Mark phase 1 completed, phase 2 in_progress
---
### Phase 2: Phase Name
[Repeat structure for each phase]
---
## TodoWrite Pattern
Track progress through all phases:
```javascript
TodoWrite({todos: [
{"content": "Execute phase 1", "status": "in_progress|completed", "activeForm": "Executing phase 1"},
{"content": "Execute phase 2", "status": "pending|in_progress|completed", "activeForm": "Executing phase 2"},
{"content": "Execute phase 3", "status": "pending|in_progress|completed", "activeForm": "Executing phase 3"}
]})
```
## Data Flow
```
Phase 1: command-1 → output-1
Phase 2: command-2 (input: output-1) → output-2
Phase 3: command-3 (input: output-2) → final-result
```
## Error Handling
| Phase | Error | Action |
|-------|-------|--------|
| 1 | Error description | Recovery action |
| 2 | Error description | Recovery action |
## Usage Examples
### Basic Usage
```bash
/category:command-name
/category:command-name --flag "argument"
```
## Related Commands
**Prerequisite Commands**:
- `/command:prerequisite` - Description of when to use before this
**Called by This Command**:
- `/command:phase1` - Description (Phase 1)
- `/command:phase2` - Description (Phase 2)
- `/command:phase3` - Description (Phase 3)
**Follow-up Commands**:
- `/command:next` - Description of what to do after this
```
---
## 使用规则
### 核心原则
1. **保留 Related Commands** - 明确说明命令调用链
2. **清晰的阶段划分** - 每个Phase独立可追踪
3. **数据流可视化** - 展示Phase间的数据传递
4. **TodoWrite追踪** - 实时更新执行进度
### Related Commands 分类
- **Prerequisite Commands**: 执行本命令前需要先运行的命令
- **Called by This Command**: 本命令会调用的子命令(按阶段分组)
- **Follow-up Commands**: 执行本命令后的推荐下一步
### 格式要求
- 无 emoji/图标装饰
- 纯文本状态指示器
- 使用表格组织错误信息
- 清晰的数据流图
## 示例参考
参考已重构的编排器命令:
- `.claude/commands/workflow/plan.md`
- `.claude/commands/workflow/execute.md`
- `.claude/commands/workflow/session/complete.md`
- `.claude/commands/workflow/session/start.md`

View File

@@ -151,8 +151,8 @@ While CCW works with Claude alone, installing these tools provides enhanced anal
| Tool | Purpose | Installation |
|------|---------|--------------|
| **ripgrep (rg)** | Fast code search | `brew install ripgrep` (macOS), `apt install ripgrep` (Ubuntu), `winget install ripgrep` (Windows) |
| **jq** | JSON processing | `brew install jq` (macOS), `apt install jq` (Ubuntu), `winget install jq` (Windows) |
| **ripgrep (rg)** | Fast code search | **macOS**: `brew install ripgrep`<br>**Linux**: `apt install ripgrep` (Ubuntu) / `dnf install ripgrep` (Fedora)<br>**Windows**: `winget install ripgrep` / `choco install ripgrep` / `scoop install ripgrep`<br>**Verify**: `rg --version` |
| **jq** | JSON processing | **macOS**: `brew install jq`<br>**Linux**: `apt install jq` (Ubuntu) / `dnf install jq` (Fedora)<br>**Windows**: `winget install jq` / `choco install jq` / `scoop install jq`<br>**Verify**: `jq --version` |
#### External AI Tools

View File

@@ -175,13 +175,21 @@ cd Dmsflow
这些工具增强了文件搜索和数据处理能力。
- **`ripgrep` (rg)**: 一款高速代码搜索工具。
- **Windows**: `winget install BurntSushi.Ripper.MSVC``choco install ripgrep`
- **Windows**:
- **WinGet**: `winget install ripgrep` (推荐,自动选择 MSVC 版本)
- **Chocolatey**: `choco install ripgrep`
- **Scoop**: `scoop install ripgrep`
- **手动下载**: 从 [GitHub Releases](https://github.com/BurntSushi/ripgrep/releases) 下载预编译二进制文件
- **macOS**: `brew install ripgrep`
- **Linux**: `sudo apt-get install ripgrep` (Debian/Ubuntu) 或 `sudo dnf install ripgrep` (Fedora)
- **验证**: `rg --version`
- **`jq`**: 一款命令行 JSON 处理器。
- **Windows**: `winget install jqlang.jq``choco install jq`
- **Windows**:
- **WinGet**: `winget install jq` (推荐)
- **Chocolatey**: `choco install jq`
- **Scoop**: `scoop install jq`
- **手动下载**: 从 [GitHub Releases](https://github.com/jqlang/jq/releases) 下载 `jq-windows-amd64.exe` 并重命名为 `jq.exe`
- **macOS**: `brew install jq`
- **Linux**: `sudo apt-get install jq` (Debian/Ubuntu) 或 `sudo dnf install jq` (Fedora)
- **验证**: `jq --version`

View File

@@ -2,10 +2,9 @@
<div align="center">
[![Version](https://img.shields.io/badge/version-v4.6.2-blue.svg)](https://github.com/catlog22/Claude-Code-Workflow/releases)
[![Version](https://img.shields.io/badge/version-v5.2.0-blue.svg)](https://github.com/catlog22/Claude-Code-Workflow/releases)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20Linux%20%7C%20macOS-lightgrey.svg)]()
[![MCP Tools](https://img.shields.io/badge/🔧_MCP_Tools-Experimental-orange.svg)](https://github.com/modelcontextprotocol)
**Languages:** [English](README.md) | [中文](README_CN.md)
@@ -15,7 +14,15 @@
**Claude Code Workflow (CCW)** transforms AI development from simple prompt chaining into a robust, context-first orchestration system. It solves execution uncertainty and error accumulation through structured planning, deterministic execution, and intelligent multi-model orchestration.
> **🎉 Latest: v4.6.2** - Documentation Optimization & `/memory:load` Command Refinement. See [CHANGELOG.md](CHANGELOG.md) for details.
> **🎉 Version 5.2: Memory Commands Enhancement**
>
> **Core Improvements**:
> - ✅ **Batch Processing** - Single Level 1 task handles all module trees (67% fewer tasks)
> - ✅ **Dual Execution Modes** - Agent Mode and CLI Mode (--cli-execute) support
> - ✅ **Pre-computed Analysis** - Unified analysis eliminates redundant CLI calls (67% reduction)
> - ✅ **Performance Boost** - 67% fewer file reads, 33% fewer total tasks
>
> See [CHANGELOG.md](CHANGELOG.md) for full details.
> 📚 **New to CCW?** Check out the [**Getting Started Guide**](GETTING_STARTED.md) for a beginner-friendly 5-minute tutorial!

View File

@@ -2,7 +2,7 @@
<div align="center">
[![Version](https://img.shields.io/badge/version-v5.0.0-blue.svg)](https://github.com/catlog22/Claude-Code-Workflow/releases)
[![Version](https://img.shields.io/badge/version-v5.2.0-blue.svg)](https://github.com/catlog22/Claude-Code-Workflow/releases)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20Linux%20%7C%20macOS-lightgrey.svg)]()
@@ -14,12 +14,13 @@
**Claude Code Workflow (CCW)** 将 AI 开发从简单的提示词链接转变为一个强大的、上下文优先的编排系统。它通过结构化规划、确定性执行和智能多模型编排,解决了执行不确定性和误差累积的问题。
> **🎉 版本 5.0: 少即是多**
> **🎉 版本 5.2: 内存命令增强**
>
> **核心改进**:
> - ✅ **移除外部依赖** - 使用标准 ripgrep/find 替代 MCP code-index提升稳定性
> - ✅ **简化工作流** - 优化 TDD 流程,引入冲突解决机制
> - ✅ **专注角色分析** - 以角色文档为核心,简化规划架构
> - ✅ **批量处理** - 单个 Level 1 任务处理所有模块树(减少 67% 任务)
> - ✅ **双执行模式** - 支持 Agent 模式和 CLI 模式(--cli-execute
> - ✅ **预计算分析** - 统一分析消除冗余 CLI 调用(减少 67%
> - ✅ **性能提升** - 文件读取减少 67%,总任务数减少 33%
>
> 详见 [CHANGELOG.md](CHANGELOG.md)。