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-select-quote

v0.2.0

Published

DeepSeek Harness web plugin: annotate text selected in the conversation — the selection rides along with your next message, is marked in the source text, and the model points back at it.

Readme

dsh-select-quote

DeepSeek Harness 的 Web 客户端插件:在对话里划词加批注——把选中的原文连同你的评论一起交给模型,并让它在回答里明确指出说的是哪一段。

  • 划词工具条:选中对话区任意文本,浮出「复制 / 添加到任务」;拖拽结束才出现,不挡操作
  • 批注卡片:添加后输入框内出现一张摘要卡片(可多条),草稿里不会出现任何协议文本
  • 正文标记:被划中的文字在原消息里留下虚线下划线 + 序号角标;点卡片里的条目会滚回那段文字
  • 模型回指:模型回答时以内联指令标出它处理的每一条批注,插件把这些指令渲染成可点击的 chip
  • 对话记录:已发送消息里的批注渲染为卡片,用户气泡只剩你打的问题

screenshot

示意图(按产品真实设计 token 渲染,源文件 assets/screenshot-1.mock.html)


兼容性

| 项 | 值 | |---|---| | dsh | 0.1.7-rc.1(2026-09-24 实测:划词、批注卡片、正文标记、对话记录渲染全通) | | profile | web(dsh web) | | 运行时 | 只有浏览器半有业务;Node 半仅用于让包被 Loader 挂载 |

实现依赖若干产品内部约定(槽位名、composer DOM、深色主题属性等),升级 dsh 后请先跑 npm run check,再照 docs/internals.md 末尾的复核清单人工回归一遍。

安装

方式一:从 npm 安装(bundle)

dsh plugin --profile web add dsh-select-quote
dsh --profile web

⚠️ npm 上目前只有 0.1.0,那是旧版「引用块」行为,不含批注卡片、正文标记与模型回指。要用现在这套,请先用方式二,或从仓库目录安装:dsh plugin --profile web add <本仓库绝对路径>。

方式二:本地 checkout 加载(--patch)

git clone <repo> && cd dsh-select-quote
npm install && npm run build
dsh web --patch "$PWD/dev.patch.yml"

打开 http://127.0.0.1:3080,在对话消息里划词即可看到工具条。dev.patch.yml 里的插件路径按本机写死(必须是绝对路径),换机器或换目录时改那一行;该文件不随 npm 包发布。

用法

  1. 在对话区选中一段文本 → 点「添加到任务」
  2. 弹出评论框,写一句想说的话(可留空,只划不评)→ ⌘/Ctrl + Enter 确认
  3. 输入框上方出现批注卡片,悬停可展开列表:逐条编辑、删除,或一键清空;点条目会跳到正文里对应的那段文字
  4. 正常打字、按 Enter 发送。批注随消息一起交给模型,卡片随之消失
  5. 模型回答里指向某条批注的位置,会显示成可点的 chip

已知限制

  • 待发批注只在内存里:刷新页面或切换会话后会丢,卡片不持久化(已发送消息里的批注不受影响)。
  • 占用了用户气泡的渲染:本插件以最低优先级替换内置 user 节点。若其它插件也替换同一个键(例如 dsh-easyrewrite 用 -1),会被本插件屏蔽。
  • 卡片宽度有限:输入框内每条摘要最宽约为输入框的 1/4,超长标题走省略号。
  • 划词只在对话区生效,不介入编辑器、终端等面板。

开发

npm run check   # typecheck + build + verify,提交前跑这个

改 CSS 后要刷新页面(样式只注入一次)。协议格式、槽位注册、以及几处非显而易见的坑(U+200B 草稿标记、portal 到 body 的浮层、--dsq-quote-pad 高度补偿)记录在 docs/internals.md。

License

MIT © 2026 agan