DSH Hub
dsh-annotation cover

ruisenbai/dsh-annotation

dsh-annotation

UIWeb UI1 GitHub stars· updated 2026-08-23

Inline, batchable comments for DeepSeek Harness assistant replies

Install

npx @deepseek-ai/dsh plugin --profile web add .

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-annotation DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/ruisenbai-dsh-annotation.svg)](https://dshhub.dev/plugins/ruisenbai-dsh-annotation)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from ruisenbai/dsh-annotation, cleaned of badges and images.

DSH Annotation

包名:dsh-annotation

English

审阅一段很长的 AI 回复时,最麻烦的往往不是提出意见,而是反复复制原文、解释“我说的是哪一句”。dsh-annotation 让每条意见直接留在对应句子旁边:选中原文、就地写下注解、攒齐多条注解,再通过 DSH 官方输入框一次发送;模型会按“注解 N”逐条回答,并在回复里给每条答案挂上可悬浮查看的注解芯片。

**交互来源说明:**本插件独立、非官方地复刻了 ChatGPT 的正文注解功能,并将这套体验带到 DeepSeek Harness。复制的是使用流程,不是 OpenAI 的源码、素材、API 或品牌;本项目与 OpenAI 无隶属或官方合作关系。

**兼容性提示:**项目要求 DeepSeek Harness 0.1.1-rc.2 或更高的 0.1.x 预发布版本。DSH 仍处于预发布阶段。当前没有助手正文内部 Slot,本插件会原地装饰已有助手渲染器,不再占用 assistant-step;用户与 steering 消息仍使用优先级覆盖。升级 DSH 前请阅读兼容性说明

界面预览

整个流程都留在对话里:选中原文、添加一条或多条编号注解、检查草稿,再从熟悉的 DSH 输入框发送。

选中真正想讨论的文字,浏览器原生选区仍然保留,随时可以复制。

趁上下文还在眼前,直接在原文旁写下意见。

发送前可以集中检查和调整所有本地草稿。

暂时不想使用注解时,可在 设置 → 插件 → 插件配置 中关闭功能,已有草稿不会丢失。

功能

  • 在一条已完成的助手回复内选中文字后,弹出带“添加注解”和“复制”两个按钮的小浮条;即使拖选结束、松开鼠标时指针已在正文区域外,浮条也会照常出现。蓝色选区保持不消失,随时可以按 Ctrl+C 复制;点击其它地方或按 Esc 浮条消失。
  • 在选区旁直接显示紧凑输入框,右侧只有取消和保存图标。空内容点击外部会关闭;有内容点击外部会保持打开、显示红边并震动,直到选择一个图标操作。
  • 输入停止 400ms 后自动保存编辑中内容并显示本地保存状态;刷新后可恢复,但不会因此变成已提交注解。
  • 编辑器完整处理中文输入法:组合输入期间的 Enter 只完成选词,组合刚结束产生的同一次 Enter 不保存,普通 Enter 保存,Shift+Enter 换行,组合期间的 Escape 不关闭编辑器;组合输入事件不会传到官方输入框。
  • 新增注解保存成功后,等一次微任务加一帧渲染,把焦点和原光标位置交还官方输入框;保存失败、取消编辑、会话切换、编辑已有注解时不抢焦点,也不覆盖输入框已有文字。
  • 将两行注解记录分成“待附着”“确认结果/待重试”“权威队列”“已发送”四类,并复用 DSH 官方按钮、状态点、图标、Tooltip 和 Toast。
  • 新注解保存成功后默认附加到官方输入框;也可以在插件配置中关闭自动附加,或随时点击标题栏回形针手动切换。切换不会展开列表,也不会立即发送;已附加时,未发送集合会随编辑、删除和新增实时变化。
  • 官方输入框是唯一任务输入和发送入口。官方文本加注解、官方图片加注解,或只有注解,都会形成一条任务和一次模型执行。
  • 文字、注解和图片合并发送:内部命令声明 images = true,图片经 rc.2 标准命令附件走官方附件通道(Base64 不进注解 JSON、不拼进命令字符串),Host 收到持久化图片块后生成一条“总体要求 + 编号注解 + 官方图片”的用户消息。
  • 发送成功后清空文字和图片并把注解标记为已发送;失败时文字、图片和注解全部保留,重试沿用同一个 submissionId,Host 对相同 submissionId 只采用首次成功结果。
  • outbox 只保存图片数量、媒体类型和摘要,不保存 Base64;页面刷新后图片无法恢复时,插件拒绝静默改成无图片提交,提示重新选择相同图片或放弃该条待发送记录。
  • 斜杠命令自动放行:附着状态下输入以 / 开头的内容时,插件暂时释放官方输入 claim 并移除零宽占位符,/goal/model 等命令正常走 rc.2 官方管线;离开命令状态后自动重新附着。claim.submit() 内会再次检查斜杠命令,竞态时直接走官方会话命令接口,不创建 outbox、不发送注解、不把注解标记成已发送;命令失败时命令文字、图片和注解全部保留。
  • 模型回复逐条对照:Host 提示词要求模型按注解顺序逐条回答、每段以“注解 N:”开头、不合并注解,并在每段前输出隐藏的 dsh-annotation-reply 关联标记、结尾输出 dsh-annotation acknowledgement 标记。Client 按文字 Range 定位“注解 N”,在对应位置覆盖 React 芯片;悬浮或键盘聚焦显示注解编号、被选中的原文和用户填写的注解。
  • 回复标记只控制显示:只识别当前会话真实存在的 submissionId + annotationId,未知、重复、伪造和格式错误的标记直接忽略;模型未按格式输出时保留普通“注解 N”文字;acknowledgement 标记才更新“已处理”状态。
  • 自定义用户节点同时显示总体要求、注解汇总框、官方图片缩略图和官方图片查看器。
  • 支持空内容注解(仅标记原文):选中原文后可以不填内容直接保存,只包含空格/换行时同样按空内容处理;编辑器提示“注解内容可留空,留空表示仅标记原文”,保存按钮在空内容时仍然可用,注解列表、紧凑概览和回复芯片显示“仅标记原文”而不是空白;清空已有注解后保存表示转成“仅标记原文”,删除仍必须使用删除操作;仅标记原文同样计入附着数量并参与发送、重试、已处理确认和逐条回复。
  • 注解 ×N 紧凑概览:输入框上方始终只显示“注解 ×N”,点击后完整注解列表向上弹出(悬浮在输入框上方的面板),不再提供完整/紧凑模式切换;数量只统计下一次发送会携带的已附着注解,新增、删除、附着、取消附着、发送成功(清零)与失败(保持不变)都会实时更新;悬浮或键盘聚焦“注解 ×N”显示只读概览(注解编号、原文摘要、注解摘要、仅标记原文状态、已附着/发送中/等待重试状态),内容较多时限制最大高度并内部滚动;没有已附着注解时隐藏入口,切换会话只显示当前会话数量。
  • 模型协议跟随 DSH 中英文环境:创建待发送记录时按 DSH 当前 locale(zh/en,无法识别时回退英文)冻结 protocolLocale,首次发送与重试使用相同语言,重试期间切换界面语言不改变已生成内容,旧待发送记录与已发送历史继续按旧英文协议处理;回复解析同时识别“注解 N:”“注解 N:”“Annotation N:”等格式,实际关联以隐藏的稳定注解标识为准。
  • 可选兼容 dsh-focus-chat:未安装时插件正常启动、不等待任何服务;安装后聚焦视图切换时,隐藏消息的原文标记与回复芯片暂停测量、消息重建后自动恢复并按消息标识去重,注解草稿与已发送记录不丢失;兼容逻辑单独封装,适配失败只关闭聚焦增强,不影响核心功能。
  • 对齐官方 Web 的助手正文流、思考过程折叠行、停止标记、输入区 Dock、图标按钮尺寸、表单字号、语义颜色、浮层表面和用户消息气泡,同时为“定位原文”保留最初的地图定位图标。
  • 支持撤销最近一次草稿删除、导出当前 Session 恢复 JSON、清空未提交草稿,并显示本地存储占用;这些本地数据控件显示在注解汇总框底部,可在插件配置中关闭“显示本地数据控件”后隐藏。
  • 保存完整原文、前后文选择器、助手消息 ID、事件序号、注解 ID 与提交 ID。
  • 对代码记录语言与起止行;对表格记录起止行列。
  • 选区重叠时合并到原有草稿,避免高亮堆叠歧义。
  • 沿用官方输入框的提交策略;注解命令通过一条可幂等重试的排队用户消息入队。
  • 使用不同的 DSH Toast 提示权威队列、持久发送和可重试失败;只有批次仍在已观测队列中时才显示撤回操作。
  • 编号位于选区结束位置所在完整正文行之后;预留防溢出区域并保持升序,同时合并思考过程展开、视口、字体和缩放触发的布局测量。
  • 点击正文数字编

Related plugins