Introduction

When executing long tasks or complex workflows, the default behavior of DeepSeek Harness (DSH) is often to run silently. For developers, confirming whether it is currently “thinking,” “reading a file,” or “running tests” usually requires frequently switching windows or checking terminal logs. dsh-progress-overlay provides an independent system-level overlay that visualizes task status, letting you keep the full picture of the task without interrupting your current work.

What Is This

dsh-progress-overlay is a Windows-only always-on-top progress overlay plugin. It is maintained by jtt0001 and is licensed under the MIT license.

It does not depend on the DSH main interface or Web UI; it is an independent OS window. Even if the DSH main window is minimized, occluded, or moved to the background, the overlay remains visible. It obtains data by subscribing to DSH’s session/event event bus, and only performs display and simple approval interactions, without interfering with task execution.

Core Features

  • Independent window and no focus stealing: Uses the WS_EX_NOACTIVATE attribute so status updates do not interrupt what you are typing. The only exception is when the user actively clicks the “Open DSH Main Window” menu.
  • Real progress display: Does not fake progress percentages. Progress is displayed only when a DSH todo event provides real completed/total values; otherwise, only the stage and action are shown.
  • Parallel multi-task list: When multiple tasks run simultaneously, the overlay lists each task individually (stage, title, step, elapsed time), with the window height growing automatically; the first entry is the primary task.
  • Status flashing and colors:
    • Light blue: Task completed.
    • Red: Task failed/errored; the overlay will automatically pop up and remain visible.
    • Orange: Approval/confirmation required; the overlay will automatically pop up.
  • Automatic fullscreen hiding and click-through: Automatically hides when a fullscreen application (browser/game/PPT) is active, and restores automatically when it exits. Supports enabling mouse click-through to avoid blocking fullscreen content.
  • Direct approval: When DSH requests approval, the overlay displays “confirmation required + tool name + command/path/reason” and provides “Allow/Reject” buttons, so you can complete the response directly from the overlay.
  • DPI and multi-monitor support: Supports PerMonitorV2 DPI scaling, multi-monitor workspace positioning, and persistent saving of the dragged position.

Install and Enable

Install the plugin via the DSH CLI.

dsh plugin --profile desktop add github:jtt0001/dsh-progress-overlay
# 安装完成后重启 DeepSeek Harness Desktop

The plugin automatically attempts to load resources/dsh-overlay.exe. If security software blocks the unsigned executable, the plugin automatically falls back to PowerShell in-memory compilation mode (functionally equivalent but slightly slower to start). No manual intervention is required; just ensure the plugin directory is not isolated by security software.

Configuration and Interaction

After installation, find the overlay configuration item in the DSH settings interface.

Configuration Options

Key Default Description
enabled true Master switch
opacity 0.92 Overlay card opacity
position remember Position (top-right / top-left / bottom-right / bottom-left / remember)
compactMode false Start collapsed in a single-line display
autoHideOnComplete true After completion, show ✓ and automatically hide after a few seconds
autoHideDelayMs 5000 Dwell time after completion (milliseconds)
hideOnFullscreen true Hide when a fullscreen application is active
clickThrough false Mouse click-through (when enabled, cannot drag/click buttons)
showElapsedTime true Show elapsed running time
showPercentage true Show percentage when real progress is available
showTitle true Show task/session title

Interactions

  • Move: Drag the blank area of the card to move it; after release, the position is automatically validated and saved to the current monitor workspace.
  • Collapse/Hide: Use - to collapse/expand, and use ✕ to hide the overlay (the task continues to run).
  • Right-click menu: Right-click to quickly adjust opacity, toggle mouse click-through, toggle auto-hide, and more (applies locally and immediately).

Technical Implementation and Limitations

  • Platform limitation: Only the Windows platform is supported. The overlay itself is built with .NET Framework 4.8 WPF, and this runtime ships with Windows 10/11.
  • Data source: Data originates from the DSH session event bus (session/event) and shares the data source with the built-in dsh-tauri-pet.
  • Security software: Security software such as 360 may flag the unsigned dsh-overlay.exe as a threat and remove it. If this issue occurs, add the plugin directory to the trusted zone or rely on the PowerShell fallback host.
  • Fullscreen overlay: For DirectX fullscreen mode (such as DirectX fullscreen games), the system layering is determined by the game, and the plugin cannot force itself over the game.

Acceptance

The plugin includes complete unit tests and integration tests.

# 归约器单测
node test/state.test.js

# 路由注册与审批桥接测试
node test/smoke-apply.mjs

Running the tests verifies the event reduction logic, the write-back logic for approval buttons, and whether communication between the overlay and the DSH main process is functioning correctly.