mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-10 02:24:35 +08:00
feat: 添加工作流执行文档,支持从会话文件夹顺序执行任务
This commit is contained in:
164
.codex/prompts/workflow/lite-execute.md
Normal file
164
.codex/prompts/workflow/lite-execute.md
Normal file
@@ -0,0 +1,164 @@
|
||||
---
|
||||
description: Execute tasks sequentially from plan.json file
|
||||
argument-hint: FILE=<path>
|
||||
---
|
||||
|
||||
# Workflow Lite-Execute (Codex Version)
|
||||
|
||||
## Core Principle
|
||||
|
||||
**Serial Execution**: Execute tasks ONE BY ONE in order. Complete current task fully before moving to next. Continue until ALL tasks complete.
|
||||
|
||||
## Input
|
||||
|
||||
Read plan file at `$FILE` path (e.g., `.workflow/.lite-plan/session-id/plan.json`)
|
||||
|
||||
## Autonomous Execution Loop
|
||||
|
||||
```
|
||||
WHILE tasks remain:
|
||||
1. Read plan.json → Get task list
|
||||
2. Find FIRST task with status != "completed"
|
||||
3. IF task.depends_on exists:
|
||||
- Check all dependencies completed
|
||||
- IF not met → Skip, find next eligible task
|
||||
4. Execute current task fully
|
||||
5. Mark task completed in plan.json
|
||||
6. Output progress: "[X/N] Task completed: {title}"
|
||||
7. CONTINUE to next task (DO NOT STOP)
|
||||
|
||||
WHEN all tasks completed:
|
||||
Output final summary
|
||||
```
|
||||
|
||||
## Step-by-Step Execution
|
||||
|
||||
### Step 1: Load Plan
|
||||
|
||||
```bash
|
||||
cat $FILE
|
||||
```
|
||||
|
||||
Parse JSON, extract:
|
||||
- `summary`: Overall goal
|
||||
- `tasks[]`: Task list with status
|
||||
|
||||
### Step 2: Find Next Task
|
||||
|
||||
```javascript
|
||||
// Find first non-completed task with met dependencies
|
||||
for (task of tasks) {
|
||||
if (task.status === "completed") continue
|
||||
if (task.depends_on?.every(dep => getTask(dep).status === "completed")) {
|
||||
return task // Execute this one
|
||||
}
|
||||
}
|
||||
return null // All done
|
||||
```
|
||||
|
||||
### Step 3: Execute Task
|
||||
|
||||
For current task, perform:
|
||||
|
||||
```markdown
|
||||
## Executing: [task.title]
|
||||
|
||||
**Target**: `[task.file]`
|
||||
**Action**: [task.action]
|
||||
|
||||
### Implementation
|
||||
[Follow task.implementation steps]
|
||||
|
||||
### Reference Pattern
|
||||
- Pattern: [task.reference.pattern]
|
||||
- Examples: [task.reference.files]
|
||||
|
||||
### Acceptance Criteria
|
||||
- [ ] [criterion 1]
|
||||
- [ ] [criterion 2]
|
||||
```
|
||||
|
||||
**Execute all implementation steps. Verify all acceptance criteria.**
|
||||
|
||||
### Step 4: Mark Completed
|
||||
|
||||
Update task status in plan.json:
|
||||
```json
|
||||
{
|
||||
"id": "task-id",
|
||||
"status": "completed" // Change from "pending"
|
||||
}
|
||||
```
|
||||
|
||||
### Step 5: Continue
|
||||
|
||||
**DO NOT STOP. Immediately proceed to Step 2 to find next task.**
|
||||
|
||||
Output progress:
|
||||
```
|
||||
✓ [2/5] Completed: [task.title]
|
||||
→ Next: [next_task.title]
|
||||
```
|
||||
|
||||
## Task Format Reference
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "task-1",
|
||||
"title": "Task Title",
|
||||
"file": "path/to/file.ts",
|
||||
"action": "create|modify|refactor",
|
||||
"description": "What to do",
|
||||
"implementation": ["step 1", "step 2"],
|
||||
"reference": {
|
||||
"pattern": "pattern name",
|
||||
"files": ["example1.ts", "example2.ts"]
|
||||
},
|
||||
"acceptance": ["criterion 1", "criterion 2"],
|
||||
"depends_on": ["task-0"],
|
||||
"status": "pending|completed"
|
||||
}
|
||||
```
|
||||
|
||||
## Execution Rules
|
||||
|
||||
1. **Never stop mid-workflow** - Continue until all tasks complete
|
||||
2. **One task at a time** - Fully complete before moving on
|
||||
3. **Respect dependencies** - Skip blocked tasks, return later
|
||||
4. **Update status immediately** - Mark completed right after finishing
|
||||
5. **Self-verify** - Check acceptance criteria before marking done
|
||||
|
||||
## Final Summary
|
||||
|
||||
When ALL tasks completed:
|
||||
|
||||
```markdown
|
||||
## Execution Complete
|
||||
|
||||
**Plan**: $FILE
|
||||
**Total Tasks**: N
|
||||
**All Completed**: Yes
|
||||
|
||||
### Results
|
||||
| # | Task | Status |
|
||||
|---|------|--------|
|
||||
| 1 | [title] | ✓ |
|
||||
| 2 | [title] | ✓ |
|
||||
|
||||
### Files Modified
|
||||
- `path/file1.ts`
|
||||
- `path/file2.ts`
|
||||
|
||||
### Summary
|
||||
[Brief description of what was accomplished]
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
| Situation | Action |
|
||||
|-----------|--------|
|
||||
| File not found | Error and stop |
|
||||
| Task blocked (deps not met) | Skip, try next task |
|
||||
| All remaining tasks blocked | Report circular dependency |
|
||||
| Task execution error | Report error, mark failed, continue to next |
|
||||
| Acceptance criteria not met | Retry or report, then continue |
|
||||
Reference in New Issue
Block a user