尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

DeepSeek-Agent-Harness-2026终极指南-第12章第57节-子Agent与编排-角色系统:researchercoderreviewer三剑客

DeepSeek-Agent-Harness-2026终极指南-第12章第57节-子Agent与编排-角色系统:researchercoderreviewer三剑客 DeepSeek Agent Harness 2026终极指南 - 第12章第57节 角色系统researcher/coder/reviewer三剑客第56节的并行能同时跑多个子 Agent 了但每个子 Agent 都是通用的。更专业的做法是给不同子 Agent 不同的角色——研究员查资料、工程师写代码、审查员挑毛病。这节做角色系统researcher/coder/reviewer 三剑客各自有不同的系统提示词和工具权限。用一个完整的多角色开发任务演示它们怎么分工协作。本文导航为什么要分角色三剑客角色定义与工具权限协作协议交接物格式完整实现roles.py实测多角色开发任务全流程小结为什么要分角色通用子 Agent 的问题什么都做什么都不精。一个通用开发 Agent收到实现一个用户注册功能它得查资料了解最佳实践研究员工作写代码工程师工作审查自己的代码审查员工作三种工作混在一个上下文里模型容易角色混乱。而且自审自查有天然的盲区——让写代码的人审查自己的代码等于没有审查。角色系统的核心把三种工作拆给三个专职子 Agent各司其职、互相制衡角色职责工具权限系统提示词要点researcher查资料、调研web_search/web_fetch/grep“你是研究员专注搜集信息不写代码”coder写代码read/write/edit/run_bash“你是工程师专注实现功能负责落地”reviewer审查代码read_file/grep只读“你是审查员专注挑毛病不改代码”三剑客角色定义与工具权限# deep_pilot/roles.py —— 角色系统 v0.7from__future__importannotationsfromdeep_pilot.sub_agentimportSubAgent# researcher研究员 RESEARCHER_PROMPT你是研究员角色负责调研和搜集信息。 你的职责 - 搜索相关技术资料、最佳实践、开源方案 - 分析需求梳理技术要点和方案选项 - 输出结构化的调研报告 你的边界 - 只做调研不写代码、不改代码 - 关注是什么、为什么、怎么做三个层面 - 结论要有依据注明信息来源researcherSubAgent(nameresearcher,system_promptRESEARCHER_PROMPT,tool_names[web_search,web_fetch,grep,glob,read_file],)# coder工程师 CODER_PROMPT你是工程师角色负责编写和修改代码。 你的职责 - 根据需求和研究结论实现功能 - 写清晰、可维护、可测试的代码 - 改完要验证跑测试或相关命令 你的边界 - 专注实现不纠结于调研已有研究员负责 - 遵循项目已有代码风格 - 不确定的技术选型参考研究员结论coderSubAgent(namecoder,system_promptCODER_PROMPT,tool_names[read_file,write_file,edit_file,run_bash,grep,glob],)# reviewer审查员 REVIEWER_PROMPT你是审查员角色负责审查代码质量。 你的职责 - 审查代码的正确性、可读性、安全性、性能 - 发现潜在 bug、边界遗漏、坏味道 - 输出结构化的审查报告 你的边界 - 只审查不改代码 - 每个问题标注严重程度致命/严重/建议 - 问题要具体到行号给出明确建议reviewerSubAgent(namereviewer,system_promptREVIEWER_PROMPT,tool_names[read_file,grep,glob],# 只读不改代码)注意三个角色的工具权限差异researcher 有 web_search/web_fetch查资料没有 write/edit不写代码coder 有 write/edit/run_bash写代码跑测试没有 web_search不查资料reviewer 只有只读工具read/grep/glob完全不能改代码协作协议交接物格式三个角色要协作得有交接物——上游输出的东西下游能直接消费# 交接物格式约定RESEARCH_REPORT_FORMAT### 调研报告 ## 需求理解 {对需求的分析} ## 技术方案 {推荐方案 备选方案} ## 关键要点 {实现时要注意的点} ## 参考来源 {资料链接}CODE_DELIVERABLE_FORMAT### 代码交付 ## 改动文件 {文件列表} ## 实现说明 {关键逻辑说明} ## 验证结果 {测试/命令运行结果}REVIEW_REPORT_FORMAT### 审查报告 ## 致命问题 {必须修复的问题} ## 严重问题 {建议修复的问题} ## 建议优化 {可选优化点}交接物格式的意义明确边界。研究员输出调研报告工程师消费它来写代码审查员输出审查报告工程师再消费它来改代码。每个角色都知道上游给什么、要给下游什么。完整实现roles.py整合成一个多角色协作的编排函数# deep_pilot/roles.py —— 完整版含协作编排fromdeep_pilot.sub_agentimportSubAgentfromdeep_pilot.parallel_agentsimportParallelAgentRunner# ... 上面三个角色定义 ...defdevelop_feature(requirement:str)-str: 多角色协作开发流程 researcher 调研 → coder 实现 → reviewer 审查 → coder 修复 # 第一阶段研究员调研research_resultresearcher.run(f调研需求{requirement}。输出结构化的调研报告包含需求理解、技术方案、关键要点。)# 第二阶段工程师根据调研实现code_resultcoder.run(f根据以下调研报告实现需求{requirement}\n\n{research_result}\n\n请编写代码并验证。)# 第三阶段审查员审查代码review_resultreviewer.run(f审查以下需求的实现{requirement}\n\n实现说明\n{code_result}\n\n请输出审查报告。)# 第四阶段如果审查发现致命问题让工程师修复if致命inreview_result:fix_resultcoder.run(f根据审查报告修复代码\n{review_result}\n\n请修复问题并重新验证。)returnf需求:{requirement}\n\n{code_result}\n\n{review_result}\n\n修复:\n{fix_result}returnf需求:{requirement}\n\n{code_result}\n\n{review_result}实测多角色开发任务全流程uv run python-c from deep_pilot.roles import develop_feature result develop_feature(实现一个计算器函数支持加减乘除) print(result) 控制台输出精简2026-09-14 11:00:01 | INFO | sub_agent | [子Agent:researcher] 第 1 轮 2026-09-14 11:00:01 | INFO | sub_agent | [子Agent:researcher] 第 2 轮 调研报告 - 需求理解实现加减乘除四个运算 - 技术方案用单个函数带运算符参数或用四个独立函数 - 关键要点处理除零异常、类型校验 2026-09-14 11:00:05 | INFO | sub_agent | [子Agent:coder] 第 1 轮 2026-09-14 11:00:05 | INFO | sub_agent | [子Agent:coder] 第 2 轮 代码实现 def calculate(a, b, op): if op : return a b if op -: return a - b if op *: return a * b if op /: if b 0: raise ValueError(除数不能为0) return a / b raise ValueError(f未知运算符: {op}) 2026-09-14 11:00:10 | INFO | sub_agent | [子Agent:reviewer] 第 1 轮 审查报告 [建议] 建议用字典映射替代 if 链更简洁 [建议] 参数类型可加类型注解三个角色依次协作研究员调研 → 工程师实现 → 审查员审查全程分工明确交接物清晰。小结分角色的意义专业分工 互相制衡避免全能但平庸和自审自查的盲区。三剑客researcher查资料、coder写代码、reviewer挑毛病各司其职。工具权限差异化researcher 有联网无写权限coder 有写权限无联网reviewer 只读。系统提示词定边界每个角色明确做什么、不做什么避免角色迷失。协作协议交接物格式调研报告/代码交付/审查报告上下游无缝衔接。协作流程调研 → 实现 → 审查 → 修复形成闭环。DeepPilot v0.7 角色系统完成——从通用子Agent到专业三剑客协作更高效。下节预告三个角色协作跑通了但编排模式不止这一种——有些任务需要路由分流不同请求分给不同 Agent有些需要流水线前一个产出喂给后一个有些需要群蜂多个 Agent 抢着做同一件事选最好。下一节做编排模式实战router、pipeline、swarm 三种模式附选型决策树。如果觉得本文对你有帮助欢迎点赞、收藏、关注三连本系列持续更新中关注不迷路~
返回列表