拓冰建站拓冰建站
首页 / 资讯中心 / 正文

一个主智能体、多个子智能体:Prime Agent Subagent 并行开发实践教程

一个主智能体、多个子智能体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 重构一个大型模块它一边读文件一边改代码上下文越塞越满结果改到一半开始忘事。其实这类工作可以拆成三块找代码、出方案、写实现而 Prime Agent 的 Subagent子智能体正是为这种拆分设计的——主智能体用一行 Python 调用rlm(...)就能派生独立的子智能体各自带着隔离的上下文窗口并行干活结果通过消息或文件回传。这篇文章带你从安装到跑通一条侦察 → 规划 → 实现的完整工作流。什么是 Subagent主智能体的一次函数调用Prime Agent 的编程模型叫 RLM递归语言模型模型工作在一个持久化的 Python REPL里工具、子智能体、上下文管理都通过代码完成。在这个模型下Subagent 不是特殊实体而是内核中预加载的rlm可调用对象——和调用普通函数一样handle await rlm(Review the authentication flow for security issues, nameauth-reviewer)关键机制有三点隔离上下文每个子智能体是独立的AgentSession有自己的会话目录只拿到完成任务所需的上下文主智能体的窗口保持精简即发即走rlm(...)在任务被受理后立即返回一个句柄含rlm_child_id、name、session_dir、model不等待、也不返回子智能体的答案显式通信结果只能通过agent_message回复或文件回传没有隐式同步。这正是prompt-as-a-variable的落地任务描述就是传给子函数的参数回传的报告就是返回值。上图是子智能体的树状视图。主智能体派生出去的每个 child 都会出现在这个层级结构里你可以随时查看它的状态和归属的会话。安装 Prime Agent 并进入交互会话如果还没装先克隆仓库并执行安装脚本git clone https://gitcode.com/GitHub_Trending/pr/prime-agent cd prime-agent ./install.sh然后在你要操作的项目目录下启动cd /path/to/your-project prime-agent首次启动会提示/login选择订阅或 API Key 提供商。两点提醒Prime Agent 会以你的用户权限执行模型生成的 Python 和项目命令不是安全沙箱——官方 README 明确建议在一次性克隆或干净 worktree 里使用常用命令如prime-agent agents浏览运行中的会话、prime-agent attach agent重新接入后台会话对后面管理多个子智能体很有用。三步跑通第一个子智能体用 rlm() 派生进入交互模式后子智能体的派生就是在 REPL 里写代码。以审查认证流程为例第 1 步派生。在 Python 单元里调用rlm(...)任务描述写清楚、name起个能认出来的名字。调用返回句柄后主智能体的这一轮就结束了——子智能体在后台独立运行。第 2 步等结果回传。子智能体需要汇报时会主动发消息给父级await agent_message.send(message, receiver_roleparent)你也可以反向追问一个保留中的子智能体await agent_message.send( Check the newly added regression test., receiver_rolechild, receiver_nameapi_review.name, )第 3 步盘点与清理。子智能体注册表能跨压缩、内核重启存活随时可以列出来children await rlm.list_subagents() for child in children: print(child.session_name, child.status, child.active_session_id)不再需要时执行await rlm.delete_subagent(children[0])释放。派生多个子任务时的惯例写法是分开调用、各自独立然后结束当前轮次而不是 await 等某一个完成——并行性就是这么来的。完整编程模型见 docs/rlm.md。创建自己的智能体档案文件定义的 Subagentrlm(...)是裸调子智能体继承父级的模型、工具和技能。如果你想让某个子智能体固定使用更便宜的模型、只保留部分工具、带上专属系统提示词就要用仓库自带的 subagent 扩展。它把智能体定义成带 YAML frontmatter 的 Markdown 文件--- name: scout description: Fast codebase recon that returns compressed context for handoff to other agents tools: bash model: claude-haiku-4-5 --- You are a scout. Quickly investigate a codebase and return structured findings...扩展目录里自带四个开箱即用的档案agents/分工思路值得参考档案职责模型工具scout快速侦察代码库返回压缩后的上下文Haiku便宜快仅 bashplanner根据侦察结果出实现方案Sonnet仅 bashreviewer代码质量与安全审查只读Sonnet仅 bashworker通用实现完整默认能力Sonnet全部注意看这个设计侦察用便宜模型审查类智能体工具列表里只有只读 bash——通过档案文件就能收紧权限面。把扩展和档案链接到用户目录即可加载命令见 扩展 READMEmkdir -p ~/.prime/agent/extensions/subagent ln -sf $(pwd)/packages/coding-agent/examples/extensions/subagent/index.ts ~/.prime/agent/extensions/subagent/index.ts ln -sf $(pwd)/packages/coding-agent/examples/extensions/subagent/agents.ts ~/.prime/agent/extensions/subagent/agents.ts mkdir -p ~/.prime/agent/agents for f in packages/coding-agent/examples/extensions/subagent/agents/*.md; do ln -sf $(pwd)/$f ~/.prime/agent/agents/$(basename $f) done mkdir -p ~/.prime/agent/prompts for f in packages/coding-agent/examples/extensions/subagent/prompts/*.md; do ln -sf $(pwd)/$f ~/.prime/agent/prompts/$(basename $f) done之后在交互模式里直接说人话就能调度Use scout to find all authentication code扩展会替你调起对应档案的子智能体并在界面上流式显示它的每次工具调用。三种派发模式单发、并行、链式扩展提供三种调度方式覆盖了绝大多数协作形态模式参数形态适用场景单发 Single{ agent, task }一个档案干一件事并行 Parallel{ tasks: [...] }多档案同时开工最多 8 个任务、4 个并发链式 Chain{ chain: [...] }顺序执行上一步输出用{previous}占位符传给下一步并行的实际效果原本排队跑的三件事现在可以同时开工。界面上每个任务实时显示状态运行中/完成/失败完成后附一行用量统计——轮数、输入输出 token、缓存读写、费用和上下文占用方便你判断哪个子智能体烧钱。链式则是另一种形态步骤之间有依赖时用{previous}把上游产出直接接进下游任务描述里。实战 ⏩ 用 /implement 走一遍侦察-规划-实现扩展还预置了三个工作流提示词最有代表性的是/implement。它对 prompts/implement.md 的描述就是一条链scout找出与需求相关的所有代码planner基于{previous}侦察结果产出实现方案worker基于{previous}方案执行实现。在交互模式里输入/implement add Redis caching to the session store接下来会发生的事scout 用rg、git grep快速定位相关文件按约定格式输出文件清单 关键代码 架构说明 从哪里开始看planner 拿到这份压缩上下文后写出方案worker 照方案动手改代码。三个子智能体串成一条流水线而每一步的上下文都只包含上一步的产出主智能体窗口始终干净。另外两个提示词也值得知道/scout-and-plan query只侦察加规划不动代码——适合动手前先要一份方案/implement-and-review queryworker → reviewer → worker实现后自动过一遍审查审查意见再交回 worker 修一轮。这其实就是并行代码审查案例的串行化版本reviewer 被限制为只读 bashgit diff/git log/git show输出按 Critical / Warnings / Suggestions 分级并带文件行号方便定位。想看某一步的完整过程按CtrlO展开可以看到全部工具调用和按 Markdown 渲染的最终输出CtrlC会中断并杀掉对应的子智能体进程。避坑这些细节会咬人⚠️项目级档案是仓库控制的提示词。默认扩展只加载~/.prime/agent/agents下的用户级档案。.prime/agent/agents/*.md是随仓库走的能指挥模型跑 shell 命令——对不熟的仓库别传agentScope: both交互式下启用项目级档案也会先弹确认。并行的上限是硬编码的。最多 8 个任务、4 个并发扩展源码里是MAX_PARALLEL_TASKS 8、MAX_CONCURRENCY 4想一次扔 20 个任务不会发生。链式模式在第一个失败步骤停住。上游出错下游不会带着残缺的{previous}继续跑错误会指明是哪一步失败的——排障时直接看那一步即可。别指望rlm()的返回值拿结果。原生路径下句柄里只有身份信息答案必须走agent_message或文件。写 Python 调度逻辑时这是最容易踩的坑。下一步跑通/implement之后建议顺着两条线延伸把 docs/rlm.md 里的rlm_heartbeat、持久目标看一遍让子智能体在终端断开后继续跑长时运行文档 讲了 detach/reattach 和定时唤醒再试试内置的 skill 创建流程把你反复用的侦察→规划→实现包装成项目级技能。多智能体的价值不在多而在每个子智能体上下文足够干净——把这一点守住拆分才有意义。【免费下载链接】prime-agentA self-improving RLM agent for coding workflows and long-running autonomous tasks.项目地址: https://gitcode.com/GitHub_Trending/pr/prime-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门