@mixian/dsh-desktop-plugin
Desktop-grade companion: browser native notifications for user questions and approval interactions, screen capture model tool, multi-agent tiling grid view, and lightweight Tauri desktop shell.
Install
dsh plugin --profile web add @mixian/dsh-desktop-plugin
Sandbox test results
| Stage | Result |
|---|---|
| 1 install | ✗ |
| 2 list | — |
| 3 mount | — |
| 4 boot | — |
dsh: initialized profile web at /home/node/.dsh/profiles/webFour stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).
README
@mixian/dsh-desktop-plugin
Desktop-grade companion plugin for DeepSeek Harness (dsh). Brings three desktop-class capabilities the stock web UI lacks:
1. Native notifications for user interactions — when any agent session enters a pending interaction (approval, question, or plan review), a browser desktop notification fires. Click it to jump into the session where the stock approval/question UI lives.
2. screen_capture model tool — captures the host display and commits the screenshot into the conversation as an image attachment, so the model can see what is on screen. Disabled by default (see Consent).
3. Multi-agent tiling canvas — a conversation.view tab that renders a live grid of every session and sub-agent, read straight from the sessions store.
A floating attention HUD and native OS shell (tray, global hotkey) are planned; see [Known Limitations](#known-limitations).
Install
The plugin ships 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 # or as a one-off overlay dsh web --patch /path/to/@mixian/dsh-desktop-plugin/cordis.patch.yml
Enable the opt-in screen_capture tool by patching the row's config:
# ~/.dsh/profiles/web/cordis.patch.yml
- id: dsh-desktop-plugin
config:
screenCapture: true # opt in: registers the screen_capture tool
Consent
screen_capture exposes the operator's whole display. It is not registered unless screenCapture: true is set explicitly, and it only fires when the model decides to call it (typically after the user asks for a screenshot). The captured image is always surfaced back into the conversation for transparency — it is never silently injected.
Model Experience
- The plugin adds no tokens when idle: the notification watcher and canvas are client-side and read the sessions store; they never enter the model context.
screen_captureadds one model-facing tool with a short description; its output is an image block in a durabletool/resultevent, subject to the same attachment limits as any image in the session. It requires a model that accepts image input.
Known Limitations
- The floating attention HUD targets the
shell.overlayframe-wide slot, which exists in DeepSeek Harnessmasterbut is not yet present in the published client runtime (@deepseek-ai/dsh-client-*@0.0.1-rc.1). The component ships ready but is mounted only once that slot is published. The notification watcher needs no slot and works today. - Screen capture is host-only and captures the primary display; multi-monitor and region capture are not yet supported.
- The multi-agent canvas is a read-only monitor; it does not create or attach sessions.
License
MIT
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::4,最后更新 2026-09-08