跳到主要内容

dsh-codex-sync

已验证

dsh-codex-sync · v1.6.1 · MIT · Web 界面

Two-way Codex↔DSH bridge: skills from ~/.codex/skills, session import with workspace attach, live MCP mirroring of mcp_servers, and a Codex-side reverse MCP installer.

安装

dsh plugin add dsh-codex-sync

dsh --profile default --dump-config 确认 layer 已生效 —— 参见安装指南

源码

标签

作者

说明文档

⚡ dsh-codex-sync

Codex 与 DSH 双向桥接:挂载 ~/.codex/skills、带工作区绑定的会话导入、mcp_servers 实时镜像,以及 Codex 端反向 MCP 安装器。
项目会话双向流转 · 技能实时挂载 · MCP 自动镜像 · 原生现代化交互

English简体中文

npm version npm downloads CI Node License: MIT Awesome DSH Plugin


🎛️ 侧边栏原生同步设置
Codex 同步设置模态卡片:快捷操作、开关、语言
📍 顶部工作区快捷入口
工作区头部 Codex 快捷入口
📥 从 Codex 导入项目对话
从 Codex 导入对话:多项目折叠、状态标签
📤 导出 DSH 对话到 Codex
导出到 Codex 对话框:智能归属、来源切换

🤔 为什么要用这个插件?

在使用 OpenAI Codex 时,你可能已经积累了:

  1. 大量项目的对话历史(包含完整的代码上下文、架构讨论与调试记录);
  2. 丰富的自定义 Skills 库~/.codex/skills 下各种专有工具与指令);
  3. 精心配置的 MCP 服务工具链(数据库、搜索、浏览器自动化等)。

当你想在 DeepSeek Harness (DSH) 中体验强大的开源模型生态或开展双 Agent 协作时,通常会遇到:

  • 历史无法迁移:两边会话格式互不相通,想在 DSH 中接续之前的 Codex 对话极其繁琐;
  • 配置割裂与漂移:Skills 和 MCP 必须在两边重复配置维护,改了一边另一边就失效;
  • 单向死胡同:市面上的迁移脚本往往只是一次性的、粗暴的单向文件拷贝,在 DSH 续聊后无法安全带回 Codex。

dsh-codex-sync 正是为解决这些痛点而生! 它不是一次性迁移脚本,而是让 Codex 与 DSH 持续互联互通、双向无缝流转 的现代化扩展。


✨ 核心方便之处

1. 💬 项目会话双向安全互导(Codex ⇄ DSH)

  • 从 Codex 导入
    • 按项目(Workspace)树状聚合所有历史对话;
    • 完整保留用户消息、助手回复、思维链推理(Reasoning)与工具调用轨迹;
    • 导入后自动关联对应工作区,在 DSH 中直接断点续聊
    • 支持增量更新:Codex 续聊过的旧对话会标记「有更新」,再次勾选仅增量追加新 Turn,不重复创建会话。
  • 导出到 Codex
    • 在 DSH 续聊的内容或新建的原生会话,可一键导出回 Codex;
    • 自动校验 Codex 已有项目库,智能锁定未知目录,杜绝孤儿会话;
    • 导出生成独立的全新 Codex 会话副本(history_mode: legacy),绝不破坏或覆盖原 Codex 历史
    • 导出完成后重启 Codex 即可在对应项目下查看并继续工作。
  • 子代理智能收纳
    • 默认过滤子代理线程,保持列表干净清爽;
    • 点击「过滤子代理」可随时展开并嵌套在主会话下方,按需单独导出,不污染父会话。

2. ⚡ Skills 实时一等公民挂载

  • 直接将 ~/.codex/skills/*/SKILL.md 注册为 DSH 原生一等公民技能;
  • 支持完整的子目录资源引用与多文件架构;
  • 改完即用:在本地修改 SKILL.md,DSH 下次调用即时生效,无需重启 DSH 服务。

3. 🔌 MCP 自动双向镜像

  • Codex → DSH:后台自动监听 ~/.codex/config.toml,将 [mcp_servers.*] 动态镜像到 DSH,支持热重载,并内置常用服务的静音与冲突排除策略;
  • DSH → Codex(反向桥):一行命令配置 [mcp_servers.dsh-plugins],让 Codex Agent 也具备搜索、检查与安装 DSH 插件的能力。

4. 🎨 极度优雅的原生现代化 UI

  • 专属入口:自适应融入工作区标题栏(展开时位于工作区标题旁,收起窄栏时整齐排列在搜索图标下方);
  • 居中模态卡片:点击呼出高对比度毛玻璃控制面板,快捷操作、状态卡片、功能开关一目了然;
  • 原生设计语言:采用 iOS 风格平滑切换滑块与纯 CSS 过渡,自适应 DSH 深浅色主题,零样式残留与无横向溢出。

📦 快速开始

1. 安装到 DSH

通过 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

2. 配置 Codex 反向 MCP 桥(可选)

# 自动在 ~/.codex/config.toml 挂载 [mcp_servers.dsh-plugins]
npx dsh-codex-sync codex-install

# 检查双向同步健康状态
dsh-codex-sync doctor

🎛️ 同步控制面板与开关

点击侧边栏工作区的 Codex 图标 即可打开居中设置面板:

分组 项目 对应命令 / 配置键 行为说明
操作 从 Codex 导入 /import-all 打开项目选择对话框,按项目勾选导入历史对话
导出到 Codex /export-codex 将 DSH 会话写出为全新 Codex 对话副本
会话修复¹ /repair-sessions [--fix] 扫描会话存储中的重放损伤并原地修复(见下方排障章节)
查看镜像状态 /mcp-status 弹窗查看每个 MCP 服务器的挂载状态与诊断信息
刷新状态 /codex-settings 实时重新拉取宿主机所有开关的真实值
功能开关 导入命令 enableImport 启用 /import-codex 等 slash 命令族
自动导入 autoImport 启动首个会话时自动增量导入 Codex 历史
指令注入 enableInstructions 注入 instructions.md / AGENTS.md 进系统提示词
配置摘要 enableConfig 注入 config.toml 模型配置摘要进系统提示词
技能注册 enableSkills ~/.codex/skills 挂载为 DSH 原生技能
MCP 镜像 mcpMirror 自动监听并镜像 [mcp_servers.*](开关立即生效)
语言 语言切换 Language 切换界面简体中文 / English(本地记住)

¹ 设置面板左下角有一个小提醒,把「导入对话报错」与该命令关联起来。


🩺 排障:导入对话的 token meter / 重放报错

现象 —— 切换模型或压缩某个(导入的)对话时失败:

command.execute failed: internal: token meter: assistant/message at seq N has no matching step/start event
corrupt session log: seq gap in committed region at line L

原因 —— 换模型时 DSH 的 token meter 会对整个事件日志做冷重放校验(旧模型的 usage 锚点失效)。v1.6.0 之前写入的日志缺少配对的 step/start…step/end 标记,混合日志还可能带有失效的 seq 引用——这些损伤只在冷重放时才会暴露。

修复 —— 在任意 DSH 对话中执行(或终端运行 dsh-codex-sync repair-sessions --fix):

/repair-sessions --fix

修复过程会合并接缝、补齐缺失的 step 标记、重映射引用、重编号 seq,并在写入前用真实的 @deepseek-ai/dsh-token-meter 校验,每个修复过的日志旁保留 .bak 备份。v1.6.0+ 的导入天然合规,理论上不会再触发此问题。


🤖 智能体辅助技能 (codex-sync)

本插件随包提供了一个内建的 codex-sync Skill。你可以直接在对话中让 AI Agent 操作同步:

  • “帮我预演一下导入 Codex 会话” → 自动执行 /import-codex --dry-run
  • “查看当前的 MCP 镜像状态” → 自动执行 /mcp-status
  • “开启自动导入功能” → 自动执行 /auto-import on

📄 开源许可

MIT License © 2026 Walvez