DeepSeek Harness (DSH) uses a plugin-based architecture. When using the WSL subsystem in a Windows environment, the model can easily confuse Windows and Linux path formats or default to Windows Shell syntax when executing commands. The dsh-wsl-env plugin solves the above problem by injecting environment information into the system prompt.

Plugin Overview

dsh-wsl-env is a plugin for DeepSeek Harness, maintained by 173787247. Its core role is to inject WSL and Windows path mappings, Shell facts, and specific configurations into the model’s system prompt, allowing the model to correctly recognize paths and perform operations in a WSL environment.

Core Features

This plugin primarily provides the following factual information:

  • Environment Identification: Provides the distribution name and Linux user information.
  • Path Mapping: Provides path conversion rules from C:\Users\... to /mnt/c/Users/....
  • Filesystem Caveats: Provides guidance on CRLF line endings and Git-related considerations under the /mnt/c mount point.
  • Working Directory Priority: Instructs the model to prefer the Linux home directory over Windows mount points for everyday work.
  • Node 24 Proxy Configuration: Set NODE_USE_ENV_PROXY=1 when using Node 24 and relying on the HTTP(S)_PROXY environment variables.

Installation and Enablement

Install the plugin from the command line:

dsh plugin --profile web add github:173787247/dsh-wsl-env

After installation, you must restart the dsh web service to apply the changes. Existing sessions will retain the original prompt; open a new session for the changes to take effect.

Verifying Installation

After installation, you can confirm that the plugin is active by following these steps:

  1. Send any message.
  2. Open the Trajectory interface.
  3. Go to the SYSTEM tab.
  4. Search for the keyword Windows Subsystem for Linux.

If you see text containing the distribution name and path mappings, the injection was successful.

Configuration Notes

The plugin supports adjusting the injection policy through YAML configuration. The config field in the configuration file replaces the entire object, so you must restate all reserved keys when modifying it.

- id: dsh-wsl-env
  name: dsh-wsl-env
  config:
    when: wsl          # wsl 或 always
    order: 15          # 提示词部分的顺序
    extraNotes: "Prefer /home over /mnt/c for new files."

The main configuration items are as follows:

Key Default Value Meaning
when wsl Inject only in WSL environments, or set to always for global injection
order 15 Controls the order in which this section appears in the prompt
extraNotes "" Additional notes added by operators

Use Cases and Considerations

  • Ecosystem: This is part of the dsh-wsl-kit suite. It is recommended to use the KIT_SET=daily, llm, github, or full configuration sets.
  • Environment Detection: Non-WSL hosts skip injection by default (when: wsl).
  • Version Requirement: DeepSeek Harness version >= 0.1.2 is required.
  • Directory Note: The plugin directory https://www.skillhub.cn/plugins/173787247/dsh-wsl-env is a community plugin directory and has no official affiliation with DeepSeek / High-Flyer.

This plugin reduces the error rate of cross-filesystem operations by correcting the model’s environment awareness.