AI Agent Hub
Back to plugins
⚙️

omdsh-shortcuts

Workflow Updated 2026.08.23

Run the following command in DeepSeek Harness:

dsh plugin install omdsh-plugins/omdsh-shortcuts

Paste the following prompt into your AI chat to install this plugin:

Run dsh plugin install omdsh-plugins/omdsh-shortcuts in your terminal to install the plugin; the source repository is https://github.com/omdsh-plugins/omdsh-shortcuts .

About this plugin

In DeepSeek Harness a keystroke has to travel through three places before it becomes an action: the Electron main process, the Node runtime, and the browser page. Until now, shortcut bindings were hard-coded inside individual plugins, so remapping a single chord meant hunting through source for whichever file owned that key. omdsh-shortcuts collapses that entire chain into one document: declare which commands exist, which surface they live on, and which chord reaches them. The desktop native menu and the in-page key listener both react instantly, and edits hot-reload without a restart or a shell rebuild.

The plugin injects a shortcut service on both halves of the runtime: register, bindings(), onBindings, and chordLabel. Other plugins simply declare their commands; the chord assignment is pure configuration. Harness-native buttons such as New Session, Add Workspace, and Settings automatically get their chord appended to the tooltip on hover, so a pointer pass tells you exactly what to press. Surface-level differences—browsers keep ⌘W, ⌘T, ⌘N for themselves—are handled explicitly via the webAccelerator field. Conflicts or reserved chords are refused at mount time with a clear error rather than silently dying.

This plugin is aimed at two audiences: heavy users who run both a desktop window and a browser tab and want to move their daily workflow from mouse to keyboard; and plugin authors who want their commands to plug into a shared shortcut pipeline instead of hard-coding key names in every code path. Once it is in your profile, a single settings form in the plugin hub lets you rebind every chord, live, with no page reload.

Use Cases

  • Replace mouse clicks with keyboard chords to trigger high-frequency actions like new session, panel switch, and workspace open
  • Declare commands in custom plugins and join a shared shortcut pipeline instead of hard-coding key names in every code path
  • Keep the same muscle memory across a desktop window and a browser tab—press one chord, both surfaces respond

Best For

  • Power users running both a desktop window and a browser tab who want keyboard-driven workflows
  • Plugin authors who want their commands to plug into a shared shortcut pipeline rather than scatter key bindings
  • Users who need to rebind chords frequently without editing source code or restarting the shell