Evidence snapshot reviewed Sep 16, 2026GitHub checked Aug 21, 2026
Evidence-verifiedPlugin BundleFiles & DocumentsWeb Profile

DSH File Explorer

A read-only Files tab for browsing and previewing a DeepSeek Harness session workspace.

At a glance

What it does

A read-only Files tab for browsing and previewing a DeepSeek Harness session workspace.

Use cases
Files & DocumentsFilesUIDocumentation
Works with
Deepseek HarnessWeb
Compatibility

Web Profile
DeepSeek Harness 0.1.5-rc.2; Node >=22.19.0

Trust & status

Evidence-verified
Checked Sep 12, 2026, 2:23 PM UTC

Code-evidenced contributions

What it adds to DSH

Web UIFiles conversation tab

Adds a read-only workspace tree and format-aware preview beside Chat and Trajectory.

Mechanism evidence

Before you choose it

Adds a Files tab beside Chat and Trajectory on the Harness Web surface. Browse the session workspace as a tree, open several files in tabs, and preview Markdown, JSON, supported source formats, images, or plain text.

Best for

DeepSeek Harness Web users who need to inspect files produced or used in a session without leaving the conversation view.

Common tasks

  • Browse the session working directory one level at a time.
  • Preview Markdown as rendered content or source, inspect strict JSON as a collapsible tree, and view supported code with syntax highlighting.
  • Open images or copy the source text of a previewed file.

Permissions and data

Read-only workspace-file viewing through DeepSeek Harness; the plugin declares no configuration or credentials.

Permissions
  • Uses the Harness `workspaceFiles` remote namespace to read files that the Host filesystem permits.
  • Adds a browser-side Files tab; its Host half is documented as inert.
Data handling
  • Does not write files or add data to the session log.
  • Preview state is held in memory and discarded with the session.
External services
  • Absolute HTTP(S) images in Markdown previews can load; relative workspace images remain inert.
Credentials
  • No plugin-specific credentials are declared.

Limitations

  • Web-only: headless and SDK profiles have no browser tab.
  • Previews are read-only; editing, saving, and diffs are unavailable.
  • Text previews stop at 2,000 lines; binary files cannot be previewed.
  • JSONC is not parsed as JSON, and unsupported source suffixes use plain text.
  • No search, rename, context menu, file watching, or multi-root browsing is provided.

What DSHub checked

  • The immutable source commit, bundle patch, registry identity, and MIT license were captured.
  • The bundle patch mounts @jaxzhou/dsh-file-explorer and documents that unloading removes the Files tab.
  • The manifest declares Node >=22.19.0 and a peer dependency on @deepseek-ai/cordis ^4.0.2.

What DSHub did not check

  • Installation and runtime behavior were not executed during this review.
  • Registry package contents were not audited.

Pinned install

Install DSH File Explorer

This plugin bundle does not have a DSH Plugin install action. Use its source documentation for the delivery method.

Visit the source project

Maintainer source

Project README

View at commit 3d52f3b
Maintainer-authored contentCaptured from README.md on Sep 12, 2026. The text and repository-relative media are fixed to commit 3d52f3bc7dac with content hash e97839c57072; provider-hosted badges may update independently. README commands are upstream documentation; the DSHub copy action above is the verified, version-pinned install.

dsh-file-explorer

npm license

English | 中文

Published on npm as @jaxzhou/dsh-file-explorer — the unscoped name dsh-file-explorer belongs to a different author's plugin.

A Files tab for DeepSeek Harness, beside Chat and Trajectory: the session workspace as a tree, and a preview that adapts to what the file is — rendered Markdown, a JSON tree, highlighted source, an image, or plain text. Read-only, no configuration, nothing stored.

dsh plugin --profile web add @jaxzhou/dsh-file-explorer
dsh --profile web

Demo

The Files tab beside Chat and Trajectory: a workspace tree on the left, and
on the right a preview that highlights source, renders Markdown and JSON, and
offers a Rendered/Source toggle

30 seconds — click for the full-quality MP4.

What you get

The left pane is the session's working directory, listed one level at a time, directories first. An expanded level stays expanded while you move between preview tabs.

Clicking a file opens it in a tab, so several files stay open at once — each with its own body and its own wrap setting. A file that is already open is focused rather than reopened, tabs whose names collide show their directory, and the tab's × or a middle click closes one.

The right pane picks each tab's body from the file:

Category Preview
Markdown Rendered GFM — headings, tables, task lists, quotes, math, footnotes, highlighted code fences — with a Source toggle
JSON A collapsible tree with per-value copy, and the same toggle
Source code Syntax highlighting, line numbers, and a copy button for 24 grammars: TypeScript/JavaScript, shell, Python, Ruby, Go, Rust, Java, C, C++, C#, Kotlin, Swift, PHP, YAML, TOML, INI, HTML, CSS, SCSS, Less, SQL, XML, Lua, MDX
Images PNG, JPEG, GIF, WebP, AVIF, BMP, ICO and SVG, drawn to the pane. An SVG goes through <img>, so its scripts never run
Anything else Numbered plain text — an unmapped suffix (.vue, .proto, .txt) stays plain rather than guessing a wrong grammar

Text previews wrap at their spaces and keep every word whole; an image reads its complete bytes. Every text body carries a Copy control in the pane's toolbar, which copies the file's own text — a rendered Markdown document copies its Markdown source.

Requirements

DeepSeek Harness 0.1.5-rc.2 on the Web surface — dsh web, or a profile composed from @deepseek-ai/dsh-base + @deepseek-ai/dsh-web-app. A headless or SDK profile has no browser and gets no tab. The plugin declares no configuration, so nothing in cordis.yml needs setting.

Install

dsh plugin --profile web add @jaxzhou/dsh-file-explorer
dsh --profile web                 # bundle membership is read at startup

A custom profile needs the Web composition first:

dsh --profile myprofile --from-default-profile web
dsh plugin --profile myprofile add @jaxzhou/dsh-file-explorer
dsh --profile myprofile

Prefer a checkout or a git ref? Nothing needs building — the runtime artifacts are committed:

dsh plugin --profile web add /path/to/dsh-file-explorer
dsh plugin --profile web add github:jaxzhou/dsh-file-explorer

Then open a session that has a workspace and click Files. To confirm the layer landed:

dsh --profile web --dump-config | grep -A 2 jaxzhou-file-explorer

Disable or uninstall

Disable the tab without uninstalling by adding an override to the profile's cordis.patch.yml — it is applied after every bundle layer, and a patchReload: live profile picks it up without a restart:

- id: jaxzhou-file-explorer
  disabled: true

Uninstall with dsh plugin --profile web remove @jaxzhou/dsh-file-explorer, then restart the profile.

Privacy

  • Read-only. Reads go through the harness's own workspaceFiles Remote namespace; the Host's filesystem decides what is readable. The plugin holds no file access, no path resolution, and no credentials of its own.
  • Nothing stored. No disk writes and nothing added to the session log; view state lives in memory and is discarded with the session.
  • Inert Host half. The package's Node side registers no service, tool, prompt section, or event.

Known limitations

  • Preview only — no editing, saving, or diffing.
  • Strict JSON. Comments or a trailing comma make a file JSONC, which JSON.parse rejects — tsconfig.json is the common case. The pane says so and shows the highlighted source instead of guessing at a tree.
  • Text previews stop at 2 000 lines, with a truncation note and no "load more"; binary files report why they cannot be shown.
  • Fixed grammar set. A suffix the shared highlighter does not carry is plain text, never an approximation.
  • Listing only — no search, rename, context menu, or file watching; a level refreshes through Reload.
  • Loaded previews are bounded. A working set of five tabs keeps its content; an older tab stays open and reads again when you return to it.
  • One root. The tree is rooted at the session's working directory, and the Host refuses directory listings outside the workspace root.
  • Markdown has no workspace vocabulary. Relative image paths and file mentions stay inert; only absolute http(s) images load.

Contributing

Build, checks, the artifact model, and how the client bundle reaches the browser: CONTRIBUTING.md.

License

MIT — see LICENSE.

Operate deliberately

Install and manage

Prerequisites and target Profile

Target Web Profile

Delivery Dsh Bundle Git — jaxzhou/dsh-file-explorer#3d52f3bc7dac2ffecc39ad7f8d8ed0b77ee8529b

Verify, update, and remove

Show lifecycle commands
Verify
dsh plugin --profile web list

Compatibility and access

DeepSeek Harness Web surface required DeepSeek Harness 0.1.5-rc.2; Node >=22.19.0

Review compatibility evidence

Risk facts

Workspace Data Access

Displays files that the Harness workspace-files namespace makes readable.

Evidence
Remote Content

Markdown previews may load absolute HTTP(S) images.

Evidence
Evidence and editorial reviewManifest, Bundle patch, distribution and freshness

Immutable evidence

Review status and source activity

AI reviewed

Use the scoped package name @jaxzhou/dsh-file-explorer; the README says the unscoped name belongs to another author.

AI reviewed Sep 12, 2026, 2:24 PM UTCGitHub facts last checked Sep 12, 2026, 2:24 PM UTC

No material source change has been recorded since this evidence baseline.

Next step

Follow the Plugin installation workflow

Subscribe to material changes for DSH File Explorer