yibiner/dsh-plugin-list-plus

基于信任层级、可折叠的DeepSeek Harness Web设置插件列表。

Project Overview项目介绍

dsh-plugin-list-plus is an enhanced plugin list for DeepSeek Harness Web Settings. It groups installed plugins into Official, Organization, and Personal trust tiers with collapsible sections, and renders per-plugin details including name, version, developer, license, repository, configuration, and Cordis mount status, plus search and stable name sorting. Install via dsh plugin --profile web add dsh-plugin-list-plus, restart dsh web, then open Settings → Plugins to see the new tab beside the official one. Note: due to a host tab-projection bug, it ships as a separate tab rather than replacing the official Plugin list.

dsh-plugin-list-plus 是 DeepSeek Harness Web 设置的增强插件列表。它按 Official/Organization/Personal 信任层级分组并支持折叠,完整展示名称、版本、开发者、许可证、仓库、配置与挂载状态,并支持搜索排序。安装方式为 dsh plugin --profile web add dsh-plugin-list-plus,重启 dsh web 后在 Settings → Plugins 中可见新增的 Plugin list Plus 标签。注意:因宿主 UI 存在 tab 投影缺陷,它作为独立标签呈现,不会替换官方 Plugin list。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-plugin-list-plus

yibiner/dsh-plugin-list-plus 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-plugin-list-plus

An elevated Plugin list for DeepSeek Harness Web Settings — trust tiers, collapsible groups, and complete per-plugin detail. It adds a Plugin list Plus tab beside the official Plugin list tab, offering:

  • Trust tiers — plugins are grouped into Official / Organization / Personal: the @deepseek-ai scope and cordis: builtins are official, any other npm scope is an organization, and unscoped or local-file plugins are personal.
  • Collapsible groups — a dense tier folds from its header so the others stay in reach without scrolling.
  • Full details — one card per plugin: display name, version, git commit, developer, description, license, homepage, repository, bundle patch, configuration status, and Cordis mount status.
  • Search & sort — filter by name, description, developer, and other fields; each tier keeps a stable name order.

Install

# from the built tarball
dsh plugin --profile web add ./dsh-plugin-list-plus-0.1.0.tgz
# or from npm once published
dsh plugin --profile web add dsh-plugin-list-plus

Restart dsh web, then open Settings → Plugins → Plugin list Plus — a new tab beside the official Plugin list.

How it works

One package, two halves, and a self-registered data route:

  • Node half (src/index.ts, the package main): reads the Loader tree and installed package.json files, computes the trust-tiered snapshot, and serves it at GET /plugins/dsh-plugin-list-plus/list — an exact route, so it never shadows the plugin's own browser bundle under /plugins/<name>/client.js.
  • Browser half (src/client/, the package ./client): registers its own Plugin list tab (settings.plugins.tab id plus, order 20) beside the official one and renders the enhanced list.

Because DeepSeek Harness has a tab-projection bug (ui-settings-plugins reads entries() instead of entriesOfSlot(), so shadowing the official tab would show a duplicate) and accepts no external changes to fix it, this plugin ships as a separate tab.

Development

pnpm install
pnpm run build     # tsc (d.ts) + tsdown (lib/index.mjs + lib/client.js)
pnpm test          # vitest (node half + browser half + components)
pnpm run typecheck # strict typecheck of src and tests

The browser half bundles to the harness client-bundle contract (window.__ModuleLoader__.load), resolving react, react/jsx-runtime, and @deepseek-ai/dsh-client-ui-primitives from the runtime module table.

License

MIT

上一个 Prev dsh-weixin 下一个 Next deepseek-pet-Seeki