refactor(workflow): rename workflow-lite-plan to workflow-lite-planex and remove standalone lite-execute

- Rename skill directory from workflow-lite-plan to workflow-lite-planex (planex = plan + execute)
- Remove standalone lite-execute command entry from command.json and analyze_commands.py
- Update all 60+ files referencing workflow-lite-plan to use workflow-lite-planex
- Update descriptions to clarify Phase 1: plan → Phase 2: execute architecture
- Remove lite-execute as standalone command from orchestrator routing tables
- Update docs (EN/ZH) to reflect unified planex naming and phase descriptions
This commit is contained in:
catlog22
2026-03-02 14:03:17 +08:00
parent 71485b89e6
commit 0d5cc4a74f
60 changed files with 277 additions and 445 deletions

View File

@@ -361,17 +361,6 @@
"difficulty": "Intermediate",
"source": "../../commands/workflow/init.md"
},
{
"name": "lite-execute",
"command": "/workflow:lite-execute",
"description": "Execute tasks based on in-memory plan, prompt description, or file content",
"arguments": "[-y|--yes] [--in-memory] [\\\"task description\\\"|file-path]",
"category": "workflow",
"subcategory": null,
"usage_scenario": "implementation",
"difficulty": "Intermediate",
"source": "../../commands/workflow/lite-execute.md"
},
{
"name": "lite-fix",
"command": "/workflow:lite-fix",
@@ -396,8 +385,8 @@
},
{
"name": "lite-plan",
"command": "/workflow-lite-plan",
"description": "Lightweight interactive planning workflow with in-memory planning, code exploration, and execution execute to lite-execute after user confirmation",
"command": "/workflow-lite-planex",
"description": "Lightweight interactive planning and execution workflow (Phase 1: plan, Phase 2: execute) with in-memory planning, code exploration, and automatic execution after user confirmation",
"arguments": "[-y|--yes] [-e|--explore] \\\"task description\\\"|file.md",
"category": "workflow",
"subcategory": null,

View File

@@ -176,21 +176,17 @@ def build_command_relationships() -> Dict[str, Any]:
"alternatives": ["workflow:resume"],
"related": ["workflow:session:list", "workflow:status"]
},
"workflow-lite-plan": {
"calls_internally": ["workflow:lite-execute"],
"next_steps": ["workflow:lite-execute", "workflow:status"],
"workflow-lite-planex": {
"calls_internally": [],
"next_steps": ["workflow:status"],
"alternatives": ["workflow-plan"],
"prerequisites": []
},
"workflow:lite-fix": {
"next_steps": ["workflow:lite-execute", "workflow:status"],
"alternatives": ["workflow-lite-plan"],
"next_steps": ["workflow:status"],
"alternatives": ["workflow-lite-planex"],
"related": ["workflow-test-fix"]
},
"workflow:lite-execute": {
"prerequisites": ["workflow-lite-plan", "workflow:lite-fix"],
"related": ["workflow-execute", "workflow:status"]
},
"workflow:review-session-cycle": {
"prerequisites": ["workflow-execute"],
"next_steps": ["workflow:review-fix"],
@@ -213,7 +209,7 @@ def build_command_relationships() -> Dict[str, Any]:
def identify_essential_commands(all_commands: List[Dict]) -> List[Dict]:
"""Identify the most essential commands for beginners."""
essential_names = [
"workflow-lite-plan", "workflow:lite-fix", "workflow-plan",
"workflow-lite-planex", "workflow:lite-fix", "workflow-plan",
"workflow-execute", "workflow:status", "workflow:session:start",
"workflow:review-session-cycle", "cli:analyze", "cli:chat",
"memory:docs", "workflow:brainstorm:artifacts",

View File

@@ -67,7 +67,7 @@ spec-generator/
## Handoff
After Phase 6, choose execution path:
- `workflow-lite-plan` - Execute per Epic
- `workflow-lite-planex` - Execute per Epic
- `workflow:req-plan-with-file` - Roadmap decomposition
- `workflow-plan` - Full planning
- `issue:new` - Create issues per Epic

View File

@@ -210,7 +210,7 @@ AskUserQuestion({
options: [
{
label: "Execute via lite-plan",
description: "Start implementing with /workflow-lite-plan, one Epic at a time"
description: "Start implementing with /workflow-lite-planex, one Epic at a time"
},
{
label: "Create roadmap",
@@ -242,7 +242,7 @@ if (selection === "Execute via lite-plan") {
const epicContent = Read(firstMvpFile);
const title = extractTitle(epicContent); // First # heading
const description = extractSection(epicContent, "Description");
Skill(skill="workflow-lite-plan", args=`"${title}: ${description}"`)
Skill(skill="workflow-lite-planex", args=`"${title}: ${description}"`)
}
if (selection === "Full planning" || selection === "Create roadmap") {

View File

@@ -332,7 +332,7 @@ EXPLORE-001 → ANALYZE-001 → SYNTH-001
| Option | Description |
|--------|-------------|
| 创建Issue | 基于结论创建 Issue |
| 生成任务 | 启动 workflow-lite-plan 规划实施 |
| 生成任务 | 启动 workflow-lite-planex 规划实施 |
| 导出报告 | 生成独立分析报告 |
| 关闭团队 | 关闭所有 teammate 并清理 |

View File

@@ -1,27 +1,26 @@
---
name: workflow-lite-plan
description: Lightweight planning and execution skill - route to lite-plan or lite-execute with prompt enhancement. Triggers on "workflow-lite-plan", "workflow:lite-execute".
name: workflow-lite-planex
description: Lightweight planning and execution skill (Phase 1: plan, Phase 2: execute). Triggers on "workflow-lite-planex".
allowed-tools: Skill, Task, AskUserQuestion, TodoWrite, Read, Write, Edit, Bash, Glob, Grep
---
# Workflow Lite-Plan
# Workflow Lite-Planex
Unified lightweight planning and execution skill. Routes to lite-plan (planning pipeline) or lite-execute (execution engine) based on trigger, with prompt enhancement for both modes.
Unified lightweight planning and execution skill (planex = plan + execute). Phase 1 handles planning pipeline, Phase 2 handles execution.
## Architecture Overview
```
┌─────────────────────────────────────────────────────┐
│ SKILL.md (Router + Prompt Enhancement)
│ → Detect mode → Enhance prompt → Dispatch to phase │
│ SKILL.md (Prompt Enhancement + Dispatch)
│ → Enhance prompt → Dispatch to Phase 1 (lite-plan)
└──────────────────────┬──────────────────────────────┘
┌───────────┼───────────┐
↓ ↓
┌───────────┐ ┌───────────┐
│ lite-plan │ │lite-execute│
│ Phase 1 │ │ Phase 2 │
│ Plan+Exec │─direct──→│ Standalone
│ Phase 1 │──handoff─→│ Phase 2 │
│ Plan │ │ Execute
└───────────┘ └───────────┘
```
@@ -33,24 +32,14 @@ Multi-phase execution (lite-plan → lite-execute) spans long conversations that
> The phase currently marked `in_progress` is the active execution phase — preserve its FULL content.
> Only compress phases marked `completed` or `pending`.
## Mode Detection & Routing
## Routing
```javascript
const args = $ARGUMENTS
const mode = detectMode()
Trigger `workflow-lite-planex` → dispatches to Phase 1 (lite-plan). Phase 1 internally hands off to Phase 2 (lite-execute) after plan confirmation.
function detectMode() {
if (skillName === 'workflow:lite-execute') return 'execute'
return 'plan' // default: workflow-lite-plan
}
```
**Routing Table**:
| Trigger | Mode | Phase Document | Description |
|---------|------|----------------|-------------|
| `workflow-lite-plan` | plan | [phases/01-lite-plan.md](phases/01-lite-plan.md) | Full planning pipeline (explore → plan → confirm → execute) |
| `workflow:lite-execute` | execute | [phases/02-lite-execute.md](phases/02-lite-execute.md) | Standalone execution (in-memory / prompt / file) |
| Phase | Document | Description |
|-------|----------|-------------|
| Phase 1 | [phases/01-lite-plan.md](phases/01-lite-plan.md) | Planning pipeline (explore → plan → confirm → handoff to Phase 2) |
| Phase 2 | [phases/02-lite-execute.md](phases/02-lite-execute.md) | Execution engine (internal, called by Phase 1 Phase 5) |
## Interactive Preference Collection
@@ -90,25 +79,6 @@ if (autoYes) {
autoYes: prefResponse.autoMode === 'Auto',
forceExplore: prefResponse.exploration === 'Force explore'
}
} else if (mode !== 'plan') {
// Execute mode (standalone, not in-memory)
const prefResponse = AskUserQuestion({
questions: [
{
question: "是否跳过所有确认步骤(自动模式)?",
header: "Auto Mode",
multiSelect: false,
options: [
{ label: "Interactive (Recommended)", description: "交互模式,包含确认步骤" },
{ label: "Auto", description: "跳过所有确认,自动执行" }
]
}
]
})
workflowPreferences = {
autoYes: prefResponse.autoMode === 'Auto',
forceExplore: false
}
}
```
@@ -125,12 +95,9 @@ Bash('ccw spec load --category planning')
// Step 2: Log available context
console.log('Project context loaded via: ccw spec load --category planning')
// Step 3: Dispatch to phase (workflowPreferences available as context)
if (mode === 'plan') {
// Read phases/01-lite-plan.md and execute
} else {
// Read phases/02-lite-execute.md and execute
}
// Step 3: Dispatch to Phase 1 (workflowPreferences available as context)
// Read phases/01-lite-plan.md and execute
// Phase 1 internally hands off to Phase 2 (lite-execute) after plan confirmation
```
## Execution Flow
@@ -145,21 +112,11 @@ if (mode === 'plan') {
5. lite-plan Phase 5 directly reads and executes Phase 2 (lite-execute) with executionContext
```
### Execute Mode
```
1. Collect preferences via AskUserQuestion (autoYes)
2. Enhance prompt with project context availability
3. Read phases/02-lite-execute.md
4. Execute lite-execute pipeline (input detection → execution → review)
```
## Usage
Plan mode and execute mode are triggered by skill name routing (see Mode Detection). Workflow preferences (auto mode, force explore) are collected interactively via AskUserQuestion before dispatching to phases.
Task description provided as arguments → interactive preference collection → planning pipeline → execution.
**Plan mode**: Task description provided as arguments → interactive preference collection → planning pipeline
**Execute mode**: Task description, file path, or in-memory context → interactive preference collection → execution pipeline
**Plan mode only**: lite-plan handles planning (Phase 1) and automatically hands off to lite-execute (Phase 2) for execution. There is no standalone execute mode.
## Phase Reference Documents

View File

@@ -1,27 +1,26 @@
---
name: workflow-multi-cli-plan
description: Multi-CLI collaborative planning and execution skill - route to multi-cli-plan or lite-execute with prompt enhancement. Triggers on "workflow-multi-cli-plan", "workflow:lite-execute".
description: Multi-CLI collaborative planning and execution skill with integrated execution phase. Triggers on "workflow-multi-cli-plan".
allowed-tools: Skill, Task, AskUserQuestion, TodoWrite, Read, Write, Edit, Bash, Glob, Grep, mcp__ace-tool__search_context
---
# Workflow Multi-CLI Plan
Unified multi-CLI collaborative planning and execution skill. Routes to multi-cli-plan (ACE context + multi-CLI discussion + plan generation) or lite-execute (execution engine) based on trigger, with prompt enhancement for both modes.
Unified multi-CLI collaborative planning and execution skill. Routes to multi-cli-plan (ACE context + multi-CLI discussion + plan generation) which then hands off to lite-execute (Phase 2) internally for execution.
## Architecture Overview
```
┌─────────────────────────────────────────────────────────┐
│ SKILL.md (Router + Prompt Enhancement) │
│ → Detect mode → Enhance prompt → Dispatch to phase │
│ → Enhance prompt → Dispatch to Phase 1
└──────────────────────┬──────────────────────────────────┘
┌───────────┼───────────┐
↓ ↓
┌──────────────┐ ┌───────────┐
│multi-cli-plan│ │lite-execute│
│ Phase 1 │ │ Phase 2 │
│ Plan+Exec │─handoff→│ Standalone
│ Phase 1 │─handoff→│ Phase 2 │
│ Plan+Exec │ │ (internal)
└──────────────┘ └───────────┘
```
@@ -29,12 +28,7 @@ Unified multi-CLI collaborative planning and execution skill. Routes to multi-cl
```javascript
const args = $ARGUMENTS
const mode = detectMode()
function detectMode() {
if (skillName === 'workflow:lite-execute') return 'execute'
return 'plan' // default: workflow-multi-cli-plan
}
const mode = 'plan' // workflow-multi-cli-plan always starts with planning
```
**Routing Table**:
@@ -42,7 +36,6 @@ function detectMode() {
| Trigger | Mode | Phase Document | Description |
|---------|------|----------------|-------------|
| `workflow-multi-cli-plan` | plan | [phases/01-multi-cli-plan.md](phases/01-multi-cli-plan.md) | Multi-CLI collaborative planning (ACE context → discussion → plan → execute) |
| `workflow:lite-execute` | execute | [phases/02-lite-execute.md](phases/02-lite-execute.md) | Standalone execution (in-memory / prompt / file) |
## Interactive Preference Collection
@@ -72,24 +65,6 @@ if (autoYes) {
workflowPreferences = {
autoYes: prefResponse.autoMode === 'Auto'
}
} else {
// Execute mode
const prefResponse = AskUserQuestion({
questions: [
{
question: "是否跳过所有确认步骤(自动模式)?",
header: "Auto Mode",
multiSelect: false,
options: [
{ label: "Interactive (Recommended)", description: "交互模式,包含确认步骤" },
{ label: "Auto", description: "跳过所有确认,自动执行" }
]
}
]
})
workflowPreferences = {
autoYes: prefResponse.autoMode === 'Auto'
}
}
```
@@ -106,12 +81,9 @@ Bash('ccw spec load --category planning')
// Step 2: Log available context
console.log('Project context loaded via: ccw spec load --category planning')
// Step 3: Dispatch to phase (workflowPreferences available as context)
if (mode === 'plan') {
// Read phases/01-multi-cli-plan.md and execute
} else {
// Read phases/02-lite-execute.md and execute
}
// Step 3: Dispatch to Phase 1 (workflowPreferences available as context)
// Read phases/01-multi-cli-plan.md and execute
// Phase 1 internally hands off to Phase 2 (lite-execute) after plan approval
```
## Compact Recovery (Phase Persistence)
@@ -134,21 +106,9 @@ Multi-phase execution (multi-cli-plan → lite-execute) spans long conversations
5. Phase 5 directly reads and executes Phase 2 (lite-execute) with executionContext
```
### Execute Mode (workflow:lite-execute)
```
1. Collect preferences via AskUserQuestion (autoYes)
2. Enhance prompt with project context availability
3. Read phases/02-lite-execute.md
4. Execute lite-execute pipeline (input detection → execution → review)
```
## Usage
Plan mode and execute mode are triggered by skill name routing (see Mode Detection). Workflow preferences (auto mode) are collected interactively via AskUserQuestion before dispatching to phases.
**Plan mode**: Task description provided as arguments → interactive preference collection → multi-CLI planning pipeline
**Execute mode**: Task description, file path, or in-memory context → interactive preference collection → execution pipeline
Task description provided as arguments → interactive preference collection → multi-CLI planning pipeline → internal execution handoff to Phase 2 (lite-execute).
## Phase Reference Documents

View File

@@ -24,7 +24,7 @@ When `workflowPreferences.autoYes` is true: Auto-approve plan, use recommended s
**Output Directory**: `.workflow/.multi-cli-plan/{session-id}/`
**Default Max Rounds**: 3 (convergence may complete earlier)
**CLI Tools**: @cli-discuss-agent (analysis), @cli-lite-planning-agent (plan generation)
**Execution**: Auto-hands off to `/workflow:lite-execute --in-memory` after plan approval
**Execution**: Auto-hands off to Phase 2 (lite-execute) after plan approval
## What & Why
@@ -81,7 +81,7 @@ Phase 4: User Decision
Phase 5: Plan Generation & Execution Handoff
├─ Generate plan.json + .task/*.json (via @cli-lite-planning-agent, two-layer output)
├─ Build executionContext with user selections and taskFiles
└─ Execute to /workflow:lite-execute --in-memory
└─ Execute via Phase 2 (lite-execute)
```
### Agent Roles
@@ -598,7 +598,7 @@ TodoWrite({ todos: [
```bash
# Simpler single-round planning
/workflow-lite-plan "task description"
/workflow-lite-planex "task description"
# Issue-driven discovery
/issue:discover-by-prompt "find issues"
@@ -609,7 +609,7 @@ cat .workflow/.multi-cli-plan/{session-id}/rounds/1/synthesis.json
cat .workflow/.multi-cli-plan/{session-id}/context-package.json
# Direct execution (if you have plan.json)
/workflow:lite-execute plan.json
# Use workflow-lite-planex or workflow-multi-cli-plan (execution is integrated)
```
## Next Phase

View File

@@ -26,22 +26,13 @@ Flexible task execution command supporting three input modes: in-memory plan (fr
## Usage
### Command Syntax
```bash
/workflow:lite-execute [FLAGS] <INPUT>
# Flags
--in-memory Use plan from memory (called by lite-plan)
# Arguments
<input> Task description string, or path to file (required)
```
> **Note**: This is an internal phase, not a standalone command. It is called by Phase 1 (multi-cli-plan) after plan approval, or by lite-plan after Phase 4 approval.
## Input Modes
### Mode 1: In-Memory Plan
**Trigger**: Called by lite-plan after Phase 4 approval with `--in-memory` flag
**Trigger**: Called by multi-cli-plan Phase 5 after plan approval, or by lite-plan after Phase 4 approval
**Input Source**: `executionContext` global variable set by lite-plan

View File

@@ -141,7 +141,7 @@ Read("phases/02-lite-execute.md")
// Execute with executionContext (Mode 1)
// WRONG: Skill routing (unnecessary round-trip)
Skill(skill="workflow-lite-plan", args="--in-memory")
Skill(skill="workflow-lite-planex", args="--in-memory")
```
### Pattern 8: Phase File Hygiene

View File

@@ -60,7 +60,7 @@ Read("phases/02-lite-execute.md")
// Execute with executionContext (Mode 1)
// WRONG: Skill routing (unnecessary round-trip)
Skill(skill="workflow-lite-plan", args="--in-memory")
Skill(skill="workflow-lite-planex", args="--in-memory")
```
### Content Restriction Enforcement