前言¶
DeepSeek Harness (DSH) 采用插件化架构。在使用 dsh-ocr 插件时,官方适配器中存在三个需要手动修复的细节,且这些修复位于 profile 之外。当执行全局升级(npm i -g @deepseek-ai/dsh)或插件重装时,这些补丁会被覆盖。dsh-ocr-seam-guard 旨在解决这一问题,作为守护进程自动检测并恢复这些补丁。
这是什么¶
dsh-ocr-seam-guard 是一个由 DosterBool 维护的管理安全类插件。它作为 dsh-ocr 插件的自我修复守卫,能在启动时自动检查并重新应用被升级擦除的本地补丁,确保服务环境的一致性。
核心功能¶
- 自动修复擦除的补丁:针对 dsh-ocr 插件依赖的三个关键位置进行监控,自动重新应用被
npm i -g @deepseek-ai/dsh升级或插件重装擦除的本地补丁。 - 检查三个关键位置:
* 适配器 seam(位于@deepseek-ai/dsh-llm-deepseeklib/index.js)。
* Python OCR 子进程的 UTF-8 stdout 强制执行。
* rapidocr API 的接口修正(1.2.3 版本text_det→text_detector等)。 - 锚定字符串替换:使用精确的锚定字符串进行替换,确保补丁内容的完整性。
- 模块验证与回滚:通过子
node进程验证补丁后的模块是否可正常加载,若失败则自动回滚文件并报错。 - 锚点漂移容错:如果上游代码锚点发生漂移,插件会跳过补丁并记录日志,避免错误应用。
安装与启用¶
- 执行安装命令:
dsh plugin --profile web add github:YOURNAME/dsh-ocr-seam-guard
- 安装后重启 dsh 以激活补丁。
配置¶
| 环境变量 | 默认值 | 用途 |
|---|---|---|
DSH_OCR_ADAPTER_FILE |
自动检测 | 覆盖适配器文件路径,仅支持 npm 全局安装的 DSH 环境。 |
适用场景与注意¶
- 环境限制:仅支持 npm 全局安装的 DeepSeek Harness。
- 激活时机:补丁激活前需要重启 dsh。
- 异常处理:如果上游代码锚点漂移,补丁将被跳过,需要人工介入检查。
- 权限与安全:插件以当前 dsh 进程权限运行,使用前请检查源码与许可证(MIT)。
结语¶
该插件通过自动化手段解决了插件维护中的补丁易失问题,确保 OCR 服务的稳定性。更多详情请查阅插件目录或 GitHub 仓库。