星河 Galaxy:DSH 的 WebGPU 原生星雲皮膚

前言

在 DeepSeek Harness(DSH)里長時間用 Web 界面時,外觀往往依賴主題插件或宿主默認配色。普通靜態背景或外鏈圖片皮膚,很難做連續捲動的星雲、視差星點,還要兼顧側欄與正文的對比度。dsh-skin-galaxy 是維護者 haoranx98 發佈的獨立皮膚插件,用瀏覽器原生 WebGPU 與 WGSL 在客戶端實時繪製紫藍星雲、銀河塵帶和偶發流星,並通過 theme.overrideTokens 適配宿主 light / dark / system,不引入 CDN、圖片下載或額外運行時依賴。下面按定位、能力、安裝、配置與注意事項說明用法。

這是什麼

  • 名稱與包名:星河 · Galaxy,dsh-skin-galaxy(當前 npm 版本 0.1.5,MIT 許可)。
  • 歸屬:倉庫 github.com/haoranx98/dsh-skin-galaxy,社區目錄分類爲「趣味換裝」。
  • 解決的問題:在 DSH Web 上提供一套可配置的深空視覺層,同時保證 Markdown 正文、表格、側欄與輸入框在明亮閱讀底板上的可讀性;停用插件時撤回 GPU 資源與主題覆蓋,恢復宿主原外觀。

核心功能

實時 WebGPU 畫面

插件在頁面背後掛載畫布,默認約 30 FPS,像素比上限 1.25,畫布最大 1920 × 1200,大屏按比例縮放。星雲寬闊雲團緩緩捲動,細絲與塵帶差速流動,遠近星點帶輕微視差與閃爍。自 0.1.3 起在着色器內繪製隨機流星:方向 360° 隨機,拖尾衰減;默認每次結束後約 7~16 秒 再出現下一顆,持續約 0.85~1.35 秒。speed 爲 0 或系統開啓「減少動態效果」時不播流星,且流星計時不隨星雲 speed 倍率變化。

頁面隱藏時停止繪製;speed 爲 0 或減少動態效果時只繪靜態 GPU 幀。適配器不可用、WGSL 編譯失敗或設備丟失時保留靜態漸變底色,並在開發者控制台說明原因。

主題與閱讀層

通過 dsh 的 theme.overrideTokens 提供皮膚層,宿主異步讀設置時皮膚不閃退。0.1.1 起正文爲明亮近白色,Markdown 與表格有半透明藍灰閱讀底板,側欄與輸入框提高不透明度;對比度檢查覆蓋正文與控件,並按最亮背景驗證至少 4.5:1(需已停用其他普通皮膚)。

無額外運行時負擔

不加載運行時 CDN、不下載圖片或視頻、無遙測;lib/ 產物可隨倉庫直接使用。預覽與動圖來自真實 WebGPU 出幀(README 中 20 幀循環 GIF),非後期示意圖。

安裝與啓用

推薦從 npm 安裝,版本固定、可校驗完整性:

dsh plugin --profile web add dsh-skin-galaxy

也可跟蹤 GitHub 倉庫最新提交:

dsh plugin --profile web add github:haoranx98/dsh-skin-galaxy

本地開發可指向目錄或打包的 dsh-skin-galaxy-<version>.tgz:

dsh plugin --profile web add /絕對路徑/dsh-skin-galaxy

安裝後先做兩件事:在「設置 → 插件」裏停用其他普通皮膚(只保留皮膚市場與本皮膚),再重啓並刷新:

dsh web

不要用兩個普通皮膚同時接管外觀;在插件頁用啓用開關停用舊皮膚,不要直接改文件,以免宿主管理器覆蓋啓停清單。若出現「星河背景 + 白側欄」或舊皮膚 !important 蓋住主題色,檢查是否仍啓用了第二套皮膚。

README 寫明:本皮膚在 DSH Web(0.2.2-alpha.2) 上驗證通過;官方 Desktop 尚未實測,無效時請停用 dsh-skin-galaxy 並反饋。

典型用法:調整動效與亮度

在 profile 的 cordis.patch.yml 中覆蓋插件配置(config 替換整行):

- id: galaxy-skin
  config:
    speed: 0.65
    intensity: 0.8
    pixelRatio: 1.25
    fps: 30
    meteorInterval: 10
配置 範圍 含義
speed 0–2 星雲漂移與閃爍速度;0 爲靜態
intensity 0–2 星雲及銀河星塵亮度
pixelRatio 0.5–2 渲染像素比上限
fps 1–60 繪製幀率上限
meteorInterval 3–60 流星基礎等待秒數,實際間隔在此值的 0.7~1.6 倍之間隨機

新安裝默認 speed 爲 0.65;profile 裏已有顯式 speed 仍優先。修改後重啓服務並刷新;非法值會明確報錯。

確認生效:插件頁中 dsh-skin-galaxy 爲啓用狀態,頁面出現星河背景,開發者工具無 WebGPU 腳本錯誤;真實 dsh 頁面可看到 data-galaxy-renderer="webgpu"。

適用場景與注意

適合誰:在 DSH Web 上希望深空動效、又需要可讀 Markdown 界面的開發者;環境需瀏覽器提供 WebGPU(本機 localhost 或 HTTPS 優先,參見 WebGPU 運行條件)。

權限與信任:插件隨當前 dsh 進程在瀏覽器中運行,會注入客戶端主題與 GPU 繪製邏輯。安裝前應閱讀倉庫源碼與 MIT 許可證;README 說明插件不修改聊天記錄、不自動發起模型請求。

兼容性:開發與驗證環境爲 dsh 源碼 0.2.2-alpha.2、Node 24.22.1、macOS;自動測試 11/11 通過。package.json 未聲明 engines.dsh,其他 dsh 版本需自行驗證。

維護者提供本地預覽:在倉庫內執行 node build.mjs、node preview/server.mjs,訪問 http://127.0.0.1:4318 查看獨立演示(着色器與產物與插件一致)。

結尾

dsh-skin-galaxy 把 procedurally 星雲、銀河塵帶和隨機流星放在 WebGPU 一層,用主題 token 與閱讀底板對接 DSH 界面,適合作爲 Web profile 下的單一普通皮膚使用。目錄與說明見 SkillHub 插件頁,源碼與安裝細節見 GitHub 倉庫。

羽毛球分组比赛记分
小程序二维码

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

小夜