dsh-mobile-glass:DSH Web 移動端適配插件

在 DSH Web 的實際使用中,移動端的適配往往需要針對特定組件(側欄、輸入框、頭部)進行大量手動調整。現有的佈局在窄屏設備上容易導致交互不便或視覺錯位。針對這一場景,dsh-mobile-glass 插件提供了一套移動端專用的交互方案,旨在通過代碼層面的覆蓋,在不影響桌面端體驗的前提下,優化移動端的操作手感。

這是什麼

該插件是 DeepSeek Harness (DSH) 的一個 Web 移動端適配插件,由 YiRan0 維護。它專門針對 ≤1023px 的屏幕尺寸設計,通過覆蓋特定的 DOM 結構與 CSS 樣式,實現聊天頁在上、側欄在下的 reveal 抽屜交互,同時修復移動端特有的輸入框與頭部佈局問題。其設計原則是桌面端(≥1024px)零影響。

核心功能

側欄與抽屜

移除底部導航,改爲頂部懸浮玻璃漢堡菜單打開側欄。側欄作爲底層 static(不參與動畫),聊天列通過 translateX 右移實現 reveal 效果。

拖動手勢

採用 setPointerCapture 配合 rAF 節流、方向鎖定與速度/位移吸附機制。當拖拽命中橫向可滾動元素(如寬表格、代碼塊)時,會自動讓位原生橫向滾動,保證文本可讀性。

自適應輸入框

右側氣泡與輸入框圓角自適應。未聚焦時居中緊湊,聚焦時展開全寬並抬升至約 2.5 行高度,失焦平滑縮回。內容增多時自動增高。發送鍵與模型選擇器在同一行,過渡動畫時長 0.32s。

設置面板與頭部清理

設置面板採用底部卡片上滑覆蓋的方式呈現。頭部區域進行清理,隱藏 session-log、tabs、標題對齊,以及側欄自帶 toggle 和 better-sidebar 按鈕,釋放移動端頂部空間。

PWA 支持

插件自帶 Service Worker 和增強 Manifest。通過 Host 側的 webServer 精確路由提供 SW 文件與 Manifest,不修改 DSH vendor 文件,升級無衝突。

安裝與啓用

在 DSH 項目目錄下執行以下命令安裝:

dsh plugin --profile web add github:YiRan0/dsh-mobile-glass

安裝完成後,重啓 dsh web 進度可生效。

典型用法

安裝後插件自動適配移動端,無需額外配置。在移動端瀏覽器中打開,即可體驗優化後的抽屜交互、手勢滑動與自適應輸入框佈局。

適用場景與注意

該插件適合需要在 DSH Web 上獲得原生移動端體驗的開發者或用戶。

注意事項:
1. 真機拖拽偶發抖動,疑爲側欄 backdrop-filter 實時模糊導致,目前尚未完全解決。
2. 卸載插件後,瀏覽器中已註冊的 Service Worker 會保留,需手動清除一次:DevTools → Application → Service Workers → Unregister(或清除站點數據)。
3. 插件以當前 DSH 進程權限運行,使用前建議檢查源碼與許可證。

總結

dsh-mobile-glass 通過精細的 DOM 操作與 CSS 變換,解決了 DSH Web 在移動端的佈局痛點,實現了 reveal 抽屜、自適應輸入框與手勢交互的統一。作爲一款零桌面影響的移動端適配方案,它降低了手動編寫移動端 CSS 的成本。

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

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

小夜