在开发智能体或进行复杂调试时,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 任务,客户端断连或插件卸载会取消等待计时器。