The philosophy of DeepSeek Harness (DSH) is “everything is a plugin.” In a Windows environment, an agent needs to call WSL to execute Linux commands, manage distributions, or convert paths. The following section introduces a bridge plugin that directly exposes WSL capabilities as native DSH tools.

This is a WSL (Windows Subsystem for Linux) bridge plugin for DeepSeek Harness (dsh), maintained by WODE25500. It allows an agent to run Linux commands in WSL, manage distributions, convert Windows ↔ WSL paths, and copy files across systems.

Core Features

The plugin provides 5 native DSH tools:

  • wsl_run: Execute Linux commands in WSL.
  • wsl_distro_list: List installed distributions and their status.
  • wsl_status: Check WSL system status and warnings.
  • wsl_path_convert: Convert paths between Windows and WSL.
  • wsl_copy: Copy files across systems.

Other features include:

  • Automatic encoding handling: Automatically handles WSL UTF-16LE output encoding and resolves garbled pipe output issues.
  • Distribution management: Supports specifying distributions and configuring a default distribution.
  • Path conversion: Wraps wslpath to provide reliable path conversion.
  • Configuration and compatibility: Supports Schemastery configuration plus a bundle patch layer, as well as explicit error handling.

Installation and Enablement

Add the following configuration to the DSH bundle profile:

- insert:
    - id: wsl
      name: './src/index.js'
      config:
        wslPath: wsl
        defaultDistro: Ubuntu
        timeoutMs: 120000

Typical Usage

After installation, the tools above can be called directly. For example:

  1. Use wsl_status to check WSL status.
  2. Use wsl_run to run python3 --version.

Notes

  • Environment dependency: If virtualization is not enabled, WSL2 cannot start and commands will return HCS_E_SERVICE_NOT_AVAILABLE. This is an environment issue, not a plugin bug.
  • Command semantics: wsl_run uses sh -lc semantics and is not suitable for interactive input or TUI programs.
  • Encoding compatibility: WSL output encoding is mixed (UTF-8 Chinese errors + UTF-16 body), and the plugin performs dual decoding as a fallback.

The plugin provides DSH with a standardized entry point for interacting with WSL. For more details, see the plugin directory or GitHub repository.