Foreword

In the development workflow for DeepSeek Harness (DSH), it is often necessary to intervene during agent task execution to provide new guidance or correct the direction. Directly appending messages to the conversation stream can easily interrupt ongoing tool calls or disrupt the coherence of the context. The dsh-user-steer plugin aims to solve this pain point: it allows you to give the agent a brief instruction while a task is running. Messages are injected into the current turn at tool batch boundaries, never interrupting tool calls that are already running.

Plugin Overview

This is a DeepSeek Harness user mid-turn steering plugin, maintained by developer wht567 and released under the MIT License. It provides DSH with the ability to safely and non-disruptively steer an agent while it is running.

Core Features

The plugin provides multiple ways to inject steering instructions, meeting different scenario needs:

  1. /steer <instruction> — Prominent interjection
    After entering this command, the instruction enters the conversation as a steering bubble, visually prominent, suitable for corrections that need immediate attention.

  2. /inject <instruction> — Silent injection
    The instruction is silently read by the model. In the conversation stream, it appears only as a compact one-line context note, without disturbing normal reading of the conversation.

  3. Injection bar
    Above the composer input box, an injection bar with the same width as the input box is always visible. It supports one-click silent injection, making reuse convenient.

  4. Model-side prompt
    The plugin adds a mid-turn steering section to the system prompt, explicitly telling the model “messages arriving mid-turn are course corrections for the current task,” ensuring the model correctly understands the intent of the instruction.

Installation and Enablement

Install the plugin via the command line. Restart DSH after installation to activate it:

# 通过插件市场安装(推荐)
dsh plugin --profile web add github:wht567/dsh-user-steer

# 或使用本地路径安装
dsh plugin --profile web add file:/path/to/dsh-user-steer

Working Mechanism

Internally, the plugin pushes messages into the next-step queue of the inbox via the Agent.steer() method. This ensures that an instruction does not immediately interrupt the current process, but is claimed at the next step boundary as a real user/message event. This design avoids killing tools, preserves role alternation, and keeps the prompt prefix cache intact.

Typical Usage

Use the following commands directly in the conversation:

/steer 把重点放在生成报告的格式上
/inject 请忽略之前的错误数据,重新计算

Applicable Scenarios and Notes

This plugin is suitable for developers who need to adjust direction in real time and make mid-course corrections while an agent is executing. Note that the plugin runs with the permissions of the current DSH process; we recommend reviewing its source code and license before installation.

Summary

dsh-user-steer enables developers to provide precise mid-turn guidance to an agent without interrupting the task flow. For more details, see the Plugin Directory or the GitHub Repository.