前言¶
DSH (DeepSeek Harness) 採取“一切皆插件”的架構理念,允許在不修改核心代碼的情況下擴展功能。dsh-assistant-skin 是一個此類插件,旨在爲 Web GUI 提供一套定製化的“助理皮膚”。它通過覆蓋設計令牌和注入媒體層,在不改變 DSH 基礎版式的前提下,提供黑藍暗調主題以及會話區內的助理形象展示。
核心功能¶
1. 主題與深色模式
插件覆蓋了 134 個設計令牌,強制開啓深色檔。它通過設置 body[data-ds-dark-theme] 屬性,解決了部分組件不讀取令牌而導致的顏色反色問題(如交付物卡片顯示爲白底淺字)。
2. 助理形象與佈局
* 背景注入:在會話主區注入助理形象(靜圖或循環片段)作爲背景層。
* 佈局避讓:通過調整主區右側內邊距,防止正文內容遮擋人物形象。
* 空會話 Hero:在沒有任何會話記錄時,利用 conversation.hero.brand.mark 席位展示形象。
3. 形象與動作管理
* 自動發現:形象與動作片段通過掃描 assets/looks/ 目錄下的文件名自動發現,無需修改代碼即可切換。
* 動作調度:
* 常駐動作:如 breathe(呼吸)、breatheSlow、blink,佔 98% 的時間,保持安靜。
* 觸發動作:點擊助理或隨機觸發,用於吸引注意。
安裝與啓用¶
使用官方插件命令安裝,需要將 <user> 替換爲實際 GitHub 用戶名。
dsh plugin --profile web add github:<user>/dsh-assistant-skin
若需修改源碼並即時生效,建議克隆倉庫後使用 link: 安裝:
git clone https://github.com/<user>/dsh-assistant-skin.git
dsh plugin --profile web add link:./dsh-assistant-skin
安裝後需重啓 DSH 進程以使配置生效。
配置與文件命名¶
配置文件通常位於 ~/.dsh/profiles/web/cordis.patch.yml。主要配置項如下:
- id: assistant-skin
config:
enabled: true
assistantName: 小汐
assistantTagline: 你的本地 AI 助理
theme: molan # 可選:molan(墨藍) / ouhe(藕荷) / moyu(墨玉) / qingyu(青玉)
idleAction: breathe # 常駐動作:breathe / breatheSlow / blink
形象文件命名規範:
- 靜圖(底圖):
assets/looks/look-01.jpg - 動作片段:
assets/looks/look-01.breathe.mp4或look-01.hair.mp4
注意:動作片段的首幀與末幀必須一致,以保證循環播放時不跳幀。
能力邊界¶
- 不修改 DOM 結構:插件不改變 DSH 組件的底層 HTML 結構與版式,因此無法實現“滿屏立立 + 懸浮控件”這類需要 Fork 源碼的佈局。
- 結構性定位依賴:媒體層掛載依賴計算樣式(如
display:grid且有兩個以上流寬子元素)。若 DSH 版本更新導致版式變化,定位可能失效,插件會停止掛載並記錄日誌。
許可與素材¶
- 代碼許可:MIT。
- 素材說明:靜圖與視頻片段均爲 AI 合成。商業用途需參考倉庫內的
NOTICE.md文件。