DeepSeek Harness 修复插件介绍

前言

DeepSeek Harness (DSH) 采用“一切皆插件”的架构。当插件安装、升级或运行时出现异常——例如启动失败、服务静默失效或依赖关系断裂——传统的排查手段往往难以定位根因。dsh-repair 插件旨在提供一套针对 DSH 部署的诊断与修复技能,解决这些问题。

是什么

这是一个由 gezi-wen 维护的 DSH 插件。它包含一份技能,随插件一同进入 agent 的技能目录。该技能专注于修复安装失败、死插件、依赖桥损坏以及升级过程中的问题。

安装

使用官方命令安装:

dsh plugin --profile web add dsh-repair

核心功能

插件通过一系列脚本和技能覆盖了 DSH 运维中的常见痛点:

  1. 启动与文件系统故障

    • 检测 Boot 在 readiness 阶段之前崩溃的情况(如 ERR_MODULE_NOT_FOUND、cannot resolve profile bundle)。
    • 修复插件 node_modules 中 junction/symlink 穿透损坏的问题。
    • 通过 link-doctor.js 审计或修复 symlink 与 junction。
  2. 运行时静默失效

    • 诊断服务静默失效的情况,例如模型页缺少提供方、按钮失效等。
    • 处理配置能解析但 apply 抛异常的问题。
    • 解决适配器静默丢弃它目录里没有的模型 id 的情况。
    • 使用 inspect-session.js 从会话文件提取运行时证据。
  3. 依赖桥

    • 处理树外插件(link:)拿不到宿主核心包时的桥机制。
    • 使用 bridge-doctor.js 进行只读体检。
    • 使用 bridge-rebuild.js 重建依赖桥(优先 dry-run)。
  4. 升级流程

    • 升级前:停实例、备份、隔离预演。
    • 升级后:三层验证与 settings.yaml 复查。
  5. Windows 远程作业

    • 跨机经 SSH 收拾 Windows 上的 DSH 时,覆盖进程生命周期、引号转义、PowerShell、pnpm junction、路径漂移等坑点。

脚本用法

插件附带六个脚本,用于具体修复操作:

  • bridge-doctor.js:依赖桥体检与重建。
  • bridge-rebuild.js:依赖桥重建(dry-run 优先)。
  • bridge-lib.js:共用探测逻辑。
  • dep-diff.js:比较两棵 node_modules 版本表。
  • inspect-session.js:从会话文件取运行时证据。
  • link-doctor.js:审计/修复 symlink 与 junction。

技术细节

  • 包类型:本包是 ESM 包,但上述六个脚本使用 CommonJS 编写。
  • 路径解析:路径一律从 --home 或 $DSH_HOME 解析,没有写死任何一台机器,支持跨机操作。
  • 许可:MIT 许可证。

注意事项

  • 本插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
  • 安装时,包内的 skills/ 会被注册为一个技能根。

参考资料

  • 插件目录:https://www.skillhub.cn/plugins/gezi-wen/dsh-repair
  • 代码仓库:https://github.com/gezi-wen/dsh-repair
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜