前言¶
在 DeepSeek Harness(DSH)桌面殼裏,窗口最上方約 40px 的標題欄由系統繪製:側邊欄開關、原生「應用 / 編輯」菜單以及最小化、最大化、關閉按鈕佔滿這一行。若想在同一區域放上自己的標識或短文案,改殼層源碼或換皮膚成本高,且容易與後續升級衝突。
dsh-app-row-brand 以插件方式向 shell.overlay 註冊一條貼頂條帶,內容落在 [data-windows-titlebar] 所劃定的標題欄區域內;不替換各列內部佈局,側邊欄自帶的 brand 行保持原樣。下面介紹它做什麼、如何安裝,以及在設置頁裏如何配置。
這是什麼¶
- 名稱:
dsh-app-row-brand(npm 包名與倉庫名一致) - 維護者:CHNAQW
- 版本:0.3.0(見倉庫
package.json) - 許可證:MIT
- 定位:在 DSH 桌面窗口標題欄內顯示可輪播的自定義文字與圖片,支持本機字體、流光效果、手動切換與固定;通過 Settings → 標題欄 / Title bar 編輯內容。
倉庫與社區目錄:
- GitHub:https://github.com/CHNAQW/dsh-app-row-brand
- 目錄頁:https://www.skillhub.cn/plugins/CHNAQW/dsh-app-row-brand
核心功能¶
渲染範圍¶
- 向框架級
shell.overlay插槽註冊一項,條帶固定在視口頂部、位於殼層爲標題欄預留的區域。 - 在非 Windows 桌面殼環境下條帶不渲染,普通網頁不受影響。
條目與輪播¶
- 最多 12 條;多於一條時按順序輪播,每條有獨立的停留時間(內部以
durationMs存儲,設置頁以秒爲單位)。 - 可 Previous / Pin / Next 手動切換;Pin 後當前條固定顯示並暫停輪播,取消 Pin 後恢復。
- 任一條可標記爲 暫時隱藏:輪播與前後切換會跳過;設置列表中顯示 hidden 標記;取消隱藏後立即回到輪播(若此前 Pin 過則 Pin 再次生效)。
單條內容¶
每條可配置:
- 文字(最多 60 字符)、顏色(色塊與 R/G/B)、字體族與字號(9–40px)、粗體、下劃線
- 圖片:上傳、外鏈或清除;高度鎖定爲標題欄 40px,寬度 8–240px 可調;上傳圖按欄高縮放後以 data URL 存入
localStorage - 條內在欄中的對齊:居中 / 右 / 左
- Shimmer(流光):文字填充水平重複漸變,高亮塊每週期平移一格;可設週期(秒)、高亮色、掃掠方向(默認左→右,可右→左)
字體列表來自本機:殼層授權時使用 Local Font Access API,否則通過 canvas 探測候選列表,設置頁只列出實際已安裝的字體族。
實現結構(供對照源碼)¶
| 文件 | 作用 |
|---|---|
cordis.patch.yml |
Profile 層:插入 dsh-app-row-brand 行 |
index.js |
宿主側:apply() 爲空 |
client.js |
瀏覽器側:overlay 條帶、輪播與設置頁 |
locale/*.json |
插件頁標題與描述 |
package.json 聲明 dsh.bundle.patch 與 dsh.client.inject,擴展 @deepseek-ai/dsh-client-ui-layout(框架與 shell.overlay)和 @deepseek-ai/dsh-client-ui-settings。
安裝與啓用¶
插件以當前 DSH 進程權限運行;安裝前建議在 GitHub 查看源碼與 MIT 許可證。
從 npm 安裝¶
dsh plugin --profile <profile> add dsh-app-row-brand
從本地 checkout 安裝¶
dsh plugin --profile <profile> add <path-to-this-folder>
在 DSH Desktop 中也可用插件管理器代替命令行。全新安裝客戶端模塊後需 重啓應用 一次;此後若鏈到本地 checkout,修改可熱重載。
典型用法¶
- 按上文命令爲指定
<profile>添加插件並(首次)重啓 DSH Desktop。 - 打開 Settings → 標題欄 / Title bar。
- 在 Items 中選擇、新增或刪除條目;用 Order 調整順序(輪播順序隨之改變)。
- 填寫 Text、Color、Font / size、Bold / underline;按需設置 Image / width 或圖片鏈接。
- 設置 Alignment、Shimmer 與 Display time(每條停留秒數)。
- 用 Display control 的 Previous / Pin / Next 預覽;需要時用 Visibility 暫時隱藏某條。
限制與注意¶
- 配置與上傳圖數據保存在瀏覽器 profile 對應的
localStorage,不在 profile 的插件配置文件中。 - 上傳圖會重編碼爲 PNG(約爲欄高的 4 倍);過大圖片可能超出本地存儲配額並被拒絕。
- 條帶屬於拖拽區域,不攔截指針事件。
- 輪播僅在條帶已掛載(桌面窗口存在)時推進。
結尾¶
dsh-app-row-brand 把品牌或提示信息放進 DSH 桌面標題欄空白區,用設置頁即可完成圖文、字體、流光與輪播管理,無需改殼層代碼。進一步說明見倉庫 README(含 README.zh.md);安裝與索引可參考社區目錄 skillhub 條目 與 GitHub 倉庫。