前言¶
在使用 DeepSeek Harness(DSH)進行長對話開發時,上下文窗口管理是一個常見痛點。當對話接近上下文窗口上限時,直接截斷或擴充上下文容易破壞會話連貫性。同時,爲特定角色注入人格時,直接覆蓋 System Prompt 可能會影響 Harness 自身的身份設定。DSH 的插件化生態旨在解決此類問題。
插件簡介¶
dsh-whale-companion 是一個 DSH 外部插件,由 xianshu-virtuous 維護。它提供兩個核心功能:一是以追加 Section 的方式加入藍鯨娘女僕人格,不覆蓋 Harness 身份;二是當 WebUI 會話達到上下文窗口 88% 時,自動創建新會話並交接上下文。
核心功能¶
1. 藍鯨娘人格追加¶
插件使用獨立的 whale-companion:persona section(順序 10)。默認人格爲“深深”,區分 Flash 與 Pro 形態。這僅作爲角色語氣追加,不會替換 Harness 的身份設定。
2. 自動會話續接¶
當 WebUI 客戶端保持打開,且當前會話屬於 Workspace,且上下文達到 88% 時,插件自動觸發。新會話只接收最後一條用戶請求和助手回覆作爲交接上下文(最多 24,000 字符),並使用 Workspace 默認的 Agent preset。
3. 工具與配置¶
- 工具:提供
read_whale_persona工具,用於在任務收尾或人格細節漂移時按需重新讀取人格。 - WebUI:新增“鯨魚娘人格”頁面,支持直接輸入正文(無需三引號)或覆寫默認人格。
- 配置:支持在
cordis.patch.yml中覆蓋或關閉插件。
安裝與啓用¶
首先進入插件目錄,執行構建與測試:
pnpm install
pnpm run typecheck
pnpm test
pnpm run build
然後通過命令行添加插件:
dsh plugin --profile web add F:\dsh\dsh-whale-companion
添加後需重啓 dsh web 進程。
典型用法¶
配置開關¶
在 cordis.patch.yml 中設置:
- insert:
- id: dsh-whale-companion
name: '@dsh-external/dsh-whale-companion'
config:
enabled: false
自定義人格¶
在 WebUI 的“鯨魚娘人格”頁面直接輸入正文,點擊“覆寫人格”。內容會保存到 $DSH_HOME/plugins/dsh-whale-companion/persona.json。
工具調用¶
模型在以下情況調用 read_whale_persona:任務收尾、上下文轉移後或人格細節漂移。插件提示明確要求不要每輪調用。
注意事項¶
- WebUI 依賴:自動續接功能依賴 WebUI 客戶端保持打開。
- 會話篩選:未加入 Workspace 的會話會被跳過。
- 進程重啓:舊進程未加載配置接口時會提示重啓。
- 容錯機制:手動編輯
persona.json損壞時,插件會自動回退到默認人格,不會阻止 Harness 啓動。 - Preset 行爲:新會話使用 Workspace 默認的 Agent preset,不復制源會話 preset。
結語¶
該插件通過 Section 追加和上下文交接機制,爲 DSH 用戶提供了低侵入性的角色扮演方案和長對話解決方案。