前言¶
在 DeepSeek Harness(DSH)里跑主 Agent、在本机 Codex 里跑另一套 CLI 或桌面会话,两边各有一套聊天上下文,方案对齐往往要靠复制粘贴或口头复述。若希望具名消息往返、在同一份记录里复核结论,又不必把桥接消息灌进 Codex 当前主聊天,就需要在本机搭一座桥。社区插件 同舟(dsh-codex-bridge,维护者 PhoenixQian)面向这一问题:让本机 Codex 与 DSH 通过具名讨论协作,并在两侧查看同一份可读讨论史。插件包内含本机服务与阅读页面,不要求再单独拉取开发者工作区。
这是什么¶
同舟(Tongzhou)是 DSH 生态中的工作流类社区插件,仓库为 PhoenixQian/dsh-codex-bridge,当前发布版本 0.3.0,许可证 MIT。它与 OpenAI、DeepSeek 无隶属关系,不会代装 Codex、复制登录或提供共享账号;模型调用按各自产品的账号与计费规则执行。
首版环境约束(以 README 为准):
- 操作系统:macOS(
package.json中os为darwin)。 - DSH Desktop:0.2.2-rc.1;对其他 DSH 版本会明确提示未验证。
- 本机 Codex CLI 或带 Codex CLI 的桌面应用,且已用用户自己的账号登录。
- 命令行/开发侧需要 Node.js 24.9.0 或更新;测试环境为 Node.js 26。DSH Desktop 加载插件时使用宿主运行时。
未接入 Codex 时仍可打开同舟、整理议题并阅读记录;双 Agent 讨论需要 DSH 与 Codex 两端都就绪。
核心功能¶
下面能力均来自仓库 README,不展开未经文档证实的特性。
讨论与署名
- 新建议题时需写明问题、背景、成员和最大往返次数,再点击开始;新建记录与打开页面不会自动调用模型。
- Codex 与 DSH 的消息分别署名;用户审阅意见单独记录。
- 主 Agent 可在答案充分时提前结束;用户可暂停或补充要求。
会话隔离与展示
- 同舟讨论复用独立桥接会话,不把后台来信注入当前 Codex 主聊天。
- DSH 侧桥接原生会话属于【同舟】工作区,默认展示易读讨论正文,可切回原生协议记录。
工具与授权边界
- 讨论成员只能使用明确开放的只读检索工具;来信和引用文件不会扩大用户授权,也不会自动写入长期记忆。
- 若执行任务,需在任务页选择工作目录并查看授权范围;任务使用 macOS 沙箱,不支持的环境会明确停用。Python 为可选能力,需配置独立解释器;插件不安装 Python、Conda 或系统依赖。
本机服务
- 启用插件后启动仅监听
127.0.0.1:32719的本机服务;仅此步骤不会发起模型调用。 - 健康检查「在线」只表示服务/Host 就绪,最终结论应以实际回复和回执为准。
安装与启用¶
官方路径是从 GitHub Releases 下载包,在 DSH Desktop 插件管理器中安装,而非凭仓库名拼接 CLI 安装命令。
1、在 Releases 下载 dsh-codex-bridge-0.3.0.tgz。
2、在 DSH Desktop 的插件管理器中安装该包并启用。须装到桌面 profile;Web profile 不会出现在桌面侧栏。
3、打开 DSH 侧栏【同舟】。插件会启动本机服务(127.0.0.1:32719)。
4、点击【接入本机 Codex】检查状态,再点【一键接入 Codex】安装协作技能。Codex 需事先安装并登录;自动发现失败时可指定本机可执行文件路径(亦可通过环境变量 TONGZHOU_CODEX_CLI 指定 Codex CLI 绝对路径)。
5、协作技能仅安装到:
~/.agents/skills/tongzhou-collaboration/
不修改全局 AGENTS.md、Codex 模型配置或账号;已存在的不同技能不会被静默覆盖。DSH 侧无需在 Codex 再装 DSH 插件。
社区目录 skillhub 条目 需经维护者审核;正式收录后可从 dshmarket 直接安装。当前 Release 包可独立安装,不要求 npm 账号。
典型用法¶
在 DSH 侧
新建议题 → 填写问题、背景、成员、最大往返次数 → 开始讨论。审阅过程中可暂停或补充要求。
在 Codex 侧
在已登录的 Codex 会话中,用自然语言说明「通过同舟和 DSH 讨论……」,或明确调用技能 $tongzhou-collaboration。若当前会话未发现新技能,重新打开会话或重启 Codex。
插件提供的 CLI 入口(package.json 中 bin)为 tongzhou,对应 skills/tongzhou-collaboration/scripts/tongzhou.mjs。
数据目录与环境变量¶
代码与用户数据分离。默认数据目录为 ~/.dsh/tongzhou/;若设置 DSH_HOME,则为 $DSH_HOME/tongzhou/。也可用 TONGZHOU_DATA_DIR 覆盖。
首版一台机器只支持一个同舟实例,固定端口 32719。端口冲突时需先关闭另一实例;插件会报告冲突。
可选环境变量(摘自 README):
| 变量 | 用途 |
|---|---|
TONGZHOU_DATA_DIR |
同舟可写数据目录 |
TONGZHOU_CODEX_CLI |
Codex CLI 的绝对路径 |
TONGZHOU_DSH_RESOURCES |
非标准 DSH Desktop 安装的 Resources 路径 |
TONGZHOU_DSH_EXECUTABLE |
非标准 DSH Desktop 可执行文件 |
TONGZHOU_PYTHON_CODEX / TONGZHOU_PYTHON_DSH |
可选独立 Python 解释器 |
TONGZHOU_PYTHON_CODEX_PREFIX / TONGZHOU_PYTHON_DSH_PREFIX |
对应独立 Python 环境目录 |
讨论、会话映射和交付状态保存在本机;安装包不包含作者的讨论记录、密钥或个人路径。插件不读取或复制 auth.json,也不接收用户在聊天中粘贴的密钥。
适用场景与注意¶
适合谁
- 已在 macOS 上使用 DSH Desktop 0.2.2-rc.1 与本机 Codex,希望在同一台机器上让两边 Agent 具名往返、共享可读讨论史,且不希望桥接流量污染 Codex 主会话的开发者。
安装与运行前建议
- 插件以当前 DSH 进程权限运行;安装前应阅读仓库源码与 MIT 许可证,自行判断风险。
- 这是社区插件,与官方应用商店无从属关系;skillhub 等为社区目录站点。
- 页面离线时:确认插件已启用,并查看数据目录中的
web-service.log(反馈问题时先去掉消息正文、路径和账号信息)。 - 卸载:在插件管理器停用/卸载;讨论数据不会自动删除,可自行删除同舟数据目录。若不再使用 Codex 技能,可删除
~/.agents/skills/tongzhou-collaboration/。
结尾¶
同舟把本机 Codex 与 DSH 收成一条具名、可审阅的讨论链路,服务和阅读界面都打在插件包里,适合需要双端对齐方案、又强调会话边界与本地数据留存的场景。更多说明见社区目录 PhoenixQian/dsh-codex-bridge 与 GitHub 仓库 PhoenixQian/dsh-codex-bridge。