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
羽毛球分组比赛记分
小程序二维码

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

小夜