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-hotplug-engine

v0.2.0

Published

DSH hot-plug execution engine: a reliable install/enable/disable/rollback/audit service for plugin marketplaces, agents, and host plugins (execution layer, not a marketplace).

Downloads

580

Readme

dsh-hotplug-engine

English

给 DSH 做插件管理的服务插件。市场、agent、其他插件都能调用:安装、卸载、启停、回滚、审计,一条链路。

做什么

DSH 用 cordis.patch.yml 和 loader 管理插件。这个插件把这套操作包成服务:改 patch、调 pnpm、装后健康确认、失败自动回滚、全程审计。只动文件和命令,不碰内核。

不做什么

  • 不是市场:没有目录、搜索、榜单、推荐。spec(装什么、从哪装)由调用方给,引擎不猜。
  • 不改官方机制:HMR、loader、patch 语义都是官方的,只消费,不重写。
  • 不另存状态:以官方组合树为唯一真源,引擎只投影和差分。
  • 不带安装界面:UI 只有最小管理面板(查看、启停、回滚、审计),没有 spec 输入。

接入方式

| 场景 | 入口 | |---|---| | 市场 / 插件管理界面 | 注入 hotplugEngine 服务,或调 REST | | agent 会话 | hotplug_* 工具 | | 宿主插件 | 注入 hotplugEngine |

安装

pnpm --dir <profile-dir> add dsh-hotplug-engine
# 或 dsh plugin add dsh-hotplug-engine

bundle 包:装/卸后重启 profile;新客户端面板刷新页面加载。

启停

  • 引擎改 profile 的 cordis.patch.yml,loader 反射后即时生效(mode:'hot');未反射则提示重启。
  • patch 行(用户写的或引擎写的)都能启停,流式/块式 YAML 都能改。
  • DSH 默认禁用的行(在 bundle 层,没有引擎可改的 patch 行)改不了:UI 显示 🔒「默认禁用」,点击只浮提示,API 返回 HOTPLUG.PATCH.DEFAULT_DISABLED

DSH 版本

  • 目标 0.1.1-rc.2(current),带版本支持矩阵(supportReport())。
  • dshPath 显式配置才走官方 dsh plugin CLI,否则 pnpm 直装。
  • 0.1.0-rc.6 为 legacy,不再作为验收目标。

上手

  • 宿主注入inject: ['hotplugEngine'],调 ctx.hotplugEngineinstall / rollback / enable 等方法,Promise resolve 即操作完成。
  • REST:前缀 /api/dsh-hotplug,同源。写:install / uninstall / enable / disable / rollback;读:snapshot / status / audit / operations / events(SSE)。
  • 工具hotplug_status / hotplug_install / hotplug_uninstall / hotplug_toggle / hotplug_rollback / hotplug_audit,写工具走审批。

完整契约见 docs/01-contract.md

Changelog

0.2.0

  • 补 DSH 0.1.1-rc.2 支持。
  • DshProfileAdapter:显式 dshPath 才走官方 dsh plugin,否则 pnpm 回退。
  • patch 写层结构化,流式/块式行都能启停;webServer 就绪后自动挂 REST。
  • 新增 DSH 默认禁用门禁:UI 🔒 徽标 + 内联提示,API 返回 HOTPLUG.PATCH.DEFAULT_DISABLED
  • 客户端面板卡片化(紧凑 + 折叠),深浅色自适应。

License

MIT