Plugin directory / AI Models / dsh-prompt-polish
dsh-prompt-polish
Verified · install-tested on dsh JoukoPuro
What it does
A DeepSeek Harness (DSH) plugin: adds a ✨ icon button to the web input box's tool row. Click to choose polishing style, the connected LLM rewrites your draft prompt to be more professional and AI-understandable. A DeepSeek Harness plugin: icon-only composer button that rewrites your prompt via the connected LLM (balanced/concise/detailed/code styles, i18n).
Works — verified, early-stage project
A DeepSeek Harness (DSH) plugin: adds a ✨ icon button to the web input box's tool row. Click to choose polishing style, the connected LLM rewrites your draft prompt to be more professional and AI-understandable. A DeepSeek Harness plugin: icon-only composer button that rewrites your prompt via the connected LLM (balanced/concise/detailed/code styles, i18n). It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-prompt-polish
English | 中文
A DeepSeek Harness (DSH) plugin
that adds a ✨ sparkle button to the web composer's tool row. Click it, pick a
rewrite style, and the already-connected LLM rewrites your draft prompt to be
more professional and easier for an AI to understand — then replaces the draft
so you can review before sending.
- Icon-only button — a sparkle glyph in the composer tool row; no text,
tooltip gives the full description. - Four rewrite styles — balanced / concise / detailed / code-oriented.
- Multi-language UI — menu copy follows your browser language (zh, en, ja,
ko, fr, de, es, pt, ru, it, tr, vi; falls back to English). - Uses your connected model — resolves the current default agent model
(agentDefaultModel), or an explicitprovider/modelfrom config.
Requirements
- DeepSeek Harness (
@deepseek-ai/dsh) web profile running, with a model
adapter configured (e.g. the DeepSeek provider with an API key in Settings).
Install
# from a checkout of this repository (or the directory containing it)
dsh plugin --profile web add ./dsh-prompt-polish
Then restart dsh web so the profile picks up the new bundle:
dsh web
Open the web UI, type a draft, and click the sparkle button in the composer
tool row.
Configuration
The plugin accepts optional config in the profile's cordis.patch.yml
(user layer, applied after the bundle layer):
- id: prompt-polish
config:
provider: deepseek-official # explicit route (optional)
model: deepseek-v4-flash # must be paired with provider
style: balanced # default rewrite style: balanced | concise | detailed | code
maxTokens: 2048 # output cap for the rewrite call
# system: '...' # custom rewrite instruction (replaces the built-in per-style prompts)
Without provider/model, the plugin usesagentDefaultModel.currentSelection() — the same default model the session
uses.
How it works
| Half | File | Role |
|---|---|---|
| Host | lib/index.js |
Registers POST /prompt-polish on the web server; streams one LLM rewrite via ctx.llm |
| Browser | lib/client.js |
Registers the sparkle button into conversation.input.right; opens a style menu; posts the draft and replaces it with the polished text |
The bundle's package.json declares both faces of the dual-face plugin:
dsh.bundle— the profile patch layer (cordis.patch.yml) that inserts theprompt-polishloader row.dsh.client— the web boot row;client-modulesserveslib/client.jsat/plugins/dsh-prompt-polish/client.js.
Development
Edit lib/index.js (host) and lib/client.js (browser). The browser bundle is
a hand-built closure-factory artifact (window.__ModuleLoader__.load({ id, factory })) — keep externals limited to the platform modules
(react, @deepseek-ai/dsh-client-ui-primitives) and inline everything else,
matching the loader's module-table rules.
Verify on a scratch port before touching the live profile:
dsh web --port 3099
curl -s http://127.0.0.1:3099/plugins/dsh-prompt-polish/client.js | head
curl -s -X POST http://127.0.0.1:3099/prompt-polish \
-H 'content-type: application/json' \
-d '{"text":"read a.csv and sort by b","style":"code"}'
License
MIT
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-prompt-polish for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:JoukoPuro/dsh-prompt-polish Headless (CLI) profile:
dsh plugin --profile headless add github:JoukoPuro/dsh-prompt-polish Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.
When to use it
Bring a new model, provider, or routing policy into the loop so dsh can pick the right brain for the job.
Who it's for
Users juggling multiple models or providers who want cost, quality, and latency balanced automatically.
For developers — extending it
Provider adapters and routing heuristics are the seams — add a backend, tune the fallback chain, or add per-task model selection.