前言¶
在 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。