Introduction¶
In the Web session of DeepSeek Harness (DSH), after an agent turn ends, users often have to re-enter the next round of prompts. dsh-suggest-prompt addresses this step: it writes a suggested next prompt via a bounded auxiliary LLM invocation at the end of every agent turn; the Web side renders this suggestion as light-colored ghost placeholder text within the input box, and by default, it is adopted into the draft via the Tab key.
Plugin Overview¶
It is a Web profile plugin for DSH, maintained by studyzy, and is licensed under MIT. Its core responsibilities are:
- Generating a suggested prompt upon the completion of a turn;
- Writing the suggestion to the session log;
- Displaying it as placeholder text within the Web input box;
- Providing a configurable shortcut key for acceptance.
Core Features¶
Suggestion Generation¶
After each agent turn completes, the plugin executes a bounded auxiliary LLM invocation. By default:
- It inherits the router of the most recent recorded request in the main request;
- It sends the last round of user input and the AI’s final answer;
maxRecentTurnsdefaults to1;- It disables reasoning, using
reasoningEffort: off, corresponding tothinking: disabled.
Web Display¶
The suggestion will be displayed as light-colored ghost placeholder text within the Web input box. While every completed turn generates a suggestion, the ghost text only appears when the draft is empty. It is adopted into the draft by default via Tab; you can also record the acceptance shortcut key as Alt+Slash, Ctrl+Enter, etc.
Configurable Limits¶
The plugin provides limits for bytes, tokens, timeouts, transcription length budgets, and visible character limits for suggestions. It supports explicitly specifying the provider / model, following the session router if not specified.
Filtering and Skipping¶
Transcription masking is performed before sending, and the output undergoes purification and semantic filtering. Empty or non-compliant replies will be silently skipped: no suggest-prompt/suggested event is written, the projection remains null, and no warning is logged.
Installation and Enablement¶
Prerequisites¶
The following environment must be met:
- Node.js
^22.19or>=24 pnpm- A
dshdeployment based ondeepseek-harnessusing the web profile dsh ≥ 0.1.1-rc.1- The browser provides the
conversation.input.overlayslot andinputActions.setDraft
Installation from GitHub¶
It is recommended to install from the GitHub repository first:
dsh plugin --profile web add git@github.com:studyzy/dsh-suggest-prompt.git
After installation, restart the running dsh web service.
If pnpm ≥10 intercepts the prepare build script during git installation, you need to add the package key printed by pnpm to the allowBuilds in:
~/.dsh/profiles/web/pnpm-workspace.yaml
and then re-execute the installation command.
Installation from Local Source¶
If you already have a source code directory locally:
dsh plugin --profile web add /path/to/dsh-suggest-prompt
Installation via npm¶
After the plugin is published, you can install it using the npm package name:
dsh plugin --profile web add @studyzy/dsh-suggest-prompt
Uninstallation¶
dsh plugin --profile web remove @studyzy/dsh-suggest-prompt
Typical Usage¶
- Open the “Suggest Prompt” card in the WebUI “Settings → Plugins”.
- Select the
provider/modelto use for suggestion generation, or choose to follow the session router. - Save the configuration. The next completed turn will take effect.
- If needed, record the acceptance shortcut key in this card, for example
Alt+SlashorCtrl+Enter. - Wait for the agent to complete a turn. If the input box draft is empty, light-colored ghost placeholder text will appear inside the input box.
- Press the default
Tabto adopt the suggestion into the draft, then edit or send it.
Applicable Scenarios and Notes¶
It is suitable for users engaging in continuous multi-turn dialogue within the DSH Web profile. It is ideal for scenarios where you need to quickly obtain a draft for the next prompt while also wanting to retain the option for human confirmation.
Please note before use:
- The plugin runs with the permissions of the current
dshprocess. You should check the source code and license before installing; this project declares the MIT license. - This plugin integrates via the DSH plugin mechanism and is not an official component from the app store.
- A suggestion is generated for every completed turn, but the Web side only displays the ghost text when the draft is empty.
- Generations that are aborted (or replaced) will not leave a suggestion for earlier turns.
- Empty replies or filtered replies are considered as having no suggestion: no
suggest-prompt/suggestedevent is written, the projection remainsnull, and no warning is logged. - The projection preserves the last suggestion; reopening an old session will display its final suggestion without initiating a new model call.
- For models that cannot turn off thinking, the thinking process may consume the budget; if
maxOutputTokensis set too low, it may end prematurely withmax-tokens.
Conclusion¶
dsh-suggest-prompt limits the suggested prompt to a single bounded auxiliary generation and provides an adoptable placeholder text in the Web input box. It is suitable for DSH Web users who want to reduce repetitive input without interrupting the current draft.
GitHub Repository:
- https://github.com/studyzy/dsh-suggest-prompt