DSH 插件自诊断自修复看门狗:15 秒巡检、带观察窗与自动回退的版本切换修复、未知病症上报人工。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:ckk-09/dsh-refix#path:/packages/dsh-refix
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DSH 静态 profile 层构建,由 deploy/static/build-static.mjs 自动生成。
生成源:versions/refix-v1.08.js(sha256 0cf42e50428fef2e…)。
装(一条命令)
dsh plugin --profile web add <本目录的绝对路径>
装完重启 dsh web。该命令是宿主原生能力:它把参数转发给 profile 目录里的 pnpm,
然后把声明了 dsh.bundle 的依赖自动并入 dsh.profile.bundles 层栈。
卸载:dsh plugin --profile web remove dsh-refix。
装好的标志
dsh 控制台出现:
dsh-refix p3.7 ready; contract OK (兼容性自检通过); baseline plugins: N; patrol every 15000ms
边界(与动态包一致)
- 周期巡检自动:
PATROL_PERIOD_MS = 15000,插件自己起定时器,无需任何外部触发。 - 修复与报告不自动:修复唯一入口是
refix_repair工具,报告是refix_report, 巡检是refix_patrol—— 都要由会话模型按需调用。插件源码里没有 prompt/systemPrompt 注入,所以它不会主动对被修复的会话说话。 要"全自动",请在挂载后授权会话模型:先refix_patrol建立基线,之后按需refix_report、 可修症状直接refix_repair。
运行期依赖
@deepseek-ai/dsh-tools(取 defineTool 做 DSL→JSON Schema 编译与参数校验)。
解析分两级:① 裸说明符 —— 本包以实体目录安装时命中;② $DSH_HOME/profiles/node_modules
—— DSH 启动时把安装侧依赖闭包投影在这里(healProfilesModuleFallback)。
pnpm 以 symlink 安装本包时第 ① 级必然失败(Node 会把模块 realpath 回源目录再找依赖),
靠第 ② 级命中安装侧同一份。
两级都不可达时插件仍会加载并巡检,只是工具 schema 走内置编译器、参数不做运行期校验,
控制台打印一行 [refix] 静态包:未能解析 … 警告。看到它不影响使用;
要消除它,确认 ~/.dsh/profiles/node_modules/@deepseek-ai/dsh-tools 存在即可。
链接
同类插件
yjh051108/dsh-routing-suite★ 7194
一个仓库三件套:DSH 插件包的运行时注入器(注入、热重载、卸载、开发侧挂区一键转正、路由自愈,外带设置页插件管理:列出、卸载、拖入文件夹内化)、任务感知的思维模式路由 agent 预设(router-standard / router-spec / router-react)、以及分级两级任务协议(commit_star / lock_stage / revise_do / edit_plan / mark_task / redteam_verdict 六个工具,任务状态落盘)。注入器实现直接在库内,安装的是它自己的行为而不是一份依赖清单。
strukto-ai/mirage#dsh★ 3641
把文件系统与 bash 提供者换成 mirage 虚拟工作区:文件工具与 shell 命令作用于挂载的资源(RAM、S3、Redis、Slack、Gmail、Notion、Postgres)而非宿主磁盘,支持按挂载点设置读/写/执行模式、按命令选择沙箱(进程内 monty、pyodide、quickjs;远程 docker、e2b、daytona),并可在虚拟终端中安装 CLI(git、gh、slack、linear、ntn、gws,或自行注册的程序树)作为命令头词。
hust-open-atom-club/oh-dsh★ 318
社区发行版:TUI、桌面端与 Web UI 统一体验,分层安装、一步到位。
weijiafu14/pi2dsh★ 196
Pi Host ABI 兼容引擎:装一次之后,npm 上的 Pi 扩展原包经 `dsh plugin add <pi-package>` 直接作为 DSH 原生插件挂载。已在官方 DSH 上端到端验证 pi-mcp-adapter(完整 MCP 管理面:OAuth、resources、prompts、MCP Apps、elicitation、sampling)、@tintinweb/pi-subagents、pi-code、pi-hermes-memory、pi-background-tasks;`pi2dsh inspect` 在安装前报告一个包的兼容情况。
lire1131/dsh-undo-savepoint★ 159
DSH 撤销/回退系统:配置变更自动存档,一键撤销/恢复/回退到任意版本,支持 WebUI 与离线 CLI/GUI 工具(DSH 启动失败也能救)。
Fishquito7/dsh-skill-mcp-panel★ 132
在 DSH Web 设置中管理技能与 MCP 服务器:技能卡片热启停、工作区作用域、分组、批量迁移与拖拽导入,以及 stdio/HTTP MCP 增删改查、连接测试、密钥脱敏,并附带统一 dsh-panel 命令行。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。