🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

选中批注 omdsh-dev/dsh-annotation

Cordisv1.4.11
omdsh-dev20 天前有提交已提供中文文档扫描:未发现敏感能力ui

DSH Web 选中批注插件:选文字→批注→回车随消息发送;气泡隐藏批注块零闪烁;回复按 Annotation N…

61.1/100
综合分
141
GitHub 星标
949
npm 周下载
—/5
用户评分

数据截至 2026/10/14 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @changfenhuang/dsh-annotation
npm 源 · @changfenhuang/dsh-annotation 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · ui
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 20 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包@changfenhuang/dsh-annotation @ 1.4.11
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/29 15:38:23

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 选中文字添加批注
  • 回车随消息发送
  • 气泡隐藏批注块
展开完整介绍(87 字)↓

DSH Web 选中批注插件:选文字→批注→回车随消息发送;气泡隐藏批注块(零闪烁);回复按 Annotation N 逐条对照(可悬浮芯片)。官方 bundle,零核心改动

v1.4.112026-10-01
稳定版 1.4.11,已在最新 DSH 0.2.0-rc.2 通过真实 Web 安装与交互验证。 · 侧边栏纯文本、Markdown、代码文件批注从 preview 进入正式版,引用携带文件路径并支持恢复 · 修复待发送批注胶囊遮挡排队消息的立即发送按钮(#60)、浮层透明影响阅读(#69)、滚动高亮与编号遮挡会话页头(#62) · 修复输入法合成结束后保护窗不同步导致回车只发送问题的一个确认路径(#61),保留 Queue/Steer 行为 · 改进会话识别与批注恢复、回复引用芯片和悬停交互,修复装饰观察器可能造成的客户端卡死 · 增加俄语文案、兼容性回退及完整浏览器→RPC→模型输入→实际会话日志回归 安装/更新:dsh plugin add @changfenhuang/dsh-annotation@1.4.11 验证:92 项单元/结构检查,以及旧、新宿主的30个完整发送链路案例。输入法回归使用 Chromium 合成事件;原生系统候选词确认尚未覆盖,不将它视为原报告所有场景均已修复。 完整变更见 CHANGELOG.md。正式 npm 渠道为 latest;现有 preview 渠道保留。
v1.4.11-preview.12026-09-15预发布
适配 DSH 0.1.6-alpha.1 的 preview 预发布版本。 · 包含侧边栏文本、Markdown 和代码文件批注,保留文件来源和刷新恢复。 · 新 alpha 上真实安装包验证通过:选区、保存、刷新、文件定位和重新编辑。 · 21 项本地测试、浏览器交互测试及两组宿主 CI 通过。 安装:dsh plugin --profile web add @changfenhuang/dsh-annotation@preview
v1.4.102026-09-11
适配并验证 DSH 0.1.5-rc.2,保留 0.1.2-rc.1 的自动检查。 本版沿用 1.4.9 的批注行为:编辑窗口可拖动,高亮避开输入区域,纯批注发送不附加空的「提问:」。CI 与正式发布流程均使用实际安装包验证宿主加载、选区、保存和刷新恢复。 验证:19 项测试、类型检查、构建和安装包检查通过;本机浏览器验证编辑器拖动、视口边界、缩放与高亮裁剪通过。Windows Desktop 原报告环境仍待复测,相关 Issue 保持开放。 安装或更新:dsh plugin --profile web add @changfenhuang/dsh-annotation@1.4.10,随后重启 DSH 并刷新页面。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。

README

由 DeepSeek 最新模型翻译生成
dsh-annotation English · 简体中文 DSH Web 选中批注插件:选文字 → 批注 → 回车随消息发给模型,回复按批注编号逐条对照 🌐 在线产品站:在 DSH 中体验 dsh-annotation 选中助手回复里的任意文字即可批注(批注内容可留空 = 仅标记原文),跨消息、跨回合连续收集;底部输入框旁出现「批注 ×N」标签(悬浮可见全部内容、可删单条);直接回车,批注块随输入框里的问题一起发给模型。你的消息气泡里不会出现批注块文本——只显示问题和「批注 ×N」标签(hover 看内容,绘制前隐藏、零闪烁);模型回复按「Annotation 1:…」逐条回应,回复里的每个 Annotation 标签都可悬浮查看对应批注的原文与内容。 形态:官方 bundle 插件(dsh.bundle + package.json dsh.client 声明,经 client-modules 注入浏览器端,Node half 为空实现)。零核心改动——不改 DSH 本体任何文件,cordis.patch.yml 仅一次 insert 自身 id,profile patch 保持 []。 能力 侧边栏文件批注(DSH 0.1.6-alpha.1):在工作区文件预览中选中文本、Markdown 或代码正文,即可沿用同一套批注、保存和回车发送流程。
展开完整文档(README 剩余 1 节)
dsh-annotation

English · 简体中文

DSH Web 选中批注插件:选文字 → 批注 → 回车随消息发给模型,回复按批注编号逐条对照

🌐 在线产品站:在 DSH 中体验 dsh-annotation

选中助手回复里的任意文字即可批注(批注内容可留空 = 仅标记原文),跨消息、跨回合连续收集;底部输入框旁出现「批注 ×N」标签(悬浮可见全部内容、可删单条);直接回车,批注块随输入框里的问题一起发给模型。你的消息气泡里不会出现批注块文本——只显示问题和「批注 ×N」标签(hover 看内容,绘制前隐藏、零闪烁);模型回复按「Annotation 1:…」逐条回应,回复里的每个 Annotation 标签都可悬浮查看对应批注的原文与内容。

形态:官方 bundle 插件(dsh.bundle + package.json dsh.client 声明,经 client-modules 注入浏览器端,Node half 为空实现)。零核心改动——不改 DSH 本体任何文件,cordis.patch.yml 仅一次 insert 自身 id,profile patch 保持 []。

能力

侧边栏文件批注(DSH 0.1.6-alpha.1):在工作区文件预览中选中文本、Markdown 或代码正文,即可沿用同一套批注、保存和回车发送流程。编辑器和发给模型的引用包含文件路径;刷新并重新打开原文件后恢复标记,同文不同文件可分别批注。当前不包含 PDF、图片或 iframe 内 HTML。

| 功能 | 说明 |
| 选中即批注 | 选中助手文字 → 工具条「批注」→ 直接写批注(可留空),点选外处或 Esc 收起 |
| 编号脚标 + 高亮 | 原文位置亮蓝编号 + 高亮,视口内锚定、碰撞避让,滚出屏幕不丢失 |
| 跨回合收集 | 任意多条批注跨消息/回合累积,编号从 1 开始 |
| 「批注 ×N」标签 | 输入框旁小标签,悬浮显示全部批注内容,可逐条删除 |
| 回车随消息发送 | 批注块 + 输入框问题一起发给模型(模型收到完整内容) |
| 气泡隐藏批注块 | 发送瞬间(浏览器绘制前)批注块从气泡 DOM 隐藏,只留问题 + 「批注 ×N」标签,hover 可见内容;刷新后历史消息自动修复 |
| 回复逐条对照 | 消息内注入格式指令,模型按「Annotation 1:…」…「Annotation N:…」逐条回应 |
| 回复批注芯片 | 回复里的「Annotation N:」渲染为可悬浮芯片,hover 显示该批注的原文 + 批注内容 |

交互流

选中助手文字 ──▶ 工具条「批注」──▶ 写批注/留空保存 ──▶ 原文亮蓝编号+高亮 ▲ │ └────────────── 任意多条、跨回合累积 ◀────────────────┘ │ ▼ 输入框旁「批注 ×N」标签(hover 看内容/删除) │ 回车发送 ▼ 模型收到:批注块(编号+原文+批注)+ 你的问题你的气泡:只显示问题 +「批注 ×N」标签(零闪烁)模型回复:Annotation 1:… Annotation 2:…(可悬浮芯片)

安装(官方 bundle 路径 · 唯一)

npm 公开包安装(无需 npm 账号)
dsh plugin --profile web add @changfenhuang/dsh-annotation
也可以直接从 GitHub 公开源码安装
dsh plugin --profile web add git+https://github.com/omdsh-dev/dsh-annotation.git
本地路径安装(开发调试)
cd /path/to/dsh-annotation
dsh plugin --profile web add .
重启 web —— 见下方「重启 web 服务」

如果只想把它作为 Node 依赖加入现有项目:

npm install @changfenhuang/dsh-annotation

npm install 只添加依赖,不会把插件注册到 DSH;在 DSH 中使用时仍应执行上面的 dsh plugin add。

从旧 @omdsh-dev 包名迁移

如果你在 v1.4.2 之前安装过插件,请先删除旧依赖,再安装改名后的包:

dsh plugin --profile web remove @omdsh-dev/dsh-annotation
dsh plugin --profile web add @changfenhuang/dsh-annotation

如果 dsh web 仍然启动失败并提到 @omdsh-dev/dsh-annotation,请只删除 ~/.dsh/profiles/web/cordis.patch.yml 中使用该旧名字的 dsh-annotation 登记。插件现在会自行提供 @changfenhuang/dsh-annotation 登记。

| 做 | 不做 |
| 只 dsh plugin add / 只写 bundles | 不要再在 profile/home cordis.patch.yml insert 同 id |

自检:

dsh --profile web --dump-config | rg "id: dsh-annotation" # 必须恰好 1 行
dsh web --no-open # 复制输出的一次性令牌地址并在浏览器打开

在浏览器控制台执行 window.__DSH_BOOT__.entries.find(({ id }) => id === '@changfenhuang/dsh-annotation'),必须返回带 url 的登记;dsh 0.1.2 起不再开放旧版单插件裸地址。

重启 web 服务

按平台选择对应命令:

macOS(launchd) launchctl kickstart -k "gui/$(id -u)/com.dsh.web"

WSL / Linux(systemd 用户服务)服务名可能因安装方式而异,可用以下命令确认:
systemctl --user list-units | rg dsh
systemctl --user restart dsh-web

没有服务管理器的环境(如部分容器)通常不需要重启:client.js 按请求读取、no-cache,硬刷新(Cmd/Ctrl+Shift+R)即可加载插件改动。上面的自检命令跨平台通用。

架构要点

- 纯浏览器端:全部能力在 client.js(hand-written CJS bundle,无构建步骤,按请求读取 no-cache)
- 消息格式(跟随 DSH locale 语言偏好,zh/en 双语):

zh:我批注了以下 N 处内容…\n\n1. 原文\n 批注:…\n\n请用「Annotation 1:…」…\n\n提问: en:I annotated the following N passage(s)…\n\n1. quote\n Note: …\n\nPlease respond… "Annotation 1: …"…\n\nAsk:

(zh 分隔标记用「提问:」而非「问题:」——标题行「回答我的问题:」里也含它,气泡隐藏手术会误命中;en 用 Ask:。隐藏手术与反解析同时兼容两种语言及「问题:」老格式)
- 气泡隐藏:用户气泡是纯文本渲染(MessageText 单节点,非 markdown);MutationObserver 微任务阶段(绘制前)按最后一个 \n提问: 切掉批注块、贴「批注 ×N」标签;1s 轮询兜底 + 刷新后历史消息自动修复
- 回复芯片:回复流式结束后(data-streaming 移除),把「Annotation N:」替换为可悬浮芯片;条目数据存于最近一条带批注标签的用户消息上(tag.__annotationItems),刷新后自动重建;改 DOM 前先快照 TreeWalker 收集的文本节点再逐个替换(遍历中途 replaceChild 会让 walker 指针失效,只处理到第一个节点)
- 语言跟随:UI 文案与批注协议块跟随 DSH locale 服务(zh/en,实时切换);历史气泡跨语言可解析;locale 服务缺失时回退 zh
- IME 安全:Enter 拦截带 isComposing/keyCode 229 守卫;不 DOM 硬改 composer textarea;setDraft 仅在提交前一刻拼批注块,不覆盖用户草稿
- 不依赖发送完成事件链:气泡装饰走 MutationObserver + 轮询(watchInputDraft 在初始化时会话未加载时会失效,仅作暂存入口)
- 聚焦对话兼容:支持 dsh-focus-chat 的聚焦会话视图——其助手行是 [data-focus-flow] 内 class 含 *_assistant(CSS Modules 哈希名)的容器(流式期间行带 data-streaming);选区批注、回复芯片、角标重新定位在聚焦 tab 与主视图一样可用

开发测试

CI 与 DSH 宿主测试

版本历史

| 版本 | 内容 |
| v1.4.x | 语言跟随:zh/en UI 文案与批注协议块,经 DSH locale 服务实时切换 |
| v1.3.x | 回复逐条对照:格式指令注入 + 「Annotation N:」可悬浮芯片(TreeWalker 快照修复) |
| v1.2.x | 气泡隐藏批注块:MutationObserver 微任务零闪烁 + 轮询兜底 + 历史消息修复 |
| v1.x | 自包含批注流(取代 v0.9 chip 设计):capture Enter 拼稿随消息发送 |
| v0.9.x | 早期 chip 设计(insertReference + slash codec),已被 v1.x 取代 |

友情链接

- Linux.do

License

MIT
预览分享卡片长什么样 ↓omdsh-dev/dsh-annotation
分享 · DeepSeek Harness Hub
omdsh-dev/dsh-annotation

DSH Web 选中批注插件:选文字→批注→回车随消息发送;气泡隐藏批注块零闪烁;回复按 Annotation N…

回到顶部