跳过主要内容
F

dsh-plugins-update

fengzhiyushui/dsh-plugins-update

第三方 DSH 插件检查与更新增强工具,启动后台探测并在侧边栏与已安装列表展示更新角标(原生弹窗更新完成后自动同步消隐),支持 GitHub 仓库及分支/标签(#ref)、固定 commit 解锁与 monorepo 子路径的 CDN 并发竞速检测与升级,提供 npm/npmmirror/自定义源切换与官方源回退、minimumReleaseAge 观察期绕过、快照与离线回滚对齐,以及默认让位原生与按需开启详情页更新按钮。

安装

dsh plugin --profile web add github:fengzhiyushui/dsh-plugins-update

README

dsh-plugins-update

dsh-plugins-update icon

A lightweight updater & power-tool companion for third-party DeepSeek Harness (DSH) plugins.
Proactive Global Reminders · One-Click GitHub Plugin Updates · Smart Native UI Coexistence · Release Age Policy Bypass

License: MIT Release

English | 简体中文


Important Notice: DeepSeek Harness (DSH) has natively supported checking and updating plugins since 0.2.2-rc.1. Starting from v0.2.2, this plugin adapts to coexist with DSH's native update mechanism (compatible with DSH 0.2.2-rc.1 through 0.2.2-rc.3, locally verified on 0.2.2-rc.3).

Introduction

dsh-plugins-update is a lightweight update enhancement plugin for DeepSeek Harness (DSH) that extends the built-in plugin manager in everyday maintenance scenarios:

  • Background Probing & Global Reminders: At startup, the plugin runs lightweight concurrent HTTP checks across installed third-party plugins, adds a numeric update counter badge on the sidebar Plugins item, and attaches native-style Update available tags next to plugin titles in the installed list—letting you see pending updates without opening each plugin one by one. Also automatically reconciles pending badges when DSH's native update/install dialog finishes.
  • Native-First Layering & On-Demand Fast Channel: By default (when using the official npmjs registry), standard npm plugin detail pages yield cleanly to DSH's native update controls with zero duplicate buttons. For GitHub repository plugins, setups using npmmirror / custom registries, or when Always show the Fast Update button on plugin detail pages is enabled in settings, this plugin exposes a direct ⚡ Fast Update channel.
  • Registry Switching & Failure Rollback: Choose between npm official, npmmirror, or custom private registries in settings, with optional automatic fallback to npm official if a mirror fails. Before upgrading, the plugin snapshots your profile's package.json and pnpm-lock.yaml, restores them automatically on install or version-verification failure, and performs best-effort offline lockfile alignment if node_modules drifted.
  • GitHub Update Signal: For GitHub-sourced plugins (including #ref branch/tag targets, 40-char commit-pinned specs, and monorepo &path:<subdir> specs), updates are detected via concurrent HTTP requests racing jsDelivr and raw.githubusercontent.com for the target package.json version field (upstream repositories must bump version to trigger an update notice), while upgrading pulls the latest commit on the configured branch/tag (or default branch when commit-pinned or unpinned).

Features

  • Enhanced GitHub Plugin Update Support: Supplements DSH native updates (where unpinned branch/tag/shorthand specs and &path:<subdir> monorepo paths are not handled natively) by racing global CDN and GitHub raw endpoints on package.json for one-click upgrades while preserving #ref and &path:<subdir>;
  • Proactive Global Reminders: Performs lightweight startup/background HTTP checks without spawning pnpm view subprocesses, showing a sidebar numeric badge on Plugins and inline Update available tags on installed plugin rows (while avoiding duplicates with DSH native tags);
  • Native-First Coexistence + Optional Toggle: Yields standard official npm detail pages to DSH native by default, while keeping GitHub plugins, mirror/custom registries, and an explicit settings toggle ready whenever single-step fast updates are needed;
  • Release Age Policy Bypass: Automatically catches and bypasses pnpm minimumReleaseAge restrictions so newly published versions can be updated immediately;
  • Snapshot & Safe Rollback: Snapshots package.json and pnpm-lock.yaml before updates, verifies installed semver versions afterward, and restores/realigns on failure;
  • Multi-Registry & Fallback: Supports npm official, npmmirror, and custom HTTP/HTTPS registries with optional fallback retry to npm official;
  • Native Design System & Bilingual (i18n): Built with DSH UI primitives and synchronized English / Simplified Chinese localization.

Install

In DSH open Plugins → Add plugin and enter:

fengzhiyushui/dsh-plugins-update

Or by npm package name:

dsh-plugins-update

Or use the DSH CLI:

dsh plugin --profile desktop add fengzhiyushui/dsh-plugins-update

Development

pnpm install
pnpm run build

License

MIT License © fengzhiyushui

相关插件