dsh-modal-enhancer:为 DeepSeek Harness 弹窗添加窗口级控制

前言

在 DeepSeek Harness Web 界面中,原生的弹窗通常缺乏窗口级的交互能力。调整位置、改变大小或保持弹窗状态,往往需要额外的操作或依赖浏览器窗口管理。dsh-modal-enhancer 旨在解决这一问题。这是一个客户端 Cordis 插件,通过在现有的弹窗 DOM 上注入样式和事件监听,赋予其类似原生窗口的控制能力,且无需修改 Harness 的源代码。

插件定位

这是一个客户端插件,专门用于增强 DeepSeek Harness Web GUI 中的所有弹窗。它不依赖 CSS 模块的哈希值,而是通过稳定的可访问性契约 [role="dialog"][aria-modal="true"] 来识别弹窗。这意味着它可以覆盖设置、工作区创建、模型和智能体预设编辑器以及风险确认等各种场景下的弹窗。

核心功能

  1. 拖拽:通过弹窗顶部的专用条带移动弹窗。
  2. 八向调整大小:支持从四条边和四个角进行调整大小。
  3. 固定 / 取消固定:固定弹窗后,忽略窗口外的点击;弹窗的关闭按钮和 Escape 键依然有效。
  4. 最大化 / 还原:使弹窗填满视口(带少量外边距),或还原到之前的大小。
  5. 移除背景:移除遮罩层和背景模糊,同时保留弹窗的阴影以维持视觉隔离。
  6. 持久化状态:弹窗的位置、宽度、高度、最大化状态、固定状态和背景状态会在重新挂载和浏览器重启后保留。
  7. 总开关:可以在“设置 → 通用 → 弹窗增强”中启用或禁用该增强器。

安装与启用

  1. 使用官方命令安装插件:
   dsh plugin --profile web add github:lisniuse/dsh-modal-enhancer
  1. 安装完成后,重启 dsh web。
  2. 在 DeepSeek Harness 界面中,进入“设置 → 通用 → 弹窗增强”,开启开关即可。

典型用法

  • 移动:按住弹窗顶部的拖拽条移动。
  • 调整大小:拖拽四条边或四个角。
  • 切换外部点击关闭:点击弹窗上的图钉图标。
  • 最大化/还原:使用 ⛶ 或 ❐ 按钮。
  • 移除/恢复遮罩:使用 ◐ 或 ◌ 按钮。

适用场景与注意

  • 适用人群:需要频繁调整弹窗布局、希望在多显示器间移动弹窗,或希望移除背景干扰的开发者。
  • 环境要求:需要 Node.js 18 或更高版本。
  • 部署特性:无需修改 Harness 源码,无需 pnpm install、Web 应用重新构建或服务器重启。插件直接通过 dsh bundle.patch 机制挂载。
  • 状态管理:状态存储在浏览器的 localStorage 中,键名前缀为 dshme.dialog-state.v1:。
  • 清理机制:禁用或卸载插件后,注入的控件、样式和几何属性会被移除,但保存的状态会保留,以便下次启用时恢复。

结语

dsh-modal-enhancer 通过简单的配置即可显著提升 DeepSeek Harness Web 界面的可用性。对于追求交互效率的用户,这是一个值得安装的工具。

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

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

小夜