前言¶
在 DeepSeek Harness(DSH)里做长对话时,追问会把较早的题解和代码段顶出视野,回看往往要反复滚动。常见做法是复制到笔记里或靠记忆找轮次,但和原文的对应关系容易丢,也打断当前会话节奏。下面介绍社区客户端插件 dsh-code-marks(仓库 petex7238/DSH-Tag-Plugin):在助手回答里选中代码或一句话打标签,标记保存在本机,通过对话左缘深蓝短条或右侧栏「标记」页签随时跳回同一字符位置。
这是什么¶
dsh-code-marks 由维护者 petex7238 发布,分类为 DSH 客户端插件(npm 包名 dsh-code-marks,当前版本 0.1.0,MIT 许可)。它只做一件事:对会话中助手回答里的代码段与文字(含跨行选中)建立标记,用自定义标签归类,并在不依赖会话 transcript 排序的前提下持久保留,避免后续多轮追问把标记「顶掉」。
数据全部落在浏览器 localStorage,不上传、不同步、不进会话日志;Host 侧 plugin/index.mjs 为空 apply(),仅用于加载客户端 bundle。
核心功能¶
标记与标签¶
- 在助手回答中选中一段代码或一句话,松手后出现标签条。
- 点预设标签(如「核心逻辑 / 疑问 / 易错点 / 待复习」)或
+新建标签;支持标签的新建、改名、换色(6 种颜色)、删除。 - 确认后左缘出现深蓝短条,右栏「标记」页签同步一条记录;不会自动打开右栏。
跳回原文¶
- 点击左缘短条或右栏条目:原文滚到可视区正中、闪一下并选中;跳转按标记文本的 Range 计算,精确到字符。
- 悬停短条或面板条目:对话内临时高亮,不跳转。
- 短条右键:跳转、重命名本条标记名称、删除(删除后 5 秒内可撤销);
Delete/Backspace同样支持撤销。
右栏「标记」面板¶
| 操作 | 说明 |
|---|---|
| 点击条目 | 跳回并居中;历史未加载时会自动点「加载更早」(最多 16 次) |
| 标签 chip | 按标签筛选,括号内为条数 |
| 搜索框 | 按选中原文或备注过滤 |
| ✎ | 编辑备注 |
| × | 删除标记 |
| ⚙ | 管理标签 |
面板关闭后可通过右栏页签条 添加 → 引导页 → 「标记」胶囊重新打开。
定位与高亮机制(摘要)¶
标记不绑 DOM 节点,而存消息锚点 key、文本偏移、选中原文、前后各 48 字符上下文及轮次;解析时四级降级(精确锚点 → 同行 → 精确原文 → 上下文打分)。高亮使用 CSS Custom Highlight API,以 240ms 去抖重建 Range,减轻 React 重渲染与代码块 plain→高亮切换的影响。
安装与启用¶
需要 DSH 0.2.0-rc.2 或更新(桌面端或 dsh web)。安装时使用官方 安装 spec(插件组合包),装完后刷新页面即可,无需重启。
从 GitHub 安装¶
# git 协议
dsh plugin --profile desktop add "github:petex7238/DSH-Tag-Plugin#main"
# tarball 直链
dsh plugin --profile desktop add "https://github.com/petex7238/DSH-Tag-Plugin/archive/refs/heads/main.tar.gz"
# 本地解压目录(示例路径按本机修改)
dsh plugin --profile desktop add "D:/tools/DSH-Tag-Plugin"
固定版本可将 #main 改为 #<commit sha> 或 #v0.1.0;更新时重新执行安装命令(同包名覆盖)。
从 npm 安装(发布后)¶
dsh plugin --profile desktop add dsh-code-marks
或在插件页填写 dsh-code-marks。
确认已启用¶
插件列表中出现 dsh-code-marks 且为启用状态;在对话里选中助手回答一段文字,左缘应出现深蓝短条。
典型用法¶
- 在助手回答里用鼠标选中代码或一句话(可跨行)。
- 在浮出标签条上选择标签或新建标签。
- 需要回看时:点左缘深蓝短条,或打开右栏「标记」页签点对应条目。
可为单条标记在短条右键菜单里「重命名名称」,或在面板中用 ✎ 写备注(例如记录「这里为什么要 -1」)。
适用场景与注意¶
适合:在同一 DSH 会话里做代码阅读、复习、排错,需要反复回到某段实现或某句解释,又不想把上下文复制到外部工具的场景。
限制(README 已列):
- 折叠的过程组需先展开才能选中;原文被大幅改写后可能只能定位到消息,高亮可能对不上,面板会提示。
- 仅支持 assistant-step 回答;工具调用、终端输出暂不支持。
- 标记仅存本机浏览器,不跨设备,无导出/导入。
- 跳转使用程序化滚动,会暂停「跟随最新」。
安全与信任:插件以当前 DSH 进程/浏览器环境运行,安装前请查看 源码 与 LICENSE(MIT)。社区目录 SkillHub 插件页 为独立站点,与 DeepSeek / 幻方无官方从属关系。
卸载:DSH 设置 → 插件 → dsh-code-marks 停用或卸载;localStorage 中的标记数据仍保留,重装后可恢复。
结尾¶
dsh-code-marks 把「选中 → 打标签 → 精确跳回」收进 DSH 对话界面本身,标记与 transcript 分离,适合长会话里锚定关键代码与句子。目录页:https://www.skillhub.cn/plugins/petex7238/DSH-Tag-Plugin;仓库:https://github.com/petex7238/DSH-Tag-Plugin。