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-do

v0.2.6

Published

Local profile, plugin, and settings manager for DeepSeek Harness

Readme

dsh-do

dsh-do 是一个只在本机运行的 DeepSeek Harness 管理工作台,面向不希望直接编辑 YAML、JSON 和 profile 目录的用户。

首版与交互增强功能包括:

  • 浏览、搜索、创建、克隆和归档本地 Profiles
  • 安装、更新和移除 profile 插件,并在操作抽屉中实时查看完整 stdout/stderr 日志与退出码
  • 查看和排序 Bundle 层,直观展示层叠优先级并启停已安装的外部 Bundle
  • 用结构化控件编辑全局 settings.yaml,向导只写真实命名空间(llm-pi-aiagent-default-modelpermissionagent-presets
  • 校验并编辑 profile 的 cordis.patch.yml,提供模板片段快捷插入与未保存修改一键还原
  • 浏览、从本地目录导入、复制和归档 $DSH_HOME/.agent-presets(不走 dsh plugin add
  • 通过可扩展目录 provider 安装包,对接本地插件市场服务(dsh-market),支持分类筛选、详情预览与拓扑依赖检查;市场不可达时明确降级提示
  • 全局快捷指令面板(Ctrl + K / ⌘K)与骨架屏(Skeleton)加载体验

运行要求

  • Node.js >= 22.19
  • pnpm 10.x
  • 已安装 @deepseek-ai/dsh(已对照 0.1.0-rc.7),且 dsh --version 可用。启动时若检测不到 dsh,交互终端会询问是否执行 npm i -g @deepseek-ai/dsh;非交互环境只打印提示并继续启动

安装(npm 全局包)

npm install -g dsh-do

启动:

dsh-do

更新到最新 npm 版本:

dsh-do update

默认监听 http://127.0.0.1:4173 并自动打开浏览器。可用环境变量:DSH_DO_PORT(端口)、DSH_DO_OPEN=0(不自动开浏览器)、DSH_MARKET_URL(插件市场服务地址,默认 https://dsh.do)。

从源码启动

pnpm install
pnpm build
pnpm start

若端口已占用:

$env:DSH_DO_PORT = "4174"
pnpm start

不自动打开浏览器:

$env:DSH_DO_OPEN = "0"
pnpm start

开发

pnpm dev

开发模式同时启动 API (4173) 和 Vite (5173);浏览器访问 http://127.0.0.1:5173。完整检查:

pnpm check

发布到 npm 时会自动执行 prepackpnpm run build)重建 dist/files 白名单只发布 dist/

数据与操作边界

dsh-do 只操作 DSH_HOME。默认值遵循 dsh:

  • Windows:%USERPROFILE%/.dsh
  • macOS/Linux:~/.dsh

可用环境变量指向隔离目录:

$env:DSH_HOME = "D:\tmp\my-dsh-home"
pnpm start

插件安装、更新和移除均委托给 dsh plugin --profile <name> ...,dsh-do 不直接模拟 pnpm 事务。每个 profile 的插件操作、层变更、Patch 保存和归档共享同一变更租约;插件命令完成后会重新扫描磁盘状态。

归档 Profile 不会直接删除目录,而是移动到:

$DSH_HOME/.dsh-do/archive/<profile>-<timestamp>

设置和 Patch 保存都使用修订号。如果文件被其他程序改动,界面会拒绝覆盖并要求重新加载。

“在 Bundle 层中”表示该 Bundle 写在 profile 的加载层栈里,不代表某个 dsh 会话当前正在运行它。

项目结构

server/                   本机 Fastify API、文件仓储、dsh 进程适配
src/                      React 管理界面
server/catalog.ts         插件目录 provider 接口与注册表
docs/catalog-providers.md 在线市场接入约定

API 使用 /api/v1 前缀。生产服务由同一回环地址提供静态页面和 API,不需要独立部署。