DSH Marketplace
EN

dsh-annotation

omdsh-dev/dsh-annotation

选中文字→批注→随消息发送,回复按批注逐条对照。

安装

把 dsh-annotation 装进 DeepSeek Harness

npm 方式

直接拉已发布的 tarball,不用克隆整个仓库,也不需要额外配置。如果你用的是别的 profile,把 `web` 换成对应的名字。

GitHub 方式 · npm 包

从 GitHub 装会执行项目自己的构建脚本,而 pnpm 默认拦着不让跑——先跑一次这条命令,pnpm 会打印出要加到 ~/.dsh/profiles/web/pnpm-workspace.yaml 里 `allowBuilds` 下面的那个 key。

安装前须知

装 dsh-annotation 之前,先看这几条

  • 源码在这里: omdsh-dev/dsh-annotation——已进入社区精选库,DSH 自带的插件市场就是从这儿装的。
  • 开源协议:MIT。
  • 被收录在这里不代表通过了安全审计。插件是带着你 agent 的权限在跑。

dsh-annotation 是做什么的

Highlighted text fragments merge with numbered notes and separate into linked response tokens.

dsh-annotation 是一个 DeepSeek Harness 插件,用于在 DSH Web 的 assistant 回复中选取段落并添加批注,再把这些批注随下一条消息发送给模型。选中文本后点击 “Annotate”,批注内容可以为空;批注会跨消息、跨轮次累计,并在输入框旁显示 Annotations ×N。发送时,浏览器将编号、原文和批注组成消息块,再接上输入框中的问题,同时要求模型按 Annotation 1: …Annotation 2: … 逐条回答。回复中的编号会变成可悬停的 chip,显示对应原文和批注。

它是纯浏览器端 bundle:client.js 通过 client-modules 注入,使用 MutationObserver 处理用户气泡和流式回复,并把批注数据保存到消息 tag 中。发送前,批注块会从自己的消息气泡 DOM 中移除,只留下问题和 chip;刷新后也会尝试修复历史消息。插件不修改 DSH 核心,cordis.patch.yml 只写入自身 id,Node 端为空实现。

它适合需要围绕多处原文提问、并希望模型逐项回应的 DSH Web 会话。若使用的不是 Web 界面,或不希望插件改动浏览器 DOM、注入回复格式提示,则不应使用。README 还记录了与 dsh-focus-chat focus conversation view 的兼容性。

dsh-annotation 的文档

行为说明

插件的逻辑全部在浏览器端 client.js 中,属于官方 bundle,不需要构建步骤。package.json 声明 dsh.bundledsh.client,由 client-modules 注入;Node 端为空实现。选中文本、输入批注后,插件会在提交前通过 setDraft 生成消息块,不直接改写 composer textarea。批注可为空,并可跨消息、跨轮次累计。

消息处理

模型收到编号、原文、批注和问题,并被要求返回 Annotation 1: …Annotation N: …。用户消息气泡在浏览器绘制前移除批注块,只保留问题和 Annotations ×N chip。流式状态结束、data-streaming 被移除后,回复中的 Annotation N: 会变成可悬停 chip。相关内容保存在最近一条带 annotation tag 的用户消息的 tag.__annotationItems 中,刷新后重建。

配置与命令

cordis.patch.yml 只插入自身 id 一次,profile patch 保持 []。检查配置和客户端可用:

dsh --profile web --dump-config | rg "id: dsh-annotation"
curl -s -o /dev/null -w '%{http_code}\n' "http://127.0.0.1:3080/plugins/@omdsh-dev/dsh-annotation/client.js"

前一个命令应只显示一行,后一个应返回 200。重启 web service 的 README 命令为 launchctl kickstart -k "gui/$(id -u)/com.dsh.web"

环境要求

插件面向 DSH Web,并依赖浏览器端 client-modules 路径。Enter 处理包含 isComposing 和 keyCode 229 判断。README 说明它兼容 dsh-focus-chat 的 focus conversation view;该视图中的 assistant 行使用 [data-focus-flow]*_assistant CSS-Modules class。

根据项目自己的文档整理,会跟着上游更新。两边对不上时以源码仓库为准—— 去 GitHub 看原始 README

同一分类

dsh-annotation 的同类插件

dsh-web-ui-all

zhu1090093659

3.7k

DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

没有一行式安装命令——这个插件在一个大仓库的子目录里,也没发 npm 包。

GitHub 源码TypeScript今天
1.6k

侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。

npm 包TypeScript今天

dsh-TUI

ccch1mneyyy

1.5k

Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

npm 包TypeScript今天

dsh-at-file

omdsh-dev

261

Codex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。

npm 包JavaScript今天
190

DeepSeek Harness 的终端 UI(TUI)。

npm 包TypeScript今天
158

对话内生成式 UI:模型把交互式 HTML 卡片直接画进会话流,带流式预览与沙箱渲染。

GitHub 源码TypeScript昨天