← 返回列表
⚠ 装前注意
🔄 dsh-auto-update
基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/8/22 · 已提供中文文档
DeepSeek Harness(cordis)插件:为 harness 启动器提供自更新功能——检查 npm 上是否有更新的 @deepseek-ai/dsh,将其暂存,并在 harness 退出时应用(或从 Web 面板执行更新并重启)。
综合分
35.2
GitHub 分
35.2
用户评分
—
★ Stars
3
周下载量
—
兼容 / 相关生态插件(非 dsh 原生,请按其对应运行时安装)
git clone https://github.com/a1113622001/dsh-auto-update.git数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-auto-update(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
未发布到 npm registry,仅可从源码安装
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/18 12:12:55
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
🔄 dsh-auto-update 🚀 DeepSeek Harness 自更新守护插件 · 跨平台/容器环境自适应 Marketplace Release Node Platform License English · 简体中文 · 更新日志 📖 项目简介 dsh-auto-update 是已上架 DeepSeek Harness 官方插件市场 的自更新守护插件。 在 Windows 及 POSIX 平台上,运行中的 Node 原生插件(sharp/koffi/node-pty)会被操作系统加锁,直接热覆盖必报 EBUSY;而在容器中,主进程退出又会直接导致容器销毁。 本项目通过 Stage(暂存) + Post-Exit Detached Apply(退出后脱离子进程替换) + 容器智能感知保护 三阶段设计,完美解决了 Harness 在各类环境下的自动升级难题。 🛒 插件市场与安装方式 方式 1:通过 Harness Web 插件市场一键安装(推荐) 1. 打开 DeepSeek Harness Web 界面(默认 http://127.0.0.1:3080); 2. 进入 设置 (Settings) -> 插件市场 (Plugin Inventory / Market); 3. 搜索 dsh-auto-update,点击 安装 (Install) 即可完成热加载。 方式 2:通过 Harness CLI 命令行安装 官方插件名一键添加 dsh plugin add dsh-auto-update 或指定 profile 安装 dsh plugin --profile web add dsh-auto-update 或直接从 GitHub 安装 dsh plugin add github:a1113622001/dsh-auto-update 🏗️ 架构与生命周期 sequenceDiagram autonumber participant H as Harness 主进程 participant C as 客户端 UI 面板 participant NPM as npm 官方源 / 镜像 participant F as 磁盘暂存区 (DSH_HOME/updates) participant D as 脱离执行器 (apply-update.js) Note over H,C: 阶段 1: 探测与暂存 (Stage) H->>NPM: 检查 dist-tag 远端最新版本 H->>F: 下载精确 tarball 并写入 pending-update.json H-->>C: 前端显示可更新状态 (胶囊徽标) Note over H,D: 阶段 2: 退出与句柄释放 C->>H: 用户点击 “更新并重启” (或正常退出) H->>D: 派生独立脱离子进程 (detached child) H->>H: process.exit(0) 释放原生模块文件句柄 Note over D: 阶段 3: 执行替换与自动拉起 (Apply) D->>D: 等待父进程 PID 彻底终止 D->>NPM: 执行 npm install -g tarball D->>D: 写入 update-history.jsonl D->>H: 按原启动参数重启 dsh web ✨ 核心特性 - 🛡️ 突破 Windows EBUSY 文件锁:两阶段更新设计,运行期仅做暂存,主进程退出释放原生 DLL 句柄后再执行原子替换。 - 🐳 容器智能感知(Container-Aware):自动检测 Docker / K8s / Podman 容器环境,禁止触发 process.exit(0),并在 UI 友好提示“请拉取最新镜像更新”。 - 🌐 全平台软链适配:支持 Windows (/dsh.cmd) 与 Linux/macOS POSIX (/bin/dsh) 重启寻址。 - 💊 极简胶囊交互:Web 界面右下角默认折叠为轻量胶囊,点击展开查看版本差异、手动检查或一键重启。 - 🔄 原子并发锁保护:内置 apply.lock,防止多个更新进程并发冲突损坏全局环境。 ⚙️ 配置文件说明 (cordis.patch.yml) 插件安装后会自动注入配置。如需自定义参数,可在 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml 中调整: dsh-auto-update 配置项 - insert: - id: auto-update name: 'dsh-auto-update' config: distTag: latest # 跟踪的 npm dist-tag (如 latest, next) checkOnStart: true # 启动时立即执行一次版本检查 checkIntervalMinutes: 240 # 定期检查间隔 (分钟) autoStage: true # 发现新版本后自动下载暂存 applyOnExit: true # Harness 退出时自动应用更新 relaunch: false # 应用更新后是否自动重启 harness 📄 开源许可证 本项目采用 MIT License 授权开源。
同作者(a1113622001)的其他插件
扫码进群