Files
agent-aide/.aide/task-plans/spec-06.md
2025-12-19 02:30:45 +08:00

5.6 KiB
Raw Blame History

子计划 6返工流程优化

目标

优化 Aide 工作流的返工流程,包括:

  1. 创建 rework skill 提供返工指导
  2. 修改 /aide:run 命令引用该 skill
  3. 修改 aide-program 实现 back-confirm 机制

具体步骤

6.1 创建 rework skill

位置aide-marketplace/aide-plugin/skills/rework/SKILL.md

内容结构

# 返工流程指南

## 返工类型判断

| 返工目标 | 触发条件 | 处理方式 |
|----------|----------|----------|
| task-optimize | 新需求、需求理解偏差 | 更新 task.source |
| flow-design | 架构/流程设计问题 | 更新细则 + new-requirements.md |
| impl | 实现问题 | 更新细则 + new-requirements.md |
| verify | 验证未通过 | 更新细则 + new-requirements.md |

## 返工到 task-optimize 阶段

### 流程

1. `aide flow issue "准备返工: [原因简述]"`
2. 更新 task.source 文档:
   - 插入用户新需求原文
   - 记录提出时机
   - 添加 LLM 建议(可选)
3. 提醒用户
4. 执行 `aide flow back-confirm --key [key]`
5. 执行 `aide flow back-part task-optimize "[原因]"`

### task.source 更新格式

在文档末尾添加:

```markdown
---

## 返工记录 [时间戳]

### 用户反馈
[用户原文]

### 提出时机
[在哪个阶段/步骤提出]

### LLM 建议
[如有]

返工到其他阶段

流程

  1. aide flow issue "准备返工前处理需求整合: [原因简述]"
  2. 创建/更新 new-requirements.md
    • 记录用户新需求原文
    • 记录提出时机
  3. 更新细则文档:
    • 在导览部分添加返工声明
    • 梳理:已完成项、未完成项、需重新处理项
    • 处理需求冲突
    • 融入新需求
    • 删除返工声明
  4. 提醒用户
  5. 执行 aide flow back-confirm --key [key]
  6. 执行 aide flow back-part [阶段] "[原因]"

new-requirements.md 格式

# 新需求记录

## 返工 [时间戳]

### 用户反馈
[原文]

### 提出时机
[阶段/步骤]

### 影响分析
- 已完成项:[列表]
- 未完成项:[列表]
- 需重新处理:[列表]

### 冲突处理
[如何处理与原细则的冲突]

提醒用户

返工到 task-optimize

我将会对 task-now.md 进行更新,加入您的新需求和我的建议,然后更新流程状态返工到 task-optimize 阶段。建议您在流程状态返工后使用 /exit 结束本次对话,重新启动一个新的对话执行 load+run我将会自动接续任务的处理。

返工到其他阶段

我将会对 new-requirements.md 进行更新,加入您的新需求和我的建议,然后处理好您的新需求和原细则的需求冲突整合,然后更新流程状态返工到 [阶段] 阶段。建议您在流程状态返工后使用 /exit 结束本次对话,重新启动一个新的对话执行 load+run我将会自动接续任务的处理。

确认机制

返工前必须完成确认流程,详见 aide flow back-confirm 命令说明。


### 6.2 修改 /aide:run 命令

**位置**`aide-marketplace/aide-plugin/commands/run.md`

**修改内容**

在 confirm 阶段的返工流程部分添加:

```markdown
#### 6.3 返工流程

当用户发现问题或有新需求时:

**触发 rework skill**
加载 `rework` skill 学习返工流程指南,按照指南完成返工处理。

6.3 修改 aide-programback-confirm 机制

位置aide-program/aide/flow/ 模块

新增命令aide flow back-confirm --key <key>

实现逻辑

  1. back-part 命令修改

    • 执行前检查是否有待确认的 back 请求
    • 如无确认,输出提示并生成随机 key
    • 记录目标阶段和原因到状态文件
    • 要求 LLM 确认已完成准备工作后执行 back-confirm
  2. back-confirm 命令实现

    • 验证 key 是否匹配
    • 匹配成功后:
      • 读取状态文件中的目标阶段和原因
      • 清理状态文件(删除 .aide/back-confirm-state.json
      • 执行 back-part 操作
      • 暂存所有更改:git add .
      • 创建清洁提交:git commit -m "[aide] 返工前清洁提交"
      • 输出警告:建议用户 /exit 重新对话

数据流

LLM 请求 back-part flow-design "设计遗漏"
       │
       ↓
aide 检测未确认,记录目标和原因,生成 key "abc123",输出提示
       │
       ↓
LLM 完成准备工作后,执行 back-confirm --key abc123
       │
       ↓
aide 验证 key 成功 → 清理状态文件 → 执行 back-part → 创建清洁提交 → 输出警告
       │
       ↓
结束LLM 无需第三次请求)

6.4 状态存储

位置.aide/back-confirm-state.json

格式

{
  "pending_key": "abc123",
  "target_part": "flow-design",
  "reason": "设计遗漏,需要补充",
  "created_at": "2025-12-19T10:00:00+08:00"
}

注:验证成功后直接执行并清理状态文件,无需 confirmed 字段

验证标准

  • rework skill 内容完整,指导清晰
  • /aide:run 正确引用 rework skill
  • aide flow back-part 在未确认时生成 key 并记录状态
  • aide flow back-confirm --key 正确验证 key 并直接执行 back-part
  • 执行后创建清洁提交
  • 输出正确的警告信息
  • 状态文件在完成后被清理

依赖

  • 前置:无(独立任务)
  • 后续:无

风险评估

  • 风险等级:中
  • 潜在影响
    • 确认机制增加操作复杂度
    • 清洁提交可能与用户 git 工作流冲突
  • 缓解措施
    • 提供清晰的操作提示
    • 清洁提交信息明确标注来源
    • 文档说明机制目的