In the development workflow of DeepSeek Harness (DSH), when the agent is in a busy state, new messages are automatically added to the queue. By default, pressing Enter usually only queues the next message or waits for the current turn to finish. This mechanism leaves developers with limited immediate control over the execution order of messages during debugging or quick testing. The dsh-queue-first-enter plugin changes the behavior of Enter in an empty editor, providing a direct way to intervene in the queue.

Plugin Overview

dsh-queue-first-enter is a DSH Web plugin maintained by himeope. Its core logic is: when the editor is empty (no text and no pending images), pressing Enter directs the first message in the queue to the currently in-progress turn.

Installation and Enabling

To install the plugin, use the officially provided command. The plugin is distributed only via the repository and is not published to npm.

dsh plugin --profile web add github:himeope/dsh-queue-first-enter

After installation, restart dsh web. The plugin requires dsh web 0.1.0-rc.6 or later. In the settings interface (Settings → General), you can use the “Enter sends the first queued message” or “Press Enter to immediately send the first queued message” toggle to control this feature.

Core Features

The feature is only effective when all of the following conditions are met:
* The editor is empty (no text and no pending images);
* The agent is running (there is an in-progress turn);
* At least one message in the queue has the status queued;
* The current session is a normal session (not a sub-agent session).

Under these conditions, pressing Enter directs the first message in the queue to the current turn. The remaining queued messages keep their original order. If the turn finishes immediately or the message has already been claimed, the operation fails silently and the message remains in the queue. In addition, the Ctrl/Cmd+Enter shortcut still retains its original function (directing all queued messages).

Typical Usage

This plugin is mainly used to adjust the priority of message execution while the agent is busy.

  1. Scenario 1: Force-insert the first queued message
    When the agent is processing a message and the queue already contains messages, clear the editor and press Enter. In this case, the first queued message is directed to the current turn at the next turn boundary, rather than waiting for the queue to fill.

  2. Scenario 2: Adjust the queue order
    Assume the agent is busy, and you first sent message A (queued) and then sent message B (queued). Now clear the editor and press Enter; message A is directed to the current turn first.

Notes

  • This feature only affects normal sessions and does not affect sub-agent sessions.
  • The editor must be empty and there must be no pending images.
  • Note version compatibility: dsh web 0.1.0-rc.6 or later is required.

With this plugin, developers can flexibly control the order in which queued messages are directed without interrupting the current turn, thereby optimizing debugging and testing workflows.