前言¶
DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。對於開發者或智能體構建者而言,處理長文檔(如技術博客、調研報告)是常見需求。直接對話大模型存在上下文窗口限制、風格一致性難以維持、狀態易丟失(如會話中斷)等問題。
dsh-writing-studio 作爲一個 DSH 工具型插件,旨在將長篇寫作轉化爲一條可續寫、可審校、可彙編的流水線。它不直接調用模型,而是作爲狀態機與持久化層,配合當前會話的模型完成寫作、修改與審校。
核心功能¶
該插件提供長文工作流、風格控制、常用寫作模板與持久化存儲能力。
- 長文工作流:支持從建項目、定大綱、逐節起草、逐節審校到最終彙編成稿的全流程。
- 風格控制:通過配置文體、語氣、讀者、語言、視角、字數目標及自定義約束來引導模型輸出。
- 常用模板:內置 8 套模板(公衆號文章、技術博客、週報、小說章節、小紅書筆記、演講稿、調研報告、使用教程),每套模板包含默認大綱與寫作提示。
- 持久化:每個項目對應一個 JSON 文件,存儲大綱、草稿、審校記錄與歷史,支持跨輪次續寫。
安裝與啓用¶
插件通過本地鏈接方式安裝,要求 Node.js 環境版本不低於 20。
- 克隆倉庫並進入目錄:
git clone https://github.com/tea-whale/dsh-writing-studio.git
cd dsh-writing-studio
- 在當前目錄下執行安裝命令:
dsh plugin --profile web add link:$(pwd)
在 Windows PowerShell 中:
dsh plugin --profile web add link:D:\path\to\dsh-writing-studio
- 重啓
dsh web以完成註冊。 - 驗證安裝是否生效:
dsh --profile web --dump-config
檢查輸出中是否包含 `id: writing-studio`。
卸載命令:
dsh plugin --profile web remove dsh-writing-studio
典型用法¶
重啓 DSH Web 會話後,可以直接下達指令,讓模型自動走完工作流。
-
自動流:
在對話中輸入:
> 用寫作工具幫我寫一篇「DeepSeek Harness 插件入門」技術博客,目標 3000 字,讀者是會寫代碼的開發者。模型會依次調用:
writing_templates(選模板)→writing_project_create(建項目)→writing_section_save(逐節起草)→writing_section_review(審校)→writing_assemble(彙編成稿)。 -
手動控制:
在關鍵節點插入指令:writing_status:查看當前項目狀態與下一步建議。writing_section_read:取回一節草稿與寫作目標(用於續寫)。writing_section_save:保存一節草稿(寫一節存一節)。writing_section_review:記錄審校意見或修訂稿。writing_assemble:彙編成稿。
工具一覽¶
| 工具名稱 | 作用 |
|---|---|
writing_templates |
列出 8 套模板及其默認大綱、風格、寫作提示 |
writing_project_create |
用標題 + 模板創建項目 |
writing_project_open |
打開已有項目,恢復完整狀態 |
writing_projects_list |
列出工作目錄下全部項目與進度 |
writing_status |
查看當前項目狀態與下一步建議 |
writing_style_set |
查看 / 修改風格參數與字數目標 |
writing_outline_set |
替換大綱與主旨 |
writing_section_save |
保存一節草稿 |
writing_section_read |
取回一節草稿與寫作目標 |
writing_section_review |
記錄審校意見 / 問題清單 / 修訂稿 / 定稿 |
writing_assemble |
彙編成帶 front matter 的完整 markdown 成稿 |
存儲佈局¶
默認在 DSH 會話的工作目錄下創建 .writing-studio 子目錄。
<工作目錄>/
└── .writing-studio/
├── projects/
│ └── <項目名>.json # 風格、大綱、各節草稿、審校記錄、歷史
└── manuscripts/
└── <項目名>.md # 彙編後的成稿
- 項目文件是普通 JSON,支持提交 Git 或手動編輯。
config.rootDir可修改默認目錄名(默認.writing-studio)。config.storageRoot可指定絕對路徑作爲存儲根,優先級高於rootDir。
注意事項與已知限制¶
- 零運行時依賴:插件僅使用 Node.js 內置模塊,不依賴外部庫。
- 不調用模型:寫作、修改、審校均由當前會話的模型完成,插件只做狀態機與持久化,不消耗額外 API。
- 風格是“提示合同”:風格字段是給模型的指令,而非自動風格檢測工具,最終質量取決於模型能力。
- 默認覆蓋:
writing_assemble默認覆蓋manuscripts/<項目名>.md。若需多版本,請使用output參數指定文件名。 - 全局註冊:插件全局註冊。如果在 agent 預設中顯式裁剪了全局工具,
writing_*工具也會被裁掉。 - 多項目處理:同一工作目錄存在多個項目時,省略
project參數會報錯,必須顯式指定項目名。 - 併發保護:插件使用“進程內鎖 + 獨佔創建”保護併發寫入,同一進程內安全,跨進程同時寫入同一文件仍可能發生覆蓋。
生態與資源¶
- 倉庫:https://github.com/tea-whale/dsh-writing-studio
- DSH 生態:https://www.skillhub.cn/plugins/tea-whale/dsh-writing-studio
- DSH 本體:https://github.com/deepseek-ai/deepseek-harness