npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-extension-hub

v0.2.19

Published

Extension Hub for DeepSeek Harness (DSH): manage skills, MCP servers and plugins from the DSH Web settings page — list / create / edit / delete / enable-disable, import from Claude and Codex, manage official & third-party plugins, a Plugin Market with a c

Readme

dsh-extension-hub

v0.2.18 新功能附加功能区新增 odai-dsh-plugin(对每个 Agent 预设生效的 Odai 治理与责任路由)与 dsh-cost-meter(会话成本与 token 统计、预算、余额与 Coding Plan 配额)。

v0.2.15 新功能附加功能区新增 dsh-vision-toolkit:更强大的视觉工具包——直接粘贴图片即可进行图片理解、UI 还原、长截图分析等视觉任务。

v0.2.8 新功能一键安装:包新增组合补丁(bundle 层),dsh plugin --profile web add dsh-extension-hub 一条命令自动接线插件行,快速开始不再需要手动编辑 cordis.patch.yml

v0.2.7 新功能附加功能区新增 dsh-recall:对话历史回忆——字面/模糊/语义三层检索全部历史会话,完全本地离线,让 AI 再也不会忘记你说过的话。

v0.2.6 新功能 — 新增精选目录:社区精选 400+ 插件、11 个分类、双语描述,npm 秒装(带防抢注校验);「发现更多」可搜索全部 GitHub dsh 插件。另有 dsh-myrules —— 在设置页编辑此主机全局指令的姊妹插件;插件管理页新增附加功能区,可一键安装、停用、卸载附属功能,并随主插件一起检查更新。

一站式管理 DeepSeek Harness(DSH)的 Skills 与 MCP 服务器。

技能管理 · MCP 服务器 · 技能导入 · 插件管理 · 插件市场

一个服务化的 DSH 扩展中心:零依赖的持久层与 CLI,加上嵌进 DSH Web 设置页的持久化管理界面——新建 / 编辑 / 启用 / 停用技能与 MCP 服务器、从 Claude Code 与 OpenAI Codex 一键导入,以及完整的插件管理器(官方/第三方分组、启用 / 停用 / 卸载、检查与更新,外加插件市场:精选目录 + npm 秒装 + GitHub 发现)。

🌏 中文 · English

快速开始

环境要求:已装好 DSH(dsh web 能正常运行),Node.js ≥ 22,pnpm ≥ 10。

dsh plugin --profile web add [email protected]

一条命令即可:包自带组合补丁(bundle 层),插件行会自动接入你的 profile,无需手动编辑 cordis.patch.yml。重启 dsh web,然后打开 设置 → 扩展管理

安装一次即可,之后可通过顶部「检查更新」按钮升级。

主要功能

| 功能 | CLI | 设置页 UI | |---|---|---| | 列出技能 / MCP(含启用状态、范围) | ✅ | ✅ | | 新建 / 编辑 / 删除技能 | ✅ | ✅(表单 + Markdown 正文) | | 启用 / 禁用技能、MCP | ✅ | ✅ | | 新建 / 编辑 / 删除 MCP(stdio / streamable-http) | ✅ | ✅ | | 从 Claude / Codex 等其他工具导入技能与 MCP | ✅ | ✅ | | 项目级安装(选择目标文件夹) | ✅(folder 命令) | ✅(DSH 目录选择器) | | 插件管理(官方/其他分组,启用/停用/卸载) | — | ✅ | | 插件市场(精选目录 npm 安装 + GitHub 搜索) | — | ✅ | | 检查并更新第三方插件 | — | ✅ | | dsh-myrules — 设置页编辑此主机全局指令(个性化页);可在插件管理中搜索「dsh-myrules」停用/卸载 | — | ✅ | | 附加功能管理(安装/停用/卸载附属功能,随主插件一起检查更新) | — | ✅ |

内置技能只读:列表会一并显示 DSH 部署自带的技能(shipped presets,如 cordis 预设自带的技能)与用户预设目录中的技能,标记为"内置/预设"且不可编辑/删除/切换 —— 它们属于 deployment 或预设层;如需覆盖,在用户或项目目录新建同名技能即可。

插件管理指南

扩展管理页自 v0.2.0 起内置完整插件管理器,共四个页签:技能 / MCP 服务器 / 插件管理 / 插件市场

插件预览

管理已安装的插件

插件管理页列出你 DSH 组合中的每一行插件,分成两个可折叠分组:

  • 官方插件 — DeepSeek 官方出品的 @deepseek-ai/* 包(默认折叠)。可以停用但不能卸载;cordis:include 是组合配置加载器本身,标记为核心——不可停用或卸载。
  • 其他插件 — 第三方与你自己安装的插件(比如本插件)。

点击插件查看详情:描述、来源、仓库链接、条目 ID 与模块名。详情里可以:

  • 启用 / 停用 — 写入你的 profile cordis.patch.yml,重启 dsh web 后生效。停用前会警告:不清楚功能的插件可能带来未知的严重问题。
  • 卸载(仅非官方插件)— 从配置中移除该插件行,先警告、再二次确认"确认卸载?"。若插件是通过 GitHub 克隆安装的,其本地克隆目录会一并删除。

其他插件分组标题右侧有 检查更新:npm 包对比 registry、本地 git 克隆对比远端 HEAD。可更新的插件会在状态标签左侧出现绿色 可更新 按钮——点击拉取新版本(npm tarball 或 git pull),或用 全部更新 一键更新所有可更新插件。

管理已安装的插件

发现并安装新插件

插件市场页内有两个子视图:

  • 精选目录(默认)— 社区精选目录(awesome-dsh-plugin,每日刷新),11 个分类、双语描述、星数与排序(精选/最热/最新)。带 npm 映射的条目从 npm 安装(registry tarball,秒级完成,并校验包指向所选仓库以防名称抢占);没有 npm 映射的条目回退为 GitHub 克隆。本地 24 小时缓存让该视图离线可用。
  • 发现更多 — 搜索 GitHub 上打了 dsh-plugin 标签的仓库(可用关键字缩小范围)。每个结果展示星数,已安装的仓库会带"已安装"徽标。

点击条目进入详情页——描述、星数、分类(精选)、安装方式与仓库链接——然后点 安装。Extension Hub 会:

  1. 优先走 npm registry(插件发布到 npm 时):下载 tarball 到 profile 的 node_modules,全程不依赖 pnpm(无需符号链接/权限),并注册 bundle 行。此类插件由 Extension Hub 自行管理——之后请继续用其「检查更新」保持最新;依赖已写入 profile 清单,后续 dsh plugin / pnpm 重装不会丢失。
  2. 否则浅克隆仓库到 ~/.dsh/extension-hub/plugins/<仓库名>,并校验它带有可用的 package.json 入口。克隆安装仅支持零依赖插件:带 npm 运行时依赖的包会被拒绝(克隆没有依赖安装步骤),依赖 bundle 补丁(dsh.bundle.patch)的包会给出警告(克隆无法应用它)。另请注意:monorepo 根仓库(例如 dsh-myrules 的仓库就是本仓库)克隆后得到的是根包而非目标插件——这类插件请走 npm 或附加功能安装。
  3. 在 profile cordis.patch.yml 注册插件(托管 insert 块)并自检写入。

安装路径混用警告(Discussion #2889):Extension Hub 的安装会写 profile patch 行并声明依赖。请不要再与官方 dsh plugin add/list/update 命令混用:DSH CLI 会把每个声明了 dsh.bundle.patch 的依赖追加进 dsh.profile.bundles,与手动注册行重复,导致 dsh web 启动崩溃(duplicate loader entry id,详见 deepseek-harness Discussion #2889)。若已运行过 dsh plugin 命令,请在重启前从 dsh.profile.bundles 移除重复条目。

重启 dsh web 后,插件出现在其他插件分组里,可以停用、卸载(GitHub 克隆安装的会同时删除克隆目录),并用 检查更新 保持最新(npm 包对比 registry,本地 git 克隆通过 git pull 更新)。

发现并安装新插件

安装意味着运行第三方代码。请只安装你信任的仓库,并先看仓库自己的 README 安装说明——打了 dsh-plugin 标签的仓库也可能是技能、MCP 服务器,或需要自定义安装方式。

最近更新

  • 2026-08 — v0.2.19:附加功能区新增 dsh-pocket——把 DeepSeek Harness 装进口袋:电脑上跑 dsh web,手机扫码即同步访问(局域网 + 公网,实时同屏);可在附加功能区一键安装/停用/卸载,并随主插件一起检查更新。
  • 2026-08 — v0.2.18:附加功能区新增两个插件 — odai-dsh-plugin(对 profile 中每个 Agent 预设生效的 Odai 治理与责任路由)与 dsh-cost-meter(会话成本与 token 统计、预算、余额、Coding Plan 配额、90+ 模型价格目录);可在附加功能区一键安装/停用/卸载,并随主插件一起检查更新。
  • 2026-08 — v0.2.17:带 bundle 补丁插件的 npm 安装增加安装路径混用警告 — DSH CLI 的 bundle reconcile(dsh plugin add/list/update)会把每个声明了 dsh.bundle.patch 的依赖追加进 dsh.profile.bundles,与手动注册行重复,导致 dsh web 启动崩溃(duplicate loader entry id,见 Discussion #2889);README 同步补充该指引。
  • 2026-08 — v0.2.16:附加功能安装增加缺依赖提醒 — npm 安装器对照 profile 检查所下载插件的运行时依赖,缺失时在安装结果消息中追加提醒(安装仍照常完成;重启后若加载失败,在 profile 目录执行 pnpm install 补齐)。
  • 2026-08 — v0.2.15:附加功能区新增 dsh-vision-toolkit——更强大的视觉工具包(直接粘贴即可进行图片理解、UI 还原、长截图分析等视觉任务);可在附加功能区一键安装/停用/卸载,并随主插件一起检查更新。
  • 2026-08 — v0.2.14:修复:附加功能/已安装徽标感知 bundle 层 — 通过官方 dsh plugin add(bundle 方式)安装的功能或插件现在会被识别为已安装(其注册行在 bundle 自己的 patch 里,不在 profile patch),附加功能区块不再提供会导致 dsh web 崩溃的重复安装;installNpmPlugin 拒绝已被 bundle 层注册的包;bundle 安装的附加功能通过 dsh plugin remove 卸载(UI 有引导),不再误删 profile 行。
  • 2026-08 — v0.2.13:修复(issue #2)hostPatchPath() 不再自动探测 profiles 目录(扫描可能先命中 headless,导致 MCP 列表读写错位的组合配置);扩展管理固定绑定 web profile,显式指定 profile 仍受支持。
  • 2026-08 — v0.2.12:审查修复 — MCP 导入发现遵循 Claude/Codex 优先级(项目 .mcp.json > 项目 .claude.json > 用户配置;Codex 项目 > 全局),不再反向覆盖;MCP 列表展示 Home 层行($DSH_HOME/cordis.patch.yml,只读,带徽标);组合配置与状态写入改为原子写(临时文件+rename,带锁重试),崩溃不会损坏 cordis.patch.yml;克隆安装拒绝消息区分"无 package.json"与"缺少构建产物"(git 安装取源码非产物);README 注明 npm 安装的插件由 Extension Hub 管理,后续 dsh plugin/pnpm 不会丢失。
  • 2026-08 — v0.2.11:文档 —— 快速开始安装命令更新到当前版本(此前发布的包内 README 仍带着 v0.2.8 的命令)。
  • 2026-08 — v0.2.10:Windows GitHub 克隆安装崩溃完整修复 — 克隆插件行注册 file:// URL 并指向克隆目录的入口文件(0.2.9 指向克隆目录,Node ESM 仍以 ERR_UNSUPPORTED_DIR_IMPORT 拒绝并导致 dsh web 崩溃);克隆安装同时拒绝带 npm 运行时依赖的包(克隆无依赖安装步骤),并对依赖 bundle 补丁(克隆无法应用)的包给出警告。若需手动修复损坏行,编辑 cordis.patch.yml,把该行 name 指向入口文件,如 name: file:///C:/Users/you/.dsh/extension-hub/plugins/foo/lib/index.js
  • 2026-08 — v0.2.9:Windows GitHub 克隆安装修复(第一次)— 克隆行从原始盘符路径改为 file:// 模块名;已被 v0.2.10 取代(入口文件 URL)。
  • 2026-08 — v0.2.8:一键安装 —— 包新增组合补丁(cordis.patch.yml),dsh plugin --profile web add dsh-extension-hub 一条命令自动把插件行接入 profile;快速开始不再需要手动编辑 cordis.patch.yml
  • 2026-08 — v0.2.7:附加功能区新增 dsh-recall——对话历史回忆(字面/模糊/语义三层检索全部历史会话,完全本地离线);可在附加功能区一键安装/停用/卸载,并随主插件一起检查更新。
  • 2026-08 — v0.2.6:插件管理页新增附加功能管理区——不离开页面即可安装/停用/启用/卸载附属功能(dsh-myrules);头部检查更新改为主插件与已装附加功能一起检查、一键全部更新;附加功能区支持折叠;功能 i18n 键与 id 对齐;两个 README 新增「集成与合作」邀请段落。
  • 2026-08 — v0.2.5:新增姊妹插件 dsh-myrulespackages/dsh-myrules)——设置页新增个性化页,编辑此主机全局指令($DSH_HOME/AGENTS.md,注入所有会话,新会话立即生效);插件管理器的主操作按钮改为主题反转配色,保存按钮变扁,新增百分比预算进度条;移除滚动备份机制。
  • 2026-08 — v0.2.4:插件市场 + 精选目录 + npm 安装路径 — 插件市场页新增精选目录视图(默认,awesome-dsh-plugin 社区目录,11 个分类、双语描述、精选/最热/最新排序、24 小时离线缓存),与发现更多(GitHub 搜索)并列;带 npm 映射的插件改为从 npm registry 以 tarball 安装(无需 pnpm,带防抢注的仓库校验),GitHub 克隆作为回退;设置页页签更名为插件市场;修复精选目录加载卡死(client 侧方法注册);带引号的(@scope)行 id 在已安装判定与卸载中正确匹配;README 大改并更换截图。
  • 2026-08 — v0.2.3:修复:补丁持久化语义——0.2.2 的平铺行写入对 patch 文件是错的(裸顶层 - id: 行会被当作 "override" 而静默失效;行必须包在 - insert: 里)。所有 patch 写入回退到托管 insert 块区域;profile patch 已重建为正确格式,重启后插件加载恢复正常。
  • 2026-08 — v0.2.2:统一平铺行 patch 持久化(CLI 与 UI 写入同一 loader 兼容格式);MCP 列表读取合并行(region 与平铺格式);@ 前缀名的标量引号修复;卸载会删除发现页安装的克隆目录。
  • 2026-08 — v0.2.1:发现插件分页("加载更多",每页 30)、插件详情改为弹窗、真实的"已安装"标记(按配置行校验,而非仅看克隆目录)、安装写入自检、横向溢出修复。
  • 2026-08 — v0.2.0:完整插件管理器——官方/第三方分组(按厂商 scope)、组合加载器核心保护、带确认的启用/停用/卸载、逐个插件检查与更新(npm registry + 本地 git 克隆,支持全部更新)、以及基于 GitHub 的发现插件页(一键克隆安装 dsh-plugin 仓库)。
  • 2026-08 — v0.1.4:将 v0.1.3 更新说明同步进发布包(registry 同步发布)。
  • 2026-08 — v0.1.3:新增严格 Typert 描述符(./typert),修复协议包重复加载布局下 /api/extensionHub/* 404 的问题;一键更新直接下载 npm tarball(不依赖 pnpm)。
  • 2026-08 — 抬头新增"检查更新"按钮:对比本地版本与 npm registry 最新版。
  • 2026-08 — 分区更名为 扩展管理 并加抬头("管理插件、技能和 MCP");导入从独立页签并入技能 / MCP 服务器页。
  • 2026-08 — 完整中英双语(83 个文案键)、项目级文件夹选择、内置技能只读层。
  • 首个版本 — CLI + 持久化设置页 UI + 零依赖持久层。

工作原理

  • 宿主侧 lib/host.js 是一个 TypertRemoteService 网关(wire 命名空间 extensionHub);浏览器侧挂载自己的 Remote contribution,通过挂载后的命名空间服务调用。
  • 浏览器包在 package.json 里声明 dsh.client.platform: "web",DSH 的 client-modules 系统在启动时扫描并注入 boot manifest,通过 /plugins/dsh-extension-hub/client.js 路由动态服务 —— 无需重建 web bundle
  • 所有真实读写都在宿主进程内完成(不受会话文件沙箱限制),与 CLI 共用同一套 lib/ 代码。

数据来源(检索范围)

| 来源 | Skills | MCP | |---|---|---| | Claude | <repo>/.claude/skills/*/SKILL.md~/.claude/skills/*/SKILL.md | <repo>/.mcp.json~/.claude.json~/.claude/.claude.json | | Codex | <repo>/.codex/skills/*/SKILL.md~/.codex/skills/*/SKILL.md | ~/.codex/config.toml<repo>/.codex/config.toml |

转换时:Claude/Codex 的 stdio 服务器 → DSH transport: stdiocommand/args/env);http/ssetransport: streamable-httpurl/headers)。Skill 的 name/description/whenToUse 保留,license/allowed-tools 折入 metadata

安装位置(DSH 持久化落点)

Skills

  • 项目级 --scope project<目标文件夹>/.dsh/skills/<name>/SKILL.md
  • 全局 --scope global~/.dsh/skills/<name>/SKILL.md

启用/禁用通过改写 SKILL.md frontmatter 的 disable-model-invocation / user-invocable 实现;删除即移除文件。

MCP

  • 全局 → 在宿主补丁 ~/.dsh/profiles/<profile>/cordis.patch.yml 的受管区域(# >>> dsh-extension-hub# <<< dsh-extension-hub)追加/改写 - insert: {id, name: '@deepseek-ai/dsh-mcp-client', config} 行。
  • 项目级 → 写清单 <目标文件夹>/.dsh/mcp-servers.yaml,并生成专用预设 ~/.dsh/.agent-presets/<slug>-mcp/agent.cordis.yml(以 shipped standard 为基底)。在会话预设选择器里选该预设即可生效。

支持平台

DSH 本身支持 Windows、macOS 与 Linux;本插件无平台特殊性 —— CLI 在任意 Node.js 环境可用,设置页 UI 跟随 DSH Web 宿主。

已知限制

  • YAML/TOML 解析器是自带的子集实现,覆盖 DSH composition 与 Codex config.toml 的实际形态;遇到未覆盖写法会跳过或报错,不会静默破坏文件。
  • Skill 发现与 DSH dsh-skill-filesystem 一致:只识别 <root>/<name>/SKILL.md<root>/<name>.mdname 必须 kebab-case。
  • 项目级 MCP 依赖"生成预设 + 手动选预设"机制;本工具不会替你在会话间自动切换预设。
  • 项目级 MCP 的启用/禁用开关作用于生成的预设(即"这个项目选了这个预设时是否加载该服务器"),清单文件始终保留全部记录。
  • 全局 MCP 的删除/编辑只影响本管理器添加的行(受管区域内);手写进 patch 的行不受影响。
  • 精选目录是社区注册表的快照:加载时刷新并带 24 小时本地缓存,最多可能滞后一天。需要在安装时执行构建步骤的插件会回退为 GitHub 克隆安装,不走 npm tarball 路径。

集成与合作

DSH 扩展中心可以集成大部分插件,方便用户在一个地方管理、更新所有相关功能。如果您有意向,也非常欢迎将您的插件一起集成进来,共同完善 DSH 的插件生态——集成后,您的插件会出现在插件管理页的「附加功能」区,用户可以直接安装、停用、卸载,并随主插件一起检查更新。

期待您的加入,感谢您对 DSH 社区的开源贡献!

有合适的插件、功能或建议,欢迎提交 Issue 或直接联系: 提交 Issue · Relistencode [email protected]

致谢

本项目的完善建立在 DSH 社区的开源成果之上,特此感谢:

  • awesome-dsh-plugin —— 社区精选插件注册表,精选目录视图的数据源(每日刷新的 plugins.json、双语描述、npm 映射)。
  • dsh-market —— DSH 内置插件市场,示范了 npm 优先安装与 registry-对-仓库的防抢注校验。
  • dsh-plugins-store —— 静态插件市场,其目录/验证思路启发了发现页数据源设计。
  • dshfind —— DSH 学习站与插件浏览器,其评分/分级展示启发了质量信号的想法。

许可证

MIT