# Aide Skill 设计文档 ## 一、背景 ### 1.1 解决的问题 LLM 在执行任务时需要调用各种工具,但: | 问题 | 影响 | |------|------| | 命令语法分散 | 每次都要回忆或查找 | | 输出格式不明确 | 难以正确解析结果 | | 使用场景模糊 | 不知道何时该用什么命令 | ### 1.2 设计目标 提供**统一的工具使用指南**: - 所有 aide 子命令的语法和参数 - 输入输出格式说明 - 典型使用示例 --- ## 二、职责 ### 2.1 做什么 告诉 LLM: - aide 有哪些子命令可用 - 每个子命令怎么调用 - 调用后会得到什么结果 ### 2.2 不做什么 - 不涉及流程指导(那是 Commands 的职责) - 不涉及业务逻辑 - 不涉及决策判断 --- ## 三、子命令索引 | 子命令 | 用途 | 详细设计 | |--------|------|----------| | `aide env` | 环境检测与修复 | [env.md](../../../../aide-program/docs/commands/env.md) | | `aide flow` | 进度追踪与 git 集成 | [flow.md](../../../../aide-program/docs/commands/flow.md) | | `aide decide` | 待定项 Web 确认 | [decide.md](../../../../aide-program/docs/commands/decide.md) | | `aide config` | 配置读写 | [config.md](../../../../aide-program/docs/formats/config.md) | | `aide init` | 初始化 .aide 目录 | [init.md](../../../../aide-program/docs/commands/init.md) | --- ## 四、输出格式规范 ### 4.1 前缀符号 | 前缀 | 含义 | 处理方式 | |------|------|----------| | `✓` | 成功 | 继续执行 | | `⚠` | 警告(可继续) | 记录后继续 | | `✗` | 错误(需处理) | 按提示处理或告知用户 | | `→` | 进行中/信息 | 读取信息 | ### 4.2 静默原则 **无输出 = 正常完成** 只有在需要反馈信息时才会有输出。 --- ## 五、子命令接口规格 ### 5.1 aide env ensure **用途**:检测并修复开发环境 **语法**: ``` aide env ensure [--runtime] ``` **参数**: | 参数 | 说明 | |------|------| | `--runtime` | 仅检查 aide 运行时环境,不依赖配置文件 | **输出**: ``` # 成功 ✓ 环境就绪 (python:3.12, uv:0.4.0) # 成功(完整检查) → 任务原文档: task-now.md → 任务细则文档: task-spec.md ✓ 环境就绪 (python:3.12, uv:0.4.0, venv:.venv) # 自动修复 ⚠ 已修复: 创建虚拟环境 .venv ✓ 环境就绪 (python:3.12) # 失败 ✗ Python 版本不满足要求 (需要 >=3.10, 当前 3.8) 建议: 安装 Python 3.10+ 或使用 pyenv 管理版本 ``` ### 5.2 aide init **用途**:初始化 .aide 目录和默认配置 **语法**: ``` aide init ``` **行为**: 1. 创建 `.aide/` 目录 2. 生成默认 `config.toml` 3. 检查并更新 `.gitignore` **输出**: ``` ✓ 已创建默认配置 .aide/config.toml ✓ 初始化完成,.aide/ 与默认配置已准备就绪 ``` ### 5.3 aide flow **用途**:进度追踪 + Git 自动提交 + 流程校验 #### aide flow start **语法**: ``` aide flow start <环节名> "<总结>" ``` **参数**: | 参数 | 说明 | |------|------| | `<环节名>` | task-optimize / flow-design / impl / verify / docs / finish | | `<总结>` | 本次操作的简要说明 | **示例**: ```bash aide flow start task-optimize "开始任务准备: 实现用户登录功能" aide flow start flow-design "开始任务: 实现用户认证模块" ``` #### aide flow next-step **语法**: ``` aide flow next-step "<总结>" ``` **示例**: ```bash aide flow next-step "完成数据库模型设计" ``` #### aide flow back-step **语法**: ``` aide flow back-step "<原因>" ``` **示例**: ```bash aide flow back-step "发现字段命名不符合规范,需要调整" ``` #### aide flow next-part **语法**: ``` aide flow next-part <环节名> "<总结>" ``` **示例**: ```bash aide flow next-part impl "流程设计完成,开始实现" aide flow next-part verify "实现完成,开始验证" ``` #### aide flow back-part **语法**: ``` aide flow back-part <环节名> "<原因>" ``` **示例**: ```bash aide flow back-part flow-design "实现中发现设计遗漏,需要补充" ``` #### aide flow issue **语法**: ``` aide flow issue "<描述>" ``` **示例**: ```bash aide flow issue "测试覆盖率较低,后续需要补充" ``` #### aide flow error **语法**: ``` aide flow error "<描述>" ``` **示例**: ```bash aide flow error "数据库连接失败,无法继续" ``` #### 环节名称与使用场景 | 环节名 | 说明 | 使用场景 | |--------|------|----------| | `task-optimize` | 任务优化 | prep 阶段 | | `flow-design` | 流程设计 | exec 阶段 | | `impl` | 迭代实现 | exec 阶段 | | `verify` | 验证交付 | exec 阶段 | | `docs` | 文档更新 | exec 阶段 | | `finish` | 收尾 | exec 阶段 | #### Git 集成 每次调用 aide flow 命令都会自动执行: 1. `git add .` 2. `git commit -m "[aide] <环节>: <总结>"` #### 流程校验 aide flow 会自动校验环节跳转是否合理: - `flow-design` → `impl` ✓ - `impl` → `verify` ✓ - `impl` → `flow-design` ✓(回退) - `flow-design` → `finish` ✗(跳过环节) ### 5.4 aide decide **用途**:通过 Web 界面处理待定项确认 #### aide decide(提交数据) **语法**: ``` aide decide '' ``` **输入格式**:见 [数据格式文档](../../../../aide-program/docs/formats/data.md) **输出**: ``` → Web 服务已启动 → 请访问: http://localhost:3721 → 等待用户完成决策... ``` #### aide decide result **语法**: ``` aide decide result ``` **输出格式**: ```json { "decisions": [ {"id": 1, "chosen": "option_a"}, {"id": 2, "chosen": "option_b", "note": "用户的补充说明"} ] } ``` > 注:`note` 字段仅在用户添加备注时出现 ### 5.5 aide config **用途**:配置读写 #### aide config get **语法**: ``` aide config get ``` **参数**: - ``:使用点号分隔的键名,如 `task.source` **示例**: ```bash aide config get task.source # 输出: → task.source = 'task-now.md' aide config get flow.phases # 输出: → flow.phases = ['task-optimize', 'flow-design', 'impl', 'verify', 'docs', 'finish'] ``` #### aide config set **语法**: ``` aide config set ``` **示例**: ```bash aide config set task.source "my-task.md" # 输出: ✓ 已更新 task.source = 'my-task.md' ``` --- ## 六、典型使用场景 ### 6.1 init 阶段 ```bash # 检查运行时环境 aide env ensure --runtime # 初始化配置 aide init # 检查项目环境 aide env ensure ``` ### 6.2 prep 阶段 ```bash # 开始任务准备 aide flow start task-optimize "开始任务准备: 实现用户认证模块" # 记录进度 aide flow next-step "任务分析完成" aide flow next-step "任务优化完成,生成待定项" # 处理待定项 aide decide '{"task":"...", "items":[...]}' aide decide result aide flow next-step "用户完成待定项确认" aide flow next-step "任务准备完成" ``` ### 6.3 exec 阶段 ```bash # 进入流程设计 aide flow next-part flow-design "进入流程设计环节" # 记录设计进度 aide flow next-step "流程图设计完成" # 进入实现 aide flow next-part impl "流程设计完成,开始实现" # 记录实现进度 aide flow next-step "完成 User 模型定义" aide flow next-step "完成密码加密工具" # 记录问题 aide flow issue "部分边界情况未覆盖测试" # 进入验证 aide flow next-part verify "实现完成,开始验证" # 进入文档 aide flow next-part docs "验证通过,更新文档" # 收尾 aide flow next-part finish "文档更新完成,收尾" aide flow next-step "任务完成" ``` --- ## 七、修改指南 ### 7.1 修改子命令接口 1. 更新本文档对应章节 2. 修改执行文件 `../../skills/aide/SKILL.md` 3. 同步更新 [aide-program 对应文档](../../../../aide-program/docs/README.md) ### 7.2 新增子命令 1. 在本文档添加接口规格 2. 在执行文件添加使用说明 3. 更新子命令索引表 4. 在 aide-program 添加对应设计文档 --- ## 八、相关文档 - [执行文件](../../skills/aide/SKILL.md) - [aide-program 导览](../../../../aide-program/docs/README.md) - [数据格式规范](../../../../aide-program/docs/formats/data.md) - [plugin 导览](../README.md)