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

插件一键更新 leoyoul/dsh-onekey-update

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

启动时检查已启用插件新版本,一键全部升级

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]—
本站尚未做安装检查
暂无时间戳·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 5 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

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

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

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

可执行外部命令读写/删除本地文件读取剪贴板或密钥环境变量发起外部网络请求
查看扫描证据(共 10 处,展示前 10 条)
  • 读取密钥环境变量
    lib/index.js:32
    const CHECK_DELAY_MS = Number(process.env.DSH_ONEKEY_UPDATE_DELAY_MS || 8_000);
  • 写入本地文件
    lib/index.js:59
    mkdirSync(dir, { recursive: true });
  • 写入本地文件
    lib/index.js:68
    writeFileSync(LOG_FILE, `${new Date().toISOString()} ${line}\n`, { flag: 'a' });
  • 写入本地文件
    lib/index.js:77
    writeFileSync(STATE_FILE, `${JSON.stringify(snapshot(), null, 2)}\n`);
  • 读取本地文件
    lib/index.js:113
    if (existsSync(bin)) {
  • 读取本地文件
    lib/index.js:128
    if (existsSync(cli)) {
  • 执行外部命令来自配置/变量
    lib/index.js:154
    child = spawn(launcher.command, args, {
  • 读取密钥环境变量
    lib/index.js:448
    if (process.env.DSH_ONEKEY_UPDATE_DISABLE === '1') {
  • 读取本地文件
    lib/index.js:452
    if (!existsSync(path.join(profileDirFor(state.profile), 'package.json'))) {
  • 发起网络请求
    lib/client.js:80
    const response = await fetch(routeUrl(`${ROUTE}/${path}`), {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DSH 插件:启动时检查已启用插件的新版本,一键全部升级。跨平台。

README

由 DeepSeek 最新模型翻译生成
dsh-onekey-update 一键更新 DeepSeek Harness(dsh)插件:每次启动后检查已下载且已启用的插件有没有新版本,在界面右下角列出来,点一次「全部更新」就逐个升级到最新版,完成后提示重启。 界面是原生风格通知条:左侧 3px 状态竖条 + 徽标,配色全部取自 DSH 主题 token(--dsw-alias-、--dsw-radius-、--dsw-shadow-*),随主题明暗与品牌色变化,不写死颜色。四态(有更新 / 全最新 / 更新中 / 失败)共用一套结构,更新中用分段进度条,失败行标 ✗ 并给出 pnpm 关键错误。 更新执行是跨平台的:不依赖 DeepSeek Harness.exe,macOS / Windows / Linux 都用同一套官方 CLI 通道。 交互 - 启动约 8 秒后后台检查,不阻塞界面。 - 检查完一定给结论:有新版本时列出 插件 当前版本 → 最新版本,按钮 全部更新 / 稍后提醒;全部最新时也弹卡片,标题 全部插件都是最新版,说明检查了多少个、跳过了多少个,按钮 重新检查 / 知道了。 - 在待更新插件下点「查看更新日志」可直接展开并滚动阅读;按需读取 GitHub Releases 最近 100 个发行版中匹配本次升级区间的说明,未找到或访问失败会单独提示。
展开完整文档(README 剩余 1 节)
dsh-onekey-update 一键更新

DeepSeek Harness(dsh)插件:每次启动后检查已下载且已启用的插件有没有新版本,在界面右下角列出来,点一次「全部更新」就逐个升级到最新版,完成后提示重启。

界面是原生风格通知条:左侧 3px 状态竖条 + 徽标,配色全部取自 DSH 主题 token(--dsw-alias-、--dsw-radius-、--dsw-shadow-*),随主题明暗与品牌色变化,不写死颜色。四态(有更新 / 全最新 / 更新中 / 失败)共用一套结构,更新中用分段进度条,失败行标 ✗ 并给出 pnpm 关键错误。

更新执行是跨平台的:不依赖 DeepSeek Harness.exe,macOS / Windows / Linux 都用同一套官方 CLI 通道。

交互

- 启动约 8 秒后后台检查,不阻塞界面。
- 检查完一定给结论:有新版本时列出 插件 当前版本 → 最新版本,按钮 全部更新 / 稍后提醒;全部最新时也弹卡片,标题 全部插件都是最新版,说明检查了多少个、跳过了多少个,按钮 重新检查 / 知道了。
- 在待更新插件下点「查看更新日志」可直接展开并滚动阅读;按需读取 GitHub Releases 最近 100 个发行版中匹配本次升级区间的说明,未找到或访问失败会单独提示。当前不读取 CHANGELOG 文件,发行版未覆盖所有版本时结果可能不完整。
- 展开日志后可点「翻译为中文」,译文与原文可切换。点击时日志文本会发送给 Bing,代码、链接和版本号会先保护;无需另开其他插件。网络失败时保留原文并在标题旁提示重试。
- 点「全部更新」:显示 3/7 dsh-context 0.75.1 → 0.77.0 的实时进度,逐条执行。
- 结束:标题给出 成功 N、失败 M,每行标 ✓ / ✗,失败行给出 pnpm 输出的关键一行;提示重启 DSH 生效。
- 部分失败不影响其余插件继续升级。

检查范围

profile package.json 的 dependencies ∩ 已启用(dsh.profile.bundles 或 cordis.patch.yml),并排除:

- 插件自身;
- 非 registry 依赖(file: / link: / git: / 本地路径);
- 已在插件页停用的包(.dsh-market/state.json);
- node_modules 里找不到、无法确定当前版本的包。

版本比较使用完整 semver(含预发布段),只列前向升级,不会降级。查询 dist-tags.latest,先问 https://registry.npmjs.org,失败再问 https://registry.npmmirror.com。

更新通道

逐条执行官方通道:

dsh plugin --profile <profile> add <name>@<version> --config.minimum-release-age=0

dsh 可执行文件按下列顺序解析,不依赖 PATH、不判断 .exe 后缀:

1. <resources>/runtime/cli/bin/dsh(应用自带的 CLI,macOS 已实测);
2. <resources>/app.asar/dsh/node_modules/@deepseek-ai/dsh-desktop-host/lib/cli.js,用 Electron 以 ELECTRON_RUN_AS_NODE=1 --expose-internals 方式调用;
3. <resources>/app/dsh/...(解包运行时的同位置)。

都不存在时报「找不到 DSH CLI」,卡片进入失败态,不会静默跳过。

--config.minimum-release-age=0 用于绕过 pnpm 的最小发布时长限制,否则刚发布的版本会被供应链策略拒绝。

安装

从 GitHub(推荐,任何平台):

dsh plugin --profile desktop add git+https://github.com/leoyoul/dsh-onekey-update.git

本机开发时用链接安装:

dsh plugin --profile desktop add link:/Users/leoy/Documents/dsh-onekey-update

装完完全退出并重开 DSH,插件页会出现「一键更新」,右下角按检查结果出现卡片。

在 DSH「发现」页里安装

插件已发布到 npm,主流市场自动收录(约 24 小时同步一次):直接在 插件 → 发现 里搜 dsh-onekey-update 安装即可。

环境变量

| 变量 | 作用 |
| DSH_ONEKEY_UPDATE_DELAY_MS | 启动后延时多久检查(默认 8000) |
| DSH_ONEKEY_UPDATE_DISABLE=1 | 本次启动不检查、不显示卡片 |
| DSH_PROFILE | 覆盖 profile 名(默认 desktop) |
| DSH_HOME | 覆盖 ~/.dsh |

状态与日志

- ~/.dsh/onekey-update/state.json:最近一次检查与更新的结构化结果;
- ~/.dsh/onekey-update/onekey-update.log:检查、逐条更新、错误记录。

宿主路由(同源):GET /onekey-update/status、POST /onekey-update/check|apply|dismiss。

开发

npm run check # node --check 三个源文件
npm test # 版本比较、profile 扫描、registry 回退、汇总逻辑

检查逻辑 lib/check.mjs 是纯函数 + 只读 IO,可脱离 Electron 直接在 node 里跑:

node -e "import('./lib/check.mjs').then(async m => console.log(await m.checkAll(m.profileDirFor('desktop'))))"

已知边界

- 更新的是宿主正在运行的 node_modules,新版本要重启 DSH 才生效。
- 卡片不列 registry 的所有历史版本,只升到 dist-tags.latest。
- 安装在 link: 目录时没有构建步骤,改完源码重启 DSH 即生效。
预览分享卡片长什么样 ↓leoyoul/dsh-onekey-update
分享 · DeepSeek Harness Hub
leoyoul/dsh-onekey-update

启动时检查已启用插件新版本,一键全部升级

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部