jinsiyu/dsh-safemode-profile
jinsiyu★ 1JavaScript最后同步: 2026-08-19
dsh安全模式插件,通过构建空白profile实现零第三方插件启动。The dsh security mode plugin achieves a zero third-party plugin startup by constructing a blank profile.
README 摘要
dsh-safemode-profile English 唯一职责:让 dsh --profile safemode 永远是干净的——启动即强制还原, 运行期持续守护,任何时刻都只含白名单核心 bundle。 它做什么(两个阶段) 1. 启动时:强制还原(不管 profile 有没有、改没改过) DSH 每次启动加载本插件行时,无条件把 $DSH HOME/profiles/safemode/ 写回白名单模板: 文件 强制内容 package.json dsh.profile.bundles = 白名单(默认 @deepseek-ai/dsh-base + @deepseek-ai/dsh-web-app ), dependencies 清空 cordis.patch.yml 空用户 patch 层( [] 模板) pnpm-workspace.yaml 与官方 profile 相同的 pnpm 设置 与模板一致时不动(避免自触发死循环),不一致一律重写。 2. 运行期:持续守护(平时检查) 插件行存活期间双通道监控 profile 是否被改动: - fs.watch 实时监听 : package.json / cordis.patch.yml / pnpm-workspace.yaml 任何变更 → 防抖 300ms → 立即还原; - 30s 轮询兜底 : detectDrift() 全量比对(覆盖 watch 不可靠的挂载场景、 文件被外部整体替换的场景)。 发现漂移(bundle 被加/删、patch 层被写入内容、dependencies 被加东西)→ 自动还原,并记录 warn 日志: safemode profile was modified (...); restored to whitelist template 。 触发机制(无构建脚本,一次装好) 本包没有 postinstall / 任何构建脚本 ——pnpm 永远不会拦截它, dsh plugin add 一次成功、退出码 0、reconcile 正常执行,不需要 approve-builds / allowBuilds 配置。 全部工作由 插件行 ( lib/index.js → lib/guard.js )承担: DSH 每次启动加载本插件时强制还原一次,并进入常驻守护。 另附手动工具(可选): node scripts/ensure-safemode.mjs 立即强制还原 一次(不想重启 DSH 或排障时用)。 安装 前置:已安装 DSH( @deepseek-ai/dsh )与 Node.js(≥18)。 方式 A(推荐,npm 一条命令) — 本插件已发布到 npm 并声明 dsh.bundle manifest,直接用官方插件命令安装: 方式 B(GitHub 直装) —…
在 GitHub 查看完整 README →分类
DeepSeek Harness: Everything is a Plugin.
★ 182,325
amruthpillai/reactive-resumeA one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!
★ 41,477
anywhere-labs/deepseek-harness-desktop为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。
★ 17,784