🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

雪花定时关机 eeFrank123/dsh-snowflake-shutdown

DeepSeek Harness
eeFrank12319 天前有提交已提供中文文档扫描:含敏感能力

DeepSeek Harness 的雪花关机按钮——dsh-shutdown-after-task 的桌面修复分支:任务完成后自动关机,倒计时可取消。

29.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/25 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add eeFrank123/dsh-snowflake-shutdown
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · desktop
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 19 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 1 处,展示前 1 条)
  • 写入本地文件
    index.js:54
    try { fs.appendFileSync(LOG_PATH, line + '\n', 'utf8') } catch { }
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-snowflake-shutdown ❄️ 任务完成后自动关机 —— DeepSeek Harness 插件(Windows,零依赖)。 本仓库是 virggle/dsh-shutdown-after-task(MIT)的桌面版修复 + 界面精简分支。 跑长任务(批量迁移、模型生成、过夜任务)时,点一下右下角的雪花按钮,任务成功完成后电脑自动关机;倒计时期间可一键取消。 按钮三种状态 提示面板 为什么会有这个分支 原插件在 DSH 桌面版(Electron)上按钮根本不会出现,刷新页面、完全重启都无效。 原因在于它只有一条 UI 投递通道 webServer.tapIndex:把 插进服务端渲染的 index.html。 而桌面版从不经过服务端渲染 —— 宿主(@deepseek-ai/dsh-desktop-host)只通过 IPC 把结构化注入行交给窗口: process.send?.({ type: "ready", url, injections: ctx.webServer.collectIndexInjections() }) 页面端解释器再按行类型应用(global / script / script-src / script-preload / style / html)。
展开完整文档(README 剩余 1 节)
dsh-snowflake-shutdown ❄️

任务完成后自动关机 —— DeepSeek Harness 插件(Windows,零依赖)。
本仓库是 virggle/dsh-shutdown-after-task(MIT)的桌面版修复 + 界面精简分支。

跑长任务(批量迁移、模型生成、过夜任务)时,点一下右下角的雪花按钮,任务成功完成后电脑自动关机;倒计时期间可一键取消。

按钮三种状态

提示面板

为什么会有这个分支

原插件在 DSH 桌面版(Electron)上按钮根本不会出现,刷新页面、完全重启都无效。

原因在于它只有一条 UI 投递通道 webServer.tapIndex:把 插进服务端渲染的 index.html。
而桌面版从不经过服务端渲染 —— 宿主(@deepseek-ai/dsh-desktop-host)只通过 IPC 把结构化注入行交给窗口:

process.send?.({ type: "ready", url, injections: ctx.webServer.collectIndexInjections() })

页面端解释器再按行类型应用(global / script / script-src / script-preload / style / html)。
这张表在宿主启动时一次性收集,tapIndex 这种"函数变换"完全不在链路上 —— 所以怎么重启都不会有按钮。

本分支补上了注入行通道,并顺手把界面改成更小、更克制的样子。

相对原版的改动

| # | 改动 | 说明 |
| 1 | 桌面端可用 | 额外注册 webserver/index-inject 行,推送 { kind: 'script-src', src: '/api/dsh-snowflake-shutdown/ui.js', placement: 'body' };原 tapIndex 保留,浏览器 / dsh web 场景照旧 |
| 2 | 雪花圆按钮 | 原来约 150×34 的文字长条 → 32×32 圆形,内联 SVG 六向雪花(用 currentColor,颜色跟随状态),悬停放大 8%,文字提示移到 title;已开启仍是黄底 |
| 3 | 紧凑提示面板 | 原来固定 300px 宽(一大片黑色空白)→ width:max-content 按内容收缩、长文本最多 320px 换行;位置固定在窗口右下角,与按钮重叠时自动上移到按钮上方(先显示再测量,避让判断才准确) |
| 4 | 插件身份改名 | 包名、路由前缀 /api/dsh-snowflake-shutdown/、日志 ~/.dsh/dsh-snowflake-shutdown.log、类名 dsh-snow- —— 可以和原版同时安装,不会抢同一个 HTTP 路由 |
| 5 | 修掉"按钮自己上下动" | 避让判断改用没有偏移时的按钮位置(原来拿已经让开后的位置去判断,"让开"这一步就把触发条件消掉了:让开→不再重叠→归位→又重叠,每秒弹一次)。另外整窗的模态/遮罩不再触发让开,否则按钮会被顶到屏幕外 |

功能行为(触发判定、成功判定、倒计时、取消)与原版一致;自动避让在原版基础上修了抖动(上表第 5 条)。

安装

从 GitHub 安装:

dsh plugin --profile desktop add github:eeFrank123/dsh-snowflake-shutdown

从本地目录安装:

dsh plugin --profile desktop add file:E:\path\to\dsh-snowflake-shutdown

网页版 profile 请把 --profile desktop 换成 --profile web。

装完完全退出 DeepSeek Harness(含系统托盘图标 → 右键 → 退出)再重新打开。

为什么必须整进程重启:界面脚本是宿主启动时载入内存的,注入行也在启动时收集。只刷新页面(F5)读到的仍是旧脚本;把窗口关到托盘不算重启。

使用

1. 点右下角雪花按钮 → 变黄 = 已武装(默认永远是关闭状态,绝不自动开启);再点一次 = 取消
2. 按钮可拖到任意位置,位置记在浏览器 localStorage 里
3. 全部 root 会话空闲(且本批次无错误)→ 右下角弹出「任务已完成 / N 秒后自动关机」
4. 倒计时里点「取消关机」→ 执行 shutdown /a,本次取消且退出模式;倒计时内发新消息 → 只撤销本次关机,模式保持开启

配置

在 profile 的 cordis.patch.yml(或 设置 → 插件配置)里:

- id: dsh-snowflake-shutdown
config:
countdownSec: 60 # 倒计时秒数(10–600,默认 60) marginSec: 5 # 系统 shutdown /t 额外余量(0–60,默认 5) onlyOnSuccess: true # 仅成功时关机(false = 只要跑完就关,含出错)

行为细节

| 项 | 说明 |
| 触发时机 | 模式开启后,全部 root 会话从 running 回到 idle |
| 成功判定 | 本批次没有 agent/error(仅 onlyOnSuccess: true 时判定) |
| 倒计时 | countdownSec 秒,右下角横幅实时显示剩余秒数,可点「取消关机」 |
| 系统指令 | 倒计时开始时执行 shutdown /s /t <countdownSec + marginSec> |
| 取消方式 | 横幅上的取消按钮(退出模式)/倒计时内发新消息(保持模式) |
| 状态查询 | GET http://127.0.0.1:<port>/api/dsh-snowflake-shutdown/state |

运行日志

$DSH_HOME/dsh-snowflake-shutdown.log(默认 C:\Users\<你>\.dsh\dsh-snowflake-shutdown.log),挂载、武装、触发、取消都有记录。

已知限制

- 仅 Windows:执行的是 shutdown.exe,其他平台插件保持惰性并记日志
- 模式状态存在内存里:DSH 重启后回到默认关闭,需要重新点按钮
- root 会话 idle 但 inbox 还有排队消息时也会触发(判定依据是「全部 root 空闲」)
- 新增/修改插件后必须完整重启客户端才会看到界面变化

卸载

dsh plugin --profile desktop remove dsh-snowflake-shutdown

致谢

- 原插件 virggle/dsh-shutdown-after-task(MIT)—— 本分支的功能逻辑全部来自它
- 原 README 提到的参考项目:yang040709/dsh-win-toast-notify、keyiadiannao/dsh-power-button(均为 MIT)
- 桌面端注入通道的定位来自 DSH 自身源码:@deepseek-ai/dsh-desktop-host、@deepseek-ai/dsh-host-webserver、@deepseek-ai/dsh-web-frontend

常见问题

装完按钮没出现? 必须完全退出客户端(含系统托盘图标 → 退出)再打开。界面脚本是宿主进程启动时载入内存的,注入表也在那一刻收集一次 —— 刷新页面(F5)拿到的还是旧内容,把窗口关到托盘不算重启。

dsh plugin ... add 报 lockfile entries failed verification / within the minimumReleaseAge cutoff?
pnpm 11 默认带一条供应链策略:发布不满 24 小时的包会被拦下(本插件 0.3.0 刚发布时也会遇到)。等一天再装,或者这次先关掉这个检查:

dsh plugin --profile desktop add dsh-snowflake-shutdown --config.minimumReleaseAge=0

dsh plugin ... add github:... 卡住或报 connection to github.com timed out? 这台机器直连 GitHub 不通,给 git 配一个本地代理即可(端口换成你自己的):

git config --global http.https://github.com.proxy http://127.0.0.1:7897

配好后,插件市场里「从 GitHub 安装插件」也会一起恢复正常。

按钮和我别的插件弹窗重叠怎么办? 按钮会自动让开,弹窗消失后自动归位;也可以直接把按钮拖到自己喜欢的位置。

打开宿主设置时按钮会自己上下动? 0.3.1 已修复。原版的避让判断用的是「已经让开之后」的按钮位置,所以让开这一步反而取消了触发条件,于是每秒钟「让开 → 归位 → 让开」来回弹;设置弹窗频繁刷新 DOM 时还会更快。0.3.1 改成按未偏移的位置判断,并且整窗遮罩/大模态不再触发让开(原版这种情况下会把按钮顶出屏幕)。升级:

dsh plugin --profile desktop add github:eeFrank123/dsh-snowflake-shutdown --config.minimumReleaseAge=0

想换回原版?

dsh plugin --profile desktop remove dsh-snowflake-shutdown
dsh plugin --profile desktop add dsh-shutdown-after-task

License

MIT —— 见 LICENSE,保留原项目的版权声明。
预览分享卡片长什么样 ↓eeFrank123/dsh-snowflake-shutdown
分享 · DeepSeek Harness Hub
eeFrank123/dsh-snowflake-shutdown

DeepSeek Harness 的雪花关机按钮——dsh-shutdown-after-task 的桌面修复分支:任务完成后自动关机,倒计时可取消。

这是你的仓库?认领条目

回到顶部