DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Prompt For Me — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
P

dsh-prompt-for-me

Prompt For Me

Automatic ghost-text next-message suggestions for DeepSeek Harness, with direct-fill manual generation.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:ChuanTianML/prompt-for-me#d37a1a54a54d82e80b933787f20a55142af10da3
READMECompatibilityVersions

Compatibility and provenance

Prompt For Me is published as dsh-prompt-for-me and currently resolves to version 0.6.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
9/19/2026

Versions

0.6.1stable
9/19/2026
0.6.0stable
8/29/2026
0.5.1stable
8/24/2026
Show 3 more versionsCollapse versions
0.5.0stable
8/23/2026
0.4.0stable
8/23/2026
0.2.0stable
8/21/2026

Related plugins

Loading related plugins…

Latest
0.6.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 4
Weekly downloads
0
Last push
9/19/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in productivity-workflow.

Client Ui Task Board@linxin666/dsh-client-ui-task-boardHost-authoritative task board for the DSH Web GUI with real session execution, Host cron scheduling, and optional cross-platform idle-sleep protection; mounted without DSH source changes.Web All@linxin666/dsh-web-allDSH Web UI 全家桶聚合插件:一键安装全部功能插件(task-board / git-graph / pet / remote-web-ui / web-ui-settings / skin-center / community-plugins / compat shim)。compat 桥接层已并入本包(src/client),无需独立 compat npm 包。Rewind Plugindsh-rewind-pluginIn-window conversation rewind with workspace file restore · 同窗口内对话回退并可还原工作区文件Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-base

README

Prompt for Me

中文

Prompt for Me prepares your next message in the DeepSeek Harness composer. After the agent replies, you can accept a suggestion, edit it, or generate another. The plugin helps you draft; you decide when to send.

See it in action

1. Your next message, ready after the reply

When the composer is idle, a suggestion appears in light gray. It is not part of your draft yet, and nothing is sent automatically.

After the agent replies, a next-message suggestion appears in light gray with a checkmark to accept it

2. Accept it, then make it yours

Press Tab or click ✓ to turn the suggestion into editable text. Here, we add “Keep it under eight words.” You still decide when to send.

The accepted suggestion becomes an editable draft, with an added eight-word limit and an enabled send button

3. Want another direction? Click the sparkles

Click ✦, immediately left of Send, or use the default shortcut ⌘⇧Space / Ctrl+Shift+Space. A fresh next message goes straight into the draft for you to review or edit.

A manually generated follow-up is filled into the composer and remains unsent

Real product screenshots using a fictional project and demo conversations. Private session lists, workspace information, and runtime statistics are outside the captured area.

What it does

  • Generates only after a newly completed turn when the session is idle, plan mode is inactive, and the composer has exactly empty text, no images, and no queued intent.
  • Retains that completed turn while Host policy loads or the composer is temporarily ineligible, then generates once the requirements are met.
  • Cancels an in-flight automatic request if the composer becomes ineligible; late results cannot restore the suggestion. An explicit rejection by the native composer does not open a fallback preview.
  • Retires suggestions from the preceding context when a newer turn completes, including after submissions that settle too quickly for an intermediate composer state to render.
  • Shows native inline ghost text on compatible Harness clients. Older clients use a small preview card without mutating the draft.
  • Accepts a ghost with Tab, Right Arrow, or the adjacent check control. Enter never accepts ghost text.
  • Hides the ghost when you type, offers it again if you clear the draft, and dismisses it with Escape.
  • Keeps the Sparkles Trigger and Mod+Shift+Space shortcut. An explicit Trigger always requests a fresh suggestion and writes it directly into the draft, even while automatic generation is in flight.
  • Sends skipped suggestions with the next explicit request so the model avoids repeating or paraphrasing them. The bounded cycle stores at most ten.
  • Never bypasses Harness approvals, never invokes tools, and never sends a message automatically.

Interaction reference

SituationResult
A turn completes and the composer is eligibleOne automatic suggestion appears outside the draft.
Tab, Right Arrow, or the check controlThe visible suggestion becomes one undoable draft edit.
Enter while only a ghost is visibleNothing is accepted or sent.
Start typingThe ghost hides; your text wins.
Clear the typed textThe hidden suggestion can reappear without another model call.
EscapeThe visible suggestion is dismissed.
Sparkles button or Mod+Shift+SpaceA fresh suggestion is generated and directly fills or replaces the draft.
Edit and EnterOnly the final text is submitted; adoption becomes positive feedback only now.

Install

The release tarball is the simplest option because it contains prebuilt Host and Client artifacts:

dsh plugin --profile web add https://github.com/ChuanTianML/prompt-for-me/releases/download/v0.6.1/dsh-prompt-for-me-0.6.1.tgz

Restart dsh web after installation.

You may also install a pinned Git tag:

dsh plugin --profile web add github:ChuanTianML/prompt-for-me#v0.6.1

pnpm 10 may ask you to allow the package's prepare script for a Git install. Add dsh-prompt-for-me: true under allowBuilds in the Web profile's pnpm-workspace.yaml, then run the command again. The script only copies the checked-out Host files and wraps the checked-out Client factory; it performs no downloads.

Update or remove it with:

dsh plugin --profile web update dsh-prompt-for-me
dsh plugin --profile web remove dsh-prompt-for-me

Current DeepSeek Harness builds provide the native inline suggestion API. If that API is absent but completed-turn projection is available, the plugin falls back to an explicit preview card with Use and dismiss controls. The manual Sparkles workflow remains direct-fill in either presentation.

Web UI settings

Open Settings → Plugins → Configurable, then expand Prompt for Me. The card follows Harness settings structure, tokens, spacing, and staged Save/Discard behavior. Saved values live in the shared Host user-settings document and take effect immediately without a restart.

You can continue editing during a save. These newer edits remain unsaved until you click Save again.

  • Suggest after the Agent replies is on by default. Turning it off withdraws any unaccepted automatic ghost and stops future automatic generation; the manual Sparkles Trigger remains available.
  • Manual generation shortcut defaults to Mod+Shift+Space. Select the current shortcut and press a new Command/Ctrl or Alt combination, or disable the shortcut. Harness still owns ghost acceptance, which defaults to Tab.
  • Advanced settings → Suggestion model follows the current Session by default. It can instead pin one provider/model from the current Harness model directory.

The UI deliberately omits context-range controls, quick/personalized modes, a personalization reset, token limits, and timeouts. The plugin owns those product decisions instead of asking users to tune suggestion quality.

Model and API key

The plugin calls ctx.llm on the Harness Host. By default it reuses the current session's provider and model, falling back to the Harness default selection. The provider therefore uses the API key already configured in DeepSeek Harness. The browser never receives or reads that key, and this plugin has no separate key.

Most users can pin an auxiliary model from the Web UI advanced settings. Deployment maintainers may also set both provider and model as a composition base in cordis.patch.yml or an overriding profile patch; a saved Web UI choice takes precedence:

- id: prompt-for-me
  name: dsh-prompt-for-me
  config:
    provider: deepseek-official
    model: deepseek-chat

Data and privacy

On each automatic or explicit generation request, the Host may send these bounded text fields to the selected model provider:

  • the current draft;
  • the last three direct-human/assistant turns from the current session;
  • current-session submitted suggestion edits, exact accepts, and rejected suggestions;
  • bounded raw examples from manual prompts and suggestion interactions in up to 20 earlier sessions;
  • up to ten suggestions skipped during the current cycle, so the model can avoid repeating or paraphrasing them.

The current draft and recent turns determine the task, intent, and message content. Current-session feedback adjusts the immediate wording. Cross-session memory may influence only durable style, detail, and workflow preferences. Manual prompts and submitted suggestion edits carry more weight than exact accepts; rejected suggestions are weak negative evidence. Editing a suggestion and triggering again rejects the original suggestion but does not treat the unsubmitted edit as a positive preference.

Harness records injected workspace instructions, runtime context, and skill catalogs in user-role events. The plugin excludes these non-human sources from conversation turns and preference memory. If both the draft and direct-human conversation are empty, generation stops before the model call.

Common API-key, token, password, and Bearer-token patterns are replaced with [REDACTED_SECRET] before the model call. Attachments, tool arguments, files, credentials, and binary blocks are not collected. The plugin has no analytics endpoint and sends data only to the model route already selected in Harness.

Interaction records are stored only in this browser's localStorage under dsh.prompt-for-me.outcomes.v2. Each record contains its session ID, final action, origin, and the relevant original/final text. Merely seeing or adopting ghost text is not positive feedback; it becomes evidence only after submission. Version 1 records migrate automatically and remain untouched. The plugin does not expose a reset control that asks users to manage this history.

DeepSeek Harness 0.1.0-rc.6 does not expose downstream registration for custom durable session-event types. For that reason, the standalone plugin does not append its auxiliary model request or outcomes to the Harness session log; doing so would make persisted sessions unreadable to the stock runtime. This is the main difference from the experimental in-tree implementation and will be revisited when a public event-registration API exists.

The generation RPC uses NDJSON. Each complete candidate is validated before it reaches either the transient suggestion surface or the draft; partial model tokens and incomplete JSON never enter the composer. Background failures stay quiet. Explicit failures remain visible on the Sparkles control.

The auxiliary request always uses reasoning effort off. The model receives one system instruction plus one JSON user message with current, currentSessionFeedback, userPreferenceMemory, and currentCycleSkipped. It receives no tool schemas or attachments.

The Host retains the latest 50 privacy-safe performance records in memory and logs each record as prompt-for-me metrics. Records contain model route, text byte/item counts, history/input preparation time, first model chunk/reasoning/text times, suggestion arrival time, total model/request time, and provider token usage. They contain no prompt, candidate, or outcome text. Query the current process with:

curl -sS -X POST -H 'content-type: application/json' \
  -d '{"method":"metrics"}' \
  http://127.0.0.1:3080/dsh-prompt-for-me/rpc

Configuration

The Web UI exposes only the three everyday choices above. The table below documents cordis.patch.yml composition controls for deployment maintainers; ordinary users are not expected to tune the stable generation limits:

FieldDefaultMeaning
automatictrueOffer a non-draft suggestion after eligible completed turns.
maxCandidateBytes4096UTF-8 limit per suggestion.
maxDraftBytes32768UTF-8 limit for a draft or edited outcome.
maxCurrentCycleSkipped10Skipped suggestions retained as hard negative context for the next Trigger.
maxCurrentCycleSkippedBytes16384Shared JSON budget for suggestions skipped during the current cycle.
maxCurrentTurns3Most recent current-session turns retained.
maxCurrentContextBytes16384JSON budget for the retained turns.
maxCurrentFeedbackBytes4096JSON budget for current-session suggestion feedback.
maxPreferenceMemoryBytes8192JSON budget for cross-session preference memory.
maxHistorySessions20Earlier sessions inspected.
maxManualPrompts8Earlier manual prompts retained.
maxEditedSuggestions6Edited suggestion pairs retained per feedback tier.
maxAcceptedExact6Exact accepts retained per feedback tier.
maxRejectedSuggestions4Weak rejection signals retained per feedback tier.
maxLocalOutcomes

Development

Requires Node.js 22.19 or newer.

npm run check

The command rebuilds the static Host/Client artifacts, runs the Node and React UI test suites, and verifies the npm package contents.

The React settings tests cover both source and built clients; see UI test setup.

License

MIT

50
Browser-local interaction records retained.
maxLocalOutcomesBytes131072Shared JSON budget for browser-local records and their RPC copy.
maxOutputTokens2048Auxiliary model output budget.
timeoutMs30000Suggestion request timeout, including historical session reads and the auxiliary model call.
shortcutMod+Shift+SpacePortable Trigger, or disabled.