Plugin directory / Developer / Dsh-FileExplorer
Dsh-FileExplorer
Verified · install-tested on dsh bearllfleed
What it does
Add a VS Code-style workspace file browser to DeepSeek Harness (DSH) Web interface: right-side file tree + editable tabs + Markdown read/edit/split view + floating outline + Quick Open search.
Works — verified, early-stage project
Add a VS Code-style workspace file browser to DeepSeek Harness (DSH) Web interface: right-side file tree + editable tabs + Markdown read/edit/split view + floating outline + Quick Open search. It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-plugin-file-explorer
English | 中文
A VS Code-style workspace file explorer for the DeepSeek Harness (DSH) web UI: right-side file tree + editable tabs + Markdown read/edit/split + floating outline + Quick Open.
Features
- File tree: right-side explorer with type-colored icons and collapsible folders; click a file to open it in the center area.
- Right-click menu: right-click the file tree → New File / New Folder / Rename / Delete / Copy Path (like the VS Code explorer).
- Drag-and-drop move: drag a file or folder onto a folder to move it (like VS Code); open tabs update their path automatically when a file is moved.
- Import from your OS: paste files copied in Finder / Windows Explorer (
⌘/Ctrl+V) or drag them in from the desktop — folders keep their structure and name clashes are auto-renamed. - Editable tabs: center tabs (after the conversation/trace tabs) with syntax highlighting, Tab indent,
⌘/Ctrl+Ssave, hover×close, and a right-click menu (Close / Close Others / Close to the Right / Close Saved / Close All / Copy Path / Pin). - Auto-save: configurable "Off / After delay / On focus lost"; a confirm dialog guards closing unsaved files.
- Markdown: Typora/Obsidian-style "Read / Edit / Split" modes; a floating outline on the right in read mode that expands on hover (like ChatGPT's hover bar).
- Quick Open:
⌘/Ctrl+Pfuzzy file search and open (same as VS Code); also reachable via the magnifier button in the sidebar header. - i18n: switches between Chinese and English by following the DSH general setting.
- Editor font: customize the editor font for opened files in the settings panel (monospace contexts).
- Open chat files in-app: clicking a file in the chat (a produced-file chip, an inline path mention, or a tool card's file link) opens it in the explorer editor tab instead of the browser/Finder.
Screenshots
Explorer expanded

Explorer collapsed

File settings

File search

Open file

Markdown outline

Closing an unsaved file

Installation
Requires DSH with an initialized
webprofile (auto-created on firstdsh web).
dsh plugin is DSH's built-in plugin manager; it forwards the arguments to pnpm inside the profile directory. Always use it, not npm install -g — DSH loads plugins from $DSH_HOME/profiles/web/node_modules, and it never reads the global directory (Windows AppData\Roaming\npm), so a global install has no effect.
Prerequisite:
dsh pluginshells out to pnpm, so install pnpm first (npm install -g pnpm), otherwise it fails withpnpm not found on PATH.
Option 1: install from npm
# install into the web profile (equivalent to running `pnpm add` in that profile)
dsh plugin --profile web add dsh-plugin-file-explorer
Option 2: install from GitHub (no npm publish required)
dsh plugin --profile web add github:bearllfleed/dsh-plugin-file-explorer
Update
dsh plugin --profile web update dsh-plugin-file-explorer
Uninstall
dsh plugin --profile web remove dsh-plugin-file-explorer
Check installed / latest version
# version actually loaded (looked up inside the profile)
dsh plugin --profile web list dsh-plugin-file-explorer
# latest on npm
npm view dsh-plugin-file-explorer version
Then enable the plugin
Installing only adds the package as a dependency; you must also register it in the profile's cordis.patch.yml so DSH loads it. Edit $DSH_HOME/profiles/web/cordis.patch.yml and add:
- insert:
- id: file-explorer
name: 'dsh-plugin-file-explorer'
id is a unique identifier in the config tree (customizable); name must be the npm package name.
Restart
dsh web
# then refresh http://127.0.0.1:3080
After install/update you must fully quit and restart the
dsh webprocess (host routes are registered at startup) and hard-refresh the page with⌘/Ctrl+Shift+R(the browser bundle is cached). A plain page refresh won't pick up new features.
New features don't show up after updating?
Check in order:
- DSH not fully restarted — host routes (new file / rename / delete) are registered at process startup; quit
dsh weband start it again, not just refresh the page. - Browser cache — the right-click menu and drag-and-drop live in the browser bundle; hard-refresh or use an incognito window.
- Wrong location / wrong version —
dsh plugin --profile web list dsh-plugin-file-explorershows the actually-loaded version; if it's an old one, it was likely installed withnpm install -ginto the global directory (which DSH ignores). Re-rundsh plugin --profile web add ...above.
Usage
| Action | Shortcut / entry |
|---|---|
| Toggle file tree | file icon in the right activity bar |
| Open a file | click in the tree; or ⌘/Ctrl+P then Enter |
| New / rename / delete | right-click menu in the tree |
| Move a file / folder | drag it onto the target folder |
| Save | ⌘/Ctrl+S |
| Close a tab | hover × on the tab, or right-click menu |
| Markdown mode | "Read / Edit / Split" at the top of the file |
| Markdown outline | hover the right floating bar in read mode |
| Editor font / auto-save | gear button in the sidebar header |
Layout
lib/index.js host (Node) routes: list / read / raw / write / create / rename / delete / files
lib/client.js browser bundle: tree, editor, Markdown, outline, Quick Open
package.json plugin manifest (dsh.client.inject / platform)
Development
After editing lib/, if the plugin is installed via a file: link, sync to $DSH_HOME/profiles/web/node_modules/dsh-plugin-file-explorer/lib/; otherwise re-run dsh plugin add and restart.
License
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install Dsh-FileExplorer for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:bearllfleed/Dsh-FileExplorer Headless (CLI) profile:
dsh plugin --profile headless add github:bearllfleed/Dsh-FileExplorer Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.
When to use it
Extend the agent's coding surface — give it a new tool, workflow, or integration so it handles a dev task it couldn't before.
Who it's for
Developers who want dsh to behave like a teammate on real codebases — editing, running, and verifying changes rather than just answering.
For developers — extending it
The tool/command surface is the seam: expose more of the SDK, add smarter context wiring, or tighten the loop between code changes and verification.