前言¶
dsh-whale-tools 是一個運行在 dsh-whale-widget 之上的衛星插件。它的核心目的是解決兩個具體問題:一是允許用戶用任意圖片替換小鯨魚掛件(服務端自動摳圖),二是在會話頭部提供一個“重啓 dsh”的按鈕,並增加瀏覽器心跳檢測。
它做什麼¶
| 功能 | 說明 |
|---|---|
| 自動摳圖 | 設置 → 外觀 頁選圖後,服務端跑流水線(裁剪 → 去白底 → 最大連通域 → 居中縮放 610×610 透明 PNG),覆蓋用戶路徑圖 |
| 重啓按鈕 | 在會話頭部(order: -20)添加按鈕,調用 systemctl --user restart |
| 瀏覽器心跳 | 每 30 秒 GET /dsh-whale-tools/heartbeat,host 半 touch 心跳文件,判斷瀏覽器是否在線 |
| 移動端修復 | 注入 CSS 修復手機端小鯨魚拖拽問題(.dshwv-img 觸屏缺陷) |
| 可選補丁 | 默認關閉。顯式調用腳本可打補丁,但會改寫 node_modules 文件 |
安裝¶
使用 DSH 官方命令安裝:
dsh plugin --profile web add dsh-whale-tools
使用方式¶
設置換圖:
在 DSH 設置 → 外觀 頁選擇圖片。服務端會自動進行摳圖處理,結果寫入 $DSH_HOME/dsh-whale-widget/image.png。
接口調用:
- 心跳檢測:GET /dsh-whale-tools/heartbeat
- 重啓會話:POST /dsh-whale-tools/restart
手動補丁:
顯式打補丁以修改掛件源碼:
bash tools/dsh-whale-mascot-apply.sh --patch
注意事項¶
- Vibe coding 產物:代碼由 AI 對話生成,未經過人工審計。僅在 WSL2 + dsh
0.1.5-rc.1系列驗證。 - 依賴檢查:需要已安裝
dsh-whale-widget,且依賴 Node.js 庫sharp進行圖像處理。 - 移動端限制:重啓按鈕依賴
systemctl --user,手機端不可用;手機端僅能顯示小鯨魚,無法換圖或重啓。 - 補丁風險:補丁默認關閉。打補丁會改寫
node_modules中的文件,撤銷補丁需使用--revert。 - 安全閘門:插件僅允許迴環地址(
127.0.0.1/::1/localhost)及迴環 Origin 的請求。手機端通過網關訪問時會被攔截。
相關鏈接¶
- GitHub: https://github.com/ArimaKana-Akane/dsh-whale-tools
- 目錄頁: https://www.skillhub.cn/plugins/ArimaKana-Akane/dsh-whale-tools