DeepSHPlugins
dsh-wsl-workspace-picker 项目预览
GITHUB / COMMUNITY PROJECT

dsh-wsl-workspace-picker

UI 增强JavaScriptMIT

Web UI 增强版工作区目录选择器:WSL 下 /mnt Windows 盘符一键直达、完整面包屑层级与常显路径输入框。

1 StarsWilliamShi666 更新时间 2026-08-17
访问 GitHub 仓库
dsh-wsl-workspace-picker 项目预览

项目介绍

中文

Web UI 增强版工作区目录选择器:WSL 下 /mnt Windows 盘符一键直达、完整面包屑层级与常显路径输入框。

English

Enhanced workspace directory browser for the web UI: one-click access to /mnt Windows drives under WSL, full breadcrumb ancestry and an always-visible path input.

项目信息与收录信号

快照 2026-09-11
作者 / 组织
WilliamShi666
仓库
WilliamShi666/dsh-wsl-workspace-picker
GitHub Stars
1
Forks
0
开发语言
JavaScript
许可证
MIT
最近推送
2026-08-17
Manifest
数据中检测到声明

公开仓库不自动等于可商用;许可证与当前兼容性以原项目文档为准。Manifest 和数据评分不构成安装安全认证。

数据评分

51/ 100
维护活跃
83
文档与实用信息
85
生态关注度
9
安装便捷信号
75
项目声明信号
100

README 含完整安装与使用说明;关注度尚低(1)。

评分来自已有数据快照的五维模型,仅作浏览参考,不是实际使用评测或安全检测结论。

安装与使用

所有项目资料与许可均以对应 GitHub 仓库为准。

dsh plugin --profile web add dsh-wsl-workspace-picker

复制命令不会自动执行。请先阅读仓库文档,确认环境要求与许可证。

项目截图

仓库 README

GitHub 原文

已保存的仓库文档快照;文档抓取时间未记录,可能与上方目录介绍处于不同版本。安装前请核对当前仓库说明。

dsh-wsl-workspace-picker

Awesome DSH Plugin

Enhanced workspace-directory browser for the DeepSeek Harness web UI: quick access to /mnt Windows drives, full breadcrumb ancestry from the filesystem root, and an always-visible path input.

| 中文说明 |

Screenshot

dsh-wsl-workspace-picker dialog

The enhanced "Select Workspace Directory" dialog: quick-access chips for /mnt Windows drives at the top, the always-visible path input, and full breadcrumbs from /.

Why

The stock in-app directory picker (the dialog behind the sidebar workspaces "+" button and the conversation-hero workspace picker) starts at the Linux home directory and folds its breadcrumbs at home. Under WSL, Windows drives live at /mnt/c, /mnt/d, … — reachable only by typing a path into a barely visible pencil-glyph editor that most users never find, and never clickable through the breadcrumbs at all.

This plugin shadows the stock dialog with a single-pane browser that makes every path reachable:

  • Quick-access chips — Home, /, /mnt, /mnt/c, /mnt/d, /mnt/e, /mnt/f — one click to any Windows drive under WSL.
  • An always-visible path input — type any absolute path (e.g. /mnt/d/projects) and press Enter.
  • Full breadcrumb ancestry from / — click up and down through the whole filesystem; no more home-folding dead end.
  • New-folder creation and a hidden-files toggle, like the stock dialog.

Install

dsh plugin --profile web add dsh-wsl-workspace-picker

Restart dsh web and refresh the browser page. Open the workspace picker via the sidebar workspaces "+" button (or the conversation-hero workspace picker) — the enhanced dialog appears in place of the stock one.

Uninstall:

dsh plugin --profile web remove dsh-wsl-workspace-picker

How it works

The browser half of this dual-face package registers into both directoryFlow slots (sidebar.workspaces.directoryFlow and conversation.hero.workspace.directoryFlow) at slot priority −10. DSH's slot system is shadowing: the lowest-priority occupant of a slot renders, so priority −10 replaces the stock browse dialog (registered at priority 0) in both entry points. The stock plugin stays loaded and untouched, and uninstalling this plugin restores it.

The listing itself reuses the host's existing browse capability over the client runtime (ctx.workspaces.listDirectory / createDirectory) — no host-side code, no filesystem access of its own.

dsh-wsl-workspace-picker/
├── package.json      # dsh.bundle.patch + dsh.client (dual-face declaration)
├── cordis.patch.yml  # loader-entry insertion
├── scripts/build.mjs # ESBuild: src/ → lib/
├── src/
│   ├── client.tsx    # browser half (TypeScript source)
│   ├── styles.ts     # dialog stylesheet + injection
│   └── index.ts      # host half (empty apply)
└── lib/
    ├── index.js      # host half (built)
    └── client.js     # browser half (built: __ModuleLoader__ bundle)

The browser half is written in TypeScript and compiled with ESBuild (npm run build). Runtime imports (react, react/jsx-runtime, @deepseek-ai/dsh-client-ui-primitives, …) are external: they resolve through the web shell's module table at load time, exactly like the official client bundles. npm run typecheck runs tsc --noEmit.

Compatibility

  • DeepSeek Harness 0.1.0-rc.6 and later (web profile)
  • Any host where /mnt/<drive> Windows mounts exist (WSL); on other hosts the chips simply list directories that may not exist
  • Locales: English, 简体中文 (follows your UI language)

Security & scope

Pure UI plugin. It adds no host-side behavior, opens no network connections, and only lists/creates directories through the same host browse capability the stock dialog already uses — with whatever file-sandbox policy your profile has in effect.

License

MIT

使用前核对

安装步骤、兼容版本与授权范围以原项目当前文档为准。Stars 和评分是快照中的导航信号。

安装与排错 · 项目问题反馈

同类项目