在 DeepSeek Harness(DSH)的插件生态中,处理遗留代码通常需要人工梳理,缺乏系统化的流程控制。现有的工具往往难以对迁移路径进行量化评估与分步执行。DSH 插件 dsh-modernize-code 提供了一套完整的遗留代码现代化工作流,将迁移过程拆解为环境检查、模式扫描、路线图制定及逐块迁移四个阶段,旨在通过标准化的流程降低重构风险。
这是一款由 988hj7tczd-oss 维护的 DSH 技能包,专注于遗留代码的现代化与简化。它提供了一套从环境就绪检查(preflight)到遗留模式扫描(assess),再到迁移路线图(map)和逐块增量迁移(transform)的完整闭环。该插件实现了类似 anthropics code-modernization 的 preflight 行为,强调“问了不阻塞、报告不漏项”,并支持离线运行。
核心功能¶
该插件包含以下核心能力:
- preflight(环境就绪检查):执行 5 个不阻塞问题与 6 项自动检查,生成
PREFLIGHT.md。未答问题原样列为 open items,绝不代答。 - assess(遗留模式扫描):对项目进行静态扫描,识别回调嵌套、全局状态、魔法数等模式,生成包含影响面、风险与成本排序的
legacy-hotspots.md。 - map(迁移路线图):基于扫描结果生成阶段化迁移路线图,每个阶段包含回滚点与验证命令。
- transform(逐块增量迁移):支持逐块增量迁移,避免大爆炸式重构,改码过程需用户确认。
- 独立组合挂载:提供 Cordis 挂载插件,可作为独立组合或 bundle patch 引入宿主组合。
- 离线运行:使用 Python 标准库编写脚本,无需网络、无凭据、无外部服务。
安装与启用¶
安装步骤如下:
pnpm install --offline && pnpm build
在使用前,需确保项目同级目录存在 dsh-src(DeepSeek Harness 源码检出),并已完成其 pnpm install && pnpm run build。插件通过 peerDependencies 依赖宿主提供的 @deepseek-ai/cordis 等核心包。
典型用法¶
插件支持直接调用其 Python 脚本进行工作流各阶段的操作。
运行环境预检:
python3 skills/dsh-modernize-code/scripts/preflight.py <project-dir> --answers answers.json --targets ts,container
扫描遗留代码模式:
python3 skills/dsh-modernize-code/scripts/detect-patterns.py <project-dir> --out legacy-hotspots.md
上述命令会在项目目录下生成 PREFLIGHT.md 和 legacy-hotspots.md 两个关键产物,作为后续制定迁移路线图的依据。
适用场景与注意¶
该插件适用于需要系统化重构遗留代码的团队。使用时需注意:
- 依赖前置:开发环境下依赖同级目录的
dsh-src,通过link:机制指向官方源码。 - 权限边界:运行时仅读取被扫描项目目录,写入
PREFLIGHT.md和legacy-hotspots.md,不涉及网络请求或凭据传输。 - 许可证:本插件采用 MIT 许可证,独立于上游 proprietary 许可证项目,仅参考其流程骨架。
- 运行环境:需要 Python 3.9+ 和 Node.js 22.6+(支持 type stripping)。
该插件通过将遗留代码迁移拆解为 preflight、assess、map、transform 四个阶段,为 DSH 生态提供了一个可控的现代化工作流标准。完整文档与源码位于 GitHub。