DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Shot — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
S

dsh-shot

Shot

Composer screenshot control for DeepSeek Harness: box-select and annotate a screen capture in an in-window overlay, optionally hiding the DSH window while capturing, then send the result as an image attachment.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:19north/dsh-shot#0f77baec4a68eb4be5e0797d0205cddfb8d29e7e
READMECompatibilityVersions

Compatibility and provenance

Shot is published as dsh-shot and currently resolves to version 0.1.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/6/2026

Versions

0.1.1stable
10/6/2026
0.1.0stable
10/5/2026

Related plugins

Loading related plugins…

Latest
0.1.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/6/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in vision-media.

Modlens@liustack/modlensPlug-in vision for text-only LLMs, powered by the free Antigravity CLITool Describe Image@linxin666/dsh-tool-describe-imageModel-facing describe_image tool for the dsh web GUI: gives a text-only model image understanding by asking a vision-language model at an OpenAI-compatible endpoint to describe one image (local path, http(s) URL, or attachment reference). Hot-pluggable — Vision Routerdsh-vision-routerEyes for text-only DeepSeek Harness agents: built-in free vision chain + pixel-level tools. Remote vision providers, including the default free fallback, receive image content unless strict local-only use is configured.Vision Toolkit@anionex/dsh-vision-toolkitDeepSeek Harness-native integration for agent-vision-toolkit: image Q&A, OCR, grounding, UI restoration, pixel diff, Artifacts, and Web UI.

README

dsh-shot

Composer screenshot control for DeepSeek Harness: a camera button next to + in the composer opens a two-item menu, and the capture is framed and annotated in an overlay inside the window (no fullscreen, the window stays where it is). The result lands in the current conversation's composer as an image attachment.

Menu itemBehaviour
Direct captureGrab the whole virtual screen immediately; whatever covers it is captured too.
Hide this windowHide the DSH window first, capture, then restore it exactly as it was (including "was minimized").

Windows only — the capture itself is a PowerShell child that drives Win32 (window lookup, hide/restore, DWM-aware screen grab).


Requirements

  • DeepSeek Harness 0.1.7 or newer, desktop/web profile.
  • Windows (the host half shells out to scripts/capture.ps1).
  • Node ^22.19.0 || >=24.0.0.
  • No runtime dependencies: the host half imports only node:* builtins.

Install

# from a checkout
dsh plugin --profile <profile> add ./dsh-shot

# from a packed tarball
pnpm pack
dsh plugin --profile <profile> add ./dsh-shot-0.1.0.tgz

# from npm (once published)
dsh plugin --profile <profile> add dsh-shot

A package that declares dsh.bundle is appended to dsh.profile.bundles automatically, so the layer is composed on the next boot. Verify without booting:

dsh --profile <profile> --dump-config   # look for the "== dsh-shot" layer

Then restart the app — the client bundle URL carries a build revision that is computed at startup, so a page refresh is not enough for lib/client.js changes.

Use

  1. Click the camera button next to + in the composer and pick one of the two menu items.
  2. The overlay appears covering the window: drag a box to select a region.
  3. Annotate if you want, then confirm.
ActionEffect
Drag the eight handles (corners + edge midpoints)Resize from that handle.
Drag inside the boxMove the box, keeping its size.
Arrow keysNudge by one pixel; hold Shift for ten.
Right-click / ReselectDrop the selection and start over.
Esc / right-clickStep back one level (undo annotation → reselect → exit).

Annotation tools: rectangle, arrow, text (click a point, type, Enter to confirm, Esc to cancel; double-click existing text to edit it), an eight-colour palette, plus undo and reselect. Text carries a translucent dark plate so it stays readable on any background.

Confirming (or Enter) puts the image into the composer draft. It is an ordinary image attachment: you can preview it, add a message, and it is only sent when you send.

How it fits together

HalfFileRuns in
Hostlib/index.jsDSH server; registers the /api/dsh-shot/* routes and spawns scripts/capture.ps1.
Clientlib/client.jsBrowser; the composer button and the framing/annotation overlay.
Capturescripts/capture.ps1A detached PowerShell child; finds the DSH window, hides/restores it, grabs the virtual screen.

The client half is declared in package.json under dsh.client and is served from /plugins/dsh-shot/client.js.

Known limitations

  • Windows only. The capture path is Win32 + DWM.
  • The overlay covers the window, not the screen. The whole capture is scaled to fit and centred, so nothing is cropped and the entire screen stays visible; the leftover margin is a dark letterbox. On a 2560x1440 screen with a 1296x828 window that is about 50px top and bottom. The scaling is recomputed from the window size every time the overlay opens, so a different screen or window size needs no configuration.
  • Multi-monitor is captured as one virtual screen; it is all visible, but a small window shows it small.
  • The hide mode briefly makes the DSH window disappear (roughly 0.3–1.2 s).
  • Rare: the capture script can return an almost empty frame (a few tens of KB instead of several MB). Re-running the capture succeeds; an automatic retry is not implemented yet.

Development

# static contract checks (patch, manifest, red lines)
dsh-plugin-dev check --cwd .

# pack + install/start/uninstall in a throwaway DSH_HOME
dsh-plugin-dev verify --cwd .

Headless regression suites for this plugin live outside the package, in dsh-screenshot-research/ (test-host.mjs, test-client.mjs, deliver-probe.mjs, e2e-shot.mjs); they drive a throwaway headless Edge with a self-signed session cookie and never touch a real browser profile.

DESIGN.md is the implementation and decision log: the measured evidence behind each design choice, and the traps that were already paid for.

License

MIT.