Bundle
relay-dsh-plugin-files
Workspace file explorer plugin for the Relay workbench in DeepSeek Harness.
- Source
- yangbobo2021
- License
- MIT
- Updated
- Updated 6 days ago
Readme
# Relay DSH Files Plugin > **Now supports DSH `0.1.2-rc.1` while retaining `0.1.2-alpha.3` compatibility.** Plugin `0.2.2` is verified on both releases. [Install it from npm](https://www.npmjs.com/package/relay-dsh-plugin-files) · [Compatibility evidence](https://github.com/yangbobo2021/Relay/tree/codex/relay-foundation/dsh-lab/dsh-0.1.2-rc.1-20260903). > **Release channels:** `latest` → `0.2.2`; `next` → `0.2.1-rc.1`. ```bash npx @deepseek-ai/dsh@0.1.2-rc.1 plugin --profile web add relay-dsh-plugin-workbench@0.2.3-rc.1 relay-dsh-plugin-files@0.2.3-rc.1 npx @deepseek-ai/dsh@0.1.2-rc.1 web ``` [](https://www.npmjs.com/package/relay-dsh-plugin-files) [](https://github.com/yangbobo2021/relay-dsh-plugin-files/actions/workflows/ci.yml) [](https://www.npmjs.com/package/relay-dsh-plugin-files) [](https://github.com/yangbobo2021/relay-dsh-plugin-files/stargazers) [](LICENSE) [](https://github.com/deepseek-ai/deepseek-harness) [](.github/workflows/release.yml) English | [中文](README.zh.md) **npm package:** [`relay-dsh-plugin-files`](https://www.npmjs.com/package/relay-dsh-plugin-files) · [All Relay DSH plugins](https://github.com/yangbobo2021/Relay/blob/codex/relay-foundation/docs/dsh-plugins.md) [](https://github.com/yangbobo2021/Relay/blob/codex/relay-foundation/docs/dsh-plugins.md) *Real npm-installed demo on official DSH: Files opens the Relay workspace `README.md` beside a live conversation. [Watch the H.264 MP4](https://github.com/yangbobo2021/Relay/blob/codex/relay-foundation/docs/media/dsh-plugin-suite-demo.mp4?raw=1).* `relay-dsh-plugin-files` adds a right-side workspace file explorer to the official [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (DSH) Web UI. It lets you browse the active workspace and preview text files without leaving the conversation. The plugin uses `relay-dsh-plugin-workbench` as its panel host. Install Workbench in the same DSH Profile.  The screenshot was captured from official DSH `0.1.1-rc.2` with Workbench, Files, and Terminal installed. Files works without Terminal; the combined screenshot shows the shared Workbench shell. ## Do I Need This Plugin? Install this plugin when you want to: - browse the files in the workspace used by a DSH conversation; - preview source files, Markdown, JSON, logs, and other UTF-8 text files; - keep using official DSH while adding a file panel through the plugin system. You do not need this plugin if you only use DSH chat and never inspect workspace files inside the browser. ## Quick Start With Official DSH The current development build has been validated with: - DeepSeek Harness `0.1.1-rc.2`, commit [`b150a551`](https://github.com/deepseek-ai/deepseek-harness/commit/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e) - Node.js 22.13 or newer - `pnpm` available on `PATH` DSH is a developer preview and may introduce compatibility-breaking changes. ### 1. Install Stop a running DSH Web process before changing Profile plugins. #### GitHub development build Use this when you want the latest unreleased development build: ```bash pnpm dlx @deepseek-ai/dsh@0.1.2-rc.1 plugin --profile web add github:yangbobo2021/relay-dsh-plugin-workbench#main github:yangbobo2021/relay-dsh-plugin-files#main ``` For a reproducible install, replace each `#main` with a tag or full commit SHA. The Workbench package is listed explicitly because DSH's pnpm profile blocks GitHub packages as transitive dependencies. #### npm release Install the published packages with: ```bash pnpm dlx @deepseek-ai/dsh@0.1.2-rc.1 plugin --profile web add relay-dsh-plugin-workbench@latest relay-dsh-plugin-files@latest ``` ### 2. Start or restart DSH Web ```bash pnpm dlx @deepseek-ai/dsh@0.1.2-rc.1 web ``` If you already have a `dsh` command installed, `dsh web` is equivalent. Restart DSH Web after installing, updating, or removing plugins. ### 3. Open a workspace In DSH Web: 1. Open the DSH URL printed by the terminal. 2. Complete the first-launch screen if DSH shows one. 3. Create or select a conversation that has a workspace directory. 4. Open the Workbench side panel and choose `Files`. 5. Click a text file to preview it. If no workspace session is selected, the panel asks you to open a workspace session first. ## What It Provides - A `Files` view in the Workbench side panel - Workspace file tree loading through DSH Agent identity - Workspace containment checks, so previews stay inside the active workspace - Bounded UTF-8 text previews for practical browser use - A filter box for quickly narrowing visible files - Composition with the shared Workbench shell Binary files, very large files, and paths outside the workspace are not previewed as plain text. ## Plugin Boundary and Relay This plugin owns only the Files view. It does not depend on Codex, Claude, Relay Events, or any private Relay runtime. It communicates with the shared Workbench shell through the public plugin contract. The repository is maintained as part of [Relay](https://github.com/yangbobo2021/Relay), an open-source project for long-running agent work, external-event delivery, reusable DSH workbench views, and multiple conversation backends. ## Update, Inspect, or Remove Stop DSH Web before changing plugins, then restart it afterward. ```bash dsh plugin --profile web why relay-dsh-plugin-files dsh plugin --profile web update relay-dsh-plugin-files dsh plugin --profile web remove relay-dsh-plugin-files ``` For GitHub installs, `pnpm` records the package source inside the DSH Profile. Run `dsh plugin --profile web why relay-dsh-plugin-files` to inspect it. ## Troubleshooting ### The Files panel does not appear Restart DSH Web after installing the plugin. Then inspect the Profile: ```bash dsh plugin --profile web why relay-dsh-plugin-files ``` If the package came from GitHub `main`, try pinning a known commit SHA. ### The panel says to open a workspace session Create or select a DSH conversation that has a workspace directory. The Files plugin reads files from the active workspace, not from an arbitrary folder on your machine. ### A file does not preview The plugin previews bounded UTF-8 text content. Binary files, very large files, and paths outside the active workspace may be hidden or reported as unavailable. ### Installation says pnpm is missing Install pnpm using the official guide: <https://pnpm.io/installation>. ## Development ```bash git clone https://github.com/yangbobo2021/relay-dsh-plugin-files.git cd relay-dsh-plugin-files npm install DSH_ROOT=/path/to/deepseek-harness npm run verify npm pack ``` `npm run verify` runs type checking, tests, and the production build against an official DSH checkout. ## Feedback Report bugs and feature requests in this repository's issue tracker: <https://github.com/yangbobo2021/relay-dsh-plugin-files/issues>
Install
dsh plugin --profile web add github:yangbobo2021/relay-dsh-plugin-files
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install relay-dsh-plugin-files from the hub
- This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.