Introduction

In the Windows Subsystem for Linux (WSL) environment, the default encodings of cmd and PowerShell are often inconsistent with the UTF-8 encoding expected by the Linux kernel. This discrepancy can cause garbled text when agents run scripts, or cause pipeline (pipe) operations to abort due to encoding mismatches. The dsh-wsl-encoding plugin is designed to address this issue by providing diagnostic tools and handling CRLF samples to ensure consistent environment configuration.

Plugin Scope

This is a client plugin for DeepSeek Harness (DSH), intended for diagnosing and fixing encoding issues in WSL environments. It is maintained by user 173787247 and is part of the dsh-wsl-kit suite, released under the MIT License.

Core Features

The plugin provides two main capabilities:

  1. Encoding check: Detects the current encoding environment and distinguishes between UTF-8 and the Windows default code page.
  2. CRLF sample handling: Provides optional CRLF (carriage return and line feed) sample generation. This is mainly used to fix potential pipefail interruption issues when running bash scripts under the /mnt/c path.

Installation and Activation

Before installing, make sure the environment requirements are met (see Notes below).

Run the following command in the command line to install the plugin:

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

After installation, the plugin starts with the DSH process and provides the corresponding diagnostic tools.

Usage Examples

After installation, you can use it in the following ways:

  1. Run tests:
    Execute test commands in the project to verify the environment configuration:
    npm test
  1. Diagnose encoding:
    Use the built-in encoding_doctor tool to check the UTF-8 and Windows code page status of the current environment.

Notes

Before using this plugin, be aware of the following dependencies and limitations:

  • Version dependencies:
    • DeepSeek Harness (dsh) version must be >= 0.1.2.
    • Node.js version must be >= 18.
  • Suite membership: This plugin is part of the dsh-wsl-kit suite. If using the full suite, refer to the suite’s version compatibility notes.
  • LLM configuration: The plugin itself does not configure the Cloud Flash model ID. If you need to use the V4.1 Flash model, manually specify the model ID as deepseek-flash in ~/.dsh/settings.yaml or the llm-deepseek configuration item.

Summary

dsh-wsl-encoding resolves common conflicts between Windows console encoding and the Unix tool chain in WSL environments. By providing clear diagnostic methods and a CRLF fix, it helps maintain the stability of the agent development environment. For more details and source code, refer to the plugin directory page or GitHub repository.