3步并行开发:Prime Agent Subagent 子智能体实战指南
【免费下载链接】prime-agentA self-improving RLM agent for coding workflows and long-running autonomous tasks.项目地址: https://gitcode.com/GitHub_Trending/pr/prime-agent
认证模块要改、测试要补、审查任务还堆着,主智能体只能一件件串行干。Prime Agent 的 Subagent 功能可以把大任务拆给多个子智能体并行执行——侦察、实现、审查各管一段,互不阻塞。
快速上手:从克隆到第一次派单 🚀
- 克隆仓库并构建源码:
git clone https://gitcode.com/GitHub_Trending/pr/prime-agent cd prime-agent && npm ci - 启动:在仓库根目录运行
./prime-agent.sh,进入交互模式。 - 安装 4 个示例子智能体(scout/planner/reviewer/worker):
mkdir -p ~/.prime/agent/agents cp packages/coding-agent/examples/extensions/subagent/agents/*.md ~/.prime/agent/agents/ - 加载 subagent 扩展(复制到自动发现目录即可被识别):
mkdir -p ~/.prime/agent/extensions/subagent cp packages/coding-agent/examples/extensions/subagent/{index.ts,agents.ts} ~/.prime/agent/extensions/subagent/ - 重启后输入第一句话:
Use scout to find all authentication code, scout 子智能体就会开跑。
原理速览:为什么每个子智能体都要"另起炉灶"
每个子智能体都是一个独立的 Prime Agent 子进程,拥有自己的上下文窗口,所以侦察代码翻了一千个文件也不会污染主会话的上下文。扩展通过注册subagent工具支持三种模式:单任务、并行(最多 8 个任务、4 个并发)、以及用{previous}占位符传递上下游输出的链式工作流。子智能体本身只是一个带 YAML frontmatter 的 Markdown 文件(定义 name、tools、model 和系统提示词),放在~/.prime/agent/agents/下,每次调用都会重新发现,改完不用重启。参考 subagent 扩展示例 和 快速上手文档。
图:Prime Agent 交互模式,Subagent 任务在这里以工具卡片形式实时流式输出
场景实战:3种拆法,3种收益 🔍
场景一:并行侦察,两条线同时摸代码
大仓库里要同时改 model 层和 provider 层,先花 20 分钟读完两边再动手最耗时。你直接对它说:
Run 2 scouts in parallel: one to find models, one to find providers
subagent 工具会以并行模式同时拉起两个 scout 子进程(4 个并发槽位),界面实时显示2/3 done, 1 running这类进度。原本串行侦察要 20 分钟的两片代码,现在 10 分钟内各自返回压缩好的上下文:关键文件、行号、类型定义、依赖关系。
场景二:链式"实现-审查-修复",一条命令跑完闭环
改动落地后最怕"改完没人看"。把仓库自带的 workflow 提示词拷进~/.prime/agent/prompts/,然后输入:
/implement-and-review add input validation to API endpoints
它会自动执行 worker → reviewer → worker 的三步链条:worker 实现,reviewer 用只读命令(git diff、git log)审查,review 意见通过{previous}占位符原样喂给第二步 worker 去修。三步之间不需要你复制粘贴任何内容,最后拿到的是"已按审查意见修复"的代码,而不是"待审查"的代码。
图:树状视图可用来查看子智能体的层级结构与运行状态
场景三:不装扩展,用内置 RLM 递归派子任务
Prime Agent 还有一个不需要任何扩展的原生路径:模型可以直接在 Python REPL 里用await rlm("subtask")派生子智能体,调用立即返回子任务句柄,答案通过agent_message回复或写文件交回来。试着直接下这句话:
Review authentication and test coverage as independent subtasks. Run them in parallel, then synthesize the findings.
适合跑长任务:父任务不等子任务结束,天然适配"派出去、晚点收"的异步工作流。
进阶技巧:老手怎么调
- 模型分层省钱:agent 文件 frontmatter 里可指定 model。示例里 scout 用 Haiku 做便宜侦察,planner/reviewer 用 Sonnet 做高质量产出——把贵模型留给需要判断力的环节。
- 盯住用量:折叠视图底部有一行
3 turns ↑in ↓out RcacheRead WcacheWrite $cost ctx:tokens model的统计;按 Ctrl+O 展开可看完整工具调用和 Markdown 渲染的最终输出。 - 链式通信:chain 模式下
{previous}是唯一的"通信总线",把上一步最终输出注入下一步任务文本;想让链条更灵活,参考 prompts 目录 里的三个现成模板自己改。 - 随时喊停:Ctrl+C 会向所有子进程传播 SIGTERM,5 秒内不退出再 SIGKILL,不用担心派出去的子任务收不回来。
避坑指南:这3个坑新手几乎必踩 🧯
- 报
Unknown agent: "xxx"→ 名字必须和 frontmatter 里的name字段完全一致,且文件要在~/.prime/agent/agents/下;工具返回里会附带当前可用 agent 列表,照着抄就行。 - 项目级 agent 不生效→
.prime/agent/agents/里的 agent 默认不加载,需要显式传agentScope: "both"(或"project")。它属于仓库可控的提示词,只在信任的仓库里开。 - 链式工作流中途断了→ chain 模式在第一个失败步骤即停并报告步骤号。先把大任务用 scout 侦察清楚再派 worker,或者用
/scout-and-plan只跑侦察+计划两段,确认方向对了再上完整链条。
下一步
Subagent 的核心价值是把"一个上下文窗口干所有事"变成"N 个隔离窗口各管一段":上下文不污染、任务可并行、链条可传递,审查和实现因此能真正重叠起来。建议你下一个会话先照着 agents 目录 里 scout.md 的写法,写一个专属于自己项目的worker变体——比如固定带上项目的测试命令和目录约定,让派出去的子智能体第一天就懂你的代码库。
【免费下载链接】prime-agentA self-improving RLM agent for coding workflows and long-running autonomous tasks.项目地址: https://gitcode.com/GitHub_Trending/pr/prime-agent
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考