前言¶
DeepSeek Harness(DSH)啓動後通常會直接進入應用界面。若希望在每次啓動時有一段短動畫再進入主界面,社區裏已有若干開機動畫類插件的思路可參考。dsh-custom-splash 由維護者 muning0214 發佈,歸類爲「趣味換裝」,在 DSH 桌面/Web 環境中通過插件機制注入全屏視頻開屏:每次啓動從內置三段 MP4 中隨機選一段播放,播完淡出;也可按 Esc 或點擊跳過。下面介紹它的定位、能力與安裝方式。
這是什麼¶
dsh-custom-splash 是給 DeepSeek Harness 使用的開屏動畫插件。倉庫:GitHub muning0214/dsh-custom-splash,目錄頁:SkillHub 插件頁。當前 package 版本爲 0.2.1,代碼以 MIT 許可發佈;隨包 assets/ 內演示視頻爲第三方素材,不在 MIT 範圍內,公開分發或商用需自行替換素材。
插件只使用宿主公開擴展點(視頻路由、index-inject、標題欄色探針),不修改 DSH 打包文件。
核心功能¶
隨機開屏與跳過¶
每次加載(即每次重啓 DSH)對三段視頻做 Fisher–Yates 洗牌後取一段播放,播完自動淡出(默認淡出約 420ms)。播放過程中按 Esc 或點擊畫面可立即跳過。
隨包三段視頻(見 README 預覽表):
| 文件 | 時長 | 說明 |
|---|---|---|
assets/stardust.mp4 |
8.06s | 閉眼半身特寫,柔光星塵 |
assets/datastream.mp4 |
7.05s | DEEPSEEK 大字 + 臉部 + 數據流 |
assets/gaze.mp4 |
7.05s | 深色字標 + 青色瞳孔特寫 |
不拖慢啓動¶
素材單個損壞會自動換下一個;全部失敗、解碼報錯、播放被拒,或超過 20 秒(MAX_HOLD 默認 20000ms)都會立刻放行,避免卡死啓動流程。
Windows 標題欄按鈕融入畫面¶
DSH 桌面在 titleBarStyle: "hidden" 時,右上角系統繪製的三個按鈕無法用普通 CSS 蓋住。插件通過 preload 色探針與 CAPTION_CSS 規則,在播放開屏時讓按鈕透明融入畫面;開屏結束規則移除後配色自動還原。該行爲僅在 Windows 桌面版驗證;macOS / Linux 會跳過標題欄處理,其餘功能仍可用。
實時銳化¶
對低碼率源使用 SVG feConvolveMatrix 做補償,強度可在 index.mjs 中通過 kernelMatrix 調整(默認中心約 2.4,超過 3.2 易出白邊)。
安裝與啓用¶
桌面版安裝命令(須與 README 一致):
dsh plugin --profile desktop add github:muning0214/dsh-custom-splash
Web 版將 --profile desktop 改爲 --profile web。倉庫無構建產物依賴,也沒有 prepare / postinstall,安裝不會觸發額外編譯。
裝完後完全退出 DSH 再重新打開——bundle 在啓動時裝配,熱重載不足以加載新插件。
卸載:
dsh plugin --profile desktop remove dsh-custom-splash
典型用法:替換爲自己的視頻¶
- 將 mp4 放入插件目錄下的
assets/。 - 修改
index.mjs頂部ASSETS映射,增刪條目即可增減片庫:
const ASSETS = new Map([
['stardust.mp4', 'video/mp4'],
['datastream.mp4', 'video/mp4'],
['gaze.mp4', 'video/mp4']
])
視頻需 faststart(moov 在 mdat 之前),否則瀏覽器需下載完整文件才能播。可用 ffmpeg 修復:
ffmpeg -i in.mp4 -c copy -movflags +faststart out.mp4
常用可調參數(均在源碼中):
| 位置 | 作用 | 默認 |
|---|---|---|
MAX_HOLD |
最多遮擋時長(毫秒) | 20000 |
fade |
淡出時長(毫秒) | 420 |
kernelMatrix |
銳化卷積核 | 2.4 / -0.35 |
CAPTION_CSS |
標題欄按鈕透明規則 | 見源碼 |
實現要點(便於審源碼)¶
視頻路由:通過 connection.fetch.register() 爲每個資源註冊 /api/dsh-splash/... 路徑,必須支持 Range,否則 Chromium 無法流式解碼;僅服務白名單文件,禁止路徑穿越。
播放器注入:經 webserver/index-inject 在 index.html 的 body 開頭注入自包含腳本,用 Shadow DOM 全屏 <video>,在外殼掛載前覆蓋一層。
標題欄:注入 CSS 將 preload 探針改爲 transparent,觸發 IPC dsh-desktop:windows-appearance 更新 overlay。
適用場景與注意¶
適合希望在 DSH 啓動時增加品牌化或氛圍感、且能接受約 7–8 秒量級(或手動跳過)等待的桌面用戶。素材分辨率爲 1280×720,1080p 以上屏幕會放大顯示;三段時長不完全一致,開屏總時長會有小幅浮動。
DSH 生態強調「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。插件以當前 DSH 進程權限運行,安裝前建議閱讀倉庫源碼與許可證;演示視頻若對外分發需替換爲自有權利素材。
參考與致謝¶
實現思路參考了 NativeDog1/dsh-boot-animation 與 Yiheng-guo/dsh-boot-animation-pro;本倉庫爲獨立編寫,未 fork 上述項目。
- 目錄頁:https://www.skillhub.cn/plugins/muning0214/dsh-custom-splash
- GitHub:https://github.com/muning0214/dsh-custom-splash