In the DeepSeek Harness plugin ecosystem, when the AI is thinking and the user wants to send a draft immediately, the usual approach is to rely on a queue or steer strategy. The dsh-interrupt-send plugin provides an explicit solution by changing this behavior through a UI-layer interaction.

What It Is

This is a client-side plugin maintained by Hyna-hla under the MIT license. Its core purpose is to add an “Interrupt Send” button to the input field toolbar in DeepSeek Harness, allowing developers to forcibly interrupt the current turn while the AI is thinking and immediately submit the draft.

Core Features

The plugin implements the following capabilities:

  1. UI Button Addition: Adds an “Interrupt Send” button to the input field toolbar (to the left of the send button).
  2. Conditional Display: The button is shown only while the AI is thinking and the draft is non-empty.
  3. Interrupt and Submit: Clicking the button aborts the current turn (calls session.cancel()) and immediately sends the draft as the next message.
  4. Draft Handling: After sending, the draft is automatically cleared and included in the undo history.
  5. Fallback Mechanism: If the cancellation fails, it automatically falls back to normal queued sending to ensure the input is not lost.

Installation and Enablement

The plugin runs entirely as a client-side component. The installation steps are as follows:

pnpm install
pnpm build
.\scripts\install-to-profile.ps1 -Name dsh-interrupt-send -SourceDir .
# 重启 DeepSeek Harness

After installation is complete, the plugin takes effect automatically.

Usage

  • Click the button: When the AI is thinking and the input field contains content, click the newly added toolbar button. This interrupts the current turn and immediately sends the draft.
  • Normal Enter: Retains the original queue or steer strategy and does not trigger interrupt logic. The button simply exists as an optional interruption channel.

Technical Implementation and Notes

  • Slot Mechanism: The plugin is mounted on the conversation.input.right slot and controls button visibility by monitoring session state (such as running) and input state (such as draft/phase).
  • Permission Scope: The host side exists only as a stub, and the actual logic is handled by the client. This means the plugin runs with the permissions of the current DeepSeek Harness process.
  • Security Check: Before use, it is recommended to review the source code and license.

Summary

By introducing an explicit interrupt operation in the input field toolbar, dsh-interrupt-send addresses the issue where developers are unable to send drafts instantly during debugging or fast-interaction scenarios. It provides a flexible interruption capability while ensuring operational stability through a fallback mechanism.