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-collapsible-models

v0.1.1

Published

DSH client plugin: collapsible model-provider groups in the composer model picker — click a provider row to fold or unfold its models

Downloads

344

Readme

dsh-collapsible-models

一个 DeepSeek Harness 客户端插件:把输入框模型选择器里的 模型提供商分组做成可折叠

在模型下拉菜单中点击任意一行提供商名称,即可折叠 / 展开它下面的全部模型—— 提供商名称旁的三角形会旋转以指示当前状态。配置了很多提供商时,可以让模型列表更短、更聚焦。

English

工作原理

  • 输入框的模型选择器是单占用 slot conversation.input.model,默认由官方 client-ui-model-selection 插件占用(priority 0)。
  • 本插件以 priority: -1 注册一个 shadow 条目。slot 条目按 priority 升序排列, 最低者渲染,因此带折叠能力的版本接管了这个座位,而官方 UI 仍保留在底层。
  • 数据层完全不改动。每个会话的模型目录(目录、当前选择、load/select 动词)来自官方的 modelDirectories cordis 服务,因此模型选择、推理等级、加载态、失败与提示的 行为和原生选择器完全一致。
  • 若宿主机没有官方模型选择器(缺少 client-ui-model-selection),插件照常加载但 不注册任何东西——默认 UI 原样保留。

安装

dsh plugin add dsh-collapsible-models

或在 DSH Desktop 中通过 Community Market 安装(本包带有受管安装器所校验的 bundle patch)。安装后重启 harness;新的模型座位在下一次客户端 generation 生效。

卸载:

dsh plugin remove dsh-collapsible-models

行为说明

  • 所有提供商分组默认 展开(与原生 UI 一致)。折叠状态只在本次下拉打开期间 有效,刻意不做持久化。
  • aria-expanded 状态与每个分组的可访问标签跟随当前语言(zh/en)。
  • 模型列表的键盘导航保持不变;分组标题是真正的 <button>,可用键盘聚焦与切换。

开发

插件以手写 lazy-CJS 客户端 bundle 协议(window.__ModuleLoader__.load)编写—— 无需构建步骤。两个半部:

  • dsh/index.js — 宿主机半部(空实现;通过 cordis.patch.yml 让包出现在宿主 Cordis 图中)。
  • dsh/client.js — 浏览器半部(带折叠的 ModelSelect shadow)。

不发布、本地试用的方式:

dsh plugin add <指向本仓库的路径或 URL>

许可

MIT