Preface

In the DeepSeek Harness (DSH) Web GUI, the common operations within the chat input box (composer) still rely heavily on the mouse: wanting to reuse a message you sent in the previous turn often requires scrolling through history, selecting, copying, and pasting; wanting to clear the current input box might also lead to accidentally triggering the browser’s copy function.

The extension philosophy of DSH is “everything is a plugin,” and community plugins can operate solely on the client. Below is dsh-composer-keys, which adds three keyboard shortcuts—Arrow Up, Arrow Down, and Ctrl+C—to the DSH Web chat input box.

What is it

dsh-composer-keys is a DSH Web platform client plugin maintained by kexin8 and released under the MIT license.

The problem it solves is simple: it consolidates common input operations in the DSH Web composer into keyboard shortcuts. This plugin is client-only, contains no host process code, does not persist data, and does not provide any settings.

Core Features

dsh-composer-keys provides the following capabilities:

  • Arrow Up: Fills the composer with the previous user message from history.
  • Arrow Down: Moves to the next user message; when reaching the end, it restores the original content in the composer before you started navigating.
  • Ctrl+C: Clears the input box if the composer has content and no text is selected; if text is selected, the browser’s native Copy takes precedence.

Supplemental notes:

  • This plugin targets the Web platform.
  • The plugin declares react ^18.2.0 as a peer dependency.
  • The plugin uses Ctrl+C; on macOS, Cmd+C retains the system Copy behavior.

Installation and Activation

Execute the installation command first:

dsh plugin --profile web add https://github.com/kexin8/dsh-composer-keys.git

After installation, restart the DSH Web GUI and reload the page. After the steps above, you can use these shortcuts in the DSH Web composer.

Typical Usage

You can use it in the DSH Web GUI as follows:

  1. Prepare to input or modify content in the composer.
  2. Press Arrow Up, and the composer will be filled with the previous user message from history.
  3. Continue pressing Arrow Up to move to earlier user messages.
  4. Press Arrow Down to move backward to the next user message.
  5. If you have reached the end, pressing Arrow Down again will restore the original content in the composer before you started browsing history.
  6. When you need to clear the current composer, ensure no text is selected and press Ctrl+C.

If there is selected text in the current composer, Ctrl+C will execute the browser’s native Copy first and will not clear the input box.

Applicable Scenarios and Notes

This plugin is suitable for users who frequently use the DSH Web GUI and need to frequently reuse or modify their historical inputs, such as debugging prompts or repeatedly adjusting the previous question.

Pre-installation notes:

  • The plugin will run under the permissions of the current dsh process; the source code and license should be checked before installing.
  • It is a client-only plugin, does not add persistence, and does not provide settings.
  • This plugin only affects the shortcut key behavior of the DSH Web composer and does not change the historical messages themselves.
  • dsh-composer-keys is a community plugin, independently maintained, and has no official affiliation with DeepSeek / Hanxuan AI.

Conclusion

If you want to reduce mouse operations in the DSH Web input box and quickly review and reuse historical user messages, you can install dsh-composer-keys first, and then use Arrow Up, Arrow Down, and Ctrl+C to complete input and clearing.

GitHub Repository: https://github.com/kexin8/dsh-composer-keys