DSH Plugins Marketplace

DSH Plugins

Plugins

/

Workflow & Automation

/

dsh-desktop

F

dsh-desktop

Identified★ 4

Desktop companion plugin and native shell for DeepSeek Harness (DSH)

DeepSeek Harness Desktop Pro

CI npm version Node.js License: MIT

A Rust/Tauri desktop shell and Cordis plugin for DeepSeek Harness (dsh). Rust owns the native lifecycle, windows, tray, notifications and signed updates; a supervised Node.js sidecar runs the compatible DSH/Cordis runtime.

English | 中文

What it does

CapabilitySideNotes
Interaction notificationsclientSubscribes to the sessions store; fires a browser desktop notification when a session waits on an approval, question, or plan review. Click opens that session.
screen_capture model toolhostCaptures the primary display and commits the screenshot into the conversation as an image attachment. Disabled by default — see Consent.
Multi-agent tiling canvasclientA conversation.view tab rendering a live, read-only grid of sessions and sub-agents from the sessions store.
Desk petclientA floating companion window (cat / robot / whale) driven by a state engine that derives pet state (idle / thinking / working / alert / success) from live sessions. Ships a custom navigation icon in the dsh nav bar.
Desktop settingsclientA settings section for pet preferences: enable/disable, character (built-in robot / whale / cat or a custom PNG), and size.
Native shellappRust/Tauri app that supervises the DSH sidecar, embeds the local Web UI in a frameless WebView2 window, and provides native workspaces, tray controls, companion windows and signed GitHub Releases updates.

How it plugs in

  • The package declares a dsh.bundle manifest (object form: { "patch": "./cordis.patch.yml" }) — this is what dsh recognizes as an installable plugin. dsh.client declares the web platform and the @deepseek-ai/* runtime packages it injects.
  • Host side registers the screen_capture model tool only.
  • Client side reads the sessions store and the question/requested interaction stream (via the PendingWait.answer channel) — it never registers a second ctx.userQuestions provider, so it works against the published runtime with no slot conflicts.
  • The client bundle is a single file wrapped in the window.__ModuleLoader__.load({ id, factory }) handshake (see build.mjs).

Install

The plugin ships as @mixian/dsh-desktop-plugin with a dual-face Cordis bundle (dsh.bundle + dsh.client). Mount it with either mechanism:

# via a profile (recommended)
dsh plugin --profile web add @mixian/dsh-desktop-plugin

# from a source checkout
dsh plugin --profile web add ./packages/dsh-desktop-plugin

# or as a one-off overlay (no install)
dsh web --patch ./packages/dsh-desktop-plugin/cordis.patch.yml

Consent

screen_capture exposes the operator's whole display. It is not registered unless screenCapture: true is set explicitly in the profile patch:

# ~/.dsh/profiles/web/cordis.patch.yml
- id: dsh-desktop-plugin
  config:
    screenCapture: true   # opt in: registers the screen_capture tool

The captured image is always surfaced back into the conversation for transparency — it is never silently injected.

Run the desktop app

pnpm install
pnpm dev             # Rust/Tauri development app
pnpm tauri:package   # Signed Windows production bundle (signing env required)

Requires Node.js ≥ 22 and pnpm 11 (corepack enable).

Model Experience

  • The plugin adds no tokens when idle: the notification watcher, canvas, desk pet, and settings are client-side and read the sessions store; they never enter the model context.
  • screen_capture adds one model-facing tool with a short description; its output is an image block in a durable tool/result event, subject to the same attachment limits as any image in the session. It requires a model that accepts image input.

Known Limitations

  • Screen capture is host-only and captures the primary display; multi-monitor and region capture are not supported.
  • The multi-agent canvas is a read-only monitor; it does not create or attach sessions.
  • Notifications fire as native OS notifications in the desktop shell and fall back to the browser desktop-notification API in the web runtime. The Alt+Space global quick panel is planned, not shipped.
  • Time travel, session rewind, and live fork are not implemented.

Development

pnpm install
pnpm check          # lint + typecheck + Node/Rust tests + plugin build + runtime verification
pnpm dev:plugin     # plugin dev loop

Project layout

packages/dsh-desktop-plugin/   # dual-face Cordis plugin (dsh.bundle + dsh.client)
packages/dsh-desktop-rust/     # Rust/Tauri native desktop shell
packages/dsh-desktop-sidecar/  # supervised Node.js DSH/Cordis runtime
stubs/                         # local type-stubs for unpublished @deepseek-ai/* transitive deps
docs/                          # ARCHITECTURE_ANALYSIS + PUBLISHING_GUIDE (verified 2026-08)

Documentation & community

The repo carries the dsh-plugin, deepseek-harness, and cordis-plugin topics for ecosystem discovery.

License

MIT

Comments

Loading…

Similar plugins

dsh-app-control

by cheng-wj

DSH plugin: restart / update / inspect the DeepSeek Harness desktop app from the model side (Windows)

Tools & CapabilitiesManifest valid

★ 0

MIT

JavaScript

Oct 21, 2026

dsh plugin --profile web add dsh-app-control

by anywhere-labs

为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。

UI & ExperienceManifest valid

★ 34.5k

↓ 96/wk

MIT

TypeScript

Nov 2, 2026

dsh plugin --profile web add dsh-plugin-desktop

by Skylarking

DeepSeek Harness plugin: desktop plugin inventory

Manifest valid

★ 0

TypeScript

Aug 20, 2026

dsh plugin --profile web add @skylarking/dsh-client-ui-desktop-plugin-inventory

by ghbhiee

File browser, preview, and web terminal panel for DeepSeek Harness — session-docked workbench plugin

Terminal & ClientsManifest valid

★ 0

MIT

JavaScript

Aug 18, 2026

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

by Skylarking

DeepSeek Harness plugin: multi workspace

Manifest valid

★ 0

TypeScript

Aug 20, 2026

dsh plugin --profile web add @skylarking/dsh-multi-workspace

by KKUCODES

Desktop plugin for DeepSeek Harness that connects DSHM to computer sessions, with device pairing, access control, and synchronized chat.

Tools & CapabilitiesManifest valid

★ 0

MIT

JavaScript

Oct 23, 2026

dsh plugin --profile web add @dsh-mobile/plugin