DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

zxzc114514 /

zxzc114514/dsh-crash-guard

Verified

Startup crash guard for DeepSeek Harness (DSH): isolates broken frontend plugins, prevents white-screen launch crashes, and recovers cleanly with revision-bound quarantine.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHubProject homepage
READMESource: main@7837cf9e

DSH Crash Guard (防崩卫士)

English | 中文

为 DeepSeek Harness (DSH) 打造的启动防白屏与崩溃隔离守护插件。效仿 Minecraft 模组中 Not Enough Crashes 的容错设计,在第三方插件产物存在语法损坏或未激活时,自动热摘除故障插件并放行正常界面加载,避免触发整窗崩溃白屏。


核心功能

  • 双层崩溃防护
    • Node 宿主预检:在服务端启动时对前端插件 bundle 执行基于文件指纹 (rev) 的 V8 经典脚本语法与 Lazy-CJS 契约预检,提前从 ClientModuleRegistry 剥离损坏产物并自动重建干净的启动图谱。
    • Web 引导拦截:在浏览器端官方 IZ() 严格审计前动态介入,通过 loader.remove() 无损摘除未成功激活的前端条目并清理残留样式,杜绝 N entries did not activate 导致的 Electron 白屏崩溃弹窗。
  • 指纹绑定静默隔离 (Revision-bound Quarantine)
    • 支持按插件当前代码指纹 (rev) 执行静默隔离,将隔离记录保存在独立的 .dsh-market/crash-guard-quarantine.json 中,完全不改动用户的正式配置文件 (package.json、state.json 与 cordis.patch.yml)。
    • 插件代码未变时,下次启动自动静默跳过并不再弹窗打扰;一旦在本地修改了插件代码或在插件市场更新了插件(指纹改变),自动解除隔离并恢复尝试加载。
  • 轻量级顶栏可视化救援面板
    • 深度跟随 DSH 系统语义色彩变量 (--dsw-alias-*),明暗主题无缝自适应。
    • 最小化胶囊紧凑嵌在 Windows 40px 标题栏右侧最小化按钮左方空白拖拽带内 (right: 150px),平时不遮挡工具栏、聊天区或右侧终端分栏;点击即可向下展开故障分类、上游阻断源 (blockedBy) 与详细报错堆栈。

安装方法

方式一:通过 DSH 命令行安装

dsh plugin add dsh-crash-guard

方式二:在 Profile 中手动引入

在当前 Profile 的 package.json (通常位于 ~/.dsh/profiles/desktop/package.json) 中声明依赖并加入 bundle:

{
  "dependencies": {
    "dsh-crash-guard": "^1.0.0"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "dsh-crash-guard"
      ]
    }
  }
}

工作机制

[DSH 启动]
   │
   ├── Node 宿主阶段:
   │     1. 读取 crash-guard-quarantine.json 检查版本指纹,已隔离且未更新的代码直接跳过
   │     2. 执行 vm.Script 经典语法预编译校验与 Lazy-CJS 结构核对
   │     3. 发现语法损坏的第三方插件,将其从 clientModules.table 剔除并 compose() 重建图谱
   │
   └── Web 前端阶段:
         1. index.html <head> 注入引导拦截器,包装 __ModuleLoader__.create
         2. modules.entries.start 完成后、官方 IZ() 审计前执行拓扑剪枝 (pruneInactiveEntries)
         3. 摘除未激活的故障条目 (state !== 2),记录 blockedBy 上游依赖源
         4. 挂载 shell.overlay 顶栏救援胶囊与诊断面板

许可证

本项目基于 MIT 许可证 开源。

—/ 5

No ratings yet

Verified DSH bundle

Commit 7837cf9e76f8

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout