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

开机会话恢复 TuringCorp-net/dsh-boot-restore

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

服务重启后自动唤醒值班会话,让定时任务继续跑

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · other
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 77 天前
档位由哪些信号合成

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

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

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

读写/删除本地文件
查看扫描证据(共 2 处,展示前 2 条)
  • 写入本地文件
    index.cjs:10
    try { fs.appendFileSync(LOG, new Date().toISOString() + ' ' + msg + '\n') } catch {}
  • 读取本地文件
    index.cjs:19
    try { return JSON.parse(fs.readFileSync(cfgPath, 'utf8')).sessionId } catch { return null }
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库

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

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

DSH 插件:服务重启后自动恢复上次活跃(值班)会话,让定时任务无人值守运行

README

由 DeepSeek 最新模型翻译生成
dsh-boot-restore DSH 插件:服务重启后自动恢复上次活跃(值班)会话,让定时任务无人值守继续跑,不用开浏览器。 为什么需要 DSH 的定时子系统只把提醒投递到活跃会话(会话本地设计如此)。浏览器打开会话,会话才活跃。服务一旦重启(每日自动更新、崩溃、重启机器),所有会话都是冷的,直到有人打开浏览器——这段时间里定时任务(每小时摘要、健康检查、维护)会悄悄停掉。 这个插件补上这个缺口:服务启动时调用 ctx.agents.resume(),把配置好的会话拉回活跃状态,恢复定时投递和智能体循环,不需要任何客户端连接。 安装 1. 把 index.cjs 复制到固定路径(例如 ~/.dsh/plugins/dsh-boot-restore/index.cjs)。
展开完整文档(README 剩余 1 节)
dsh-boot-restore

DSH 插件:服务重启后自动恢复上次活跃(值班)会话,让定时任务无人值守继续跑,不用开浏览器。

为什么需要

DSH 的定时子系统只把提醒投递到活跃会话(会话本地设计如此)。浏览器打开会话,会话才活跃。服务一旦重启(每日自动更新、崩溃、重启机器),所有会话都是冷的,直到有人打开浏览器——这段时间里定时任务(每小时摘要、健康检查、维护)会悄悄停掉。

这个插件补上这个缺口:服务启动时调用 ctx.agents.resume(),把配置好的会话拉回活跃状态,恢复定时投递和智能体循环,不需要任何客户端连接。

安装

1. 把 index.cjs 复制到固定路径(例如 ~/.dsh/plugins/dsh-boot-restore/index.cjs)。
2. 创建配置 ~/.dsh/boot-restore.json: { "sessionId": "session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }

3. 在 web 配置档的 overlay 里挂载(~/.dsh/profiles/web/cordis.patch.yml):
- insert:
- id: boot-restore
name: '/absolute/path/to/index.cjs'

4. 重启服务:sudo systemctl restart harness.service。

日志(成功 / 失败 / 重试)写到 ~/.dsh/boot-restore.log。

工作原理

service start → plugin apply (inject: agents) → setTimeout 10s
→ ctx.agents.resume({ resumeSessionId, agentOptions: { agentPreset } })
→ session live → schedule delivery resumes → tasks run unattended

- 为什么等 10s 再重试:避开 cordis ready 事件的竞态(插件可能在 ready 已经触发之后才激活;激活期间访问 ctx.ready 会抛错——永远不要碰未注入的代理属性)。
- 为什么显式传 agentPreset:从 rc.7 起,resume 不带显式 preset 会拼装提示词失败({{model}} 没有值,section deployment:persona)。传会话的 preset id(看会话头部或设置)。
- 幂等:浏览器先连上时,resume 直接跳过(「already live」)。
- 容错:日志损坏 / 会话不存在 → 记日志继续,绝不阻塞启动。

版本历史

| 版本 | 变更 |
| v0.6 | resume 显式传 agentPreset(rc.7 拼装修复) |
| v0.5 | 「already live」视为成功(不再做无用重试) |
| v0.4 | inject: ['agents'] + setTimeout 重试;修复 v0.3 崩溃(访问 ctx.ready 抛「without inject」) |
| v0.1 | 初版原型,走 ctx.on('ready')——受 ready 事件时序竞态影响 |

兼容性

- rc.6:可用(v0.1+);preset 从会话头部自动套用。
- rc.7+:需要 v0.6(显式 agentPreset)。

许可证

MIT
预览分享卡片长什么样 ↓TuringCorp-net/dsh-boot-restore
分享 · DeepSeek Harness Hub
TuringCorp-net/dsh-boot-restore

服务重启后自动唤醒值班会话,让定时任务继续跑

回到顶部