DeepSeek Harness 的理念是「一切皆插件」。如果你安裝了多個主題皮膚,每次啓動手動切換會消耗時間。dsh-skin-rotation 插件解決了這個問題,它提供了一套完整的皮膚輪換策略,並保證配置寫入的安全性。
核心功能¶
該插件提供以下能力:
- 多種輪換策略:支持隨機、順序、權重和固定四種模式。
- 皮膚池管理:可以爲每個皮膚設定狀態(兼容、排除、不兼容、不可用)。
- 歷史記錄:記錄輪換的時間戳、觸發方式和結果。
- 故障安全寫入:使用日誌和臨時文件機制,防止寫入中斷導致配置損壞。
- 版本化狀態遷移:升級時自動遷移配置,避免偏好設置丟失。
- 本地優先:無需額外 API,完全在本地運行,可恢復。
安裝與啓用¶
在 DeepSeek Harness 環境中安裝此插件。
1. 安裝命令
dsh plugin --profile web add github:luoyuejun9/dsh-skin-rotation
2. 環境要求
- DeepSeek Harness 版本需
>=0.2.0-rc.2。 - 至少安裝兩個皮膚纔有輪換的意義。
3. 啓用
安裝後重啓 DSH。打開 Settings(設置) -> Skins(皮膚),在頁面底部即可看到該插件的控制卡片。
如果使用桌面端應用,請將命令改爲
dsh plugin --profile desktop add github:luoyuejun9/dsh-skin-rotation。
使用方法¶
在 Settings -> Skins 頁面底部的皮膚輪換卡片中進行操作:
1. 啓用自動輪換
點擊 “Rotate on launch”(啓動時輪換) 開關。關閉後,啓動時將保持當前皮膚不變,但依然可以手動觸發輪換。
2. 選擇輪換模式
在模式下拉框中選擇一種策略:
* random:每次隨機選擇,可選擇避免最近使用的皮膚。
* sequential:按順序輪換,重啓後從上次的位置繼續。
* weighted:根據權重概率選擇,權重越高被選中的概率越大。
* fixed:固定使用某一張皮膚,不進行自動切換。
3. 手動操作
- Shuffle now:立即切換到新的皮膚。
- Restore previous:恢復到上次成功輪換的皮膚。
- Avoid recent:在隨機模式下,跳過最近 2-3 次成功輪換的皮膚。
- 調整權重:在
weighted模式下,可以通過輸入數字調整每個皮膚的權重(0 表示移出輪換池)。
4. 排除皮膚
通過複選框管理皮膚池。取消勾選會將皮膚設爲“排除”狀態(不參與輪換),但這不會卸載皮膚文件。對於標記爲“不兼容”的皮膚,一旦被排除,無法通過插件重新啓用。
工作原理¶
- 主機決策:輪換邏輯在 DSH 進程啓動時執行一次。熱重載插件不會觸發輪換,只有完全重啓纔會重新計算。
- 編輯補丁層:插件不修改皮膚文件本身,而是重寫配置文件中
# --- dsh-skin managed ---代碼塊的內容。它同時修改profile下的cordis.patch.yml和DSH_HOME下的cordis.patch.yml(後者優先級更高)。 - 兼容性校驗:插件會檢查皮膚是否滿足
@deepseek-ai/dsh*版本範圍以及compatibility.json的要求,確保不會加載導致崩潰的皮膚。
注意事項¶
- HTTP 限制:插件提供的 HTTP 接口(
/api/dsh/skin-rotation)僅限於同源請求。 - 不兼容處理:被標記爲不兼容且已排除的皮膚,無法在插件中重新啓用,除非手動編輯配置文件。
- 僅編輯補丁:插件僅修改補丁層,不會觸碰
skin.json文件或皮膚管理器自身的狀態文件。