应优先采用基于acp协议的标准cli集成方案,通过stdioacptransport实现initialize、authenticate、session/new、session/prompt四类协议方法调度,并依托cliacpsessionpool复用会话、hermesgrain处理分布式执行。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望将 Hermes Agent 集入现有系统,但尚未建立稳定通信通道或执行契约,则可能是由于协议层未对齐、会话生命周期未托管或前后端身份上下文不一致所致。以下是实现 Hermes Agent 系统集成的多种可行方案:
一、基于 ACP 协议的标准 CLI 集成
该方式通过标准输入输出与 Hermes ACP 子进程通信,适用于需本地可控、低延迟调用的场景,依赖 StdioAcpTransport 实现 initialize、authenticate、session/new、session/prompt 四类核心协议方法的精确调度。
1、在后端服务中引入 HermesCliProvider,实现 IAIProvider 接口,作为统一 AI Provider 入口。
2、配置 HermesPlatformConfiguration,指定可执行文件路径、启动参数及认证凭证。
3、初始化 StdioAcpTransport 实例,绑定子进程标准流,并注册 ACP 协议消息处理器。
4、调用 session/new 创建新会话时,自动复用 CliAcpSessionPool 中空闲会话,避免重复启动开销。
5、通过 session/prompt 提交用户指令,响应流经 Orleans Grain(HermesGrain)完成分布式会话执行。
二、通过 OpenAI API 兼容端点代理集成
该方式利用 Hermes Agent 对 OpenAI API 标准的兼容性,将其作为后端模型服务挂载至现有 API 网关,无需修改前端调用逻辑,适用于已具备 OpenAI 风格请求结构的系统。
1、启动 Hermes Agent 时启用 --openai-compatible 模式,并监听指定端口(如 8080)。
2、在 API 网关配置反向代理规则,将 /v1/chat/completions 等路径转发至 Hermes 本地服务地址。
3、在请求头中注入 X-Hermes-Session-ID 字段,用于跨请求维持会话上下文。
4、前端保持原有 OpenAI SDK 调用方式,仅需将 base_url 指向网关地址。
5、后端网关拦截响应,提取 x-hermes-executor-id 并透传至日志与监控系统。
三、基于 SignalR 的实时双向会话集成
该方式面向富交互前端(如 Web IDE),通过 SignalR 建立长连接,保障 Hermes 执行身份在消息流中全程一致,支持流式响应、中断控制与状态同步。
1、在 HermesGrain 层启用 SignalR Hub 集成,为每个会话分配唯一 ConnectionId。
2、前端建立 SignalR 连接后,调用 hub 方法发起 session/new,携带用户上下文元数据。
3、后端收到请求后,在 CliAcpSessionPool 中分配会话,并将 ConnectionId 与会话 ID 绑定。
4、执行 session/prompt 时,所有中间响应帧均通过 hub.Clients.Client(connectionId).SendAsync("OnPromptStream", data) 推送。
5、前端监听 OnPromptStream 事件,动态渲染流式内容,并在用户触发中断时调用 hub 方法通知后端终止当前 prompt。
四、PPHermes 云端沙箱直连集成
该方式适用于阿里云或 PPIO 环境下的生产部署,直接对接 PPHermes 沙箱服务,免去本地进程管理,由平台统一调度资源与计费,支持 pause/resume 语义。
1、在 PPIO 控制台创建 PPHermes 实例,获取沙箱专属 endpoint 与 access token。
2、在系统配置中心注入 PPHERMES_ENDPOINT 与 PPHERMES_TOKEN 环境变量。
3、调用沙箱 REST API 的 /v1/sessions 接口创建会话,响应中返回 session_id 与 runtime_status。
4、使用该 session_id 向 /v1/sessions/{id}/prompt 提交指令,请求体格式与 ACP 协议 session/prompt 完全一致。
5、响应头中包含 X-PPHermes-Billing-Tick,可用于对接内部成本核算模块。
五、前端执行器契约映射集成
该方式聚焦于 UI 层一致性,确保 Hermes 在多 Provider 架构中呈现统一交互范式,依赖 executorTypeAdapter 完成类型识别与视觉标识绑定。
1、在前端注册 executorTypeAdapter,将 'hermes' 字符串映射至 HermesAgent 类型描述对象。
2、加载 ExecutorAvatar 组件,根据 Hermes 视觉标识渲染专属图标与状态徽章。
3、当用户选择 Hermes 作为当前执行器时,前端自动注入 executor=hermes 查询参数至所有后续请求。
4、后端路由中间件依据该参数分发至 HermesCliProvider 或对应网关策略。
5、在消息气泡 DOM 节点上添加 data-executor-type="hermes" 属性,供前端埋点与 A/B 测试使用。











