Перейти к основному содержимому
B

codex2dsh

bigbluebaby/codex2dsh

把 Codex(OpenAI Codex CLI / Desktop)的 MCP、技能、全局配置、记忆以适配 DSH 的形式迁移进 DeepSeek Harness(DSH 插件)

Установка

dsh plugin --profile web add github:bigbluebaby/codex2dsh

README

🔁 Codex2DSH

把 Codex(OpenAI Codex CLI / Desktop)的 MCP 服务器、技能、全局配置、记忆,一键迁移进 DeepSeek Harness(DSH)—— 全程可视化操作,无需命令行。

npm version npm downloads CI License: MIT Node.js >= 22.13 dsh >= 0.1.x

🖥️ 可视化使用指南 · 📥 安装 · ✨ 功能 · 🔒 安全说明 · ❓ 常见问题 · 📚 文档

一句话:Codex 的配置是资产,不是牢笼。codex2dsh 帮你把多年积累的 MCP 服务器、技能、全局规则、记忆「翻译」成 DSH 原生形态——迁移全程可视化操作、源码只读、密钥按原样迁移、dry-run 预览、人工确认


🖥️ 可视化使用指南(推荐)

打开迁移面板

安装插件并重启 DSH 后:

  1. 打开 设置 → 插件
  2. 找到 「Codex 迁移」 标签页
  3. 面板包含 5 个区域,从下到上操作即可完成迁移

面板功能一览

区域功能
① 状态总览源配置根路径、全部可迁移资产清单(MCP/技能/指令/记忆/会话)、迁移台账条数、凭据文件黄色警告
② 迁移选项「密钥脱敏」开关(默认原样迁移,直接可用)、「随迁本地工具目录」开关(默认开)
③ 全量迁移向导一键走完 1 预览 → 2 选择 → 3 执行 → 4 完成 四步全流程(推荐首次迁移使用)
④ 分类迁移7 张独立卡片:MCP 服务器、技能、全局指令、记忆、配置建议、会话导入、迁移体检——每张卡片有勾选清单 + 「预览 / 执行」按钮
⑤ 最近结果最近一次执行的徽章式结果(已迁移=绿 / 跳过=灰 / 无效=红 / 预览=蓝)+ 警告列表

推荐流程(首次迁移)

  1. 看状态:打开面板先看「状态总览」——确认源配置根正确、了解有哪些资产、注意黄色凭据警告
  2. 走向导:点「开始全量迁移」
    • 第 1 步 预览:查看各分类资产规模(零副作用)
    • 第 2 步 选择:勾选要迁移的分类;MCP 与技能可在下方分类卡片细化勾选
    • 第 3 步 执行:自动按 MCP → 技能 → 指令 → 记忆 → 配置 顺序执行,显示进度
    • 第 4 步 完成:查看每类结果汇总(成功 / 跳过 / 警告)
  3. 细化选择(可选):在「分类迁移」里
    • MCP 服务器:勾选要迁移的服务器(如只留 google-mcp-toolbox),本地工具目录会自动随迁并重写路径
    • 技能:勾选想要的技能;用「排除前缀」批量取消勾选整套技能(如输入 ccpanes- 排除全部 ccpanes 技能)
  4. 收尾:迁移产物(如 mcp-mirror.cordis.yml)生成后,按产物中的提示人工审阅并合并进 DSH profile 即可使用(见 常见问题

💡 每个「执行」按钮点击前都有确认框;所有写盘操作默认先「预览」,确认后再执行。


📥 安装

环境要求

  • Node.js ≥ 22.13
  • DeepSeek Harness dsh ≥ 0.1.x(本插件在 0.1.1-rc.2 实测)
  • 本机已有 Codex 配置(~/.codex/,Windows 为 C:\Users\<你>\.codex\

方式一:npm 包安装(推荐)

# DSH Desktop 用户(desktop profile):
dsh plugin --profile desktop add codex2dsh

# 或 dsh CLI / Web profile 用户:
dsh plugin --profile web add codex2dsh

安装后重启 DSH,即可在「设置 → 插件」看到「Codex 迁移」面板。

方式二:本地开发 / 试用最新版

dsh plugin --profile desktop add -w link:D:/Projects/codex2dsh   # 替换为你的项目路径

卸载:dsh plugin --profile <name> remove codex2dsh,已迁移的资产不会被删除。


✨ 功能

能力入口说明
🖥️ 可视化迁移面板设置 → 插件 → Codex 迁移状态总览 + 迁移选项 + 全量迁移向导(预览→选择→执行→完成)+ 分类迁移卡片 + 结果徽章
全量迁移向导面板「开始全量迁移」四步向导一键迁移全部资产,逐步展示进度与结果
MCP 镜像面板 MCP 卡片 / migrate_codex_mcp解析 config.toml[mcp_servers.*] 生成可合并的 DSH MCP client YAML;密钥默认原样迁移(可选脱敏);include/exclude 选择性迁移;本地工具目录(如 mcp-toolbox)随迁并重写路径
技能转换面板技能卡片 / migrate_codex_skills~/.codex/skills/<name>/SKILL.md → DSH 技能资产(frontmatter 适配 kind: dsh),脚本目录随迁,冲突自动消歧、幂等跳过;支持按前缀批量排除(如 ccpanes-
全局指令面板指令卡片 / migrate_codex_instructionsAGENTS.md / instructions.md → DSH 指令资产(原文完整保留),项目级规则给出挂载建议
记忆迁移面板记忆卡片 / migrate_codex_memoryCodex 记忆(含 sqlite 只读探测)→ DSH 记忆资产,不可读时降级报告
配置建议面板配置卡片 / migrate_codex_config模型 / Provider / 权限 / 项目信任 → 只读建议片段(绝不自动改 settings.yaml
会话导入面板会话卡片 / migrate_codex_sessions统计会话规模并委托 import_codex(dsh-chat-import)导入为可续聊会话
迁移体检面板体检卡片 / codex2dsh_doctor逐资产状态:已迁移 / 待迁移 / 不可迁移 / 密钥残留
命令行codex2dsh无 GUI 环境的同能力 CLI:preview / mcp / skills / instructions / memory / config / sessions / doctor / ledger

🔧 命令行(可选)

codex2dsh preview                      # 只读预览全部可迁移资产
codex2dsh mcp --apply                  # 生成 MCP 镜像(密钥默认原样;--mask-secrets 脱敏)
codex2dsh skills --apply --exclude ccpanes-*   # 技能迁移(排除 ccpanes)
codex2dsh doctor                       # 迁移体检
codex2dsh ledger                       # 查看迁移台账

🔒 安全说明

承诺说明
源码只读~/.codex/** 任何文件永不写入、永不移动、永不删除
密钥原样迁移(默认)为让迁移后配置直接可用password/token 等敏感值按原样写入产物;产物含真实凭据,请勿提交公开仓库;面板「迁移选项」可一键切换为脱敏(****
凭据文件不触碰auth.json.codex-global-state.json 等只报告存在,不读取、不迁移
默认预览一切写盘操作默认 dry-run,确认后才执行
profile 不自动改MCP / 配置只生成待审阅片段,由你人工合并,绝不自动修改
幂等不覆盖目标已存在且内容不同时拒绝覆盖(需 force),防覆盖人工修改

❓ 常见问题

MCP 迁移后如何让 DSH 真正用上这些服务器?

迁移生成的是待审阅片段(如 ~/.dsh/codex2dsh/mcp-mirror.cordis.yml)。请把片段中的 - insert: dsh-mcp-client 块合并进 profile 的 cordis.patch.yml~/.dsh/profiles/<你的profile>/cordis.patch.yml),然后重启 DSH。

我该用哪个 profile?

DSH Desktop 用户看「设置 → 关于/插件」里当前激活的 profile(通常是 desktop 或你切换后的 web)——插件要装到当前激活的 profile 才会出现在设置里。用 dsh plugin --profile <当前profile> add codex2dsh

连接 MCP 服务器失败?

部分服务器(如 Google MCP Toolbox)的 stdio transport 走 NDJSON 而非标准帧格式,DSH 的 MCP 客户端可能连不上。此时可改用 HTTP 模式toolbox serve 常驻 + 镜像配置 type: httpurl: http://127.0.0.1:5000/mcp)。如遇此类问题,可在 Issues 反馈,我们会给出适配指引。

迁移后技能/指令去哪了?

  • 技能 → ~/.agents/skills/<name>/(可用 DSH_AGENTS_HOME 覆盖)
  • 指令 → ~/.agents/instructions/
  • 记忆 → ~/.dsh/memories/codex/
  • MCP 镜像与台账 → ~/.dsh/codex2dsh/

卸载后数据会丢吗?

不会。插件从不自动删除已迁移资产;卸载只移除插件本身。


📚 文档

文档内容
01-总体架构项目目标、DSH 插件体系、技术栈
02-Codex配置解剖Codex 配置全解剖(config.toml / skills / 记忆 / 凭据)
03-映射规范逐项映射规范(MCP / 技能 / 指令 / 记忆 / 配置)
04-插件API参考开发者:插件 API 与 client 注入契约
05-实现方案开发者:模块划分与实现细节
06-测试与验收测试策略与验收矩阵
07-发布与分享开发者:npm 发布与社区市场收录
08-路线图里程碑与需求清单
09-安全边界安全承诺与密钥策略

🤝 参与

📄 许可

MIT License —— 见 LICENSE

⚠️ 免责声明:本插件只负责「翻译」配置,不承担目标服务器、凭据与访问策略的合规责任;迁移含密钥的 MCP 配置前请务必阅读 docs/09-安全边界.md

Похожие плагины