DeepSeek Harness (DSH) 的理念是“一切皆插件”。在 Agent 開發中,處理非結構化數據(如小說章節、角色卡、世界觀設定)通常需要手動維護文件。NovelNovel 旨在解決這一痛點:它將小說創作的核心邏輯(項目管理、章節管理、角色卡、世界觀詞條)封裝爲工具,直接操作工作區內的普通文件,讓 Agent 專注於內容生成,而非文件管理。
功能¶
插件提供了 novel_* 系列工具,覆蓋從項目初始化到內容生成的全流程:
- novel_project:作品管理。支持新建、列表、詳情、改設定(簡介、世界觀、寫作要求、全書梗概、全書目標字數)、切換當前作品、刪除。
- novel_chapter:章節管理。支持列表(分頁、精簡)、讀取、新建(可帶目標)、追加(寫正文)、覆寫、改名、打標籤、寫本章目標與摘要、排序、檢索、刪除。
- novel_character:角色卡管理。支持 SillyTavern 角色卡(PNG/JSON,V1/V2/V3)的導入、查看、參與開關、再導出 PNG、移除。
- novel_source:資料源管理。支持導入現代社區卡或獨立世界書,自動拆解並按通道分類(設定、文風、規則、狀態、檔案、素材),可注入的併入世界書並記錄來源,狀態與素材只讀保留。支持列表、詳情、啓用/停用,以及世界書瀏覽。
- novel_lorebook:世界觀詞條維護。支持帶關鍵詞匹配(命中才注入)和無關鍵詞或
constant常駐注入的詞條管理。 - novel_state:狀態層管理。提供 MVU 兼容的變量樹,支持查看、用資料源
[initvar]初始化、手工set/apply(JSON Patch)、查看變更日誌。 - 側欄面板:提供一個類似書籍閱讀器的界面,支持直接修改磁盤上的 Markdown 原文、章節拖拽排序、查看字數與體量條。
安裝與啓用¶
目前插件尚未發佈到 npm,需從本地 tarball 安裝。
dsh plugin --profile web add ./dsh-novelnovel-0.1.0.tgz
注意事項:
* 必須重開:插件註冊表只在應用啓動/插件層變動時構建一次,安裝後必須重開纔會生效。
* 不支持 Git 安裝:不支持 dsh plugin add github:owner/repo,需先構建產物。
* 桌面端安裝:桌面端需使用應用自帶的 CLI wrapper(通常位於 <安裝目錄>\resources\runtime\cli\bin\dsh.cmd),且安裝前需完全退出應用以更新 profile 清單。
典型用法¶
在安裝了該插件的 profile 中開啓會話,Agent 會根據系統提示詞使用相應的工具。你可以直接用自然語言下達指令,例如“寫第三章”或“查看當前作品列表”。
注意事項¶
- 開發環境隔離:桌面端半邊是 fail-closed 的:如果包聲明瞭
dsh.client但產物讀不到,宿主啓動時會同步拋錯,導致所有客戶端插件(含首方 UI)一起加載不出來。建議使用專用 profile(如nn)進行開發迭代。 - 桌面端工作區根:桌面端的工作區根 = 那次會話選定的目錄。在小說目錄開會話,數據纔會落在那裏。
- 文件衝突:側欄面板直接修改磁盤上的 Markdown 原文。如果另一窗口或模型在編輯期間修改了同一章節,保存會明確失敗,提示重新加載。
- 舊版依賴:工作樹裏不要留
node_modules/@deepseek-ai/*的舊版本副本,解析鏈一旦命中它,插件就會加載第二份 harness。 - 面板初始化:面板顯示“尚未確定工作目錄”是設計如此,需先讓模型調用一次
novel_*工具建立上下文。