Introduction

When using DSH Web sessions, you often encounter this situation: you sent a long prompt in the previous message and want to send it again with just a few minor edits. You have to scroll up the chat history, copy, and paste it back into the input box. The shell in the terminal has long had the habit of using ↑/↓ to scroll through history, yet the Web input box does not.

dsh-keyboard-history solves exactly this problem. Its positioning is stated in the first line of the README: “A minimalist input history plugin for the DSH Web session input box: Press ↑/↓ to browse previously sent messages when the input box is empty, nothing more.”

Below is an introduction to its features, installation methods, and usage notes.

What is it

dsh-keyboard-history is maintained by NormanFxxkingRockwell, with the current version being 0.1.2 and the license being MIT (as indicated in both the README and package.json). It is a DSH plugin that does one thing: enables key-based browsing of input history in the Web session input box, without any additional features.

Following DSH’s “everything is a plugin” philosophy, this kind of purely client-side small change is suitable for distribution as a plugin without invading the main program. In the package.json, dsh.client.platform is declared as web, meaning it targets the Web session input box.

Core Features

The confirmed capabilities are as follows:

  • Press ↑ when the input box is empty to recall the last sent message; continue pressing ↑ to browse earlier messages.
  • Press ↓ to browse forward; once you pass the most recent message, the input box becomes empty again.
  • Automatically exit browsing mode after editing or sending.
  • Does not trigger or interfere in scenarios such as slash menus, Chinese input method composition, or busy sessions.

Behaviorally, it is essentially consistent with terminal shell history browsing: it only takes over ↑/↓ when the input box is empty, and yields control in all other cases.

Installation and Activation

Install using the dsh plugin command, replacing <your-profile-name> with your own profile:

dsh plugin --profile <your-profile-name> add dsh-keyboard-history

After installation, restart dsh web for it to take effect; no additional configuration is needed.

Typical Usage

After installing and restarting, there are only two steps:

  1. After sending at least one message in a session, clear the input box.
  2. Press ↑ to recall the last sent message, continue pressing ↑ to go further back, and press ↓ to go forward. Once you pass the most recent message, the input box becomes empty again.

Once you scroll to the message you want to edit, edit it directly or send it as is; the browsing state will automatically exit, and the input box will return to normal behavior.

Suitable Scenarios and Notes

Suitable for: Users who primarily work in DSH Web sessions and frequently resend or make minor adjustments to long prompts. If you rely on the habit of using keyboard shortcuts to resend messages from the terminal, this plugin will align that experience here.

A few notes:

  • Only applies to the Web session input box. It does not take effect when the slash menu is open, during Chinese input method composition, or when the session is busy; this is by design to avoid key conflicts.
  • The package.json declares peerDependencies: @deepseek-ai/cordis ^4.0.1 and react ^18.2.0; it may not work properly if the environment does not meet these requirements.
  • Like all DSH plugins, the plugin runs with the permissions of the current dsh process. It is recommended to review the source code and license before installing to ensure everything is correct.

Related Links

In short: dsh-keyboard-history brings the commonly used ↑/↓ input history from the terminal to the DSH Web session input box with minimal changes; install and restart to use.

  • Community Plugin Directory: https://www.skillhub.cn/plugins/NormanFxxkingRockwell/dsh-keyboard-history
  • GitHub Repository: https://github.com/NormanFxxkingRockwell/dsh-keyboard-history