dsh-shot: Adds screenshot capability to DSH, directly entering draft input upon capture.

Introduction

When troubleshooting issues with DSH and agents, a common requirement is “Help me see this error popup.” Models cannot see the screen, so we either have to take a screenshot and paste it ourselves, or copy a large amount of text which might not be complete. The solution offered by plugins like dsh-shot is to turn screenshotting into a built-in capability of DSH: triggered by a global hotkey, dragging a box to select an area, the screenshot enters the draft of the current session’s input box, and is only sent to the model after pressing Enter. Below is an introduction to the composition, installation methods, and usage points of this plugin.

What is this

dsh-shot is a screenshot plugin for DeepSeek Harness (DSH). The maintainer is EasySSHCN, the author is ZhenAn, the current version is 0.1.1, and the license is MIT. It connects the screenshot capability from the operating system’s clipboard to DSH: it can be triggered manually by the user or called by the model as the agent tool screenshot. The plugin adopts a structure of client-side half + server-side patch. The client entry is registered in the conversation.input.left slot, so the screenshot result appears directly in the draft of the conversation input box.

Core Features

First, let’s list the verified capabilities, all of which are explicitly mentioned in the README:

  • Global hotkey, default Ctrl+Alt+A, works even if the browser is not focused
  • Input box camera button, clicking it is equivalent to the hotkey flow, screenshot enters the input box draft
  • /shot command, supports area parameters, and supports skipping the overlay to directly capture a specific rectangle
  • Agent tool screenshot, the model can trigger it itself when the user asks to see the screen, window, or error popup
  • Actions on the overlay: “Into session” (into input box draft), Translate, OCR, Copy (only goes to clipboard, not into any session)
  • Screenshots are not sent automatically, the user must always press Enter

Environment Requirements

Screenshotting is implemented via PowerShell + WinForms overlay, so it is only available on Windows 10/11 and temporarily does not support other systems. Regarding DSH versions, the README states it has been tested on 0.2.2-rc.1, the engines field in package.json declares compatibility with 0.2.1+, and it depends on the client-modules web plugin loader. Behavior may differ for older or unreleased versions.

The plugin has zero external dependencies and no build artifacts: the overlay window is compiled in-process via PowerShell Add-Type. The README states this helps avoid false positives from antivirus software regarding “suspicious new binaries.”

Installation and Activation

The official installation method is via DSH CLI from npm:

dsh plugin --profile <your profile> add dsh-shot

If installation from a local directory or GitHub release package is needed, the README also provides commands:

# Local directory
dsh plugin --profile <your profile> add file:/path/to/dsh-shot-plugin

# tarball (npm style URL)
dsh plugin --profile <your profile> add https://github.com/EasySSHCN/dsh-shot/releases/download/v0.1.1/dsh-shot-0.1.1.tgz

DSH Desktop users do not need to use the command line; simply search for dsh-shot in the app’s “Settings → Plugins” to install. After installation, if the camera button does not appear in the input box, refresh the page once.

Typical Usage

The following operations correspond to the feature descriptions in the README and can be reproduced directly:

Operation Effect
Ctrl+Alt+A (Global) Overlay drag box → Enter → Screenshot enters the draft of the most recent active session
Input box camera button Overlay and draft flow identical to the hotkey
/shot Overlay drag box to select area
/shot x,y,w,h Skip overlay, directly capture specified rectangle
Agent /screenshot tool Triggered by the model when the user asks to see the screen/window/error popup

The area parameter for /shot is read in the order x,y,w,h; for example, /shot 100,100,800,600 means capturing an 800x600 rectangle starting from (100,100).

After dragging the box on the overlay, an action selection will appear. Selecting “Into session” puts the PNG into the input box draft; selecting “Translate” or “OCR” automatically attaches a preset description (respectively “Translate the text in this screenshot” and “Extract all text”); selecting “Copy” only writes to the clipboard and does not enter any session.

Configuration

Hotkeys are customized via profile patching (cordis.patch.yml). The writing method given by the README is:

- id: dsh-shot
  name: dsh-shot
  config:
    hotkey: Ctrl+Alt+A   # Any RegisterHotKey style combination key, e.g., Ctrl+Shift+S

After changing it, the plugin needs to be reloaded for the changes to take effect. This configuration is inside the plugin directory and is published by default with the package, so manual creation is not required.

Privacy and Security

Screenshots are completed entirely locally: PNGs land in the temp directory and the session selected by the user, and the plugin does not upload data anywhere. After the hotkey daemon process exits unexpectedly, it remains disabled and will not silently restart automatically. The exit reason is logged to the console. A side effect is: if the daemon stops and the user is unaware, the hotkey will simply fail and the plugin will need to be manually reloaded.

Applicable Scenarios and Notes

Suitable for people working on Windows with DSH Desktop or CLI who want to feed screen visuals directly to the agent. Any scenario requiring “looking at the current screen” or “extracting text from this popup” saves a step compared to manual screenshotting and pasting.

Points to note:

  1. The plugin runs with the permissions of the current dsh process, and the overlay window is launched by PowerShell. Before installation, you should read the repository source code and the MIT license to confirm that the behavior of helper/*.ps1 meets expectations before use.
  2. The hotkey might be occupied by other applications, manifesting as no response when pressed. Just switch to a different combination key via the configuration above and reload.
  3. Antivirus software might block the overlay. Since it is PowerShell-hosted in-process compiled WinForms code, the README suggests adding helper/*.ps1 to the whitelist when blocked, rather than abandoning use.
  4. The plugin targets win32, and the os field in package.json is ["win32"]. Installing it makes no sense for macOS/Linux users.

Conclusion

The value of dsh-shot lies not in having another screenshot tool, but in shortening the “screenshot — feed to agent” chain: triggered by a hotkey or camera button, overlay drag box, result goes to draft, Enter to send, with no file transfer step in between. The directory page is at https://www.skillhub.cn/plugins/EasySSHCN/dsh-shot, and source code and issues are suggested to be accessed directly via GitHub: https://github.com/EasySSHCN/dsh-shot.

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye