工具与能力
#dsh-plugin#dsh-plugin-desktop#dsh-plugin-market#dsh-plugins#deepseek-harness#deepseek-harness-plugin
dsh-workspace-explorer-picker
liell
@liell
⬇ 2
★ 0
main
安装
dsh plugin --profile web add github:liell/dsh-workspace-explorer-picker
需要可复现安装时,可在仓库后追加 #commit 固定提交。
该插件未提供要点说明,请参考仓库 README。
dsh-plugindsh-plugin-desktopdsh-plugin-marketdsh-pluginsdeepseek-harnessdeepseek-harness-plugin
- 安装并启动 DeepSeek Harness:
npx @deepseek-ai/dsh web - 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
- 用 dsh plugins list 确认已安装,必要时重启 Harness 生效
插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。
| 代码仓库 | github.com/liell/dsh-workspace-explorer-picker |
| 许可证 | MIT |
| 主要语言 | main |
| 下载量 | 2 |
| GitHub 星标 | 0 |
| 最近推送 | 2026-08-26 |
| 收录日期 | 2026-09-19 |
| 分类 | 工具与能力 |
事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。
以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。
# dsh-workspace-explorer-picker
[](LICENSE)
[](#requirements)
[](#)
[](https://www.npmjs.com/package/dsh-workspace-explorer-picker)
> A **DeepSeek Harness Desktop** plugin that opens the native **Windows Explorer folder picker** directly when you add a workspace - no more in-app directory browser.
Clicking **Add workspace** in DeepSeek Harness Desktop normally opens a directory
browser rendered inside the web GUI. This plugin skips that dialog entirely and
opens the real **Windows Explorer** folder chooser immediately - the same native
dialog the shell already uses for its "Choose with Windows" action.
## Features
- Opens the **native Windows Explorer folder dialog** directly from "Add workspace"
(both the conversation hero and the sidebar).
- **Renderless** client plugin - no UI of its own to maintain.
- Uses the desktop shell's own picker (Electron `dialog.showOpenDialog`) - full
Explorer experience (Quick Access, breadcrumbs, search, New folder).
- **Survives DSH Desktop updates**: installed under `$DSH_HOME` (user profile),
never inside `Program Files`.
- **Idempotent installer** (`install.ps1`) for quick setup on any machine.
- **No volume restrictions**: pick any accessible folder, including exFAT/FAT32
and network volumes.
- **Market-ready**: declares `dsh.bundle.patch`, so it can be installed from the
DSH Community Market / npm.
## Table of Contents
- [Requirements](#requirements)
- [Install](#install)
- [Market & npm](#market--npm)
- [How it works](#how-it-works)
- [Uninstall](#uninstall)
- [Troubleshooting](#troubleshooting)
- [Development](#development)
- [Publishing](#publishing)
- [License](#license)
## Requirements
| Requirement | Detail |
| --- | --- |
| OS | **Windows** (the Explorer chooser is a Windows-only shell feature) |
| App | **DeepSeek Harness Desktop** (the Electron desktop app) |
| GUI entry | The app window, or the browser tab the app opens (the desktop picker bridge must be present) |
Outside the desktop shell, the plugin falls back to the host directory-picker seam.
## Install
### Automatic (recommended)
Requires PowerShell. From the repository root:
```powershell
powershell -ExecutionPolicy Bypass -File .\install.ps1
```
What it does:
1. Copies the plugin into `$DSH_HOME\profiles\node_modules\dsh-workspace-explorer-picker\`
(`$DSH_HOME` defaults to `~/.dsh`).
2. Appends the activation rows to `$DSH_HOME\profiles\desktop\cordis.patch.yml`.
3. Prints a confirmation - then **restart DeepSeek Harness Desktop**.
The script is idempotent: re-running it is safe.
### Manual
1. Copy the `lib` folder, `cordis.patch.yml` and `package.json` to
`$DSH_HOME\profiles\node_modules\dsh-workspace-explorer-picker\`.
2. Append to `$DSH_HOME\profiles\desktop\cordis.patch.yml`:
```yaml
- id: directory-picker
disabled: true
- insert:
- id: directory-picker-explorer
name: 'dsh-workspace-explorer-picker'
```
3. Restart DeepSeek Harness Desktop.
### Verify
After restarting, click **Add workspace** - the Windows Explorer folder dialog
should open immediately. If nothing happens, check the logs under
`%APPDATA%\DSH Desktop\logs\` (see [Troubleshooting](#troubleshooting)).
## Market & npm
DeepSeek Harness Desktop's Community Market installs plugins from **npm** when the
package declares a `dsh.bundle.patch` (this plugin does - see
`cordis.patch.yml`). The bundle patch disables the stock adaptive picker and
inserts this plugin, so the manual profile patch above is **not needed** when the
plugin is installed as a bundle.
1. **Publish to npm** so the market can resolve an install target:
```powershell
npm login
npm publish
```
2. **Get listed in a catalog** (e.g. dshfind): submit your package at
`https://dshfind.com` following their submission flow. The catalog verifies
the repository backlink (`repository` in `package.json` points to your
GitHub repo) before accepting structured install evidence.
3. **Users install** it from the market (Plugins / Market in DSH Desktop
settings): the Host runs `pnpm add dsh-workspace-explorer-picker`, applies
the bundle patch, and adds it to the profile bundles.
## How it works
DeepSeek Harness Desktop composes its web GUI from Cordis bundles and applies a
user patch layer from `$DSH_HOME/profiles//cordis.patch.yml`. The stock
"add workspace" flow fills a UI slot with the in-app directory browser.
This plugin is a *renderless* client plugin that occupies the same directory-flow
slots (`conversation.hero.workspace.directoryFlow` and
`sidebar.workspaces.directoryFlow`) and, on each open, picks a folder:
1. `window.__DSH_DESKTOP_PICK_DIRECTORY__` - the DSH Desktop shell bridge
(Electron `dialog.showOpenDialog` with `openDirectory`) - the Windows Explorer
folder dialog.
2. Fallback: the host `workspaces.pickDirectory()` directory-picker seam.
The patch row `directory-picker` (the stock adaptive picker) is disabled so the
in-app browser never appears.
Because everything lives under `$DSH_HOME`, updates to DSH Desktop (which replace
`Program Files`) never touch the plugin.
## Uninstall
1. Remove the patch rows from `cordis.patch.yml` (see [Manual install](#manual)).
2. Delete `$DSH_HOME\profiles\node_modules\dsh-workspace-explorer-picker`.
3. Restart DeepSeek Harness Desktop.
## Troubleshooting
| Symptom | Cause / Fix |
| --- | --- |
| "Add workspace" still opens the in-app browser | The app was not restarted, or the patch was not applied. Re-run `install.ps1` and restart DSH Desktop. |
| Nothing happens when clicking "Add workspace" | The plugin failed to activate. Check `%APPDATA%\DSH Desktop\logs\` and confirm the package folder exists under `profiles\node_modules`. |
| The picker opens but the workspace is rejected | The workspace service validates the path server-side; pick a directory you can read and write. |
| Pick falls back to the host seam unexpectedly | The GUI was opened without the desktop bridge (e.g. a manually typed URL). Open the GUI through the app instead. |
## Development
The loader only needs `package.json` (with the `dsh.client` and
`dsh.bundle.patch` declarations) and `lib/`. There is no build step:
`lib/client.js` is a `window.__ModuleLoader__.load` bundle mirroring the
structure of the official `@deepseek-ai/dsh-client-ui-directory-picker-native`
plugin.
```
dsh-workspace-explorer-picker/
|-- lib/
| |-- index.js # host half (no-op; the plugin is client-only)
| |-- client.js # browser half: renderless directory-flow occupant
| `-- types/ # TypeScript declarations
|-- cordis.patch.yml # bundle patch (dsh.bundle.patch) - activates the plugin
|-- install.ps1 # idempotent installer for the profile
|-- package.json # dsh.client + dsh.bundle.patch declarations
|-- README.md
`-- LICENSE
```
## Publishing
### npm
```powershell
npm login
npm pack # produce the .tgz (verify the contents)
npm publish
git tag v1.0.0
```
### GitHub
```powershell
git remote add origin https://github.com/liell/dsh-workspace-explorer-picker.git
git push -u origin main
```
## License
MIT - see [LICENSE](LICENSE).
数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。