Introduction¶
In the DeepSeek Harness Web interface, native dialogs usually lack window-level interaction capabilities. Adjusting their position, resizing them, or preserving their state often requires extra actions or relies on browser window management. dsh-modal-enhancer is designed to solve this problem. It is a client-side Cordis plugin that injects styles and event listeners into the existing dialog DOM, giving dialogs native-window-like control capabilities without modifying Harness source code.
Plugin Scope¶
This is a client-side plugin specifically for enhancing all dialogs in the DeepSeek Harness Web GUI. It does not depend on CSS module hashed values; instead, it identifies dialogs through the stable accessibility contract [role="dialog"][aria-modal="true"]. This means it can cover dialogs in various scenarios, such as settings, workspace creation, model and agent preset editors, and risk confirmation.
Core Features¶
- Dragging: Move a dialog by using the dedicated handle at the top of the dialog.
- Eight-direction resizing: Resize from the four edges and four corners.
- Pin / Unpin: After pinning a dialog, clicks outside the dialog are ignored; the dialog’s close button and the
Escapekey remain effective. - Maximize / Restore: Fill the dialog across the viewport (with small margins), or restore it to its previous size.
- Remove backdrop: Remove the overlay layer and background blur, while keeping the dialog shadow to maintain visual separation.
- Persistent state: The dialog’s position, width, height, maximized state, pinned state, and backdrop state are preserved after remounting and browser restarts.
- Master toggle: The enhancer can be enabled or disabled in “Settings → General → Dialog Enhancer”.
Installation and Enablement¶
- Install the plugin using the official command:
dsh plugin --profile web add github:lisniuse/dsh-modal-enhancer
- After installation, restart
dsh web. - In the DeepSeek Harness interface, go to “Settings → General → Dialog Enhancer” and turn on the toggle.
Typical Usage¶
- Move: Grab the drag handle at the top of the dialog and move it.
- Resize: Drag the four edges or corners.
- Toggle outside-click closing: Click the pin icon on the dialog.
- Maximize/Restore: Use the
⛶or❐button. - Remove/Restore backdrop: Use the
◐or◌button.
Use Cases and Notes¶
- Suitable for: Developers who frequently adjust dialog layouts, want to move dialogs across multiple monitors, or prefer to remove background distractions.
- Environment requirements: Node.js 18 or later is required.
- Deployment characteristics: No Harness source code modification, no
pnpm install, no Web app rebuild, and no server restart are required. The plugin is mounted directly through thedsh bundle.patchmechanism. - State management: State is stored in the browser’s
localStorage, using the key name prefixdshme.dialog-state.v1:. - Cleanup mechanism: After the plugin is disabled or uninstalled, the injected controls, styles, and geometry attributes are removed, but the saved state is retained so it can be restored the next time the plugin is enabled.
Conclusion¶
dsh-modal-enhancer can significantly improve the usability of the DeepSeek Harness Web interface through simple configuration. For users who value interaction efficiency, it is a tool worth installing.