Introduction

When DeepSeek Harness (DSH) runs in a WSL environment, it usually needs to be accessed through a terminal. The dsh-wsl-tray plugin solves this problem by providing a Windows desktop shortcut and a system tray launcher for DSH running in WSL, allowing developers to operate it directly from the desktop.

Plugin Introduction

dsh-wsl-tray is a DeepSeek Harness (DSH) plugin that provides a desktop shortcut and a system tray launcher for WSL deployments.
* Maintainer: liyu34
* License: MIT
* Positioning: Client plugin

Core Features

The plugin includes the following core capabilities:
1. Desktop Shortcut: Double-click the “DeepSeek Harness” desktop shortcut to start DSH in the background or reuse an existing instance.
2. System Tray Menu: Right-clicking the tray icon provides a set of actions: open the web page, regenerate the shortcut, restart the service, pause/resume the daemon, and exit.
3. Watchdog Daemon: Automatically detects DSH status and restarts it if detection fails. It pauses after reaching the maximum number of failures and automatically resumes when the service is restarted or DSH becomes healthy.
4. Configuration Card: In the DSH Web plugin configuration card, you can view the real-time status and watchdog logs, and use the “Rebuild shortcut” button.
5. No Console Window: Launched via wscript.exe and VBS, the process runs without a console window.

Installation

The installation command is as follows:

dsh plugin --profile web add dsh-wsl-tray

After installation, restart dsh web and find the WSL Desktop and Tray card in settings.

Usage

  1. Start: Double-click the desktop shortcut to start DSH.
  2. Open Web: Double-click the tray icon or use the right-click tray menu to open the DSH web page.
  3. Rebuild Shortcut: If the shortcut stops working, click Rebuild in the plugin configuration card; no manual WSL operations are needed.

How It Works

The plugin implements its features via the following flow:
1. Startup Flow: The desktop shortcut points to wscript.exe, which runs a VBS script to start a hidden PowerShell tray process. The tray process starts start.sh inside WSL via wsl.exe.
2. Watchdog Logic: The tray process runs an internal daemon that periodically probes the DSH Web URL. If probes fail and reach the threshold (default 3), it triggers a restart. If consecutive restarts fail and reach the upper limit (default 3), it enters a paused state until manually resumed or DSH recovers.
3. Logging: The watchdog’s probe results, restart actions, and status changes are recorded in watchdog.log.

Notes

  1. Environment Requirement: Supports WSL only; non-WSL hosts cannot use it.
  2. Version Requirement: DSH Web version must be 0.1.0-rc.7 or later.
  3. System Dependencies: The system must have wscript.exe, powershell.exe, and wsl.exe installed.
  4. Process Relationship: The watchdog depends on the tray process; exiting the tray stops the watchdog and the DSH instance.