buguoshixc/deepseek-harness-external-migration ↗★ 3
deepseek-harness-external-migration
Safely migrate Codex, Claude Code, Qoder and OpenCode configuration and sessions into DeepSeek Harness.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:buguoshixc/deepseek-harness-external-migration说明文档
阅读完整 README ↗DeepSeek Harness 外部会话迁移插件
把 Codex、Claude Code、Qoder(也接受 qcoder 这个别名)和 OpenCode 的配置线索与历史会话迁移到 DeepSeek Harness。
插件采用“扫描 → 预览 → 明确确认导入”的流程:源目录始终只读;会话写入 Harness 当前启用的原生持久化后端;配置先导出成可审阅的迁移包,不会直接覆盖现有配置。
能迁移什么
| 来源 | 历史会话 | 配置与扩展 |
|---|---|---|
| Codex | sessions/**/*.jsonl,可选 archived_sessions/**/*.jsonl | config.toml 中的 MCP、模型/权限摘要,AGENTS.md、prompts、skills |
| Claude Code | ~/.claude/projects/*/*.jsonl | 用户/项目 settings、.mcp.json、CLAUDE.md、commands、agents、skills |
| Qoder | ~/.qoder/projects/*/transcript/*.jsonl | 用户/项目 settings、.mcp.json、commands、agents、skills |
| OpenCode | 当前 opencode.db 的 session/message/part 表,也兼容旧 storage/ JSON 树 | opencode.json / opencode.jsonc、AGENTS、commands、agents、skills |
迁移后的会话使用 Harness 的 turn/start、user/message、assistant/message、session/title 等原生事件,可被 JSONL 或 SQLite 持久化实现读取。每个会话还带一个可忽略的来源事件,记录来源、源会话 ID 和内容指纹,用来避免重复导入。
安装
需要 DeepSeek Harness 0.1.0-rc.5 或更高兼容版本,以及 Node.js 22.19+ 或 24+。
安装已打包文件(把路径替换成实际绝对路径):
dsh plugin --profile web add "C:\absolute\path\deepseek-harness-external-migration-0.1.0.tgz"
本包声明了 dsh.bundle.patch,因此 dsh plugin 会自动把它加入所选 profile 的配置层。安装完成后重启该 profile。
也可以从源码目录安装:
dsh plugin --profile web add "C:\absolute\path\deepseek-harness-external-migration"
使用
在 Harness 对话中直接说:
扫描 Codex、Claude Code、Qoder 和 OpenCode 的可迁移内容,不要导入。只预览 Codex 和 Claude 最近 10 个会话。- 检查结果后:
确认导入刚才预览的来源,并导出配置迁移包。