前言¶
在 DSH 里用 Agent 改文章,常见情况是意见浮在对话里:你说「第二段太啰嗦」,模型要自己猜对应哪一句;改完以后批注也没有落点,下一轮又得从头说一遍。若只靠聊天窗口来回传话,审稿链路很难复现,重复出现的表达偏好也很难沉淀下来。
下面介绍 dsh-article-annotator(文稿批注)。它在 DSH 右侧栏把 Markdown、Word、PowerPoint、PDF 切成可按句点击的锚点,把「这一句要改」写成 Agent 能读、能执行、能勾销的批注,并支持把反复出现的意见归纳成长期写作风格记忆。
这是什么¶
dsh-article-annotator 是 DeepSeek Harness(DSH)的 工作流 类插件,维护者为 Elycheng,在 SkillHub 目录 与 GitHub 仓库 发布。当前包版本 0.1.0,许可证 MIT。
插件把改稿链路钉在句子上:看(逐句锚点)、改(批注草稿交给 Agent,工具读意见、改稿、勾销)、记(风格规则写入本地记忆并可选注入系统提示)。数据默认只存在本机,不联网、不上传、无遥测。
核心功能¶
右侧栏「文稿批注」¶
安装并刷新后,右侧栏会出现 「文稿批注」 页面(引导页有入口;首次加载也会自动打开一次并提示)。顶栏展示当前文稿、刷新、在原生预览中打开、批注数、风格记忆数。
正文保留标题、段落、列表、代码块、表格、PDF 页码、PPT 幻灯片分隔;点任意一句可写批注。待处理批注为琥珀色下划线加序号角标,已解决为绿色;同一句可再点开修改或删除。批注列表支持按待处理 / 全部筛选,可定位回原句、切换状态。
与 DSH 原生预览联动¶
在 DSH 原生文稿预览(Markdown / PDF / Office / 表格)里选中文字后右键 →「用『文稿批注』批注这句」;在预览空白处可「在『文稿批注』中打开本篇」。插件页面内右键句子同样支持「批注这句 / 复制原句」。
选文与导出¶
首次使用点标题可选文稿:搜索当前会话工作目录下的 .md / .markdown / .txt / .docx / .pptx / .pdf,并列出最近打开的文件。支持将批注导出为 Markdown。
风格记忆¶
风格记忆面板可查看规则、单条删除。Agent 可通过 writing_style_add 记录可复用表达规则;配置项 injectStyle 控制是否把记忆注入系统提示,maxStyleRules 默认最多 12 条。
Agent 工具(六项)¶
| 工具 | 作用 |
|---|---|
article_review |
读取当前文稿逐句批注与风格记忆;省略 file 时用本会话最近打开的一篇 |
article_read |
读取全文(带段落编号、页码 / 幻灯片分隔) |
article_review_resolve |
改完后把批注 id 标为已解决 |
article_review_save_revision |
把改好的全文写成源文件旁的 <原名>.revised.md |
writing_style_add |
记录一条表达规则(自动去重) |
writing_style_get |
读取全部风格规则 |
点击 「发给 Agent 修改」 会把待处理批注与操作指令写入当前会话输入框草稿(只写草稿,不自动发送);你确认后再发送。草稿指令覆盖:读批注 → 改稿 → 勾销 → 归纳风格 → 汇报。Agent 工具要在 新会话(或插件加载后的会话)里才可见。
支持的格式与写回方式¶
| 格式 | 写回方式 |
|---|---|
| Markdown / TXT | Agent 直接改原文件 |
| DOCX / PPTX / PDF | Agent 写 .revised.md(不原地改二进制版式) |
句子切分为确定性规则(中英文分句策略见 README)。批注保存原句文本,文稿改动后按文本重锚定;找不到时标记「定位失效」但不丢失。不支持旧版 .doc / .ppt。PDF 提取依赖本机 Python + pypdf 或 pdftotext;纯图片 PDF 无可用文字。
安装与启用¶
要求:DSH 0.2.0-rc.2 或更新;Node.js ≥ 20(与 package.json 中 engines 一致)。
从 npm(推荐)¶
README 注明:首次公开发布前 npm 上可能尚无该包,在此之前请用「从本地源码」方式安装。公开发布后可用:
dsh plugin --profile web add dsh-article-annotator
装完后重启一次 DSH(或等待 Profile HMR 重载),刷新页面,右侧栏引导页即可看到「文稿批注」。
指定 profile 时:
dsh plugin --profile <profile> add dsh-article-annotator
从本地源码(开发调试)¶
在已 checkout 的仓库内执行 npm install、npm run build,再用 install-local.mjs 链到本机 profile(详见 GitHub README)。卸载可用 scripts/uninstall-local.mjs。
可选配置¶
在 profile 的 cordis.patch.yml 中可覆盖,例如:
- id: article-annotator
name: dsh-article-annotator
config:
injectStyle: true # 风格记忆是否进入系统提示
maxStyleRules: 12 # 提示里最多列几条
maxArticleBytes: 41943040
maxBlocks: 1500
enableTools: true # 是否注册 Agent 工具
典型用法¶
- 刷新页面,打开右侧栏,进入 「文稿批注」。
- 点标题选择一篇文稿;点任意一句(或右键)写意见并 保存。
- 也可在 DSH 原生预览里选中文字 → 右键 →「用『文稿批注』批注这句」,插件会自动打开并定位到对应句子。
- 点 「发给 Agent 修改」,检查输入框草稿后自行发送。
- Agent 按批注改稿,调用
article_review_resolve勾销、调用writing_style_add记录风格规则。 - 回到批注页点 刷新 查看状态;在风格记忆面板查看沉淀规则。
批注与风格数据目录为 $DSH_HOME/article-annotator/(默认 ~/.dsh/article-annotator),按文稿路径哈希存 annotations/<sha1>.json,另有 style.json、recent.json、sessions.json。批注不写进工作区;修订稿写在源文件旁(二进制格式为 .revised.md)。
适用场景与注意¶
适合需要在 DSH 内做 逐句审稿、把意见结构化交给 Agent、并希望 重复表达偏好 进入后续写作提示的开发者或写作者。插件以当前 DSH 进程的权限读取你指定的本机文稿;安装前应自行查看源码与 MIT 许可证,确认符合环境与合规要求。
已知限制包括:大改后个别批注可能定位失效;Word / PPT / PDF 不做原地改写;PDF 依赖本机 Python 环境;缺少 sidebarRightTabs / slots 时页面不注册而非报错。在 DSH 0.2.0-rc.2(Desktop)上完整实测,更高 rc 版本接口方向一致但未逐版验证。
DSH 生态理念是「一切皆插件」;SkillHub 为社区目录站点,与 DeepSeek / 幻方无官方从属关系。
结尾¶
dsh-article-annotator 把「悬空意见」变成句级批注与可执行的 Agent 闭环,并把可复用偏好留在本机风格记忆里。进一步了解可看目录页 SkillHub:dsh-article-annotator 与源码 GitHub:Elycheng/dsh-article-annotator。