<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[蜂群协作不是玄学：多智能体团队怎样分工、校验和交付]]></title><description><![CDATA[<blockquote>
<p dir="auto">站点：<a href="http://localaihub.com" rel="nofollow ugc">localaihub.com</a><br />
风格：社区实践帖<br />
联网检索日期：2026-05-22</p>
</blockquote>
<p dir="auto">很多人第一次听到“蜂群协作”“多智能体团队”，会下意识觉得这像玄学：给几个大模型起名字，一个叫产品经理，一个叫工程师，一个叫评审官，然后它们在群聊里互相夸几句，最后生成一段看起来像方案的文本。这样的玩法确实不少，但它不是我们要讨论的多智能体协作。</p>
<p dir="auto">真正有价值的多智能体团队，核心不是角色扮演，而是分工、校验和交付。分工解决“谁做什么”；校验解决“做得对不对”；交付解决“结果能不能被真实使用”。如果一个多智能体系统不能减少上下文混乱，不能降低错误率，不能留下可追踪证据，也不能产出更好的工件，那它只是把一个模型的问题拆成了多个模型的问题。</p>
<p dir="auto">这篇社区实践帖想讲清楚一件事：蜂群协作不是魔法，也不是把 agent 数量堆起来，而是用工程方法组织一组会使用工具、会交换工件、会互相检查、会对结果负责的智能体。你可以把它理解成一个小型 AI 团队：有人调研，有人执行，有人测试，有人把关，有人把交付物整理到用户能用的状态。</p>
<h2>一、先别急着上多智能体</h2>
<p dir="auto">在实践里，多智能体不是默认答案。很多任务用一个智能体加几件好工具就够了。比如查询订单、生成会议纪要、改一个配置、根据文档回答问题，这类任务如果拆成多个智能体，反而会增加通信成本和失败点。</p>
<p dir="auto">什么时候应该考虑多智能体？通常有四种信号。</p>
<p dir="auto">第一，任务跨度大。比如“调研一个技术方案并落地到代码”，既要查资料，又要读代码，又要改文件，又要跑测试，还要写说明。一个智能体能做，但上下文会很长，注意力容易散。</p>
<p dir="auto">第二，任务需要独立校验。比如写长文、做财务分析、生成合同草案、规划生产变更。生成者和检查者最好不是同一个工作单元，否则它很容易为自己的错误找理由。</p>
<p dir="auto">第三，工具权限不同。研究员可以联网，工程师可以改代码，发布员可以触发部署，审计员只能读日志。把这些权限放在同一个智能体身上，会让风险变大。</p>
<p dir="auto">第四，专业视角不同。产品视角看用户目标，工程视角看实现约束，安全视角看权限边界，测试视角看失败路径。多视角并不是为了制造争论，而是为了减少单一视角的盲区。</p>
<p dir="auto">如果没有这些信号，多智能体很可能只是增加复杂度。社区里很多失败案例，本质上都是“一个模型能做的事，硬拆成五个模型，然后没人负责最后交付”。</p>
<h2>二、蜂群协作的最小可用模型</h2>
<p dir="auto">一个可落地的蜂群协作系统，至少有五个元素：</p>
<pre><code class="language-text">目标：团队最终要交付什么。
角色：每个智能体的职责和边界。
工件：角色之间传递的结构化结果。
校验：谁检查什么，按什么标准检查。
编排：什么时候并行，什么时候串行，什么时候停止。
</code></pre>
<p dir="auto">“工件”是最容易被忽略的部分。很多多智能体系统让所有智能体共享一段聊天记录，看起来信息透明，实际很快变成噪声。真正的协作应该围绕工件进行：研究卡片、需求清单、修改计划、代码补丁、测试报告、风险清单、最终文档。聊天只是过程，工件才是交付物。</p>
<p dir="auto">用写一篇技术教程举例，比较差的协作方式是：</p>
<pre><code class="language-text">研究员：我觉得可以写这些点。
作者：我来写。
评审：写得不错。
总结者：这是最终答案。
</code></pre>
<p dir="auto">比较好的协作方式是：</p>
<pre><code class="language-text">研究员输出资料卡片：来源、链接、发布时间、关键结论、可信度。
架构员输出提纲：章节、读者目标、每章要解决的问题。
作者输出正文：只使用已确认资料，不虚构引用。
事实核查员输出问题清单：哪些说法缺来源，哪些需要改写。
编辑输出发布稿：去重、层级、标题、读者语气、参考资料。
</code></pre>
<p dir="auto">差别就在于，后一种方式每一步都有可检查的中间成果。即使最后文章不完美，也能知道问题出在资料、结构、正文还是审核。</p>
<h2>三、角色怎么分：按责任分，不按头衔分</h2>
<p dir="auto">多智能体角色不应该照搬公司组织架构。很多系统喜欢设置“CEO、CTO、产品经理、程序员、测试工程师”，但这些头衔如果没有工具权限和输出契约，就只是装饰。</p>
<p dir="auto">更实用的分法是按责任分。</p>
<p dir="auto">研究型角色负责降低未知。它的任务是查资料、找证据、比较方案、发现限制。它的输出不是“我觉得”，而是带来源的事实卡片。它应该优先使用官方文档、论文、项目文档、厂商说明、标准规范。研究型角色可以联网，但不应该直接改生产文件。</p>
<p dir="auto">执行型角色负责改变世界。它可以写代码、改配置、生成文档、调用业务 API、创建工单。执行型角色必须有明确权限边界和回滚策略。它的输出不是“已经处理”，而是具体改了什么、改在哪里、验证了什么。</p>
<p dir="auto">评审型角色负责找问题。它不需要重复完成任务，而是检查事实、逻辑、格式、安全、风险和可用性。评审型角色最怕变成礼貌评论员，所以必须给它硬标准：链接是否可达，测试是否通过，权限是否越界，用户目标是否满足。</p>
<p dir="auto">协调型角色负责控制流程。它维护任务目标、分配子任务、合并工件、判断是否需要重试或询问用户。协调者不是老板，它更像调度器和状态机。它不能只会说“继续优化”，必须能决定“停止、交付、返工、升级确认”。</p>
<p dir="auto">交付型角色负责把结果变成用户能用的形态。很多 AI 团队停在“内容已经生成”“代码已经改好”，但用户需要的是文件路径、部署地址、测试结果、操作说明、风险提示。交付型角色要把工程产物整理成最终状态。</p>
<p dir="auto">一个简单任务不需要五种角色都出现。比如修改一个前端按钮，可能只需要执行者和评审者。一个复杂项目计划，可能需要研究、协调、执行、评审和交付全部参与。角色数量由任务复杂度决定，不由想象力决定。</p>
<h2>四、协作模式一：主管加专家</h2>
<p dir="auto">“主管加专家”是最常见的多智能体模式。一个主管智能体接收用户目标，拆分任务，然后把子任务交给专家智能体。OpenAI Agents SDK 的 handoffs、LangGraph 的 supervisor、Google ADK 的 agent team 都支持这类模式。</p>
<p dir="auto">这个模式适合边界比较清晰但步骤需要动态调整的任务。例如：</p>
<pre><code class="language-text">用户目标：把一个知识库问答功能改成真正能调用企业文档，并验证回答引用。
主管：拆成文档接入、检索链路、回答生成、引用验证、端到端测试。
后端专家：实现文档索引和检索接口。
AI 专家：调整回答链路和引用格式。
测试专家：构造问题并检查引用是否来自正确文档。
交付专家：汇总改动、测试结果和剩余风险。
</code></pre>
<p dir="auto">主管模式的优势是灵活。用户不用知道任务应该拆成几块，主管可以根据执行结果调整下一步。如果检索接口已经存在，就跳过实现；如果测试发现召回错误，就把任务退回给后端专家。</p>
<p dir="auto">主管模式的风险也明显。主管如果没有足够上下文，会分错任务；如果太相信专家，会把错误结果合并；如果没有预算控制，会无限循环。实践里需要给主管三个硬约束：</p>
<pre><code class="language-text">每次分配任务必须说明输入、输出和验收标准。
每个专家返回结果必须包含证据或明确失败原因。
主管只能在验收标准满足后合并结果。
</code></pre>
<p dir="auto">主管不是“最聪明的人”，它是流程控制器。它的价值在于让任务状态清楚，而不是在所有专业问题上都亲自裁决。</p>
<h2>五、协作模式二：流水线</h2>
<p dir="auto">流水线适合有固定阶段的任务。内容生产、数据清洗、报表生成、客服工单处理、发布检查，都很适合流水线。</p>
<p dir="auto">以社区文章生产为例：</p>
<pre><code class="language-text">选题输入
  -&gt; 资料检索
  -&gt; 观点整理
  -&gt; 提纲生成
  -&gt; 初稿写作
  -&gt; 事实核查
  -&gt; 编辑润色
  -&gt; 发布检查
  -&gt; 输出文件
</code></pre>
<p dir="auto">流水线的优点是稳定，每个阶段的输入输出都可以标准化。资料检索阶段必须输出链接和摘要；事实核查阶段必须输出问题清单；发布检查阶段必须输出字符数、链接数量、目标文件路径。</p>
<p dir="auto">流水线的缺点是容易僵硬。如果资料不足，不能硬往下走；如果事实核查发现关键论点错误，不能只在末尾修几个字。好的流水线必须允许回退。例如事实核查失败时，回到资料检索；编辑发现结构混乱时，回到提纲；发布检查发现文件路径不对时，回到交付阶段。</p>
<p dir="auto">LangGraph 这类图工作流适合表达这种回退和分支。相比让模型自由决定所有流程，图式编排能把稳定流程固定下来，让模型只处理需要判断的部分。生产系统里，稳定环节用代码，模糊判断用模型，这是更可靠的搭配。</p>
<h2>六、协作模式三：并行生成加评审</h2>
<p dir="auto">有些任务没有唯一答案，比如产品方案、架构选型、营销文案、故障排查。此时可以让多个智能体并行给出方案，再由评审者比较。</p>
<p dir="auto">并行不是为了制造更多文本，而是为了覆盖不同假设。比如架构选型可以分成：</p>
<pre><code class="language-text">方案 A：优先复用现有系统。
方案 B：优先长期扩展性。
方案 C：优先最低交付风险。
评审：比较成本、风险、迁移路径、验证难度。
</code></pre>
<p dir="auto">这种模式很有用，但要防止两个问题。</p>
<p dir="auto">第一个问题是“平均化”。评审者把三个方案糊成一个折中方案，最后失去重点。解决方法是要求评审输出明确取舍：推荐哪个，为什么，不选哪些，代价是什么。</p>
<p dir="auto">第二个问题是“互相污染”。如果三个生成者共享彼此答案，可能都沿着同一个错误假设走。需要独立生成时，就让它们只共享任务目标，不共享中间答案。等到评审阶段再合并。</p>
<p dir="auto">并行模式成本高，不适合所有任务。它适合高价值决策、模糊问题、创意问题和历史上容易出错的任务。</p>
<h2>七、协作模式四：生成者与批判者</h2>
<p dir="auto">“生成者与批判者”是最容易落地的质量提升模式。一个智能体负责产出，另一个智能体负责挑错。它比完整多智能体团队轻，但效果通常明显。</p>
<p dir="auto">关键在于批判者不能只说“很好，可以更具体”。它必须按清单检查：</p>
<pre><code class="language-text">事实：关键说法是否有来源。
完整性：用户要求是否全部覆盖。
一致性：前后是否矛盾。
可执行性：有没有具体步骤、路径、命令或交付物。
安全性：有没有越权、泄露、危险操作。
风格：是否符合目标站点或产品语言。
</code></pre>
<p dir="auto">写作任务里，批判者可以检查是否原创、是否空泛、是否引用过度、是否标题层级混乱。代码任务里，批判者可以检查边界条件、测试缺口、回滚风险、用户体验。运维任务里，批判者可以检查是否误把健康检查当完整验收，是否漏掉真实用户路径。</p>
<p dir="auto">批判者提出问题后，生成者必须修正。否则“评审”只是仪式。更进一步，可以要求批判者对修正后版本再次检查，直到剩余问题低于阈值或需要用户决策。</p>
<h2>八、工具与权限：蜂群必须有边界</h2>
<p dir="auto">多智能体系统一旦接入真实工具，就必须认真处理权限。工具包括搜索、文件、数据库、浏览器、命令行、部署、支付、邮件、CRM、工单、机器人控制等。每个工具都可能造成真实影响。</p>
<p dir="auto">实践里建议按权限分成四类：</p>
<pre><code class="language-text">只读工具：搜索、读取文档、查询数据库、查看日志。
草稿工具：生成邮件草稿、创建待审核工单、准备变更计划。
写入工具：修改文件、写数据库、提交表单、创建资源。
高风险工具：删除、付款、部署、发外部消息、改变权限。
</code></pre>
<p dir="auto">不同智能体只拿自己需要的工具。研究员不需要删除文件，评审者不需要发邮件，交付者不一定需要改数据库。权限最小化可以减少模型误判带来的损失。</p>
<p dir="auto">工具返回也要为协作设计。一个工具结果如果只是“success”，下游智能体无法判断发生了什么。更好的返回应该包含：</p>
<pre><code class="language-text">执行状态：成功、部分成功、失败、需要确认。
业务结果：创建了哪个对象，修改了哪些字段。
证据：链接、文件路径、日志片段、测试报告。
下一步：是否可重试，是否需要人工确认。
风险：影响范围和可能副作用。
</code></pre>
<p dir="auto">MCP 的价值在这里会变得明显。它把工具、资源和提示能力以统一协议暴露给 AI 应用，适合在团队内复用外部系统能力。但 MCP 不是安全边界本身。接入 MCP 服务器后，仍要做服务来源管理、权限控制、参数校验和审计。</p>
<p dir="auto">A2A 解决的是另一层问题：不同智能体或不同平台之间怎样互相发现、委派任务和交换工件。A2A 规范里的 AgentCard、Task、Message、Artifact、Part 等概念，说明跨系统协作需要能力描述、任务状态和结果工件，而不是随便发一段自然语言。</p>
<p dir="auto">一句话区分：</p>
<pre><code class="language-text">MCP：让智能体接工具。
A2A：让智能体接智能体。
编排框架：让应用内部的智能体按流程工作。
</code></pre>
<h2>九、记忆与共享状态：别让群聊变垃圾场</h2>
<p dir="auto">多智能体系统最容易出现上下文爆炸。每个智能体说一段，工具返回一段，评审再说一段，很快上下文就长到没人看得清。解决办法不是买更大的上下文窗口，而是管理共享状态。</p>
<p dir="auto">共享状态应该保存结构化工件，而不是完整聊天记录。比如：</p>
<pre><code class="language-text">task_goal：用户目标和硬约束。
research_notes：资料卡片列表。
decision_log：已经做出的关键决策。
open_questions：未解决问题。
artifacts：代码补丁、文档、截图、测试报告。
risks：风险和处理状态。
acceptance：验收标准和当前结果。
</code></pre>
<p dir="auto">每个智能体只读取自己需要的部分。研究员读取目标和开放问题；作者读取资料卡片和提纲；测试员读取交付物和验收标准；交付者读取最终结果和风险。全员共享全部上下文，听起来透明，实际低效。</p>
<p dir="auto">长期记忆也要谨慎。它适合保存稳定偏好、项目约定、历史失败经验、常用流程。不适合保存临时猜测、未验证结论、敏感凭证。LangGraph 的记忆文档把短期记忆放在会话线程内，把长期记忆放在跨线程存储中，这种分层很值得借鉴。</p>
<p dir="auto">多智能体还需要“冲突记忆”。当两个智能体结论不一致时，不要让协调者随便选一个，而要把冲突写入状态：</p>
<pre><code class="language-text">冲突点：到底哪里不一致。
证据 A：第一个结论的来源。
证据 B：第二个结论的来源。
处理方式：继续检索、请用户确认、选择保守方案、延迟决策。
最终决定：采用哪个，为什么。
</code></pre>
<p dir="auto">这样下次复盘时，团队知道当时不是“忘了”，而是有明确取舍。</p>
<h2>十、校验机制：没有验收，协作就是聊天</h2>
<p dir="auto">多智能体协作要想稳定，必须把校验前置。不要等最终答案生成后才问“看起来行不行”。每个阶段都应该有验收标准。</p>
<p dir="auto">资料阶段的验收可以是：</p>
<pre><code class="language-text">是否优先使用官方文档、论文、厂商文档、项目文档。
是否记录来源链接和检索日期。
是否区分事实、推断和观点。
是否避免只引用二手摘要。
</code></pre>
<p dir="auto">代码阶段的验收可以是：</p>
<pre><code class="language-text">是否只修改目标范围内文件。
是否符合项目已有风格。
是否补充或运行相关测试。
是否说明未能验证的部分。
</code></pre>
<p dir="auto">写作阶段的验收可以是：</p>
<pre><code class="language-text">是否覆盖用户要求。
是否有明确读者收益。
是否避免重复和模板化段落。
是否末尾列出参考资料。
</code></pre>
<p dir="auto">交付阶段的验收可以是：</p>
<pre><code class="language-text">文件是否写入正确路径。
字符数或数据量是否达标。
链接、截图、测试结果是否存在。
改动文件列表是否准确。
</code></pre>
<p dir="auto">这些验收标准可以由规则程序检查一部分，也可以由评审智能体检查一部分。比如字符数、文件路径、测试命令适合程序检查；事实支撑、逻辑一致、用户体验适合智能体检查。不要把所有校验都交给模型，也不要把所有质量问题都幻想成规则能覆盖。</p>
<h2>十一、评测：怎么知道蜂群真的比单体好</h2>
<p dir="auto">多智能体系统上线前，必须回答一个问题：它真的更好吗？如果只是成本更高、速度更慢、输出更长，那没有意义。</p>
<p dir="auto">评测可以从五个维度看。</p>
<p dir="auto">第一，完成率。给一组真实任务，单智能体和多智能体分别执行，比较最终是否完成。完成不是“回答了”，而是交付物满足验收标准。</p>
<p dir="auto">第二，错误率。比较事实错误、工具误用、越权动作、格式错误、遗漏需求。多智能体如果只是让文字更漂亮，但工具错误不降，价值有限。</p>
<p dir="auto">第三，可恢复性。故意加入工具超时、资料不足、输入歧义、权限失败，看系统是否能重试、降级、询问用户或停止。真实工作里，异常比理想输入更常见。</p>
<p dir="auto">第四，一致性。同一任务重复运行多次，结果是否稳定。τ-bench 提出的 pass^k 思路很有启发：一个智能体单次成功不够，多次稳定成功才接近生产要求。</p>
<p dir="auto">第五，成本与延迟。多智能体很容易把 token、工具调用和等待时间放大。质量提升必须抵消这些成本。社区项目可以先在高价值任务上使用多智能体，不要把所有简单问答都做成团队流程。</p>
<p dir="auto">可以建立一个小评测集：</p>
<pre><code class="language-text">10 个常规任务：应该顺利完成。
10 个边界任务：信息不完整或工具返回异常。
10 个拒绝任务：要求越权、删除、泄露或绕过规则。
10 个回归任务：历史上出过错的真实案例。
</code></pre>
<p dir="auto">每个任务记录：</p>
<pre><code class="language-text">输入
可用工具
期望交付物
禁止行为
评分标准
单智能体结果
多智能体结果
轨迹摘要
失败原因
</code></pre>
<p dir="auto">LangSmith、LangGraph、AutoGen、CrewAI 等生态都在强调 tracing、evaluation、observability，这不是因为好看，而是因为智能体问题通常藏在过程中。只看最终答案，很多危险动作和错误路径都看不到。</p>
<h2>十二、真实场景一：AI 编程团队</h2>
<p dir="auto">AI 编程是多智能体比较适合的场景，因为它天然包含需求理解、代码阅读、修改、测试、审查和交付。</p>
<p dir="auto">一个小型 AI 编程团队可以这样设计：</p>
<pre><code class="language-text">协调者：确认任务范围和验收标准。
代码侦察员：阅读相关文件，找调用链和现有模式。
实现者：按最小范围修改代码。
测试员：运行相关测试，补充必要用例。
审查员：检查回归风险、边界条件和用户体验。
交付者：汇总改动文件、测试结果和剩余风险。
</code></pre>
<p dir="auto">注意，代码侦察员和实现者分开很有价值。很多代码智能体失败，是因为没读清楚项目结构就动手。让侦察员先输出“相关文件、现有模式、风险点”，可以减少盲改。</p>
<p dir="auto">测试员也不能只跑一个健康检查。比如前端改动要看浏览器里的真实用户路径，后端改动要跑相关单测或接口流，AI 功能要验证真实链路而不是 mock 回复。多智能体系统的优势，是可以把这些检查分给不同工作单元，而不是让一个上下文越来越长的模型硬扛。</p>
<p dir="auto">交付者最后要说清楚：</p>
<pre><code class="language-text">改了哪些文件。
为什么这样改。
验证了什么。
哪些没验证。
用户下一步可以在哪里看到效果。
</code></pre>
<p dir="auto">这比一句“已完成”可靠得多。</p>
<h2>十三、真实场景二：社区内容生产团队</h2>
<p dir="auto">社区内容生产也适合多智能体，但要警惕模板灌水。一个好内容团队不是让多个模型轮流扩写，而是让不同角色守住不同质量线。</p>
<p dir="auto">可以这样分：</p>
<pre><code class="language-text">选题员：判断读者关心什么问题。
研究员：联网检索最新资料，优先原始来源。
结构编辑：设计文章路线，避免堆资料。
作者：写原创正文，讲清因果和实践。
事实核查员：检查关键说法和引用。
风格编辑：匹配站点语气，去掉内部术语。
发布检查员：检查 Markdown、字数、链接和文件路径。
</code></pre>
<p dir="auto">这套流程能解决内容生产里几个常见问题：</p>
<pre><code class="language-text">资料过旧：研究员必须检索最新资料。
观点空泛：结构编辑要求每章解决具体问题。
引用混乱：事实核查员检查来源和说明。
文风错位：风格编辑按站点读者改写。
交付不完整：发布检查员输出路径、字数和来源数量。
</code></pre>
<p dir="auto">内容团队尤其要强调原创。原创不是不看资料，而是不复制资料结构和句子。资料用于建立事实基础，文章要用自己的组织方式解释问题、给出判断和实践步骤。</p>
<h2>十四、真实场景三：运维与事故响应团队</h2>
<p dir="auto">运维场景里，多智能体有价值，也更危险。因为工具可能读取日志、重启服务、修改配置、部署版本。这里必须把只读诊断和写入动作分开。</p>
<p dir="auto">一个安全的事故响应团队可以是：</p>
<pre><code class="language-text">告警分析员：读取告警和指标，只读。
日志分析员：查询日志和错误样本，只读。
变更分析员：查看最近发布、配置和依赖变化，只读。
诊断协调者：合并证据，提出根因假设。
修复规划员：生成修复步骤和回滚方案。
审批执行员：只有用户确认后才执行写入动作。
复盘员：记录原因、处理过程、预防措施。
</code></pre>
<p dir="auto">这里不能让一个智能体既诊断又直接重启所有服务。真实生产环境需要确认点：</p>
<pre><code class="language-text">是否影响用户。
修复动作会改变什么。
有没有回滚方案。
谁批准执行。
执行后如何验证。
</code></pre>
<p dir="auto">如果系统还在开发阶段，也应该保持这个习惯。开发环境不是线上，但生产级应用的能力是在开发阶段训练出来的。把权限、追踪、回滚、验收提前设计好，后面才不会靠补丁兜底。</p>
<h2>十五、实现建议：从轻量开始</h2>
<p dir="auto">如果你正在做一个多智能体项目，不建议一上来搭一个宏大的平台。可以从轻量版本开始。</p>
<p dir="auto">第一步，把单智能体做好。让它能稳定调用工具，保存状态，产出可验收结果。</p>
<p dir="auto">第二步，加一个独立评审者。生成者产出结果，评审者按清单挑错，生成者修正。这一步成本低，收益通常明显。</p>
<p dir="auto">第三步，把中间工件结构化。不要传整段聊天记录，而是传资料卡片、计划、补丁、测试报告、风险清单。</p>
<p dir="auto">第四步，再引入协调者。只有当任务分支多、角色多、需要动态调度时，协调者才有价值。</p>
<p dir="auto">第五步，建立评测集。用真实任务比较单智能体和多智能体，不要只凭感觉判断质量。</p>
<p dir="auto">第六步，接入协议和框架。工具多、团队多、来源多时考虑 MCP；跨平台智能体协作时考虑 A2A；复杂流程和状态恢复时考虑 LangGraph、ADK、AutoGen、CrewAI、OpenAI Agents SDK 等框架。</p>
<p dir="auto">这个顺序有一个好处：每一步都能独立带来价值。即使最后没有做成完整蜂群系统，你也已经得到更好的工具契约、评审流程、工件结构和评测集。</p>
<h2>十六、几个反模式</h2>
<p dir="auto">反模式一：角色很多，权限一样。五个智能体都能读写所有工具，出了问题没人负责。正确做法是按职责分配工具。</p>
<p dir="auto">反模式二：所有人共享完整上下文。看似透明，实际噪声爆炸。正确做法是共享结构化工件。</p>
<p dir="auto">反模式三：评审只说好话。批判者没有硬标准，只会输出“建议更详细”。正确做法是给检查清单和否决权。</p>
<p dir="auto">反模式四：没有终止条件。系统反复研究、反复修改、反复总结。正确做法是定义预算、验收和停止规则。</p>
<p dir="auto">反模式五：最终只交付摘要。用户要文件、代码、配置、截图或测试结果，系统只回一段总结。正确做法是把真实交付物作为完成标准。</p>
<p dir="auto">反模式六：把协议当架构。接了 MCP 或 A2A，不代表系统就会协作。协议只是连接方式，责任边界和评测才是质量来源。</p>
<p dir="auto">反模式七：把模型当权限系统。提示词说“不要删除文件”不等于系统不能删除文件。正确做法是工具层权限控制和用户确认。</p>
<p dir="auto">反模式八：没有真实验收。只看 API 返回 200，不走用户路径。正确做法是用真实客户端、真实工具、真实数据样本验证结果。</p>
<h2>十七、一个可复用的蜂群协作模板</h2>
<p dir="auto">下面这个模板可以直接用于设计多智能体任务。</p>
<pre><code class="language-text">任务名称：
用户目标：
硬约束：
最终交付物：

角色列表：
- 角色名：
  职责：
  不负责：
  可用工具：
  输入：
  输出：
  验收：

共享工件：
- 资料卡片
- 决策记录
- 风险清单
- 测试结果
- 最终交付物

流程：
1. 协调者确认目标和验收。
2. 研究或侦察角色收集证据。
3. 执行角色产出工件。
4. 评审角色检查并给出问题清单。
5. 执行角色修正。
6. 交付角色整理最终结果。

停止条件：
- 验收通过。
- 预算耗尽。
- 需要用户确认。
- 发现高风险动作。
- 外部依赖不可用。

评测指标：
- 完成率
- 错误率
- 工具误用率
- 重试次数
- 平均成本
- 用户可用性
</code></pre>
<p dir="auto">这个模板最大的作用，是强迫团队从“让几个智能体聊聊”转向“让几个工作单元交付工件”。只要工件清楚、验收清楚，系统就容易调试。没有工件和验收，智能体越多越难排查。</p>
<h2>十八、社区实践中的取舍</h2>
<p dir="auto">在 localaihub 这样的社区实践语境里，我们更关心“能不能用起来”，而不是追逐最复杂的概念。很多团队并不需要从第一天就接入完整协议栈，也不需要做跨组织智能体网络。更现实的起点是：</p>
<pre><code class="language-text">本地模型或云模型先跑通单智能体。
把常用工具封装成清晰接口。
为高价值任务加入评审智能体。
把每次任务的轨迹和交付物保存下来。
从真实失败案例里补评测集。
</code></pre>
<p dir="auto">当工具越来越多时，再考虑 MCP，让工具接入变得标准。当天然需要和外部智能体协作时，再看 A2A。流程复杂、需要恢复和人类确认时，再引入图工作流。不要为了技术名词搭架子，也不要因为系统还小就忽视边界。</p>
<p dir="auto">蜂群协作最务实的收益，往往来自三个地方：</p>
<pre><code class="language-text">减少遗漏：不同角色检查不同问题。
降低风险：不同权限防止一个模型越界。
提高可解释性：每个工件都能追溯到责任角色和来源。
</code></pre>
<p dir="auto">这些收益不玄学，也不依赖夸张宣传。它们来自工程纪律。</p>
<h2>十九、怎样把蜂群协作接进本地社区项目</h2>
<p dir="auto">社区项目和企业内部平台不一样。社区项目通常资源有限，成员时间碎片化，工具链混合，本地部署和云服务并存。蜂群协作在这种环境里要更务实：优先解决真实协作痛点，而不是搭一套看起来完整但没人维护的平台。</p>
<p dir="auto">第一个建议是从“本地可见工件”开始。比如把每次智能体任务的资料卡片、计划、补丁、测试结果、截图、最终文档保存到项目目录或任务面板里。这样社区成员不用翻长对话，也能看到发生了什么。工件命名要清楚，最好带任务名、时间和角色。社区协作最怕知识散落在聊天记录里，过几天没人能复盘。</p>
<p dir="auto">第二个建议是把工具封装成社区可理解的动作。不要给模型暴露一堆内部 API 名称，而是封装成“读取项目 README”“查询最近构建”“打开本地页面截图”“运行指定测试”“生成发布检查清单”。这些动作对人也有意义，对智能体也清楚。工具越贴近社区工作语言，越容易被正确调用。</p>
<p dir="auto">第三个建议是保留人工接力点。社区项目里，很多事情需要维护者判断，比如是否接受一个架构变更、是否发布新版本、是否修改公共文档口径。智能体可以准备材料，但不要假装自己就是维护者。把需要人决定的问题列成短清单，附上证据和推荐项，协作效率会比长篇解释高得多。</p>
<p dir="auto">第四个建议是让评审变成常规流程。社区里常见问题是：有人生成了一份很长的内容，但没人有时间逐字检查；有人提交了一段代码，但没有说明测试过什么。可以用评审智能体先做第一轮检查，标出事实缺口、链接失效、格式问题、风险点，再让人看重点。评审智能体不能替代维护者，但能降低维护者的阅读成本。</p>
<p dir="auto">第五个建议是记录“失败样本”。每次智能体误改文件、引用旧资料、漏掉用户要求、测试没跑、界面文案露出内部字段，都应该进入回归集。社区项目不一定有完整 QA 团队，但可以有一个轻量失败库。下次改提示词、换模型、加工具前，先跑这些任务，看看问题有没有回来。</p>
<p dir="auto">第六个建议是把多智能体和权限绑定。比如内容仓库里，研究智能体可以联网和读文件，写作智能体只能写指定 Markdown，发布智能体只能生成发布说明，不能直接推送。代码仓库里，侦察智能体只读，执行智能体改工作区，发布智能体需要维护者确认。这样就算某个角色判断错，也不至于影响全部资产。</p>
<p dir="auto">第七个建议是使用本地优先的验证方式。网页项目要打开本地页面看，文档项目要检查生成文件，脚本项目要跑命令，AI 功能要走真实链路。社区实践最容易变成“看起来有结果”，但真正能帮人的是“我可以打开这个地址”“我可以运行这个命令”“我可以看到这份文件”“我知道哪些地方没验证”。</p>
<p dir="auto">如果项目已经有任务面板、PM2 服务、Git 仓库、文档目录或本地工具，蜂群协作不需要另起炉灶。把智能体角色接到已有工作流里就够了。研究结果写到文档目录，测试结果贴到任务记录，交付说明放到 PR 或发布帖。AI 团队应该融入社区工作方式，而不是迫使社区迁移到一套陌生流程。</p>
<h2>二十、成本控制：别让蜂群变成烧钱机器</h2>
<p dir="auto">多智能体最现实的问题之一是成本。一个智能体查十个网页、另一个智能体读完整上下文、第三个智能体再评审全文，很快 token 和工具调用就会膨胀。成本控制不是上线后再优化，而是设计阶段就要考虑。</p>
<p dir="auto">第一，能规则检查的不要交给大模型。字符数、文件是否存在、链接格式、JSON schema、测试命令退出码、Markdown 标题层级，这些都适合程序检查。模型应该处理语义判断、取舍和综合，不应该被用来数行数。</p>
<p dir="auto">第二，能摘要传递的不要传原文。研究员可以把资料整理成卡片，作者读取卡片而不是所有网页全文。测试员可以读取失败摘要和关键日志，而不是完整日志文件。每个角色需要的是完成任务所需信息，不是全部信息。</p>
<p dir="auto">第三，能小模型处理的不要上强模型。路由、分类、格式检查、简单摘要可以用低成本模型；复杂规划、代码审查、事实冲突判断再用强模型。模型选择要靠评测，不要靠感觉。</p>
<p dir="auto">第四，并行要有预算。并行生成三个方案适合高价值决策，不适合每个小问题。可以设置“只有任务复杂度高或用户明确要求方案比较时，才启用并行角色”。</p>
<p dir="auto">第五，重试要有上限。工具失败可以重试，但不能无限重试。模型输出不合格可以返工，但要记录返工次数。超过预算后，系统应该交付已完成部分、说明阻塞原因，或者请求用户决策。</p>
<p dir="auto">第六，记忆检索要精准。长期记忆很有用，但每次读取太多会增加成本和污染上下文。可以按项目、任务类型、时间和关键词过滤，再让模型只吸收相关片段。</p>
<p dir="auto">成本控制的目标不是省到不能用，而是把预算花在会提高交付质量的地方。社区项目尤其要注意这一点，因为很多任务的价值并不支持复杂多轮蜂群流程。</p>
<h2>二十一、透明度：用户需要证据，不需要内部噪声</h2>
<p dir="auto">蜂群协作系统应该透明，但透明不等于把所有内部日志都展示给用户。用户需要的是能判断结果是否可信的证据，而不是每个模型的自言自语。</p>
<p dir="auto">好的透明度包括：</p>
<pre><code class="language-text">资料来自哪里。
哪些工具被用于完成任务。
改动了哪些文件或对象。
哪些测试或检查已经执行。
哪些风险仍然存在。
哪些地方需要用户确认。
</code></pre>
<p dir="auto">不好的透明度包括：</p>
<pre><code class="language-text">暴露内部 prompt。
展示冗长推理文本。
把工具错误码直接给最终用户。
把每个智能体的聊天原文堆出来。
用内部字段名当界面文案。
</code></pre>
<p dir="auto">社区实践里，可以把透明度做成“交付摘要”。比如：</p>
<pre><code class="language-text">已完成：写入两篇 Markdown 长文。
证据：文件路径、字符数、参考来源数量。
检查：只改动指定文件，链接已记录，字数达标。
未做：没有发布到线上站点。
下一步：维护者可审阅并决定是否发布。
</code></pre>
<p dir="auto">这种摘要让用户知道结果在哪里、可信度如何、还缺什么。它比“智能体 A 认为，智能体 B 认为”更有用。</p>
<h2>二十二、治理：让蜂群长期可维护</h2>
<p dir="auto">多智能体系统如果没有治理，很快会变成一堆没人敢改的提示词和工具。治理不一定复杂，但至少要有几个基本机制。</p>
<p dir="auto">第一，角色版本管理。每个角色的职责、工具、提示词、输出格式都应该有版本。改了研究员的检索策略，要能知道是哪次改动导致来源质量变化。</p>
<p dir="auto">第二，工具目录管理。工具要有负责人、权限说明、参数文档、返回结构、废弃状态。下游智能体依赖工具，如果工具字段变了却没人通知，系统会出现隐蔽错误。</p>
<p dir="auto">第三，评测集维护。每次严重失败都应该沉淀成样本。评测集不是一次性建设，而是系统经验的累积。</p>
<p dir="auto">第四，记忆清理。长期记忆需要过期、修正和删除。社区项目变化快，旧路径、旧命令、旧负责人、旧模型能力都可能变成错误来源。</p>
<p dir="auto">第五，安全审计。定期检查哪些角色能访问哪些工具，哪些工具有写入权限，哪些动作缺少确认。权限会随着项目发展慢慢膨胀，需要定期收紧。</p>
<p dir="auto">第六，交付复盘。每隔一段时间抽样查看成功任务和失败任务，比较成本、质量和用户反馈。不要只盯失败，成功任务也能告诉你哪些角色真正有价值，哪些只是增加流程。</p>
<p dir="auto">治理的目的不是让系统官僚化，而是让多人协作可持续。社区项目换维护者、换模型、换框架都很正常。只要角色、工具、评测、记忆和权限有记录，系统就能继续演进。</p>
<h2>二十三、失败复盘：一次蜂群团队为什么越协作越乱</h2>
<p dir="auto">下面这个复盘很典型。一个社区项目想用多智能体改造文档站：研究员找资料，作者写文档，审查员检查，发布员写入文件。第一次运行看起来很热闹，四个角色都输出了不少内容，但最后交付失败。原因不是模型完全不会做，而是协作设计有缺陷。</p>
<p dir="auto">第一个问题是目标没有冻结。用户要求写“面向新手的部署教程”，研究员按“架构分析”检索资料，作者又按“产品介绍”写正文，审查员只检查语法，发布员发现风格不对却没有权限回退。四个角色都在工作，但没有同一个目标。修复方式是让协调者在第一步生成任务卡片，写明读者、目标、边界、字数、文件路径、禁止事项和验收标准。后续角色只围绕任务卡片工作。</p>
<p dir="auto">第二个问题是交接没有工件。研究员把十几个链接和长段摘要直接丢给作者，作者没有时间判断哪些可信，于是挑了最顺眼的材料使用。审查员后来发现来源质量参差不齐，但已经很难定位每个段落来自哪里。修复方式是把研究输出改成资料卡片：每张卡片只保留一个事实点、来源、日期、可信等级和可用章节。作者写作时引用卡片编号，审查员按编号回查来源。</p>
<p dir="auto">第三个问题是评审没有否决权。审查员指出“缺少安装失败处理”和“没有说明回滚”，但发布员仍然把文档写入最终路径。结果用户按文档操作时卡在依赖安装。修复方式是把评审结果分成阻断问题和建议问题。阻断问题未解决时，协调者不能进入发布阶段。建议问题可以进入后续迭代，但必须出现在交付说明里。</p>
<p dir="auto">第四个问题是发布员承担了太多判断。发布员本来只负责写文件和统计结果，却被迫判断文章结构、技术事实和用户体验。角色职责混乱后，系统看似有人兜底，实际没人负责。修复方式是让发布员只做机械交付检查：目标路径、文件存在、格式、字数、链接数量、改动范围。内容判断交给编辑和审查员。</p>
<p dir="auto">第五个问题是没有失败回路。一次失败后，团队只改了提示词，让每个角色“更认真”。下一次又在别的地方出错。真正修复应该把失败写入回归样本：目标漂移样本、资料卡片缺失样本、评审阻断样本、发布越权样本。以后每次改流程，都先跑这些样本。</p>
<p dir="auto">这次复盘给出的经验很直接：多智能体不是让更多模型参与，而是让每个模型少做一点、做清楚一点。目标卡片、资料卡片、阻断评审、发布检查、失败回归，这些机制比角色名字重要得多。</p>
<h2>二十四、协作协议细节：任务卡、工件卡和评审卡</h2>
<p dir="auto">如果不想一开始接入复杂协议，也可以先在项目内部定义三张卡。它们不依赖框架，却能显著提升协作质量。</p>
<p dir="auto">任务卡用于冻结目标：</p>
<pre><code class="language-text">任务标题：
读者或用户：
最终交付物：
目标路径或目标系统：
硬约束：
可用资料：
禁止行为：
验收标准：
需要人工确认的点：
</code></pre>
<p dir="auto">工件卡用于传递中间结果：</p>
<pre><code class="language-text">工件类型：资料、代码、测试、截图、风险、正文。
生产角色：
输入来源：
核心内容：
适用范围：
不确定点：
下游使用建议：
</code></pre>
<p dir="auto">评审卡用于推动返工：</p>
<pre><code class="language-text">评审对象：
通过状态：通过、带条件通过、不通过。
阻断问题：
建议问题：
证据：
需要返工的角色：
返工完成标准：
</code></pre>
<p dir="auto">这三张卡解决三个痛点。任务卡防止目标漂移，工件卡防止上下文变成噪声，评审卡防止问题只停留在建议层面。无论后面使用 LangGraph、AutoGen、CrewAI、ADK，还是自写轻量编排，这些结构都能复用。</p>
<p dir="auto">内部协议还要约定谁能改卡。任务卡通常只能由协调者根据用户输入修改，重大修改要用户确认；工件卡由生产角色创建，下游可以引用但不能静默改写；评审卡由评审角色创建，协调者负责决定返工或放行。权限越清楚，协作越少扯皮。</p>
<h2>二十五、落地到一天工作流：从早会到交付</h2>
<p dir="auto">把蜂群协作放进一天真实工作里，可以很简单。早上维护者给出任务：“补齐本地部署文档，要求新用户能在三十分钟内跑起来。”协调者生成任务卡，确认目标路径、读者和验收方式。研究员检查现有 README、安装脚本、常见报错和依赖版本，输出资料卡片。作者根据资料卡片写正文，不直接使用未经确认的网页内容。</p>
<p dir="auto">中午前，测试员按文档从干净环境执行一遍，记录卡住的步骤、缺失依赖和命令输出。作者只修正文档，不改脚本；如果必须改脚本，协调者把任务升级给工程角色。下午，审查员检查文档是否覆盖安装、配置、启动、验证、常见失败和卸载或恢复。编辑检查面向新用户的表达，去掉内部昵称和维护者才懂的缩写。发布员写入指定文件，统计字数、链接、改动范围和未验证项。</p>
<p dir="auto">这条工作流没有神秘之处，却比单个智能体直接写文档稳得多。每一步都有工件，每个问题都有归属，每个角色都不需要读完整历史。更重要的是，维护者可以随时介入：如果测试员发现脚本缺陷，维护者决定是否扩大任务；如果资料冲突，维护者裁决使用哪个版本；如果发布时间紧，维护者决定哪些建议延期。</p>
<p dir="auto">社区实践不需要追求“全自动”。很多时候，最有价值的是把人从重复整理中解放出来，同时保留关键决策权。蜂群协作应该让维护者更容易看清事实和风险，而不是让维护者去管理一群会跑偏的模型。</p>
<p dir="auto">还有一个容易被忽略的边界：蜂群协作不是越多角色越好。小任务如果拆成十几个角色，协调成本会吞掉收益，模型还会为了证明自己有价值而制造不必要的建议。社区项目可以先固定四个角色：协调者、执行者、评审者、发布者。只有当任务需要独立调研、独立测试或安全审查时，再临时增加研究员、测试员和安全员。这样既保留多智能体的交叉校验，也避免把简单事情做成复杂流程。</p>
<h2>二十六、结语：让智能体像团队一样交付</h2>
<p dir="auto">多智能体团队不是给模型套几个人设，也不是让它们在群聊里互相讨论到天亮。它应该像一个小型工作队：知道目标，分清职责，使用工具，交接工件，互相校验，最后把结果交到用户手里。</p>
<p dir="auto">蜂群协作真正难的地方，不是让模型说话，而是让系统有边界、有证据、有验收。MCP、A2A、LangGraph、AutoGen、CrewAI、OpenAI Agents SDK、Google ADK 这些工具和协议都在推动生态成熟，但它们只是基础设施。真正决定质量的，仍然是你怎样定义任务、怎样设计工具、怎样管理记忆、怎样分配权限、怎样评测交付。</p>
<p dir="auto">如果你准备在项目里引入多智能体，建议从一个简单问题开始：这个任务如果交给真实团队，谁负责调研，谁负责执行，谁负责检查，谁负责交付？把这个答案写清楚，再让智能体去做。这样做出来的蜂群系统，才不是玄学，而是一套可以复盘、可以改进、可以持续交付的 AI 工作方式。</p>
<h2>参考资料</h2>
<ul>
<li><a href="https://openai.com/index/the-next-evolution-of-the-agents-sdk/" rel="nofollow ugc">OpenAI：The next evolution of the Agents SDK</a>：介绍 OpenAI Agents SDK 在工具、handoff、MCP、skills、<a href="http://AGENTS.md" rel="nofollow ugc">AGENTS.md</a> 和追踪能力上的演进，用于理解最新智能体基础设施。</li>
<li><a href="https://openai.github.io/openai-agents-js/guides/handoffs/" rel="nofollow ugc">OpenAI Agents SDK 文档：Handoffs</a>：说明智能体之间如何移交任务，用于主管加专家模式。</li>
<li><a href="https://openai.github.io/openai-agents-js/guides/tools/" rel="nofollow ugc">OpenAI Agents SDK 文档：Tools</a>：说明托管工具、函数工具和智能体即工具，用于工具权限和交付设计。</li>
<li><a href="https://modelcontextprotocol.io/docs/getting-started/intro" rel="nofollow ugc">Model Context Protocol 官方文档</a>：说明 MCP 如何连接 AI 应用与外部工具、数据和工作流，用于工具协议部分。</li>
<li><a href="https://agent2agent.info/specification/core/" rel="nofollow ugc">A2A Core Protocol Specification</a>：说明 AgentCard、Task、Message、Artifact、Part 等概念，用于跨智能体协作部分。</li>
<li><a href="https://www.linuxfoundation.org/press/linux-foundation-launches-the-agent2agent-protocol-project-to-enable-secure-intelligent-communication-between-ai-agents" rel="nofollow ugc">Linux Foundation：Agent2Agent Protocol Project</a>：说明 A2A 项目的开放治理和跨平台目标。</li>
<li><a href="https://adk.dev/" rel="nofollow ugc">Google Agent Development Kit</a>：介绍 ADK 的多智能体、图工作流、会话、记忆和评测能力，用于工程落地部分。</li>
<li><a href="https://adk.dev/agents/multi-agents/" rel="nofollow ugc">Google ADK：Multi-Agent Systems</a>：说明组合多个智能体、层级关系和工作流智能体，用于多智能体模式。</li>
<li><a href="https://langchain-ai.github.io/langgraph/concepts/multi_agent/" rel="nofollow ugc">LangGraph Multi-agent 文档</a>：说明 supervisor、handoff、network 等多智能体架构，用于协作模式对比。</li>
<li><a href="https://docs.langchain.com/oss/python/langgraph/add-memory" rel="nofollow ugc">LangGraph Memory 文档</a>：说明短期记忆、长期记忆和生产 checkpointer，用于共享状态和记忆部分。</li>
<li><a href="https://www.langchain.com/langsmith/evaluation" rel="nofollow ugc">LangSmith Evaluation</a>：说明智能体轨迹评测、工具调用评测和自动化评分，用于评测部分。</li>
<li><a href="https://microsoft.github.io/autogen/0.2/docs/Use-Cases/agent_chat/" rel="nofollow ugc">Microsoft AutoGen 文档：Multi-agent Conversation Framework</a>：介绍多智能体会话、工具使用和人工反馈，用于团队协作模式。</li>
<li><a href="https://docs.crewai.com/en/introduction" rel="nofollow ugc">CrewAI Introduction</a>：介绍 Crews、Flows、角色和流程，用于多智能体团队编排对比。</li>
<li><a href="https://arxiv.org/abs/2210.03629" rel="nofollow ugc">ReAct: Synergizing Reasoning and Acting in Language Models</a>：提出推理与行动交替，用于解释智能体闭环。</li>
<li><a href="https://arxiv.org/abs/2303.11366" rel="nofollow ugc">Reflexion: Language Agents with Verbal Reinforcement Learning</a>：讨论通过语言反馈和情景记忆改进智能体行为，用于复盘和记忆部分。</li>
<li><a href="https://arxiv.org/abs/2302.04761" rel="nofollow ugc">Toolformer: Language Models Can Teach Themselves to Use Tools</a>：讨论模型学习 API 调用行为，用于工具能力部分。</li>
<li><a href="https://arxiv.org/abs/2308.03688" rel="nofollow ugc">AgentBench: Evaluating LLMs as Agents</a>：提出多环境智能体评测，用于评测集设计。</li>
<li><a href="https://arxiv.org/abs/2311.12983" rel="nofollow ugc">GAIA: a benchmark for General AI Assistants</a>：强调真实助手任务中的推理、工具和多模态能力，用于真实任务评测。</li>
<li><a href="https://arxiv.org/abs/2406.12045" rel="nofollow ugc">τ-bench: A Benchmark for Tool-Agent-User Interaction in Real-World Domains</a>：提出面向真实领域工具交互的可靠性评测，用于一致性和 pass^k 思路。</li>
<li><a href="https://arxiv.org/abs/2412.14470" rel="nofollow ugc">Agent-SafetyBench: Evaluating the Safety of LLM Agents</a>：讨论工具型智能体的新安全风险，用于权限和安全评测。</li>
<li><a href="https://arxiv.org/abs/2505.02279" rel="nofollow ugc">A survey of agent interoperability protocols</a>：比较 MCP、A2A 等协议，用于协议关系说明。</li>
</ul>
]]></description><link>https://localaihub.com/topic/4/蜂群协作不是玄学-多智能体团队怎样分工-校验和交付</link><generator>RSS for Node</generator><lastBuildDate>Wed, 03 Jun 2026 18:50:49 GMT</lastBuildDate><atom:link href="https://localaihub.com/topic/4.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 21 May 2026 20:10:43 GMT</pubDate><ttl>60</ttl></channel></rss>