首页/新闻资讯/正文详情

Muteki 如何兼容 8 种 Agent CLI:ACP/RPC 适配层、引擎注册表与提示桥源码完全解读

发布时间:2026/11/5 1:39:37 来源:云帆数科 栏目:资讯中心
Muteki 如何兼容 8 种 Agent CLI:ACP/RPC 适配层、引擎注册表与提示桥源码完全解读
AI Agent多智能体Agent 编排网络安全渗透测试认证鉴权后端前端【免费下载链接】mutekiProject Muteki (無敵)开源 AI 驱动的进攻性安全框架基于多模型 AI Agent 蜂群架构实现自动化渗透测试与 CTF 求解。Open-source AI-powered offensive security harness for automated penetration testing.项目地址https://gitcode.com/FishCodeTech/muteki点击查看免费下载Muteki無敵是开源 AI 驱动的进攻性安全框架它像蜂群一样调度多个 AI Agent 完成自动化渗透测试与 CTF 求解。它最被低估的能力之一是兼容 8 种主流 Agent CLI——Claude、Codex、Cursor、Grok、Pi、OpenCode、Kimi、OMP让不同厂商的 Agent 引擎可以统一接入同一个调度体系。本文带你从源码层面看懂 Muteki 的兼容方案引擎注册表、ACP/RPC 适配层与提示桥Prompt Bridge分别解决了什么问题。上图是 Muteki 的“出战配置”页面每一枚 Worker 背后对应一种 Agent CLIClaude Code、Codex、Cursor、Pi、OMP……你可以在这里为它们绑定凭据、模型与并发上限。这 8 种引擎能力差异很大——有的支持结构化 SDK有的只暴露终端 stdin有的走 ACP 协议。Muteki 用三层架构把这些差异“抹平”了。一、先看全貌8 个引擎、6 种传输方式Muteki 把每个引擎的传输方式抽象为 6 种类型rpc、sdk、acp、http、httpws、cli定义在 descriptors.py 中。引擎默认结构化传输传输类型CLI 兜底Claudeclaude.sdkSDKcli.claudeCodexcodex.app_serverRPCcli.codexCursorcursor.sdkSDKcli.cursorGrokgrok.acpACPcli.grokPipi.rpc原生 JSONL RPCcli.piOpenCodeopencode.serverHTTPcli.opencodeKimikimi.acpACPcli.kimiOMPomp.acpACPcli.omp这些映射集中在 factory.py 的STRUCTURED_ADAPTER_ENGINES中Conversation对话场景走结构化传输Worker解题场景统一走 CLI——两套默认值刻意保持独立因为解题 Worker 需要更强的大规模并发稳定性。二、引擎注册表一切兼容性的入口要兼容一个引擎第一步是“登记”。Muteki 在产品级注册表 engine_registry.py 中声明了每个引擎的身份EngineDescriptorid、显示名、支持状态supported/temporarily_disabled、禁用原因canonical_engine_id()把cli.dsh、codex-sub-container这类历史/派生写法统一归一到标准引擎 idensure_engine_supported()对暂停支持的引擎抛出带稳定机器码的错误如engine_temporarily_unsupported而不是静默失败。一个值得一提的细节DeepSeek Harnessdsh目前处于“只登记、不可执行”状态——旧数据仍能正常渲染但任何新配置/执行入口都会被统一拒绝。这正是注册表“区分可识别”与“可执行”的价值所在。在 CLI 一侧cli_engines/registry.py 里的DRIVERS字典为每个引擎挂了一个具体的CliDriver实现如 ClaudeCodeDriver。所有 Driver 继承自 CliDriver 基类它统一处理二进制解析、--help预检secure prompt capability probe与流式输出解析子类只需描述“如何拼参数、如何读事件”。三、ACP/RPC 适配层把协议差异变成一行配置不同引擎的“对话协议”差异巨大。Muteki 的解法是共享传输层 协议适配基类1. 共享 stdio JSONL 传输rpc.pyrpc.py 是整个适配层的地基它只做三件事、不碰任何业务语义严格 LF 分帧只按\n切分 JSON 记录容忍行尾\r——避免按行读取器把 JSON 字符串内合法的U2028/U2029误当换行请求/响应关联出站消息分配单调递增id入站按is_response路由给等待方其余通知、事件流、Agent→Client 反向请求交给on_message回调反向请求应答ACP 的session/request_permission这类 Agent 反向请求通过respond写回结果。2. ACP 协议适配acp.pyacp.py 在传输层之上实现了完整的 Agent Client Protocol v1initialize能力协商、session/new/session/load/session/resume三种注入点、session/prompt流式正文以及审批request_permission。它的两大设计亮点replay 与 live 事件区分历史回放事件只进回放清单、不进入事件投影恢复会话时不会重复写历史消息能力硬门控initialize协商后不支持的能力一律不调用。最妙的是复用Grok 和 Cursor 各写一个 ACP Adapter 后RUNTIME-04 的Kimi ACP 与 OMP ACP 直接继承BaseAcpAdapter只覆盖 argv、认证选择与能力差异钩子——新增一个 ACP 引擎的成本降到“一份配置”。3. 适配基类与能力探测base.py所有结构化 Adapter 继承 BaseExternalAgentAdapter它统一实现实例身份adapter_id instance_id唯一定位一个 Runtime 实例registry.py能力探测probe缓存能力真相来自运行时探测而非按引擎 id 猜测交互矩阵interaction_matrix.py据此向用户展示 supported / limited / unsupported降级显式化结构化传输不可用时probe 报告里明确列出 degradations不静默关闭审批、会话恢复等能力。四、提示桥Prompt Bridge给“只会收 stdin”的引擎开一扇门有些引擎没有结构化传输可用Worker 又必须保证提示词原样、安全地送达。Muteki 的做法是为这些引擎各写一个极薄的“提示桥”脚本通过 stdin/stdout 与引擎原生协议对话桥脚本目标引擎方式pi_prompt_bridge.pyPi原生--mode rpcJSONLget_state取 session id再发promptnative_prompt_bridge.pyKimi复用KimiLocalServerAdapter走本地 server 的 stdinzcode_prompt_bridge.pyZCodeapp-server NDJSON 协议ASCII 转义防止 UTF-8 被管道切分以 Pi 为例桥进程启动pi --mode rpc先发送get_state拿到sessionId再把完整提示词作为一条prompt命令写入 stdin同时把引擎输出逐行透传给上层。桥还负责失败语义——get_state拿不到 session id、prompt返回success: false都会转为明确的错误信息。配套的 CliDriverAdapter 再把整个 CLI Driver 包装成与结构化 Adapter 同一接口的ExternalAgentAdapter上层调度代码完全感知不到“这个引擎没有 SDK”。五、想接入一个新引擎按图索骥即可通读源码后接入流程其实很清晰登记在 engine_registry.py 加一条EngineDescriptor实现传输有 ACP 的引擎继承BaseAcpAdapter有原生 RPC 的引擎复用StdioJsonlPeer纯终端的引擎写一个CliDriver 提示桥描述能力在 descriptors.py 声明AdapterDescriptor传输类型、能力基线、认证方式、模型发现注册映射在 factory.py 中登记 adapter id → engine 映射UI 与 Worker 配置自动生效。这正是 Muteki 兼容 8 种 Agent CLI 的核心哲学协议差异封装在传输层能力差异交给运行时探测历史差异用注册表兜住——上层调度永远只面对一套统一的 Agent 事件契约。如果你想继续深入可以从 muteki/external_agents/ 目录的factory.py入手顺着adapter_id找到每个引擎的完整实现。赞分享AI Agent多智能体Agent 编排网络安全渗透测试认证鉴权后端前端【免费下载链接】mutekiProject Muteki (無敵)开源 AI 驱动的进攻性安全框架基于多模型 AI Agent 蜂群架构实现自动化渗透测试与 CTF 求解。Open-source AI-powered offensive security harness for automated penetration testing.项目地址https://gitcode.com/FishCodeTech/muteki点击查看免费下载相关推荐omo-native 源码导读omo-ai 适配层如何用 Brand 注入与运行时策略把 senpi 引擎改造成 OmOomo native 源码导读omo ai 适配层如何用 Brand 注入与运行时策略把 senpi 引擎改造成 OmO 本文以仓库中 packages/om人工智能AI Agent代码智能体多智能体Agent 编排工具调用MCP 服务MCP ClientsAI 技能Agent 记忆GUI 自动化CLI开发工具skillgrade 源码架构深潜Agent 注册表、Grader 插件系统与评测执行引擎全解析skillgrade 源码架构深潜Agent 注册表、Grader 插件系统与评测执行引擎全解析 skillgrade 是一个为 Agent Skills 提pi-acp 架构全解一个适配器如何桥接 ACP JSON-RPC 与 pi RPC 两套协议完整指南pi acp 架构全解一个适配器如何桥接 ACP JSON RPC 与 pi RPC 两套协议完整指南 pi acp 是一个 ACP 适配器adapte上一篇群体智能预测上手MiroFish 一条命令的最短预测沙盘启动路径下一篇技术实践分享novel-downloader如何解决网络小说保存难题创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

具身智能“感知-行动”双向闭环研究(2):基于TVA-VLA架构的知识蒸馏实战解析
具身智能“感知-行动”双向闭环研究(2):基于TVA-VLA架构的知识蒸馏实战解析

前沿技术探索:TVA智能体(简称TVA)TVA智能体(Transformer-based Vision Agent)是依托Transformer架构与“因式智能体”理论构建的新型工业视觉系统,也是当前最具代表性的具身视觉技术之一。它有机融合深度强… · 2026/11/5 1:39:37

10 分钟上手 bpftrace:eBPF 内核追踪与 Linux 性能分析快速入门
10 分钟上手 bpftrace:eBPF 内核追踪与 Linux 性能分析快速入门

10 分钟上手 bpftrace:eBPF 内核追踪与 Linux 性能分析快速入门 【免费下载链接】bpftrace High-level tracing language for Linux 项目地址: https://gitcode.com/gh_mirrors/bp/bpftrace bpftrace 是构建在 eBPF 之上的高级追踪语言,用于 Linu… · 2026/11/5 1:39:37

具身智能“感知-行动”闭环研究(总论):基于TVA-VLA架构的精准感知与语义理解
具身智能“感知-行动”闭环研究(总论):基于TVA-VLA架构的精准感知与语义理解

前沿技术探索:TVA智能体(简称TVA) TVA智能体(Transformer-based Vision Agent)是依托Transformer架构与“因式智能体”理论构建的新型工业视觉系统,也是当前最具代表性的具身视觉技术之一。它有机融合深度强化学习(DRL)、卷积神经网络(CNN)与因式分解算法(FRA),构… · 2026/11/5 1:39:37

东南亚SHP文件诊断与修复:GDAL+GeoPandas实战指南
东南亚SHP文件诊断与修复:GDAL+GeoPandas实战指南

简介:本资源是一套完整的东南亚区域GIS矢量数据集,面向地理信息科学、城市规划、环境研究及区域经济分析等领域的初学者与专业用户,解决高精度行政区划、水系与城市空间分布数据缺失问题。压缩包共53个文件,包含6个核心SHP主文件&… · 2026/11/5 2:13:48

GDAL/rasterio实战:1km土地利用重分类与转移矩阵
GDAL/rasterio实战:1km土地利用重分类与转移矩阵

简介:面向地理学、环境科学、城乡规划等领域的研究者与高年级学生,这套中国1km土地利用栅格数据覆盖1980至2015年共7个时点的遥感监测结果,可用于长时间序列的土地用途变迁分析、城市扩张识别与生态状况评估。压缩包共126个文件,以… · 2026/11/5 2:13:48

FastICA语音分离实战:盲源分离、频域对齐与SI-SDR评估
FastICA语音分离实战:盲源分离、频域对齐与SI-SDR评估

简介:面向语音信号处理与盲源分离学习者的FastICA语音分离实践包,适合具备一定MATLAB基础、希望从混合语音中提取独立源信号并理解FastICA流程的读者。压缩包共28个文件,约18.16MB,以26个wav语音与音乐样本为主,配合1个… · 2026/11/5 2:13:48

FastICA语音分离:从盲源分离到Python实现与SI-SDR评估
FastICA语音分离:从盲源分离到Python实现与SI-SDR评估

简介:围绕FastICA语音分离的这套资料,面向正在学习盲源分离、语音增强与多说话人分离的学生和算法实践者,帮助其理解独立成分分析从混合语音中提取独立声源的完整思路。内容以算法原理为线索,串联数据预处理、非线性函数选择、梯度… · 2026/11/5 2:13:48

FEKO .ffe数据ISAR成像:RD算法链路与参数避坑
FEKO .ffe数据ISAR成像:RD算法链路与参数避坑

简介:面向初学者的FEKO与ISAR成像全流程实践资料,聚焦雷达散射截面仿真到二维成像的衔接环节:先用FEKO对三维模型完成单站RCS仿真并导出.ffe数据,再由MATLAB按距离—多普勒(RD)算法成像,代码可直… · 2026/11/5 2:13:48

DCT数字水印嵌入与提取实战:从原理到代码避坑指南
DCT数字水印嵌入与提取实战:从原理到代码避坑指南

简介:这份资源围绕离散余弦变换(DCT)数字水印的嵌入与提取流程展开,面向做数字水印方向毕业设计的学生及图像处理入门者,帮助其理解频域水印的基本原理与实现路径。压缩包共10个文件,以6个bmp图像素材、3个… · 2026/11/5 2:12:48

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

多智能体协作系统架构设计与实践优化
多智能体协作系统架构设计与实践优化

1. 多智能体协作系统的时代背景2017年Transformer架构的诞生彻底改变了人工智能的发展轨迹。当行业还沉浸在单一大模型带来的性能突破时,Anthropic的研究团队已经将目光投向了更前沿的领域——如何让多个智能体通过协作产生超越单体能力的系统智能。这就像交响乐团中… · 2026/11/5 0:00:39

大模型系统性入门实战指南:从原理到部署微调的全链路路线
大模型系统性入门实战指南:从原理到部署微调的全链路路线

提到大模型的系统性入门,我先说个结论:这事真不难,难的是资料太散、路线太多,今天这个框架明天那个工具,新人很容易在“收藏夹吃灰”和“教程看到一半放弃”之间反复横跳。市面上关于大模型的内容少说有几十万篇&#… · 2026/11/5 0:00:39

鸿蒙文件系统沙箱机制解析与开发实践
鸿蒙文件系统沙箱机制解析与开发实践

1. 鸿蒙文件系统沙箱机制深度解析作为一名从Android转向鸿蒙开发的工程师,我深刻体会到文件系统访问是迁移过程中最先遇到的"拦路虎"。在Android上运行良好的文件读写代码,在鸿蒙真机环境却频频出现文件写入后神秘消失或直接抛出权限拒绝错误的… · 2026/11/5 0:00:39

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码