1. 项目概述为AI智能体引入“结构化辩论”的决策层如果你用过AI编程助手比如Cursor或者Claude Code肯定遇到过这种情况你给它一个复杂的任务比如“帮我用React和Node.js搭建一个电商后台要包含用户认证和支付”它很快就能给你生成一份看起来非常详尽的计划。这份计划通常步骤清晰、技术栈明确读起来很有说服力。但问题在于这份计划是单一视角、未经挑战的产物。它可能忽略了某个关键依赖项的版本冲突可能低估了某个模块的复杂度也可能选择了一个看似流行但即将被淘汰的库。在真实的工程团队里一份计划会经过产品经理要快、架构师要稳、资深工程师要靠谱和新人会问为什么的多角度审视和辩论最终形成的方案才是经得起推敲的。而单个AI智能体恰恰缺少了这种“内部张力”。今天要介绍的这个项目——Amogus就是为了解决这个问题而生的。它不是一个全新的AI模型也不是一个复杂的编排框架而是一个基于Model Context Protocol (MCP)的“结构化审议层”。你可以把它理解为一个AI智能体的“议会”或“评审委员会”。当你的主AI智能体比如Cursor里的AI需要做一个重要决策或制定复杂计划时它可以调用Amogus这个工具。Amogus会模拟四个拥有不同思维定式和职责的“议员”让他们在完全隔离的环境下独立分析问题、提出批判和修改意见并进行多轮辩论最终投票合成一个最优方案。这个方案会附带详细的审议记录、每个议员的观点以及置信度评分返回给你的主智能体去执行。这个项目在Cursor Hack London 2026黑客松上获得了亚军赛道是“Agent Runtime Tools”完美契合了“让智能体在行动前为其决策提供充分理由”的命题。它最吸引我的地方在于其架构的简洁和有效不依赖复杂的强化学习或微调而是通过精心设计的流程和角色隔离强制引入多元视角用“制度”而非“提示词技巧”来对抗LLM大语言模型固有的趋同倾向。对于任何正在构建或使用AI智能体进行复杂任务开发的开发者、项目经理或技术负责人来说理解并应用这种“多智能体审议”模式能显著提升AI产出方案的质量和可靠性。2. 核心设计思路用“制度性隔离”对抗思维趋同在深入代码之前我们必须先理解Amogus解决核心问题的设计哲学。多智能体系统一个众所周知的失败模式是“回声室效应”或“观点收敛”。即使你初始化了四个不同的AI角色如果让它们能看到彼此的推理过程那么后发言的智能体有很大概率会简单地附和前者的观点说“我同意因为……”。这并不是智能体“偷懒”而是LLM基于概率生成文本的本质所决定的——顺着已有的、合理的论述继续下去是概率上最可能的路径。Amogus的创始人洞察到了这一点并提出了一个根本性的解决方案结构性隔离。它不是靠提示词里写“请务必提出不同意见”这种苍白的要求而是通过架构设计在物理和流程上阻止智能体在形成独立观点前进行任何信息交换。2.1 四议员架构与强制评估框架项目的核心是四位固定的“议员”每位都被赋予了一个鲜明的工程原型和一套强制评估框架。这套框架是一组该议员必须在形成任何立场前回答的特定问题。正是这些不同的问题引导着同一个底层LLM比如Claude走向不同的推理路径。RAZOR刀锋红色交付至上者。他的核心问题是“实现可工作产品的最快路径是什么”“计划中哪里隐藏了复杂性”“哪些可以推迟到v2”“真实的工时估算是多少”他的目标是砍掉一切不必要的部分追求最快交付。GHOST幽灵紫色悲观主义者。他的思考围绕失败展开“在10倍负载下什么会崩溃”“每一步的回滚计划是什么”“哪些依赖项可能会出问题”“哪些错误情况没有被处理”他负责寻找所有可能的失败点。SCOUT侦察兵绿色研究员。他关注外部世界“现有哪些解决方案可以解决这个问题”“基准测试数据怎么说”“相关技术的采用趋势如何”“我们是否忽略了已有的最佳实践”他确保团队不重复造轮子并能利用最新的社区成果。BISHOP主教黄色架构师。他思考系统的长期健康度“执行后的依赖关系图是怎样的”“这会产生耦合吗”“步骤的顺序正确吗”“应该定义哪些抽象层”他负责确保方案的结构清晰、可维护。这种设计巧妙地形成了天然的对立阵营RAZOR和SCOUT通常倾向于“用现成的库快速上线”而GHOST和BISHOP则倾向于“构建得更稳健加上安全护栏”。这种张力模拟了真实工程团队中的动态辩论是产生高质量方案的催化剂。2.2 两轮审议流程从隔离到对抗有了角色定义审议流程的设计确保了隔离和对抗的有效性。整个流程是一个清晰的管道第一阶段侦察用户输入提示词如“构建一个无错误的Cursor插件”后首先进入“侦察”阶段。系统会提取任务中的关键主题并并行进行网络搜索利用Claude的联网搜索工具收集GitHub仓库、npm包、技术博客、基准测试等上下文信息合成一份背景简报。这确保了所有议员的讨论都基于事实而非空想。第二阶段原始计划生成一个由单一智能体制定的“原始计划”。这个计划是后续审议的基线代表了“未经挑战的常规AI输出”用于与最终方案进行对比直观展示审议带来的价值。第三阶段第一轮 - 隔离审议这是最关键的防收敛机制。四位议员并行且完全隔离地被调用。他们各自收到原始任务提示、侦察阶段收集的上下文简报、以及那份“原始计划”。然后他们必须严格按照自己角色的“强制评估框架”回答问题并基于此生成1) 对原始计划的批判2) 自己修订后的计划3) 对“是否采纳原始计划”的投票赞成/反对。在此轮中任何议员都无法看到其他议员的任何输出。他们的推理链在隔离环境中独立生长。如果第一轮投票出现一致全票赞成或反对则流程直接跳至最终合成阶段。但通常会出现分歧这时就进入下一轮。第四阶段第二轮 - 挑战与反驳所有议员第一轮的立场批判、修订计划、投票被同时公开。每个议员必须选择另一个与自己立场不同的议员进行针对性挑战。例如投赞成票的RAZOR可能会挑战投反对票的GHOST“你提到的负载问题我们可以通过增加缓存层来解决这并不影响初期MVP的交付。”被挑战者可以进行反驳。最后所有议员提交最终投票他们可以选择“坚持”原立场或“叛变”到另一方。这里引入了叛变惩罚机制“死神”模块会记录议员的叛变行为。在最终计分时叛变会损害该议员的“声誉”得分。这从制度上防止了无原则的跟风鼓励议员基于论据而非票数来决策。第五阶段裁决与合成最终投票不是简单的一人一票而是加权投票最终权重 置信度 × 历史战绩。一个长期表现优秀的议员高历史战绩的投票权重会更高。裁决产生后一个中立的“书记员”角色会工作。它不参与辩论只负责将所有议员的批判、修订意见进行汇总、去重和整合生成一份结构化的最终计划文档。这份文档会清晰标注每一条建议来源于哪位议员让用户一目了然地看到不同视角的贡献。2.3 进化压力“死神”与成员迭代一个静态的议会可能会僵化。Amogus引入了“死神”机制来模拟进化压力。每经过5次决策系统会计算每个议员的综合得分得分 (获胜次数 与人类覆写一致的次数) / 总决策次数 - (叛变次数 × 0.5 / 总决策次数)得分最低且低于阈值如0.3的议员会被“处决”。随后系统会“孵化”一名新议员其基础原型随机但会从当前得分最高的议员那里继承一个“强制评估框架”问题。同时系统会记录其“血统”例如“GHOST-v3具有RAZOR特质的幽灵”。通过这个循环糟糕的推理模式会被淘汰成功的思维特质得以传承。议会能够通过council_override人类覆写反馈循环逐渐适应其服务对象的真实偏好。如果用户经常推翻GHOST的保守意见那么GHOST的得分就会降低其特质被继承的可能性也变小整个议会会慢慢向更激进的方向演化。3. 技术实现深度解析理解了设计理念我们来看看这套精妙的系统是如何用代码构建的。项目采用TypeScript/Node.js开发核心是一个MCP服务器。3.1 基于Model Context Protocol的集成MCP是一个新兴协议旨在标准化AI智能体与外部工具、数据源之间的通信。Amogus选择MCP是极具远见的这使得它编辑器无关。无论是Cursor、Claude Code、Windsurf还是任何自定义的智能体运行时只要支持MCP客户端就可以无缝集成Amogus的审议能力。Amogus服务器通过stdio标准输入输出与MCP客户端通信暴露了五个工具council_plan: 核心工具触发完整的审议流程。council_members: 查看当前议员阵容和战绩。council_history: 查看决策审计追踪。council_override: 人类反馈接口用于纠正历史决策影响议员评分。council_sandbox: 打开实时可视化沙盒。这种设计将复杂的多智能体审议能力封装成了一个简单的“工具调用”对主智能体来说就像调用一次搜索引擎或计算器一样简单。3.2 并发LLM调用与状态管理审议流程的核心是并行LLM调用。在“隔离审议”轮系统需要同时调用四次Claude API。项目使用Promise.allSettled来管理这些并发请求确保即使某个调用失败流程也能继续例如记录该议员弃权而不是整体崩溃。每个议员的“强制评估框架”被实现为一组精心设计的系统提示词System Prompt这些提示词定义了角色的性格、职责和必须回答的问题列表。调用时用户提示、上下文和原始计划会作为用户提示词User Prompt注入。LLM被要求以严格的JSON格式输出包括critique、revised_plan和vote字段。这种结构化输出避免了自然语言输出的模糊性便于程序化处理投票和合成。状态管理当前议员、历史记录、得分被封装在独立的模块中。由于MCP服务器可能是常驻进程需要妥善处理内存中的状态持久化问题。项目采用了相对简单的内存存储对于黑客松项目来说足够但在生产环境中可能需要考虑引入Redis等外部存储来实现状态持久化和多会话支持。3.3 可视化沙盒用游戏化降低理解门槛技术项目最难的部分之一是演示。Amogus的“Among Us”可视化沙盒是其一大亮点。它不是一个事后生成的录像而是一个由MCP服务器直接提供静态文件服务并推送WebSocket事件的实时可视化系统。技术栈使用Next.js 15构建并静态导出为纯HTML/JS/CSS资源。这些资源由MCP服务器内置的一个简易HTTP服务器提供。这意味着不需要启动额外的Node进程或复杂的后端。渲染核心动画使用HTML5 Canvas绘制实现了“太空狼人杀”游戏中的经典场景船员议员在不同工作站研究、文档、基准测试、GitHub间移动、进入隔离舱、围绕会议桌辩论等。实时性审议流程的每一个关键步骤开始侦察、议员A完成思考、开始投票等都会触发一个类型化的事件通过WebSocket从服务器推送到前端浏览器。前端根据事件类型更新Canvas动画和右侧的文字面板显示批判内容、投票进度等。“死神”动画当触发淘汰机制时画面会变红得分最低的船员角色会被拖到绞刑架动画处然后一个新的角色从孵化器中诞生视觉效果非常直观。这个沙盒不仅让演示极具观赏性更重要的是它让原本黑盒般的多智能体辩论过程变得透明、可观察极大地增强了用户对系统的信任感和控制感。3.4 错误处理与健壮性考量虽然是一个黑客松项目但代码中体现了一些生产级的思考端口管理可视化沙盒的HTTP/WebSocket服务器启动时会动态探测可用端口从3000开始如果被占用则自动尝试下一个避免了常见的EADDRINUSE错误。路径遍历保护在提供静态文件服务时对请求的路径进行了解析和验证防止恶意用户通过../../../这样的路径访问服务器上的敏感文件。API错误处理对Claude API的调用有基本的错误处理和重试逻辑并发调用使用allSettled确保局部失败不影响整体。4. 实战从零集成与调用Amogus理论说了这么多我们来实际操作一下看看如何将Amogus集成到你的开发环境中并实际调用它来评审一个AI生成的计划。4.1 环境准备与安装假设你使用的是Cursor编辑器这是该项目最原生的集成环境。第一步克隆项目并安装依赖# 克隆仓库 git clone https://github.com/ViktorSmirnov71/amogus.git cd amogus # 安装MCP服务器依赖 cd mcp-server npm install cd ..第二步配置API密钥你需要一个Anthropic Claude的API密钥。# 在项目根目录创建.env文件填入你的密钥 echo ANTHROPIC_API_KEYsk-ant-your-actual-api-key-here .env注意请妥善保管你的API密钥不要将其提交到版本控制系统。.env文件已被添加到.gitignore中。第三步配置Cursor的MCP设置Cursor通过一个JSON配置文件来发现和管理MCP服务器。# 复制示例配置 cp .cursor/mcp.json.example .cursor/mcp.json然后编辑.cursor/mcp.json文件确保command指向你本地mcp-server目录下的入口文件并将API密钥作为环境变量传入。文件内容大致如下{ mcpServers: { amogus: { command: node, args: [ /ABSOLUTE/PATH/TO/YOUR/amogus/mcp-server/build/index.js ], env: { ANTHROPIC_API_KEY: sk-ant-your-actual-api-key-here } } } }提示使用绝对路径更可靠。你也可以在args中直接指向编译后的JS文件如果执行了npm run build。第四步重启Cursor配置完成后完全关闭Cursor并重新打开。打开设置Cmd,或Ctrl,搜索“MCP”你应该能在“Model Context Protocol Servers”下看到amogus已连接。4.2 发起第一次审议现在你可以在Cursor的AI聊天框中直接要求AI使用council_plan工具。最经典的测试提示就是项目本身的口号“Use thecouncil_plantool to plan: build me Cursor, make no mistakes.”发送后Cursor的AI通常是Claude会识别到可用的council_plan工具并发出调用请求。此时你会看到终端或后台MCP服务器启动开始执行侦察、多轮审议流程。浏览器可能会自动弹出一个窗口显示Among Us沙盒界面你可以实时观看四个船员议员忙碌、辩论、投票的动画。Cursor聊天框最终AI会收到一个结构化的响应。这个响应不是简单的文本而是一个包含以下内容的复杂对象verdict: 最终裁决通过/拒绝。confidence: 总体置信度。synthesized_plan: 集大成的、可执行的详细计划通常以PRD产品需求文档或技术方案的形式呈现。deliberation_transcript: 完整的审议记录包括每一轮每位议员的批判、修订计划和投票。vote_breakdown: 最终的投票统计。你可以要求AI将这个计划解析并展示给你。你会发现相比于直接让AI生成一个计划这份经过审议的计划通常会更可行包含了RAZOR提出的分阶段交付建议。更健壮包含了GHOST提出的错误处理和回滚步骤。更现代包含了SCOUT推荐的最新、最合适的库或框架。更清晰包含了BISHOP绘制的模块依赖图和接口定义。4.3 审查历史与施加人为影响审议不是一锤子买卖。你可以使用其他工具来监督和引导这个议会。查看历史在Cursor中询问“Show me thecouncil_history”。AI会调用工具返回过去所有决策的摘要包括提示词、投票结果和最终裁决。这就像一个审计日志。覆写决策如果你认为某次审议的最终裁决是错误的你可以使用council_override工具。例如假设议会以微弱优势否决了一个你认为应该通过的计划你可以提供该决策的ID从历史中获取和你认为正确的裁决通过。系统会记录这次覆写并相应调整相关议员的得分支持你决定的议员得分增加反对的得分减少。这是系统学习和适应你偏好的关键机制。观察进化每隔5次决策关注一下council_members的输出。你会看到议员的“世代”数在增加可能某个原始成员已经被“处决”替换成了一个带有混合特质的新成员。这展示了系统的动态适应性。5. 扩展思考与潜在应用场景Amogus虽然诞生于一个“为AI智能体规划代码项目”的语境但其“结构化多角色审议”的模式具有广泛的通用性。我们可以跳出编程的范畴思考它的潜力。5.1 模式抽象一个通用的决策增强层Amogus的核心可以抽象为一个“决策增强层”输入一个待决策的议题、一个初始方案可选、相关的上下文信息。处理通过多个具有不同视角和评估框架的“代理”进行隔离分析和对抗辩论。输出一个经过优化的决策或方案附带完整的正反方理由和置信度。这个模式可以应用于商业决策输入一个市场进入策略让“增长黑客”、“风险控制官”、“财务分析师”、“合规专家”四个角色进行审议。内容创作输入一篇新闻稿草稿让“编辑”、“公关专家”、“法律顾问”、“目标读者代表”进行评审。产品设计输入一个功能原型让“用户体验设计师”、“工程师”、“产品经理”、“客服代表”进行评估。关键在于定义好角色的“强制评估框架”。这些框架问题就像一个个棱镜将同一个信息源折射出不同的光谱。5.2 与现有AI工作流集成除了作为Cursor等编辑器的MCP工具Amogus的服务器可以很容易地被集成到其他自动化工作流中。GitHub Actions / CI/CD在代码合并Merge前自动调用Amogus对本次变动的架构影响、测试覆盖率、潜在风险进行审议并将审议报告附加到Pull Request中。LangChain / LlamaIndex作为这些AI应用框架中的一个自定义“工具”或“代理”在链式调用中为关键决策点提供复核。独立评审服务部署为一个独立的HTTP API服务任何系统都可以通过RESTful接口提交议题获取结构化审议报告。5.3 局限性、挑战与改进方向当然Amogus作为一个概念验证项目也有其局限性和可改进之处成本每轮审议需要调用多次LLM API侦察1次 原始计划1次 4议员 * 2轮 至少9次调用成本较高。优化方向包括对简单议题跳过第二轮使用更小、更便宜的模型进行初步筛选缓存常见问题的审议结果。延迟并行调用虽然快但整个流程仍需要数十秒。不适合需要毫秒级响应的交互场景。角色固化四个预设角色可能无法覆盖所有问题领域。改进方向是允许用户自定义角色和评估框架甚至让系统根据历史数据自动演化出最适合当前任务的角色组合。“假性共识”风险即使有隔离和叛变惩罚如果底层LLM的“价值观”或“知识库”本身存在强烈偏见所有角色仍可能得出相似的错误结论。需要引入更多样化的知识源或模型如混合使用Claude、GPT、开源模型来降低这种风险。6. 总结从工具到思维模式回顾整个项目Amogus带给我的最大启发不是其具体的技术实现虽然其MCP集成和可视化做得非常出色而是它提出的一种对抗AI思维单一性的方法论。它告诉我们提升AI决策质量的关键未必是等待下一个万亿参数的模型而是如何更好地组织和使用现有的模型。它把人类团队决策中的“头脑风暴”、“红队演练”、“设计评审”等最佳实践翻译成了AI能够理解和执行的算法流程。通过结构产生张力通过隔离保护多样性通过进化实现适应。这为所有AI应用开发者提供了一个极具参考价值的范式。当你下次看到AI生成一个天衣无缝的计划时不妨在内心启动一个“微型Amogus”问问自己一个追求速度的我会怎么改一个担心风险的我会怎么改一个关注外部技术的我会怎么改一个考虑长期架构的我会怎么改或许这就是人机协作中最有价值的部分——人类负责定义流程和框架AI负责在框架内进行穷举和演绎共同抵达一个更优的解。