dsh-ag-ui

DeepSeek Harness (DSH) 采用「一切皆插件」的架构。在构建模型智能体应用时,开发者常需要将 DSH Agent 通过 AG-UI 协议暴露给前端,或实现浏览器工具的跨进程调用。这涉及到 HTTP/SSE 网关、身份认证、状态同步以及资源管理的复杂逻辑。

dsh-ag-ui 是一个社区维护的 DeepSeek Harness Host 插件,作为 AG-UI 协议的网关,它提供认证的 HTTP/SSE 接口,将 DSH Agents 绑定到 AG-UI 线程,并处理文本流、工具事件及浏览器工具的代理。该插件由 CaiZongyuan 维护,遵循 MIT 许可证。

核心功能

该插件提供以下核心能力:

  • 标准 Cordis Service 插件:作为标准服务插件暴露,通过 ctx.agUi 访问。
  • 浏览器工具代理:提供传输无关的 Agent 作用域浏览器工具代理,通过 ctx.browserTools 访问。
  • 认证网关:提供认证的 BFF 到网关请求,使用可信的租户和用户头。
  • 线程绑定:将 AG-UI 线程绑定到 DSH Agent,使用进程本地的 (tenantId, userId, threadId) 绑定。
  • 双向共享状态:通过 RunAgentInput.state、ag_ui_update_state 和 STATE_SNAPSHOT 支持双向共享状态。
  • 工具卡片:为后端工具调用提供演示卡片,作为版本化的 dsh:tool:view 自定义事件。
  • 状态延续与承诺停车:支持前端工具 Promise 停车和跨 HTTP 运行的 ToolMessage 继续执行。
  • 资源限制与清理:对请求、上下文、工具模式、事件缓冲区、线程和运行日志进行界限管理,并确保 Cordis 对路由、Agent、工具、计时器和待处理调用的完整清理。
  • 运行与消息幂等性:确保运行和消息的幂等性。

安装与启用

安装该插件需要满足以下环境要求:Node.js 版本为 ^22.19.0 或 >=24.0.0。

通过 DSH Profile 安装插件:

dsh plugin --profile web add dsh-ag-ui

从 GitHub 仓库安装(用于发布前的本地开发):

dsh plugin --profile web add github:CaiZongyuan/dsh-ag-ui

配置与使用

插件安装后,环境变量是配置 AG-UI 网关的最短路径。必须配置的变量包括 provider、model 和 sharedSecret(sharedSecret 必须至少包含 16 个 UTF-8 字节)。

export DSH_AG_UI_PROVIDER='openai'
export DSH_AG_UI_MODEL='gpt-5.6-sol'
export DSH_AG_UI_SHARED_SECRET="$(openssl rand -hex 32)"
export DSH_AG_UI_PATH='/ag-ui' # 可选

dsh --profile web

也可以通过 Profile 中的 cordis.patch.yml 进行配置,这允许覆盖插件挂载的行:

- id: ag-ui
  disabled: false
  config:
    provider: openai
    model: gpt-5.6-sol
    sharedSecret: !!js process.env.DSH_AG_UI_SHARED_SECRET
    path: /ag-ui
    maxThreads: 100
    frontendToolTimeoutMs: 300000

适用场景与注意

  • 适用场景:需要将 DSH Agents 暴露为 AG-UI 服务、需要集成浏览器工具或需要管理复杂 Agent 状态同步的开发者。
  • 前置条件:安装前需确保 DSH Profile 包含标准 Host 服务、已注册的 DSH 模型提供者和模型,以及一个认证的 Backend-for-Frontend (BFF)。
  • 生态组件:插件本身不包含 React 渲染器和嵌入适配器,这些功能由单独的 dsh-ag-ui-cards 和 dsh-ag-ui-adapter 包提供。
  • 社区性质:这是一个社区项目,非 DeepSeek 或 AG-UI 官方包。

总结

dsh-ag-ui 解决了 DSH 环境下 AG-UI 协议集成的核心工程问题,提供了从 Agent 执行到前端展示的完整链路支持。开发者可以通过简单的命令行安装,并结合环境变量或 YAML 配置快速启用网关功能。

  • GitHub: https://github.com/CaiZongyuan/dsh-ag-ui
  • 目录: https://www.skillhub.cn/plugins/CaiZongyuan/dsh-ag-ui
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜