편집자 노트

sjh9714/dsh-movein

Migrate your whole Claude Code or Codex setup into DeepSeek Harness (DSH) with one command. Import skills, slash commands, MCP servers, hooks, subagents, permission rules.

이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.

dsh-movein

English

npm CI MIT zero dependencies downloads

一条命令,把整套 Claude Code 配置搬进 DeepSeek Harness (DSH)。技能、MCP、hooks、全局指令一起到位,从 Claude Code 拎包入住。

dsh-movein demo

dsh plugin --profile web add dsh-movein

重启 dsh web 后说「帮我把 Claude Code 的配置搬过来」即可,插件注册了 movein_from_claude_code 工具,默认预演。

也可以独立运行,不装插件。

npx dsh-movein            # 预演,先看搬家清单
npx dsh-movein --apply    # 正式入住
npx dsh-movein doctor     # 搬完随时体检

实测兼容性对照表见 docs/compat.md,每类资产在 DSH 里到底会怎样,按 rc.6 源码逐项验证,含无法自动化的部分。

能搬什么

资产怎么搬
项目 CLAUDE.md不用搬。DSH 原生就读
全局 ~/.claude/CLAUDE.md链接为 ~/.dsh/AGENTS.md
技能符号链接进 DSH 技能根,SKILL.md 格式原样兼容,原文件改动两边同步
.mcp.json机械转换为 dsh-mcp-client 配置行,工具名 mcp__server__tool 两边完全一致
hooks官方 dsh-hooks-claude-code 桥直接跑你现有的配置
子代理(.claude/agents自动转换为 DSH 技能
斜杠命令(.claude/commands转换为用户可调用的 DSH 技能,/name 照常用
权限规则denyask 通过配套插件 dsh-movein-permissionstools/pre-execute 强制执行,无法映射的规则逐条列进迁移差异报告,绝不静默丢弃。想用 dsh-permission-rules 引擎的话,--emit-rules 可导出其 YAML 格式

会话历史不在范围内,请配合 dsh-chat-import 使用。

从 Codex 搬入

npx dsh-movein --from codex            # 预演
npx dsh-movein --from codex --apply    # 搬入

改扫 ~/.codexAGENTS.md 链接为 ~/.dsh/AGENTS.md,自定义 prompts 转换为用户可调用技能,config.toml 里的 mcp_servers 转成 dsh-mcp-client 配置行。会话请配合 dsh-chat-import,approval_policy 与沙箱设置留给 DSH 预设。下一步是 opencode 和 pi,来 #3 说说你的配置长什么样。

反向搬家(双栖)

在 DSH 里长出来的技能可以搬回去。

npx dsh-movein --reverse            # 看看有什么能搬回去
npx dsh-movein --reverse --apply    # 搬回 Claude Code

DSH 原生技能落到 .claude/skills(符号链接,两边保持最新)。当年从 Claude Code 搬来的资产会被识别并跳过,它们从来没离开过。两个工具都用,配置只维护一套。

搬完之后

npx dsh-movein doctor

搬家体检,随时可跑。检查每个搬过去的资产是否健在、有没有技能会被 DSH 的 YAML 解析器静默丢弃(#1401,详见 docs/skill-vanish.md)、cordis.patch.yml 引用的包是否可解析(解析不到 dsh 会直接无法启动),以及有没有「静默死亡」的 hook:matcher 大小写匹配不上(#582)、事件不在桥接的 7 个之内、或 type 不是 command 被桥直接跳过。

搬坏了就 npx dsh-movein restore,每次写入前都自动备份到 ~/.dsh/movein-backups/

设计原则

  • 默认 dry run,不加 --apply 不写任何文件
  • 每次写入 cordis.patch.yml 前自动备份,restore 一键回滚
  • 零依赖,纯 Node,代码量小到可以先读完再跑
  • 重复执行安全,生成块原地替换,自己写的配置行不受影响
  • 权限迁移出差异报告(几条生效、几条映射不了都列出来),fail closed 优先于静默转换
  • 预演阶段扫描 hook 命令里的未知环境变量,搬完才炸不如搬前就警告
  • 密钥永不写入生成的 YAML,${VAR} 转成 process.env 引用,疑似明文密钥预演即告警
  • 每次搬家记录 manifest(~/.dsh/movein-manifest.json),「这个技能从哪来」永远可查
  • 所需包按宿主 dsh 版本锁定安装,解析不到的包绝不写进配置(那会让 dsh 启动直接失败)

每请求 token 账单

搬进来的技能不是免费的,技能目录以 system-reminder 注入每个请求,固定 143 token,每个技能约 28 token。搬家前先精简,实测数据与复现脚本见 docs/token-bill.md

相关

搬完家看看钱花在哪:dsh-lean 逐请求审计会话的缓存命中拆分,并把 DSH 提示词前缀压掉 53%。npx dsh-lean audit,什么都不装。

许可

MIT

REPOSITORY SIGNALS

보안 및 설치 증거

이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.

출처 추적 가능

공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.

라이선스

저장소가 MIT 라이선스를 선언했습니다.

유지보수 활동

최근 180일 내 코드 업데이트가 있습니다.

설치 증거

재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.

설치 라이프사이클 스크립트

검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.