← Back to home@lee259

dsh-workbench

Right-side file workspace for DeepSeek Harness Web.

Stars
7
Language
TypeScript
Created
Aug 14, 2026
Updated
Sep 8, 2026

Introduction

DSH Workbench

DSH Insights health npm version Awesome DSH Plugin CI License

中文文档 · Changelog · Issues · npm

Codex-style file workspace and Git review for DeepSeek Harness Web. Keep the conversation, changed files, and diffs in one place.

What it does

  • Captures DSH write / edit changes with their original before/after content.
  • Switches between session edits, uncommitted, unstaged, and staged Git changes; the tree and diff share the same +/− counts.
  • Opens files from tool calls, the workspace tree, or search alongside the conversation. Conversation file links reveal the corresponding diff.
  • Lets you edit workspace files, copy paths, and insert a selected diff range into the active Harness draft.

DSH Workbench in DeepSeek Harness Web

read       → source
write/edit → captured DSH diff

Details

The panel is persistent and resizable. It has preview and pinned tabs, Quick Open, tree search, in-file find/go-to-line, image and Markdown previews, and workspace editing with external-change protection. UI language follows DSH.

Install

dsh plugin --profile web add dsh-workbench
dsh web

If dsh is not on your PATH:

pnpm dlx @deepseek-ai/dsh plugin --profile web add dsh-workbench
pnpm dlx @deepseek-ai/dsh web

Local checkout:

git clone https://github.com/lee259/dsh-workbench.git
cd dsh-workbench
pnpm install
pnpm run build
dsh plugin --profile web add "$(pwd)"
dsh web

Rebuild and restart dsh web after plugin changes.

Local start

pnpm start -- /absolute/path/to/your/project

Builds the plugin, registers it on the target project, and starts DSH Web. Without a path, uses the current directory.

Previews

DSH operationView
readSource; images and Markdown render
write / editCaptured DSH diff
File mentionSource; images and Markdown render

Host listens to tool/call, tool/result, and tool/code-dispatch. Prefers dsh-tool-fs meta.diffs.

Development

pnpm install
pnpm test
pnpm start -- /absolute/path/to/your/project

To mount the packed plugin in an isolated DSH Web instance:

pnpm test:mount
DSH_VERSION=next pnpm test:mount

The first command uses the supported 0.1.2-rc.1 baseline. The second follows the npm next channel and is also run weekly as a non-blocking compatibility smoke test.

  • Host: name, inject, apply(ctx) from src/index.ts
  • Client: dsh.client, exports["./client"], window.__ModuleLoader__.load
  • Styles: src/client/styles.css
  • Third-party React components: use the React runtime injected by DSH. Components that statically import react-dom, need unbridged React APIs, or inject global CSS need an adapter; see src/client/react-bridge.ts and tsdown.config.ts.
  • UI strings: src/shared/i18n.ts

Roadmap

Inspect, navigate, and review what the agent touched. Diffs stay on captured DSH writes.

Done

  • Read-only previews for read and file mentions
  • Captured DSH diffs for write / edit
  • Persistent, resizable right-side workspace
  • Multi-file tabs, preview / pin, path copy, and desktop shortcuts
  • In-file find / go-to-line, plus conversation :line / #Lline targets
  • Chinese / English UI following DSH locale
  • Quick Open (⌘/Ctrl+P) and tree search that locates without opening
  • Workspace file tree with breadcrumbs, keyboard navigation, and path insert
  • Syntax highlighting, folding, and live refresh when the workspace changes on disk
  • Image previews and rendered Markdown, including relative images
  • Source previews also support MATLAB (.m), R, Julia, Lua, C#, Kotlin, Scala, Swift, Dart, XML, and Python stubs (.pyi). Vue / Svelte use basic HTML highlighting. MATLAB uses Octave syntax highlighting; .m defaults to MATLAB, while .mat and .mlx are not supported.
  • Change review: session edits plus uncommitted, unstaged, and staged Git scopes, with shared +/− counts
  • Short operation summaries for each captured write
  • Incremental review updates that preserve the active tab and keep large review panels responsive
  • Workspace content search (⌘/Ctrl+⇧+F) with line-focused results
  • Reference files, folders, and selected preview lines in the composer
  • Editable workspace previews with external-change protection
  • Git branch/status and session tool-activity metadata in the review toolbar

Next

The target is a Codex-like development experience inside DeepSeek Harness: reuse proven workspace interactions where they help, while keeping DSH-native write capture and session review as the workbench's center of gravity.

  1. Add terminal and background-task surfaces in small, DSH-native slices.
  2. Tighten review-to-conversation feedback, including inline guidance on diffs.
  3. Continue refining session-scoped workspace state and review performance.

The existing DSH event capture, meta.diffs, session review, operation summaries, and incremental review updates remain the differentiating foundation.

Near-term sequence

  • Terminal and background task surfaces
  • Inline review comments and richer review-to-conversation feedback

Exploring

  • Open-in-editor and reveal-in-folder
  • Inline comments on a diff line that send guidance back to the composer
  • Native DSH panel controls and layout slots, if the host exposes a usable one
  • Pluggable workspace panels (Files / Review, and later DSH tools)

License

MIT