Preface¶
When handling workspace files in the DeepSeek Harness (DSH) Web GUI, it’s common practice to switch out of the browser and open a local file manager or external editor. dsh-workspace-explorer brings this workflow into the Web interface: it adds a “Workspace Files” entry at the bottom of the sidebar, opening a VS Code explorer-style dual-pane panel—a file tree on the left for browsing workspace directories, and a viewer/editor on the right. Below, I’ll cover its positioning, features, installation, usage, and security limitations.
Plugin Positioning¶
3911ee/dsh-workspace-explorer is maintained by 3911ee and licensed under MIT. Its one-line description: adds a “Workspace Files” entry at the bottom of the DSH Web GUI sidebar, opening a VS Code explorer-style dual-pane panel—a file tree on the left for browsing all registered workspace directories, and a viewer/editor on the right.
Core Features¶
File Tree¶
- Automatically lists all registered workspace directories.
- Lazy-loads and expands folder-by-folder, directories first, sorted by name, with indentation guide lines.
- Uses 14px stroke SVG icons colored by language, covering 60+ file extensions.
- Supports creating new files/folders at each workspace root, with inline input—
Enterto create,Escto cancel, and inline error reporting for duplicate names.
File Operations¶
- Inline rename: hover to reveal a pencil button, selects the base name by default, and allows continued editing of the extension.
Entercommits,Esccancels, blur commits; supports Chinese input methods.
Editor¶
- Right-side editor features a line number gutter, path bar, and status bar (size, encoding, unsaved indicator).
- Bottom-right handle allows free drag-to-resize, with a minimum of 380×280.
- “Open with system app” button can invoke the local default program.
Syntax Highlighting¶
- Supports VS Code Dark+ color scheme syntax highlighting: function names, keywords, strings, comments, numbers, types, and properties are color-coded.
- Supports Python, JavaScript/TypeScript/JSX, JSON, HTML/XML, CSS/SCSS/LESS, Markdown, SQL, Shell, YAML/TOML/INI.
- Files over 200 KB automatically fall back to plain text; files exceeding the 256 KB read limit open as read-only previews.
Editing & Saving¶
- In-window editing and saving:
Ctrl+Sor the “Save” button writes to disk. - File size automatically refreshes after saving.
Integration with the DSH Interface¶
- Allows the AI Agent to view the project structure and modify code in real-time, supporting
@filereferences in conversations. - Bilingual interface, following DSH language settings.
- Runs entirely locally, makes no outbound network connections, and uploads no file content.
Installation & Activation¶
Software Requirements¶
- DeepSeek Harness 0.1.0-rc.6 or later.
- The profile type must be a standard
webprofile with a Web interface. pnpmis required when installing plugins.- Tested on Windows; macOS/Linux are theoretically supported—code has cross-platform path handling—but not tested.
Installation¶
The provided installation command is as follows:
dsh plugin --profile web add github:3911ee/dsh-workspace-explorer
The documentation states the npm method becomes available after release:
dsh plugin --profile web add dsh-workspace-explorer
Manual Installation¶
For manual installation, first copy the plugin source code into the web profile’s node_modules, then edit the web profile’s package.json. You need to add the plugin path to dependencies and add the plugin name to the dsh.profile.bundles array:
{
"dependencies": {
"dsh-workspace-explorer": "file:./node_modules/dsh-workspace-explorer"
},
"dsh": {
"profile": {
"bundles": ["dsh-workspace-explorer"]
}
}
}
Verification¶
First, restart the dsh web service, then refresh the browser. Verification steps: a folder icon button appears at the bottom of the sidebar with the hover tooltip “Workspace Files”; clicking it opens the dual-pane panel.
Typical Usage¶
Below is a breakdown of common operations.
-
After installation, restart
dsh weband refresh the browser, then click the folder icon button at the bottom of the sidebar. -
Creating files/folders: click the new button at each workspace root, type the name inline,
Enterto create,Escto cancel. -
Renaming: hover over a file to reveal the pencil button, modify the name,
Enterto commit,Escto cancel, blur to commit. -
Editing & saving: make modifications in the right-side editor, press
Ctrl+Sor click “Save” to write to disk; the file size updates automatically after saving. -
Upgrading: the documentation suggests re-running the GitHub installation command, or having
dsh plugindelegate topnpm update:
dsh plugin --profile web add github:3911ee/dsh-workspace-explorer
- Uninstalling: execute the removal command, then restart
dsh web:
dsh plugin --profile web remove dsh-workspace-explorer
Security & Limitations¶
Data Boundary¶
The plugin runs entirely locally, makes no outbound network connections, and uploads no file content. The documentation also states: no file content or operation logs are collected, recorded, or transmitted; frontend syntax highlighting renders file content after HTML escaping.
Binding Address¶
The plugin’s API exposure matches the DSH Web GUI binding address. The default 127.0.0.1 is recommended and the default secure configuration. If a user binds dsh web to a non-loopback address, the plugin API has no independent authentication—never expose a DSH instance with this plugin directly to the public internet.
Path & Resource Limits¶
- Path validation requires absolute paths; relative and empty paths are rejected.
- New/rename operations only accept single path segments; empty names,
.,.., and names containing path separators are rejected. - Single-level directory listings are capped at 1000 entries.
- File reading defaults to 256 KiB, with a hard cap of 8 MiB; file writing has an 8 MiB limit; request bodies have a 64 KiB cap.
Notes Before Installation¶
The plugin runs with the permissions of the current dsh process, and its file operations are constrained by that process’s accessible scope. Before installing, check the source code, dependencies, and license; the license listed here is MIT. Security fixes are only guaranteed for the latest release; the plugin depends on DSH’s official public interfaces, and if those interfaces change after a major DSH upgrade, follow-up adaptations are required.
Known Limitations¶
- New file/folder creation is only available at each workspace root, not in subdirectories.
- Preview supports only UTF-8 text; binary files display as replacement characters.
- Syntax highlighting is a lightweight regex implementation and may occasionally deviate in complex nested scenarios.
- After uninstalling and restarting
dsh web, it is completely removed; the plugin does not modify DSH built-in files and leaves no residue.
Links¶
The GitHub repository URL provided in the documentation is:
https://github.com/3911ee/dsh-workspace-explorer
This article does not list a directory page link because the documentation did not provide one.