dsh-maestro-mobile: DeepSeek Harness Web UI 移動端適配

前言

DeepSeek Harness (DSH) 採用插件化架構,默認的 Web UI 面向桌面端交互。在移動端豎屏或窄屏場景下,原版佈局往往難以使用。dsh-maestro-mobile 旨在解決這一問題,它通過插件形式接管 DSH Web 界面,在觸控優先且寬度低於 1024px 的設備上自動調整佈局結構。該插件由 ddtcorex 維護,採用 MIT 許可證。

插件簡介

該插件是一個專爲移動端優化的佈局適配層。當檢測到屏幕寬度小於 1024px 且爲觸控設備時,它會將側邊欄轉換爲左側覆蓋抽屜,將對話框轉換爲底部彈窗,並對安全區域進行適配。反之,在桌面端或非觸控設備上,該插件不會生效(no-op)。

核心功能

  • 側邊欄轉抽屜:側邊欄在移動端變爲左側覆蓋抽屜(約 80vw 寬度),打開時顯示完整內容。
  • 對話框轉彈窗:設置、資源管理器和預覽窗口變爲底部彈窗,支持 env(safe-area-inset-*) 處理劉海屏。
  • 狀態欄與安全區:處理狀態欄留白、劉海避讓以及 theme-color,並啓用 touch-action: manipulation 防止雙擊縮放。
  • 寫作區固定:權限膠囊、模型名稱和切換菜單採用固定尺寸錨定,防止在窄屏下擠壓或重疊。
  • 平板適配:針對 768px 至 1023px 的平板設備,彈窗居中且寬度受限。
  • 診斷模式:提供調試 URL 以查看視口、幀、浮動面板及 JS 錯誤狀態。

安裝與啓用

通過 DSH 官方插件命令安裝:

dsh plugin --profile web add @ddtcorex/dsh-maestro-mobile

安裝完成後或修改源碼後,需重啓 dsh web 進程以加載更改。

調試方式

在啓動 dsh web 的瀏覽器地址欄中追加調試參數,即可顯示浮動診斷欄:

  • 新版:?dsh-maestro-mobile-debug=1
  • 舊版(兼容):?mobile-nav-debug=1

環境要求與注意事項

  • 運行環境:需要先啓動 DeepSeek Harness 的 web 配置文件(pnpm dsh web)。
  • 依賴版本:
    • Node.js ≥ 22
    • pnpm ≥ 11
    • Chromium 105+(用於 :has() 選擇器)
  • 構建輸出:lib/ 目錄爲構建產物並被 gitignore,修改源碼後需運行 pnpm build 生成該目錄。
  • 觸發條件:插件僅在屏幕寬度 < 1024px 且爲觸控設備時生效。在鼠標驅動的窗口、窄桌面窗口或縮放顯示的窗口上,該插件不會運行。

參考鏈接

  • 插件目錄:https://www.skillhub.cn/plugins/ddtcorex/dsh-maestro-mobile
  • 源碼地址:https://github.com/ddtcorex/dsh-maestro-mobile
羽毛球分组比赛记分
小程序二维码

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

小夜