dsh-prompt-polish
Đã xác minhdsh-prompt-polish · v0.1.0 · MIT · Giao diện web
Prompt polish ✨ — a DeepSeek Harness WebUI plugin that adds a one-click button to rewrite rough input into a structured, professional prompt, written back into the input box.
Cài đặt
dsh plugin add dsh-prompt-polish Xác nhận layer đã áp bằng dsh --profile default --dump-config — xem hướng dẫn cài plugin.
Mã nguồn
Phát hành lên npm mà không có repository công khai. Hãy kiểm tra nội dung package trước khi cài.
Thẻ
Tác giả
Readme
dsh-prompt-polish
DeepSeek Harness WebUI 插件:在输入框工具栏右端加一个 ✨ 润色 按钮,一键把粗糙、零散的输入扩写为结构清晰、可直接使用的专业提示词,并写回输入框。
功能
- 在输入框里写下粗略需求。
- 点击右端 ✨ 润色。
- 插件调用你配置的 LLM(默认 DeepSeek)把需求改写为清晰、可执行的提示词。
- 润色稿替换原草稿。你审阅后再正常发送。
润色不自动发送,可先审阅、可再改。
安装
若你的 profile 装了 dshmarket,可在市场 UI 里安装。否则:
dsh plugin --profile web add dsh-prompt-polish
然后重启 WebUI 使 bundle 加载。
从源码构建(开发时):发布包已附带编译好的
lib/。如需自己构建,运行pnpm install && pnpm build(使用tsdown)。
配置
插件通过 cordis.patch.yml 挂载,可覆盖默认值,或让客户端在请求里携带 provider/model:
- insert:
- id: prompt-polish
name: 'dsh-prompt-polish'
config:
provider: openrouter
model: deepseek/deepseek-v4-flash-0731
maxTokens: 2000
| 配置项 | 默认 | 说明 |
|---|---|---|
provider |
(取请求或留空) | 润色所用 LLM provider |
model |
(取请求或留空) | 润色所用模型 id |
maxTokens |
2000 |
单次润色输出 token 上限 |
config 与请求都未提供 provider/model 时,请求会被拒绝(no model route available)。至少配其一,让润色始终有可用模型。
接口
POST /dsh-prompt-polish/polish(WebUI 服务端,仅同源)
{ "text": "..." }
返回:
{ "ok": true, "text": "改写后的提示词", "truncated": false, "provider": "...", "model": "..." }
text— 润色后的提示词。truncated— 命中 token 上限时为true;文本仍可用,仍会写回输入框。- 失败时:
{ "error": "..." },HTTP4xx。
接口要求同源(Origin 必须等于 Host),防止跨站滥用。
架构
- 服务端(
src/index.ts) — 注册 HTTP 路由,通过ctx.llm.stream+BlockAssembler流式润色并返回文本。依赖:@deepseek-ai/cordis、@deepseek-ai/dsh-llm。 - 客户端(
src/client/index.tsx) — 在conversation.input.right槽位注册按钮,fetch 接口后通过inputActions.setDraft写回。样式自包含(注入单个<style>标签),浏览器 bundle 用纯tsdown配置即可构建。
两端均由 tsdown 构建。客户端 bundle 输出为 DSH 的 window.__ModuleLoader__.load({ id, factory }) 格式,并将 react / react/jsx-runtime 外置到浏览器模块表。
协议
MIT。见 LICENSE。