前言¶
DeepSeek Harness (DSH) Web GUI 插件。旨在解決默認界面字體與代碼字體與本地開發環境不匹配、視覺風格難以統一的問題。該插件由用戶 v587d 維護,允許通過 Web UI 或控制台配置,實現界面字體、代碼字體及多套主題(Border / Nord / Twilight / GitHub / Atom One)的切換。
核心功能¶
- 字體自定義:支持分別配置界面字體和代碼字體,覆蓋 DSH 默認樣式變量
--dsw-font-family與--ds-font-family-code。 - 主題切換:提供多套主題色板,通過
ctx.theme.overrideTokens覆蓋--dsw-alias-*令牌(需 light/dark 成對)。 - 即時編輯:在 DSH 設置頁的 Custom Skin 分節中可直接編輯配置。
- 本地持久化:偏好設置存儲於瀏覽器
localStorage(鍵dsh-custom-skin.v1),刷新頁面後保持。 - 寬表格修復:修復寬表格在 hover 時的高度抖動問題,固定
overflow-x與padding。
安裝與啓用¶
使用官方 CLI 安裝插件:
dsh plugin --profile web add github:v587d/dsh-custom-skin
安裝完成後需重啓 Web 進程以加載資源:
dsh web
使用方法¶
- 打開設置:在 DSH Web UI 中導航至 設置 -> Custom Skin(若當前 DSH 版本支持
settings.section注入)。 - 選擇主題:在 Color theme 下拉框中選擇預設主題,如
GitHub(默認)、Nord、Atom One等。 - 配置字體:填寫本機已安裝的字體名稱。例如:
- UI:
"Microsoft YaHei", sans-serif - Code:
"Fira Code", Consolas, monospace
- UI:
- 手動配置:若缺少設置頁,可在瀏覽器控制台執行以下命令手動寫入配置:
localStorage.setItem('dsh-custom-skin.v1', JSON.stringify({
uiFont: '"Microsoft YaHei", sans-serif',
codeFont: '"Fira Code", Consolas, monospace',
theme: 'github' // 'default' | 'border' | 'nord' | 'twilight' | 'github' | 'atom-one'
}))
location.reload()
注意事項¶
- 系統字體依賴:插件不打包字體文件,必須確保操作系統已安裝目標字體。
- 插件衝突:若其他主題/皮膚插件也定義了同一批 CSS 變量,後加載的插件會覆蓋先加載的配置。
- 卸載殘留:卸載插件後,
localStorage中的配置仍會保留,需手動清理。 - 開發約束:
lib/client.js必須採用經典腳本形態(無頂層export/import),DSH 使用<script src>加載。 - 令牌覆蓋規範:主題顏色覆蓋應使用
ctx.theme.overrideTokens,不要直接手寫:root覆蓋。 - Markdown 樣式:美化 CSS 依賴
[class*="_markdown_"]與body[data-ds-dark-theme]選擇器。 - 表格抖動修復:插件無條件輸出
--dsh-scrollbar-width並用!important固定.md-table-wide的 overflow-x,代價是橫向滾動條常駐顯示。