dsh-AIR
No description
- Stars
- 0
- Language
- TypeScript
- Created
- Aug 18, 2026
- Updated
- Aug 18, 2026
Introduction
dsh-air
dsh-air is a lightweight DSH plugin for recalling sent messages with the keyboard.
The plugin does one thing: use ArrowUp and ArrowDown to navigate the current conversation's sent-message history.
Behavior
- Press
ArrowUpon an empty composer to recall the newest sent plain-text message. - Keep pressing
ArrowUpto move toward older messages. - Press
ArrowDownto move toward newer messages. - Press
ArrowDownpast the newest message to clear the composer and stop navigating history. - Do not intercept arrow keys while editing an ordinary non-empty draft.
- Continue navigating a recalled message only while its text is unchanged, the selection is collapsed, and the caret is at the beginning or end.
- Let DSH consume arrow keys first when slash-command or reference suggestions are active.
- Include user messages, steering messages, slash commands, and queued plain-text messages.
- Fold consecutive exact duplicates.
Scope
Only history already loaded for the current conversation is available. Messages containing images or other non-text content are skipped because they cannot be restored as an intact text draft.
Install
Install the published package from npm:
dsh plugin --profile web add dsh-air
Restart DSH after installation. To remove the plugin:
dsh plugin --profile web remove dsh-air
Update
Update to the latest npm release with:
dsh plugin --profile web update dsh-air --latest
Restart DSH after updating.
Development
pnpm typecheck
pnpm test
pnpm build
The history state machine is in src/core/history-navigation.ts, history extraction is in src/core/history-extraction.ts, and keyboard event handling is in src/client/HistoryKeyHandler.ts.