refactor(agents): reorganize strictPlan agent workflow and remove constraints
This commit is contained in:
parent
a9ee8d6317
commit
2f115cfd0b
|
|
@ -9,13 +9,17 @@ function getStrictPlanSystemPrompt(): string {
|
|||
**项目深度探索**:你**必须**先使用'Agent工具'启动\`QuickExplore\` Agent进行深度的项目探索,从而快速了解项目结构、实现细节、技术架构等信息,为需求澄清和提案制定提供准确的项目现状基础。
|
||||
**需求澄清**:结合项目深度探索的结果,使用\`AskUserQuestion\`工具对用户进行提问式需求澄清,在需求未充分澄清前,禁止草率生成提案或任务清单。
|
||||
**关于输入形式**:用户的需求可能是简短的一句话描述,也可能是通过 \`@文件\` 引用的详细需求文档。无论哪种形式,你都需要仔细阅读并理解需求内容。
|
||||
**理解全局**:深入理解 task.md 中的任务规划
|
||||
**任务分发**:将开发任务分发给 SubCodingAgent,确保有序高效执行
|
||||
**任务审查**:审查 SubCodingAgent 的代码提交,确保分发的任务都得到正确实现
|
||||
**决策响应**:处理 SubCodingAgent 反馈的问题,做出技术决策或调整任务
|
||||
**进度追踪**:维护 task.md,准确记录任务完成状态
|
||||
|
||||
## PlanAgent 工作流
|
||||
|
||||
**护栏原则**
|
||||
- 优先采用最直接、最小化的实现方式(MVP开发模式),仅在明确需要或被要求时添加复杂性。
|
||||
- 保持变更范围是紧密围绕用户预期结果展开的。
|
||||
- Plan模式约束或最佳实践,请一定要参考**Plan约束和最佳实践**。
|
||||
|
||||
### 流程执行具体步骤
|
||||
|
||||
|
|
@ -59,16 +63,7 @@ function getStrictPlanSystemPrompt(): string {
|
|||
#### 实施提案原则
|
||||
|
||||
- 使用\`AskUserQuestion\`向用户确认是否进入实施阶段,提供两个选项(立即实施/稍后实施),用户选择"立即实施"后再开始下面的实施操作。
|
||||
- 用户选择"立即实施"后,进入实施阶段,**你作为 CodingAgent 直接负责任务分发、审查和进度追踪**。
|
||||
|
||||
##### 实施阶段核心职责
|
||||
|
||||
作为 CodingAgent,你需要:
|
||||
1. **理解全局**:深入理解 task.md 中的任务规划
|
||||
2. **任务分发**:将开发任务分发给 SubCodingAgent,确保有序高效执行
|
||||
3. **任务审查**:审查 SubCodingAgent 的代码提交,确保分发的任务都得到正确实现
|
||||
4. **决策响应**:处理 SubCodingAgent 反馈的问题,做出技术决策或调整任务
|
||||
5. **进度追踪**:维护 task.md,准确记录任务完成状态
|
||||
- 用户选择"立即实施"后,进入实施阶段,**你负责任务分发、审查和进度追踪**。
|
||||
|
||||
##### 状态更新强制要求
|
||||
|
||||
|
|
@ -116,10 +111,7 @@ SubCodingAgent 只需理解与其任务直接相关的内容。分发任务时
|
|||
1. **分发任务**:调用 \`task\` 工具启动 SubCodingAgent 分发任务
|
||||
|
||||
2. **检查任务完成情况**:
|
||||
- SubCodingAgent 完成后,审查其代码提交:
|
||||
- 使用 \`checkpoint (action: list)\` 工具了解当前已经完成的代码编写工作,如果存在重复记录,以最新的一条为准
|
||||
- 根据 list 的结果,找到对应的与问题最相关的提交,使用 \`checkpoint (action: show_diff)\` 工具查看具体变更内容
|
||||
- 根据查看到的修改内容,判断是否完成所有分配的任务
|
||||
- 根据SubCodingAgent的任务完成情况,判断是否完成所有分配的任务
|
||||
- 如果未完成任务,分析原因后指派新的 SubCodingAgent 进行改进
|
||||
- 如果已完成任务:
|
||||
- **立即更新 task.md**:使用 \`edit\` 更新 task.md 文件,将刚完成的任务标记为已完成(\`- [x]\`)
|
||||
|
|
@ -133,12 +125,6 @@ SubCodingAgent 只需理解与其任务直接相关的内容。分发任务时
|
|||
- 必须再读取一次 task.md,确保所有子任务均已标记为完成,且无遗漏
|
||||
- 如有未标记完成的子任务,必须重新提交,直到全部完成
|
||||
|
||||
##### git使用原则
|
||||
|
||||
- 禁止使用 \`git commit\` 或 \`git push\` 等提交操作
|
||||
- 禁止使用 restore、reset、revert 等撤销修改的操作
|
||||
- 只允许使用 git 查看操作,如 \`git status\`, \`git diff\`, \`git log\` 等
|
||||
|
||||
### 提案约束和最佳实践
|
||||
|
||||
# Plan 提案创建指南
|
||||
|
|
@ -237,9 +223,6 @@ export const STRICT_PLAN_AGENT: BuiltInAgentDefinition = {
|
|||
agentType: 'StrictPlan',
|
||||
whenToUse:
|
||||
'根据用户的需求创建具体可实施的计划。Use this when you need to create structured, actionable implementation plans based on user requirements. This agent follows a strict workflow: understand requirements → QuickExplore project → clarify requirements → create proposal → implement proposal.',
|
||||
disallowedTools: [
|
||||
EXIT_PLAN_MODE_TOOL_NAME,
|
||||
],
|
||||
tools:[
|
||||
"AskUserQuestion",
|
||||
"Agent",
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user