Introduction

In the web version of DeepSeek Harness (DSH), if actions like sending messages, inputting newlines, and submitting answers on question cards all rely on default keyboard behaviors, it might restrict personal input habits. dsh-hotkeys is a browser-side hotkey enhancement plugin for DSH, designed to make the hotkeys for the three actions send, newline, and customAnswerSubmit customizable, recordable, and switchable.

What is it

dsh-hotkeys is maintained by ctenni and uses the MIT License. It is a browser-side bundle plugin, primarily for the DSH web profile, solving three categories of problems:

  1. The send key in the message input box can be changed.
  2. The newline key in the message input box can be changed.
  3. The submit key in the “Enter your answer” input box of the DeepSeek question card (ask_user_question) can be changed.

Its configuration is saved in browser localStorage, requiring no backend. After installation, you can view current bindings via the /hotkeys menu or window.__dshHotkeys.getBindings().

Core Features

dsh-hotkeys currently supports the following verified capabilities:

  • Supports customization and recording/switching of hotkeys for the three actions: send, newline, and customAnswerSubmit.
  • Supports binding the send action to key combinations such as Enter, Ctrl+Enter, F9, etc.
  • Supports customizing the submit key for the “Enter your answer” input box of the DeepSeek question card (ask_user_question).
  • When the submit key is set to Ctrl+Enter / Alt+Enter, the other Enter combination key will not steal/send messages prematurely.
  • Configuration is saved in browser localStorage, no backend required.
  • Can be loaded as a browser-side bundle plugin and verified via the /hotkeys menu or window.__dshHotkeys.getBindings().

Installation and Enabling

Method 1: Install using the dsh plugin

First, confirm that pnpm is installed on your machine. If not, you can execute:

npm install -g pnpm

Then, execute the plugin installation command:

dsh plugin --profile web add dsh-hotkeys

After installation is complete, restart dsh web and perform a hard refresh of the browser:

Ctrl+F5

Method 2: Manual Installation

Enter the web profile directory:

cd ~/.dsh/profiles/web

Install the plugin in that directory:

pnpm add dsh-hotkeys

Next, you must manually add dsh-hotkeys to the dsh.profile.bundles array in the package.json of that directory:

{
  "dsh": {
    "profile": {
      "bundles": [
        "dsh-hotkeys"
      ]
    }
  }
}

Please note here: pnpm add will not automatically modify the dsh.profile.bundles list. If it is missed, DSH will not load the plugin as expected.

After completion, you also need to restart dsh web and perform a hard refresh of the browser:

Ctrl+F5

Method 3: Install from GitHub Repository for Development

First, get the source code from the repository:

git clone https://github.com/ctenni/dsh-hotkeys.git

Then, in the package.json of the web profile, link dsh-hotkeys as a dependency using the link: method, and also add dsh-hotkeys to the dsh.profile.bundles array.

After using this method, you also need to restart dsh web and perform a hard refresh of the browser:

Ctrl+F5

Typical Usage

After installation and enabling, you can first perform two verifications.

  1. Type the following in the message input box:
/hotkeys

Confirm that the hotkey menu pops up.

  1. Execute the following in the browser console:
window.__dshHotkeys.getBindings()

Confirm that it returns the three binding fields: send, newline, and customAnswerSubmit.

Afterwards, you can adjust the hotkeys for the three actions according to your usage habits:

  • send: Used to send messages in the message input box.
  • newline: Used to insert a newline in the message input box.
  • customAnswerSubmit: Used to submit the “Enter your answer” input box in the DeepSeek question card (ask_user_question).

If you wish to avoid accidental sending caused by the ordinary Enter key, you can set the relevant submit key to Ctrl+Enter or Alt+Enter. In this setting, the other Enter combination key will not steal/send messages prematurely.

Applicable Scenarios and Notes

This plugin is suitable for developers who frequently use the DSH web version and need to adjust keyboard trigger methods, especially for users who need to separate “send” and “newline” or avoid accidental submission of question card answers.

Since it loads with the current DSH web profile and runs with the permissions of the current dsh process, it is recommended to check the source code, dependencies, and license before installation. This plugin uses the MIT License.

In addition, all three installation methods rely on pnpm or local dependency management capabilities. Pay special attention when installing manually: you must add dsh-hotkeys to dsh.profile.bundles, otherwise the plugin will not take effect.

Links

GitHub Repository:

https://github.com/ctenni/dsh-hotkeys

The directory page address comes from plugin clues and has not been directly confirmed in the collected data:

https://www.skillhub.cn/plugins/ctenni/dsh-hotkeys