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-custom-workspace

v0.1.2

Published

DSH web plugin: per-workspace background, chat font size, line height, block spacing, and Retina font rendering.

Readme

dsh-custom-workspace

English | 中文

这是一个 DeepSeek Harness Web 外部插件,为每个工作区分别保存背景、聊天字体大小、行间距、Markdown 块间距和字体渲染偏好。

功能

  • 设置主工作区表面的背景颜色或图片 URL。
  • 分别调整 Markdown 正文字号和行间距。
  • 调整 Markdown 段落、列表、标题、引用和代码块的块间距。
  • 开关适用于 Retina 显示屏的灰度抗锯齿渲染。
  • 按工作区持久化到 $DSH_HOME/settings.yaml

当前外观跟随当前会话所属的工作区;没有当前会话时使用最近选择的工作区。未保存覆盖值的工作区继承当前 DSH 主题。

效果示例

主题默认值(字号和间距继承 DSH):

默认工作区外观

紧凑阅读:13px 字号、20px 行间距、4px 块间距、#eef4ff 背景:

使用蓝色背景的紧凑工作区外观

宽松阅读:20px 字号、38px 行间距、28px 块间距、#fff3e8 背景:

使用暖色背景的宽松工作区外观

要求

  • DeepSeek Harness 0.1.0-rc.6
  • Node.js ^22.19.0>=24.0.0
  • 通过 loopback 地址访问 DSH Web;设置 RPC 会拒绝非 loopback 浏览器。

安装

把已发布的包安装到 Web profile,然后重启 DSH:

dsh plugin --profile web add dsh-custom-workspace
dsh web

打开“设置 → 通用设置 → Workspace 外观”配置当前工作区。每项修改会立即保存。

卸载插件:

dsh plugin --profile web remove dsh-custom-workspace

开发

pnpm install
pnpm run verify
dsh plugin --profile web add link:$PWD
pnpm run watch

修改 src/index.ts 后需要重启 DSH。src/client/ 下的浏览器代码由 watcher 重建,并通过 DSH client HMR 加载。

安装 Playwright Chromium 后,可以对正在运行的 Web profile 执行浏览器冒烟测试:

pnpm exec playwright install chromium
pnpm run verify:browser -- http://127.0.0.1:3081

持久化与安全

Host half 拥有 custom-workspace settings namespace。DSH 的通用 settings API 不暴露第三方 namespace,因此插件注册独立的 /custom-workspace Connection RPC channel。该 channel 只接受 loopback 请求,也不会暴露其他 settings namespace。

Browser half 会验证每个响应,再把值交给 presenter。写入失败时会重新加载 Host 值;断开连接或通过非 loopback 地址访问时,设置 scope 会标记为不可用。

Model Experience

无。工作区外观只影响浏览器显示,不会进入模型请求或会话日志。

已知限制

  • 即使 DSH Web server 信任某个局域网 hostname,通过该 hostname 访问的浏览器也不能读写本插件设置。
  • 背景图片直接使用配置的 URL,是否加载成功取决于浏览器网络和内容安全策略。
  • 当前版本面向 DSH 0.1.0-rc.6;DSH 预发布 API 变化时不提供兼容 shim。

许可证

MIT