Files
agent-aide/aide-marketplace/aide-plugin/commands/prep.md

220 lines
5.0 KiB
Markdown
Raw Normal View History

---
description: 任务准备流程。分析用户任务描述优化表述处理待定项产出可执行的任务细则task-spec.md
---
# Aide 任务准备
你正在执行 Aide 任务准备流程。本流程帮助用户将模糊的任务描述转化为清晰、可执行的任务细则。
## 流程概览
```
任务分析 → 任务优化 → 待定项处理 → 结果生成 → 用户确认
```
## 运行特点
- **轻量化**:不创建工作目录、不记录状态、不 git 提交
- **用户确认制**:待定项和最终结果都需要用户确认
- **可返工**:用户不满意可返回重新优化
---
## 阶段 1任务分析
### 1.1 获取任务描述
确认任务描述来源:
- 用户已提供任务描述:直接使用
- 用户指定文件(如 `now-task.md`):读取文件内容
- 用户未提供:询问用户任务内容
### 1.2 深度分析
对任务描述进行全面分析:
**理解核心目标**
- 任务要解决什么问题?
- 最终交付物是什么?
- 成功的标准是什么?
**识别复杂度**
- 涉及哪些模块/文件/系统?
- 是否有多个子目标?
- 是否存在技术难点?
**分析项目环境**
- 任务与项目现有结构的关系
- 是否需要了解特定代码/文档?
- 是否有相关历史实现可参考?
> 复杂任务(多子目标、多方案对比)建议使用 sequential-thinking 进行结构化分析
### 1.3 产出分析结论
在心中形成对任务的完整理解,为下一阶段做准备。
---
## 阶段 2任务优化
### 2.1 准确性优化
- 识别任务描述中的**歧义**和**不明确之处**
- 识别**隐含假设**和**未说明的前提**
- 明确任务**边界**:哪些在范围内,哪些不在
### 2.2 简洁性优化
- 识别**冗余表述**(同一意思重复多次)
- 区分**真冗余**与**必要强调**
- 保持简洁但不丢失关键信息
### 2.3 可执行性优化
- 将抽象要求转化为**具体步骤**
- 确保每个步骤有明确的**输入、输出、验证标准**
- 考虑步骤间的**顺序和依赖关系**
- 识别可能的**替代方案**
### 2.4 生成待定项
对于以下情况,生成待定项:
- 存在**多种可行方案**需要用户选择
- 描述**有歧义**需要用户澄清
- 存在**隐含假设**需要用户确认
- 识别出**可以优化**但需要用户认可的内容
待定项数据格式:
```json
{
"task": "任务简述",
"source": "任务描述来源文件",
"items": [
{
"id": 1,
"title": "问题标题",
"location": {
"file": "now-task.md",
"start": 5,
"end": 7
},
"context": "为什么这是一个需要确认的问题",
"options": [
{
"value": "option_a",
"label": "选项A描述",
"score": 85,
"pros": ["优点1", "优点2"],
"cons": ["缺点1"]
}
],
"recommend": "option_a"
}
]
}
```
---
## 阶段 3待定项处理
### 3.1 提交待定项
如果有待定项,执行:
```bash
aide decide '<json数据>'
```
程序会启动 Web 服务并输出访问链接。
### 3.2 等待用户决策
告知用户:
```
待定项已生成,请访问以下链接进行确认:
http://localhost:xxxx
完成后请告诉我,我会读取您的决策结果。
```
### 3.3 获取决策结果
用户确认完成后,执行:
```bash
aide decide result
```
读取用户的决策结果,整合到后续的任务细则中。
### 3.4 无待定项的情况
如果分析后没有待定项(任务描述已经足够清晰),直接进入下一阶段。
---
## 阶段 4结果生成
### 4.1 生成任务细则
基于:
- 原始任务描述
- 分析优化结果
- 用户决策结果(如有)
产出 `task-spec.md`,包含:
```markdown
# 任务细则
## 任务目标
[清晰描述任务要达成的目标]
## 成功标准
[明确的、可验证的成功标准]
## 执行步骤
1. [步骤1]
- 输入xxx
- 输出xxx
- 验证xxx
2. [步骤2]
...
## 技术决策
[记录已确认的技术选型和方案]
## 约束与边界
[任务范围边界、不包含的内容]
## 风险与假设
[已识别的风险和前提假设]
```
### 4.2 用户最终确认
向用户展示 `task-spec.md` 内容,询问确认:
```
任务细则已生成,请审阅上述内容。
- 如果满意,请回复"确认",我将保存为 task-spec.md
- 如果需要修改,请说明具体问题,我会进行调整
```
### 4.3 处理用户反馈
- **用户确认**:保存 `task-spec.md`prep 流程结束
- **用户要求修改**:根据反馈返回相应阶段重新处理
- **用户否决**:询问具体问题,必要时从分析阶段重来
---
## 注意事项
1. **不做假设**:遇到模糊需求主动询问,不要自行假设
2. **用户主导**:所有重要决策都需要用户确认
3. **保持精简**:任务细则要清晰可执行,避免冗余
4. **简体中文**:所有输出使用简体中文
5. **核心优先**:聚焦任务分析和优化本身,形式问题交给程序处理