dsh-codex-sync:Codex 与 DSH 的双向同步桥

前言

在 OpenAI Codex 里做项目,往往会积累三类资产:按工作区组织的对话历史、放在 ~/.codex/skills 下的自定义 Skills,以及写在 ~/.codex/config.toml 里的 MCP 工具链。切换到 DeepSeek Harness(DSH)时,常见问题是会话格式不兼容、Skills 和 MCP 要在两边各配一遍,迁移脚本多半只能单向拷贝,DSH 里续写的对话也很难再带回 Codex。

dsh-codex-sync(维护者 Walvez,GitHub 仓库 Walvez/dsh-codex-sync)定位不是一次性迁移工具,而是 Codex 与 DSH 之间的持续双向桥接。它在 DSH 插件市场分类为「工作流」,当前 npm 包版本为 1.5.7,MIT 许可证,要求 Node.js >= 20。

这是什么

一句话:dsh-codex-sync 在 Codex 与 DSH 之间提供项目级对话的双向导入导出、将 ~/.codex/skills 实时挂载到 DSH Skills 目录、自动镜像 mcp_servers 配置,并可在 Codex 侧安装反向 MCP 以检索和安装 DSH 插件。

核心功能

双向项目对话同步

从 Codex 导入 DSH

  • 按工作区文件夹分组浏览 Codex 会话;
  • 保留用户提示、助手输出、推理轨迹和工具调用记录;
  • 导入后自动关联到匹配的 DSH 工作区,便于继续对话;
  • 支持增量重导入:Codex 侧有新回合时标记为 updated,只追加新内容,不重复建会话。

从 DSH 导出到 Codex

  • 将 DSH 原生对话或续写导回 Codex;
  • 自动匹配 Codex 工作区目录,未知目录会锁定以避免孤立线程;
  • history_mode: legacy 创建独立 Codex rollout 和 SQLite 索引,不覆盖原有 Codex 历史;
  • 重启 Codex 应用后即可查看和继续。

子 Agent 线程

  • 默认隐藏内部子 Agent 线程,保持列表简洁;
  • 可按需展开,将子 Agent 嵌套在父线程下单独导出。

实时 Skills 挂载

  • ~/.codex/skills/*/SKILL.md 直接注册到 DSH 原生 Skills 目录;
  • 支持嵌套目录和多文件 Skill 包;
  • 磁盘上修改 Skill 文件后,下一轮对话即可生效,无需重启。

MCP 双向镜像

  • Codex → DSH:监听 ~/.codex/config.toml,动态镜像 [mcp_servers.*] 到 DSH,带冲突规避和 stderr 静默;
  • DSH → Codex:通过 npx dsh-codex-sync codex-install 在 Codex 侧注册 [mcp_servers.dsh-plugins],让 Codex Agent 能搜索、查看和安装 DSH 插件。

DSH 内原生 UI

  • 工作区标题旁提供 Codex 快捷入口(侧栏展开/收起时自适应位置);
  • 居中设置面板,含操作卡片、开关状态和中英文切换;
  • 样式使用 DSH 设计令牌(--dsw-alias-*)。

内置 Agent Skill

插件自带 codex-sync Skill,DSH Agent 可代为执行同步任务,例如:

  • 试运行导入:/import-codex --dry-run
  • 查看 MCP 镜像状态:/mcp-status
  • 开启自动导入:/auto-import on

安装与启用

推荐通过 DSH 插件市场安装:

dsh plugin --profile web add dsh-codex-sync

也可在 profile 的 cordis.patch.yml 中手动插入:

- insert:
    - id: codex-sync
      name: dsh-codex-sync
      config:
        maxSkills: 30
        mcpMirrorDeny:
          - node_repl
        mcpMirrorSilent:
          - exa

可选:在 Codex 侧配置反向 MCP 桥接。

# 在 ~/.codex/config.toml 注册 [mcp_servers.dsh-plugins]
npx dsh-codex-sync codex-install

# 运行健康检查
dsh-codex-sync doctor

典型用法

安装后,点击侧栏 Codex 图标 打开同步设置面板。常用操作与配置项如下:

分区 命令 / 配置键 说明
Actions 从 Codex 导入 /import-all 打开项目选择器,导入会话到 DSH
导出到 Codex /export-codex 将 DSH 对话导出为 Codex 副本
镜像状态 /mcp-status 查看 MCP 服务器健康与状态
刷新状态 /codex-settings 从宿主重新同步开关状态
Features 导入命令 enableImport 启用 /import-codex 斜杠命令族
自动导入 autoImport 启动时自动导入新 Codex 会话
指令注入 enableInstructions instructions.md / AGENTS.md 注入提示
配置摘要 enableConfig config.toml 模型设置摘要注入提示
Skills enableSkills ~/.codex/skills 注册为 DSH Skills
MCP 镜像 mcpMirror 自动镜像 [mcp_servers.*],立即生效

下面是一个常见工作流:

  1. 安装插件并打开侧栏 Codex 设置,开启 enableSkillsmcpMirror
  2. 执行 /import-all,按项目选择要迁入 DSH 的 Codex 会话;
  3. 在 DSH 中继续开发;需要回 Codex 时执行 /export-codex
  4. 若要在 Codex 里管理 DSH 插件,运行 npx dsh-codex-sync codex-install 完成反向桥接。

适用场景与注意

适合谁

  • 同时在 Codex 和 DSH 之间切换,需要保留对话上下文;
  • 已在 Codex 配置好 Skills 和 MCP,不想在 DSH 里重复维护;
  • 希望 DSH 续写的内容能安全导回 Codex,而不是覆盖原历史。

使用前注意

  • 插件以当前 DSH 进程的权限运行,会读取 ~/.codex/ 下的配置、Skills 和会话数据;安装前应阅读 GitHub 源码 并确认 MIT 许可证条款。
  • 社区目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系;DSH 生态遵循「一切皆插件」理念,本插件属于其中的工作流类扩展。
  • 导出到 Codex 会创建新的 rollout 副本,不会修改原有 Codex 会话;导入支持增量更新,但首次使用前建议用 /import-codex --dry-run 预览。

小结

dsh-codex-sync 把 Codex 与 DSH 之间的断层收成一条可持续维护的通路:对话可双向搬运,Skills 和 MCP 可随磁盘配置实时同步,Codex 侧还能通过反向 MCP 检索 DSH 插件。若你正在评估从 Codex 迁到 DSH,或需要在两个环境间来回切换,可以从插件市场安装后,先用设置面板里的导入试运行确认效果。

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

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

小夜