- Главная
- Плагины
- Улучшения UI
- dsh-prompt-history
dsh-prompt-history
xingxing2013/dsh-prompt-history
Prompt history in the composer: Up and Down recall prompts sent earlier in this browser (newest first), Down walks back and restores the draft you had before the first Up, and the badge in the composer corner opens a numbered list to pick one directly. Only prompts you actually send are recorded — never fragments left by deleting text or cancelling a composition — history is shared across sessions and deduplicated, its badge size is adjustable in Settings → General, and Ctrl/Cmd+Shift+Backspace clears it.
Установка
dsh plugin --profile web add github:xingxing2013/dsh-prompt-historyREADME
Prompt History (DSH plugin)
Shell-style prompt history for the DeepSeek Harness composer: press Up to step back through the prompts you have already sent, Down to step forward again, and the draft you had before the first Up comes back when you walk past the newest entry.
Keys
| Key | Where | Effect |
|---|---|---|
↑ | composer, empty draft | Recall the previous prompt (newest first, then older) |
↓ | composer, while recalling | Next newer prompt; past the newest, restore your draft |
Esc | composer, while recalling | Stop recalling, keep the recalled text |
Ctrl/Cmd+Shift+Backspace | composer | Clear the stored history |
A recall only starts from an empty composer, never while a popup that owns the
arrow keys is open (the / command menu, the @ file picker, the + command
menu), and never while the draft starts with /. Keys belonging to a
Chinese/Japanese/Korean IME composition are never touched. While recalling, Up
and Down keep stepping through history — press Esc, or click into the text, to
go back to normal caret movement.
Behaviour
- History is global across sessions of this browser, newest first, capped at 100 entries of up to 8000 characters. It is deduplicated by exact text: sending a prompt again hides its older copies and puts it at the front, and duplicates left in storage by older versions are cleaned up on load.
- A prompt is recorded when you send it: the composer reports the send (its
phase goes to
sending) or you press Enter or click a button in the card, and the draft then clears. Deleting the last character, cancelling a composition or clearing the draft some other way does not record anything. A draft left behind when you switch sessions is not recorded either. - Version 1 of the plugin recorded any draft that emptied, which is how one-character fragments got into the history. On first load of version 1.2.1 those one-character entries are dropped once; from then on a one-character prompt you really send is kept.
- Storage is
localStorageunder the keydsh-prompt-history/v1. Deleting that key (or pressing the clear shortcut) resets the history. Like every other client plugin preference it belongs to the Web UI origin. - Recalled text is written through the composer's own input facade
(
setDraft), so it is a normal draft: editable, and sent exactly like one you typed. - The composer is a rich-text editor, so a recalled prompt that contained file
or session references comes back as the reference's plain text (
@path) rather than as an interactive chip. The prompt is still sent correctly.
Badge
Once at least one prompt has been recorded, a small circle with an up and a down chevron sits in the composer's top-right corner. The chevrons show where history is:
- Up lit — pressing
↑right now would recall a prompt (history exists, the draft is empty, and no popup owns the arrow keys). While recalling, Up stays lit until you reach the oldest entry. - Down lit — you are recalling, so
↓would step toward newer prompts (and, past the newest, restore your draft). - Both dim — neither key would move right now (a non-empty draft, or a menu is open). The badge stays hidden while the history is empty and disappears again after the clear shortcut.
Click the badge to drop a menu of the stored prompts. Each entry is one line —
numbered, with a long prompt truncated by an ellipsis and the full text in its
tooltip — and the row under the pointer is highlighted. Picking one puts it into
the composer as a normal draft, ready to edit or send; the menu closes, and so
does it on Esc or on a click elsewhere. The badge renders into the composer's
own overlay surface, so it covers no text and adds no height to the card.
Settings
Settings → General → Prompt history badge sets the badge size from 10 to 20
px (default 12). The change applies immediately in every composer; the value is
stored in localStorage under dsh-prompt-history/settings/v1.
Install
From the published repository, in the Harness profile that should get it:
dsh plugin --profile <profile> add github:xingxing2013/dsh-prompt-history
While developing against a local checkout, install the same bundle directly:
plugin_manager install_bundle target=<absolute path to dsh-prompt-history>
The install links this directory into the profile, so editing these files and
reloading the Web UI picks up changes without reinstalling. Disabling the
prompt-history row removes the slot registration and the key listener; the
stored history is left untouched.
Похожие плагины
dsh-web (dsh-task-board)
zhu1090093659/dsh-web
dsh-web (dsh-web-all)
zhu1090093659/dsh-web
dsh-TUI
ccch1mneyyy/dsh-tui
dsh-web-ui (dsh-task-board)
zhu1090093659/dsh-web-ui