Back to home

sol87

dsh-workspace-reveal

DSH plugin: 'reveal in file manager' row for the Workspace context menu (Windows/WSL Explorer, macOS Finder)

Stars
0
Language
TypeScript
Created
Aug 17, 2026
Updated
Aug 17, 2026

Introduction

dsh-workspace-reveal

English | 中文

A DeepSeek Harness client plugin that adds a platform-labelled "reveal in file manager" row to the Workspace context menu (the menu on a Workspace row in the left sidebar). Selecting it opens the Workspace directory in the Host's native file manager:

  • Windows → File Explorer
  • WSL → File Explorer (the Host translates the path with wslpath before handing it to the Windows desktop)
  • macOS → Finder
  • desktop Linux → the desktop file manager

The row label follows host.describe.fileManagerShow in File Explorer (Windows/WSL), Show in Finder (macOS), or Open in File Manager (desktop Linux) — and the row is hidden when the Host reports no usable file manager (headless Linux).

Prerequisites

This plugin depends on two upstream DSH capabilities. They must be present in the DSH build you install this into:

  • The sidebar.workspaces.workspaceMenu slot (declared by @deepseek-ai/dsh-client-ui-workspace).
  • The fileManager field in host.describe (@deepseek-ai/dsh-host-apiproxy).

Until those are merged upstream, this plugin only works on a DSH that carries those changes.

Install

From a git host (builds from source via the prepare script):

dsh plugin --profile web add github:you/dsh-workspace-reveal

pnpm ≥10 refuses to run a git dependency's prepare script until allowed; on the first failure, copy the package key pnpm printed into the profile's pnpm-workspace.yaml:

allowBuilds:
  dsh-workspace-reveal: true

then re-run the add. Pin a commit (#<sha>) so later pushes cannot change what runs at install time.

Development

pnpm install
pnpm build      # emits lib/index.js, lib/invariant.js, lib/client.js

Model Experience

None. The reveal row is a browser-surface action; nothing here enters a model request.

KV Cache Effect

None; the package neither assembles nor sends provider requests.

Known Limitations and Deferred Work

  • No reveal-selection semantics: the row opens the directory itself rather than selecting it inside its parent. A dedicated /select (Explorer) or open -R (Finder) reveal intent is deferred until a consumer asks for it.

License

MIT