173787247/dsh-wsl-env

Inject WSL/Windows path and shell facts into the DeepSeek Harness system prompt.

Project Overview项目介绍

A DeepSeek Harness plugin that injects WSL and Windows path and shell facts into the system prompt, so the model prefers Linux paths, understands /mnt/c mapping, and avoids CRLF, git, and Node 24 proxy pitfalls. Use it when an agent runs inside WSL but the model still defaults to Windows-style commands. Restart dsh web and open a new session, because existing sessions keep the old prompt. Set when: always to inject on non-WSL hosts too.

DSH 插件,向 system prompt 注入 WSL 与 Windows 路径及 shell 事实,让模型在 WSL 中优先用 Linux 路径,理解 /mnt/c 映射,避开 CRLF、git 与 Node 24 代理问题。安装后重启 dsh web 并开新会话。配置 when: always 可在非 WSL 环境也注入。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

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

173787247/dsh-wsl-env 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-wsl-env

Install set: part of dsh-wsl-kit. Prefer KIT_SET=daily | llm | github | full (see kit README). Fault tree: TROUBLESHOOTING.md.

DeepSeek Harness plugin: inject WSL / Windows path and shell facts into the system prompt.

Part of dsh-wsl-kit.

中文说明 → README.zh.md


Compatibility

Field Value
Plugin dsh-wsl-env 0.3.0
Minimum dsh 0.1.2 (web UI one-shot ?token= on Windows relay :3081)
Latest verified See dsh-wsl-kit Compatibility (currently 0.1.5-rc.1) — single source of truth for the suite
Kit set daily (also in github / full; fetch+net also in llm)
Cloud Flash Use model id deepseek-flash (V4.1 Flash) in ~/.dsh/settings.yaml / llm-deepseek — not configured by this plugin
Agent Teams Upstream experimental; not required here

Suite floor versions: kit check-plugin-versions.sh. Fault tree: TROUBLESHOOTING.md.

Why

The model often assumes a Windows shell (C:\, PowerShell) even when the agent runs in Linux/WSL. This plugin adds a short system-prompt section so it prefers Linux paths, understands /mnt/c, and knows about Node 24 proxy quirks.

What gets injected

Kept short on purpose:

  • Distro name and Linux user
  • Linux path mapping (C:\Users\.../mnt/c/Users/...)
  • CRLF / git caveats on /mnt/c
  • Prefer Linux home over the Windows mount for day-to-day work
  • NODE_USE_ENV_PROXY=1 when Node 24 must use HTTP(S)_PROXY

Install

dsh plugin --profile web add github:173787247/dsh-wsl-env
# or:
dsh plugin --profile web add /absolute/path/to/dsh-wsl-env

Restart dsh web. Open a new session (existing sessions keep the old prompt).

Verify

  1. Send any message.
  2. Trajectory → SYSTEMSystem Prompt (not the Tools tab).
  3. Search for Windows Subsystem for Linux.

You should see the distro name and path mapping. The UI concatenates sections, so the internal id runtime:wsl-windows may not appear as a heading.

Non-WSL hosts skip injection by default (when: wsl).

Config

Later profile layers that set config replace the whole object—restate every key you keep:

- id: dsh-wsl-env
  name: dsh-wsl-env
  config:
    when: wsl          # or: always
    order: 15
    extraNotes: "Prefer /home over /mnt/c for new files."
Key Default Meaning
when wsl Inject only in WSL, or always
order 15 Prompt section order
extraNotes "" Extra operator notes appended to the section

Test

npm test

License

MIT

上一个 Prev dsh-alive 下一个 Next dsh-session-archive