前言¶
DeepSeek Harness (DSH) 採用插件化架構,其行爲高度依賴於插件的疊加與組合。在 Web 主機環境中,官方主題通常由 dsh-client-ui-theme 統一管理,開發者若想在不破壞官方外觀的前提下增加自定義配色,需要一個獨立的覆蓋層。dsh-theme-studio 正是這樣一種插件,它通過疊加層的方式,在官方“外觀”設置之上提供額外的主題控制能力。
插件簡介¶
dsh-theme-studio 是一個便攜式 DSH/Cordis 插件,由 cherrchen 維護。該插件完全運行在 Web 平臺,不依賴 Electron 或 Node.js 環境。它爲 DSH Web 和 DeepSeek Harness Desktop 提供了統一的主題管理界面,支持內置調色板瀏覽、實時預覽、主題應用以及持久化存儲。
核心功能¶
該插件目前實現了以下核心能力:
- 內置主題瀏覽:提供一系列內置的主題調色板供選擇。
- 預覽功能:允許用戶在應用主題前進行臨時預覽,預覽狀態不會寫入配置。
- 應用與持久化:將選中的主題 ID (
activeThemeId) 持久化保存到 Host 的theme-studio命名空間中。重啓應用後,插件會自動恢復上次應用的主題。 - 生命週期恢復:處理插件卸載邏輯,確保卸載時清除所有覆蓋層,使 ThemeRuntime 迴歸到官方主題。
- DSH 兼容性驗證:在插件加載前檢查 DSH 版本,確保與當前環境兼容。
安裝與啓用¶
DeepSeek Harness Desktop¶
該插件已預裝於 DeepSeek Harness Desktop,無需額外安裝。
DSH Web¶
在構建或準備環境後,可以通過以下命令安裝:
dsh plugin --profile web add github:cherrchen/dsh-theme-studio
安裝後,該插件會激活 cordis.patch.yml 層,在官方 Appearance(外觀)設置下方新增“主題”選項。
使用流程¶
- 進入設置:在應用中打開設置,進入“通用”頁面。
- 選擇主題:在“外觀”下方找到“主題”列表。列表中的 ID 包括
dsh-theme-studio.claude、.codex、.nordic等。 - 預覽與應用:
- 點擊主題條目進行預覽,此操作是臨時的。
- 點擊應用按鈕,將當前主題 ID 寫入 Host 配置。
- 驗證持久化:重啓應用,確認之前應用的主題仍然生效。
- 卸載:如果需要移除自定義主題,卸載該插件即可恢復到官方主題。
限制與注意事項¶
當前版本 (Stage 1) 存在以下限制:
- 僅支持內置主題:目前不支持導入、導出或驗證外部的
.dsh-themeschema 文件。 - 無自動對比度認證:內置調色板由人工檢查可讀性,暫不提供 WCAG 自動對比度認證。
- 無公開目錄:暫無公開的
ctx.themeStudio目錄,跨插件發現 API 屬於後續階段規劃。
該插件通過 ctx.theme.overrideTokens() 工作原理,在官方 Light/Dark/System 基礎之上疊加自定義層,確保了主題切換的流暢性。