Introduction

When using DeepSeek Harness (dsh), users usually need to wait for a model response after typing a few characters in the input box to confirm their intent. The dsh-intent-suggest plugin solves this problem: the moment you pause typing, it infers the task you may want to issue based on the context and generates three candidates in real time above the input box. You only need to click a candidate to fill the input box, without waiting.

Plugin Overview

This plugin is maintained by linzimu666 and is a client-side plugin. Its core value is to think through the unfinished half-sentence for you: three ready-to-send task candidates appear in real time above the input box, and clicking one only fills the input box.

Core Features

  1. Real-time candidate generation: Three ready-to-send task candidates appear in real time above the input box.
  2. Trigger mechanism: A request is triggered after a 550 ms typing pause, preventing duplicates. No request is sent for only punctuation, gibberish, or incomplete input.
  3. Category support: Supports three categories: coding, research, and custom. Candidates are rendered by slot and remain in place when their meaning does not change.
  4. Interaction style: Clicking a candidate fills it into the input box; it is not sent automatically.
  5. Context usage: Uses the most recent 6 conversation turns for inference.
  6. Custom profile: Supports generating custom profile prompts and saving them in the browser.

Installation and Activation

Install it using the official command:

dsh plugin --profile web add github:linzimu666/dsh-intent-suggest

After installation, you must restart the dsh process for the change to take effect.

Usage

A line such as “You may want it to do · Coding” appears above the input box. Click this label to switch categories.

  • Coding: Candidates include modifying code, running tests, locating files, and so on.
  • Research: Candidates include searching for papers, finding datasets, reproducing open-source implementations, and so on.
  • Custom: Opens an input box. Write a role-defining prompt, and the plugin will generate a set of prompts and save them in the browser.

Clicking a candidate inserts it into the input box, but you still need to manually press send.

Technical Details and Dependencies

The plugin does not press send for the user. The host must expose three same-origin HTTP endpoints: /intent-suggest/suggest, /intent-suggest/context, and /intent-suggest/providers. Custom profiles are saved locally in the browser. It depends on pnpm (or use the Plugins page in the Web sidebar).

License

MIT