dsh-skin-rotation: DeepSeek Harness 智能皮膚輪換插件

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 文件或皮膚管理器自身的狀態文件。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜