m_plan — 将请求转化为计划文档
不执行实现。目标是制定一个足够具体的计划,让其他代理可以完全按照它来实现。
输入
- 如果与技能一起接收的参数是一个存在的文件路径,则请求内容就是该文件的内容。否则,整个参数字符串(可包含多行)就是请求。
- 如果参数为空,则询问用户想要开发什么。
流程
- 理解:阅读请求,检查相关的现有代码和文档(
AGENTS.md、plan/README.md、可复用的代码)。 - 确定ID:选择一个最能代表计划内容的英文大写三位字母缩写(例如:
FKS= Foreign film Korean Subtitle)。在plan/README.md中检查是否有重复。 - 验证前提:通过简短实验验证计划所依赖的不确定技术前提(例如CLI选项是否存在、外部网站/API是否可访问、响应时间等)。将验证结果和日期写入计划。不要基于猜测进行计划。
- 创建:使用下方模板创建
plan/<ID>_plan_<代理>-<模型>.md(作者信息记录在AGENTS.md中),并在plan/README.md的索引表中添加一行| <ID> | <计划名称> | 计划中 |。 - 确认决策:将需要决策的事项记录为
<ID>-Q1、<ID>-Q2...,并一次一个地向用户提问。- 每个问题提供2-3个选项,并在推荐方案上标注
(推荐)并附上理由。 - 如果用户给出不在选项中的答案,则通过实验验证其可行性,告知用户结果并据此调整。
- 收到答案后,用
✅标记为已确认,并根据该决策修改正文中的相关内容。
- 每个问题提供2-3个选项,并在推荐方案上标注
- 收尾:所有决策确认后,将索引状态改为
计划已确认(实现前),并询问是否提交。指导用户下一步为/m_impl <ID>。
模板 (plan/<ID>_plan_<代理>-<模型>.md)
# [<ID>] <计划名称>
## 1. 目标
<做什么,为什么。明确指出范围之外的内容>
## 2. 整体流程
<处理顺序/优先级。如有需要,可加入流程图>
## 3. 步骤详解
### 1) <步骤>
- <具体方法、使用的命令/API/格式、失败时的行为>
## 4. 公共模块
<多个步骤共享的部分:输入/输出格式、外部工具调用、缓存、错误处理>
## 5. 实现结构
- 文件组成、可复用的现有代码、依赖原则、配置方法
- CLI/用法草案
## 6. 决策事项
- **<ID>-Q1** <问题> — 选项... (确认后 `✅ <决策内容>`)
## 7. 里程碑
| # | 内容 | 完成标准 |
| :--- | :--- | :--- |
| <ID>-M1 | ... | <可验证的标准> |