DDDFXYqiming/dsh-annotation-patched

DDDFXYqiming★ 1JavaScript最后同步: 2026-08-16

在 GitHub 打开

DSH Web annotation/quote plugin (fork enhanced)

README 摘要

dsh-annotation-patched DSH Web「选中引用」插件的本地增强版(fork 维护)。 来源 - 上游项目:omdsh-dev/dsh-annotation(MIT License,v1.3.13) - 上游能力:选中助手回复文字 → 引用(可留空)→ 回车随消息发送;模型按 Annotation N: 逐条对照回复(回复中为可悬停芯片);引用块不出现在自己的气泡里(零闪烁隐藏) - 本目录为上游代码 + 2026-08-14 本地增强(client.js 内所有改动均带 PATCH(2026-08-14) 标记,可 grep 定位) 增强内容(相对上游 v1.3.13) 1. 空引用 = 引用(单按钮制) 选中助手消息文字 → 点「 引用 」→ 引用可留空直接保存 = 纯引用(仅标记原文),与 Codex 的 Add to chat 一致。 - 工具栏仅保留「引用」按钮(v2026-08-14c 起移除临时加的「空引用」按钮——空引用由引用按钮的 note='' 路径承担,功能等价) - 显式确认制 :任何选中动作(复制、双击阅读选词)都不会自动成为引用——必须点击「引用」按钮(杜绝幽灵引用) - 同文本去重沿用上游规则(已在清单中的文字按钮禁用) - 曾尝试「选中即自动引用」方案(选中即暂存快照、回车自动消费),实测误触发严重(复制/阅读选中即被引用),已废弃并回退为按钮制(v2026-08-14b) 2. 幽灵引用修复(拼稿即清 → 发送确认制) 上游 quotes (待发送引用集)唯一清理路径在 decorateAll 装饰扫描轮询(等气泡渲染 → 切引用块 → 贴标签全部成功才清空),存在竞态窗口:气泡未渲染、标记缺失或快速连发时 quotes 残留,导致之后没选中也附带旧引用。 v2026-08-14 曾改为「拼稿即清」( attachAndSend 里 setDraft 后立即清空),但引入新竞态: 清空时机早于发送确认 —— - 现象 A(引用丢失):拼稿后 quotes 已清,但 composer 提交的是旧草稿(IME 合成、焦点转移、React 状态未刷新等)→ 消息没带引用,quotes 也丢了 - 现象 B(重复伴随):拼稿后提交失败 → 草稿残留「我引用了以下…」块,quotes 已空 → 下一条普通消息带着残留块发出;且旧守卫 draft.indexOf('我引用了以下') !== -1 让后续引用永远拼不进去 v2026-08-14c 最终方案 : - attachAndSend 不再拼稿即清—— quotes 清理只认「发送确认」 : watchInputDraft (草稿从有→空 = 发送完成)为主清理点, decorateAll (气泡出现)为兜底 - 新增 stripOldBlock() :拼稿前…

在 GitHub 查看完整 README →
工具/开发annotationdeepseek-harnessdshdsh-pluginweb

分类