Codex DSH Bridge:通过 MCP 将 Codex 会话连接到 DeepSeek Harness Web

在开发智能体或进行复杂调试时,DeepSeek Harness (DSH) Web 提供了良好的会话可视化,但本地 CLI 工具(如 Codex)通常无法直接与之交互。journ10/codex-dsh-bridge 解决了这个问题。它是一个 HTTP MCP 服务器,允许 Codex 通过 MCP 协议在正在运行的 DSH Web 中创建任务、继续会话、查询进度并获取结果。会话由同一个 DSH Host 管理,并在 DSH Web 中可见。

核心功能

插件提供六个 MCP 工具,用于管理 DSH 会话的生命周期和数据:

  • dsh_workspaces:列出 DSH 已注册的工作区,获取 workspace_id。
  • dsh_sessions:列出会话,支持按工作区或目录过滤。
  • dsh_task:在指定工作区或目录新建会话并发送 prompt。
  • dsh_send:向已有会话发送消息。支持 queue(排队)和 steer(引导)模式。
  • dsh_wait:等待会话结果。需要传入异步提交返回的 from_seq 和 request_id。
  • dsh_status:查询当前状态、最近答案与工具调用。

安装

安装前需确保 DSH 版本为 0.2.1-alpha.2,Node 版本为 ^22.19.0 || >=24.0.0,且 Web profile 可正常启动。

使用官方仓库的发布版本:

dsh plugin --profile web add github:journ10/codex-dsh-bridge#v0.1.0

安装完成后需重启 DSH Web。插件包仅包含 JavaScript 文件,无编译步骤。

连接 Codex

在 Codex 配置文件中添加 MCP 服务器段。插件默认监听 http://127.0.0.1:3080/codex-dsh。

[mcp_servers.dsh]
url = "http://127.0.0.1:3080/codex-dsh"
bearer_token_env_var = "DSH_BRIDGE_TOKEN"
tool_timeout_sec = 3600

令牌默认从 $DSH_HOME/codex-dsh-bridge.token 读取。首次加载时,插件会以排他创建方式生成该文件(权限需为 600)。令牌仅在用户机器上配置,不会写进仓库。若不继承终端环境,可在 Codex 配置中使用 Authorization 头手动提供。

验证服务是否正常加载工具:

curl --fail 'http://127.0.0.1:3080/codex-dsh?probe=tools'

工具使用流程

dsh_task 和 dsh_send 默认会等待结果。若需异步处理,可设置 wait: false,此时会返回 session_id、accepted、from_seq 和 request_id。随后将这三个参数传给 dsh_wait 以获取特定请求的答案。

dsh_status 用于查询当前状态或最近状态,默认仅折取末尾 200 个事件。steer 模式会共享当前 turn 的上下文,返回后续答案,而非独立消息的隔离执行。

适用场景与注意

此插件仅支持 Web profile,未验证 Desktop、TUI 或 headless profile 的安装与运行。卸载插件不会删除 DSH 中已有的会话数据。令牌文件权限需严格保护,避免向其他用户开放。

MCP 提供 JSON POST 响应和工具调用,不包含服务器 SSE 推送。超时结束等待不代表停止 DSH 任务,客户端断连或插件卸载会取消等待计时器。

羽毛球分组比赛记分
小程序二维码

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

Xiaoye