一键把草稿改写成具体可执行的提示词
29.4/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/26 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add wjf1/dsh-prompt-enhance该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · other
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 13 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DeepSeek Harness 输入框里的 Sparkle 按钮:通过 harness LLM 把草稿改写成可执行的提示词,带多级撤销栈和 token 级前后差异对比。
README
由 DeepSeek 最新模型翻译生成dsh-prompt-enhance
⚠️ 源码版本落后于 npm 版本。 本仓库 main 对应 v0.2.1(约 1.1k 行);npm 上最新的 0.2.7(约 2.2k 行)是重构后的另一套实现(schemastery 配置体系、SSE 流式、上下文感知、速率限制),尚未回流本仓库。从 npm 安装得到的代码与本仓库源码不一致,审计请以 npm 包内容为准。回流后本节会删除。
DeepSeek Harness 的「增强提示词」插件:输入框右侧(模型选择器左边)多一个 ✨ 按钮,点一下就把草稿改写成更具体、更可执行的提示词;支持多层撤销与逐字差异对比。交互对标 WorkBuddy 的 ✨。
增强后出现撤销与差异按钮
草稿「帮我写个周报」 ↓ 点 ✨ 草稿「请帮我撰写一份本周工作周报,要求:1) 分「本周进展 / 风险与阻塞 / 下周计划」三段…」
↓ 再点一次草稿「帮我写个周报」 ← 原文完整恢复
为什么不直接调 WorkBuddy 的增强模型
WorkBuddy 的 ✨ 走的是官方客户端专用模型 global:enhance-1.0(Enhance-1.0),中继要求请求带官方客户端签名,第三方调用一律被渠道校验挡掉(request illegal / no_healthy_account)。
展开完整文档(README 剩余 1 节)
dsh-prompt-enhance
⚠️ 源码版本落后于 npm 版本。 本仓库 main 对应 v0.2.1(约 1.1k 行);npm 上最新的 0.2.7(约 2.2k 行)是重构后的另一套实现(schemastery 配置体系、SSE 流式、上下文感知、速率限制),尚未回流本仓库。从 npm 安装得到的代码与本仓库源码不一致,审计请以 npm 包内容为准。回流后本节会删除。
DeepSeek Harness 的「增强提示词」插件:输入框右侧(模型选择器左边)多一个 ✨ 按钮,点一下就把草稿改写成更具体、更可执行的提示词;支持多层撤销与逐字差异对比。交互对标 WorkBuddy 的 ✨。
增强后出现撤销与差异按钮
草稿「帮我写个周报」 ↓ 点 ✨ 草稿「请帮我撰写一份本周工作周报,要求:1) 分「本周进展 / 风险与阻塞 / 下周计划」三段…」
↓ 再点一次草稿「帮我写个周报」 ← 原文完整恢复
为什么不直接调 WorkBuddy 的增强模型
WorkBuddy 的 ✨ 走的是官方客户端专用模型 global:enhance-1.0(Enhance-1.0),中继要求请求带官方客户端签名,第三方调用一律被渠道校验挡掉(request illegal / no_healthy_account)。因此本插件复用 DSH 自己的 chat 模型 + 逐字复刻的 WorkBuddy 增强提示词(lib/prompt.mjs),效果对齐而不依赖官方客户端。
结构(一个包,两个半边)
| 半边 | 文件 | 职责 |
| 宿主 | lib/index.js | 注册 POST /dsh-prompt-enhance/api/enhance,校验浏览器会话,单轮调用 ctx.llm.stream(),无工具、不写会话历史 |
| 浏览器 | lib/client.js | 在 conversation.input.right 槽位渲染 ✨ 按钮,读写草稿、维护撤销点 |
| 提示词 | lib/prompt.mjs | 逐字复刻的 system prompt + user prompt 模板 + 输出清洗 |
HTTP 契约
POST /dsh-prompt-enhance/api/enhance
body: {
"text": "<草稿原文>", # 必填,上限 20000 字符,body 上限 256KiB "provider": "acme", # 可选:界面当前模型,宿主按白名单校验 "model": "cn:deepseek-v4.1-flash", # 可选 "reasoningEffort": "max" # 可选 } 200 : {"text": "<增强后的提示词>", "provider": "...", "model": "...", "followed": true|false} 400 : EMPTY_INPUT | INPUT_TOO_LONG | INVALID_JSON 401/403 : 无浏览器会话(隧道或未登录外部访问) 405 : METHOD_NOT_ALLOWED 502 : LLM 失败(NO_ADAPTER / AUTH / RATE_LIMIT / CONTEXT_WINDOW_EXCEEDED …)
503 : 宿主没有 llm 服务 504 : TIMEOUT(默认 120s)
GET /dsh-prompt-enhance/api/health
200 : {"ok":true,"provider":"acme","model":"cn:deepseek-v4.1-flash"}
provider/model/reasoningEffort 只接受 [A-Za-z0-9][A-Za-z0-9._:/@+-]{0,199} 形状的标识符;任一不合法就整组忽略、退回插件默认模型,请求体无法决定任意上游路由。
认证复用 dsh-client-connection 的浏览器 Cookie 校验:DSH Web 端口可能被 cloudflared 隧道暴露(本机曾见 59543、重启后为 56531),没有这层栅栏,本端点会变成公网可用的免费模型代理。
客户端交互细节
- 空草稿 → 按钮置灰;有草稿才可点。
- 点击 → 转圈;加载中再点 = 取消(abort 请求,草稿不动)。
- 成功 → 原地替换草稿,旁边出现两个小按钮:↺ 撤销(可逐层回退,最多 8 层)与 ⇄ 差异。
- 多层撤销:对已增强的文本再点 ✨ 会再增强一层并压栈,↺ 一次退一层,退到栈空回原文。
- 差异高亮:增强后自动弹出对比卡(逐字标出删除线与新增高亮、处数与净增字数),Escape 关闭,卡片上可直接「撤销」。
- 用户在等待期间改了草稿 → 放弃增强结果,绝不覆盖用户输入。
- 成功后又继续编辑 → 撤销栈作废、差异卡关闭,不会把旧文本盖回来。
- 失败 → 按钮短暂变红,hover 显示中文原因,再点即重试。
- 跟随界面当前模型:客户端把模型选择器里的 provider/model/推理档 带进请求,宿主校验格式后透传给 ctx.llm.stream;读不到模型时退回插件配置的默认模型。
差异卡的可读性约定(0.2.1)
差异卡此前按深色主题挑色(#7ee2a8 / #ff9d98),浅色主题下是「浅色字压白底」——实测对比度只有 1.5:1 / 1.8:1,远低于 WCAG AA 的 4.5:1。现在:
- 新增段 color: inherit(跟随主题正文色)+ 20% 绿底 + 底部绿线;删除段文字由 color-mix(in srgb, currentColor 82%, #b91c1c) 推导 + 删除线。实测浅色 14.0:1 / 13.1:1、深色 10.5:1 / 7.9:1。
- 不只靠颜色区分:新增带下划线色块、删除带删除线,卡片底部还有「新增 / 删除」色块图例。
- 正文 13px / 行高 1.6,差异段按换行切行渲染(长提示词不再是"一大坨")。
- 浮层锚在整张输入卡上方(不是 ✨ 按钮),高度按可用空间算,超长时正文内部滚动;宽度 min(560px, 100vw − 24px) 并随窗口尺寸重新定位。
真机验收(2026-10-19,DSH 重启后实测)
位置与 WorkBuddy 对齐:✨ 落在 conversation.input.right 槽位,order: 50,排在视觉路由的「识图」(order 40)之后,紧贴模型选择器左侧。
| 步骤 | 实测结果 | 证据 |
| 空草稿 | 按钮置灰不可点(disabled=true,title「增强提示词」) | docs/03-disabled.png |
| 输入「帮我写个周报」 | ✨ 亮起,位于「Deepseek-V4.1-Flash」左侧 | docs/01-before.png |
| 真实点击 ✨ | 转圈 → 原地改写成结构化提示词,右侧出现 ↺(撤销)与 ⇄(差异)两个小按钮 | docs/02-enhanced.png |
| 差异卡 | 增强完成自动弹出(portal 到 body,浮在输入卡上方,不遮草稿),逐字绿底新增 / 红底删除线,Escape 关闭;实测 560×337、overlapsComposer=false | docs/04-diff.png |
| 主题可读性 | 新增/删除文字色都由主题色推导:浅色 14.0:1 / 13.1:1,深色 10.5:1 / 7.9:1(均 ≥ WCAG AA 4.5:1) | getComputedStyle 实测对比度 |
| 多层撤销 | 连点两次 ✨(depth 2)→ ↺ 一次退到第一版(93 字)→ 再 ↺ 逐字回到原文「帮我写个周报」,撤销按钮消失、父节点从 span.dsh-prompt-enhance__group 退回裸按钮 | 浏览器断言 data-depth 2→1→0 |
| 模型跟随(界面侧) | 拦截请求体实测 {"text":…,"provider":"acme","model":"cn:deepseek-v4.1-flash","reasoningEffort":"max"}——模型选择器当前档位被完整带进请求 | fetch 录制 |
| 模型跟随(宿主侧) | 显式传 cn:deepseek-v4-pro + high → 200、响应回显该模型且 followed:true;传非法标识符 ../etc/passwd → 回落 cn:deepseek-v4.1-flash、followed:false | 同源 fetch 直测 |
| 同源 API 直测 | 200 正常;空白→EMPTY_INPUT;坏 JSON→INVALID_JSON;超长→INPUT_TOO_LONG | 均为 400,符合契约 |
改代码后的生效方式:客户端半(lib/client.js)改完刷新页面即可(bundle 每次页面加载重新取),宿主半(lib/index.js、lib/prompt.mjs)必须重启 DSH。
开发调试:怎么拿到带认证的 GUI URL
DSH Web 只认 dsh web 打印的带 token 链接,直连端口会看到 dsh web authentication required。仓库里的 tools/gui-cookie.mjs 用本机凭据库换出一枚短期会话 Cookie,方便在浏览器或自动化脚本里走查(只在本机使用,不要外传它打印的 Cookie):
cd $env:USERPROFILE\.dsh\dsh-prompt-enhance
node tools\gui-cookie.mjs --check 127.0.0.1:<port> # 校验:打印 Cookie 并用它请求一次 GUI
node tools\gui-cookie.mjs --serve 59611 127.0.0.1:<port> # 本地跳板:浏览器打开 http://127.0.0.1:59611/
端口每次启动 DSH 都会变,以启动横幅 / runtime context 显示的为准;跳板端口(59611)可固定,只需换掉第二个参数。
配置
cordis.patch.yml 里的行可以带 config,逐键覆盖 lib/index.js 的 DEFAULTS:
- insert:
- id: dsh-prompt-enhance
name: 'dsh-prompt-enhance'
config:
provider: acme # 客户端读不到界面模型时用它 model: cn:deepseek-v4.1-flash reasoningEffort: '' # 空 = 不显式传推理档 maxInputChars: 20000 timeoutMs: 120000 systemPrompt: '' # 非空则整体替换内置 system prompt
安装
dsh plugin add github:wjf1/dsh-prompt-enhance # 装进当前 profile
或在插件市场(dshmarket)里搜 dsh-prompt-enhance 后一键安装
装完需要重启一次 DSH:宿主半的路由在插件图构建时注册。之后只改 lib/client.js 的话刷新页面即可生效。
卸载:dsh plugin remove dsh-prompt-enhance(或从 profile 的 dsh.profile.bundles 删掉该行),重启。
本地开发态(不经过 registry,直接链目录):
$src = "$env:USERPROFILE\.dsh\dsh-prompt-enhance" # 本仓库位置 $profile = "$env:USERPROFILE\.dsh\profiles\desktop" # 你的 profile 目录 cmd /c mklink /J "$profile\node_modules\dsh-prompt-enhance" "$src" 再把 "dsh-prompt-enhance" 加进 $profile\package.json 的 dsh.profile.bundles,重启 DSH
测试
cd $env:USERPROFILE\.dsh\dsh-prompt-enhance
node --test "tests/.test.mjs" # Node 22+,33 个用例
- tests/host.test.mjs:路由守卫、认证栅栏、空/超长/坏 JSON、模型错误透传、空增强、缺 llm 服务。
- tests/prompt.test.mjs:两份模板的语言约束与示例未被删、$ 序列不被替换、围栏/引号清洗。
- tests/client.test.mjs:用最小 hook 运行时驱动组件,验证「点击→busy→替换→撤销→取消→被用户编辑时放弃→失败重试」全部状态迁移。
已知边界
- 只做单轮增强,不带会话上下文(与 WorkBuddy 一致);想要「结合历史」需要另设计。
- 模型跟随依赖客户端能读到 modelDirectories:读不到(服务缺失、会话无目录)就静默回落配置里的 provider/model,不会报错给用户。
- 撤销栈最多 8 层,且等待期间用户改动草稿会整栈作废(避免把旧文本盖回来)。
- 差异高亮是词级 LCS(空白/单汉字/拉丁词/单字符切分),token 上限 800;超长草稿会退化成正文字符级对比。
- 客户端半改动刷新页面即生效;但如果刷新前 bundle 已被浏览器/服务端缓存,要确认页面确实拿到了新文件(本次踩过一次:restart 与手改代码交错,首屏是旧 bundle,现页刷新后才出现 ↺/⇄ 与 span.dsh-prompt-enhance__group)。
- 客户端半的样式用内联 注入(id dsh-prompt-enhance-style),类名统一 dsh-prompt-enhance__ 前缀避免与其它插件撞车。
与已有插件的关系
生态里已有若干「提示词增强」类插件(例如 npm 上的同名包 dsh-prompt-enhance,作者 rongxingda)。本仓库是独立实现,没有复用它们的代码,差异在于:
- 提示词是对 WorkBuddy 增强功能的逐字复刻(lib/prompt.mjs),不是通用「优化」模板;
- 多层撤销栈(最多 8 层)——增强结果可以再增强,逐层回退;
- 逐字差异对比卡——增强后自动弹出,标出新增/删除与处数、净增字数,可直接在卡上撤销;
- 跟随界面当前模型:模型选择器换了档位,下一次增强就跟着换,无需另配「增强专用模型」。
DeepSeek Harness 插件,在输入框的模型选择器左侧放一个 ✨ 按钮。点一下就把草稿改写成更清晰、更可执行的提示词;原文随时可以找回。
功能
- 一键改写输入框里的草稿,就地替换——不弹对话框,也不发送。
- 多层撤销(最多 8 层):对已经增强过的草稿再增强,然后用 ↺ 一层层退回。
- token 级差异(⇄,每次增强后自动显示):标出新增/删除的片段、处数和净增字数,以卡片形式在输入框上方打开。按 Escape 关闭;「撤销 / Undo」一键可达。
- 跟随会话模型:客户端发送模型选择器里当前选中的 provider/model/reasoning effort;宿主校验其结构,读不到就回落到配置的默认值。
- 只在宿主侧调用 LLM:浏览器永远看不到 API key。路由位于浏览器会话 cookie 栅栏(dsh-client-connection)之后,所以被隧道转发的端口没法被当成免费模型代理滥用。
- 默认安全:草稿为空 → 按钮禁用;请求进行中再点会取消;等待期间编辑草稿会丢弃结果,而不是覆盖你的文本;失败时按钮变红并给出中文原因,再点一次即重试。
安装
dsh plugin add github:wjf1/dsh-prompt-enhance
重启 DSH 一次,让宿主侧注册路由。只改 lib/client.js 的话,刷新页面即生效。
HTTP API
POST /dsh-prompt-enhance/api/enhance
{"text": "<draft>", "provider": "acme", "model": "cn:deepseek-v4.1-flash", "reasoningEffort": "max"}
→ 200 {"text": "<enhanced>", "provider": "...", "model": "...", "followed": true|false}
→ 400 EMPTY_INPUT | INPUT_TOO_LONG | INVALID_JSON
→ 401/403 no browser session
→ 405 METHOD_NOT_ALLOWED
→ 502 LLM failure (NO_ADAPTER / AUTH / RATE_LIMIT / CONTEXT_WINDOW_EXCEEDED …)
→ 503 主机内没有 LLM 服务 → 504 TIMEOUT(默认 120 秒)
GET /dsh-prompt-enhance/api/health
→ 200 {"ok": true, "provider": "...", "model": "..."}
provider / model / reasoningEffort 必须匹配 [A-Za-z0-9][A-Za-z0-9._:/@+-]{0,199};只要有一项不匹配,整个覆盖配置就会被忽略,改用配置好的默认值。
为什么不调用 WorkBuddy 自带的增强模型
WorkBuddy 的 ✨ 用的是仅限官方客户端的模型 global:enhance-1.0;中继会拒绝第三方调用方(request illegal / no_healthy_account)。这个插件复用 DSH 自己的聊天模型,并原样照搬 WorkBuddy 的增强提示词(lib/prompt.mjs),所以措辞能对上,又不必依赖官方客户端。
配置
lib/index.js 里 DEFAULTS 的任意键,都能通过配置档补丁中插件的 config 块覆盖:
- insert:
- id: dsh-prompt-enhance
name: 'dsh-prompt-enhance'
config:
provider: acme # used when the client cannot read the session model
model: cn:deepseek-v4.1-flash
reasoningEffort: '' # empty = do not send an explicit effort
maxInputChars: 20000
timeoutMs: 120000
systemPrompt: '' # non-empty replaces the built-in system prompt
测试
node --test "tests/.test.mjs"
三个套件共 33 个用例:主机路由的守卫、鉴权、模型失败透传;提示词模板完整性与输出清洗;以及客户端状态机,由最小钩子运行时驱动(点击 → 忙碌 → 替换 → 撤销 → 取消 → 编辑时丢弃 → 重试)。
已知限制
- 单轮,不带对话上下文 —— 与 WorkBuddy 的行为一致。
- 模型跟随需要客户端提供 modelDirectories;拿不到时会静默回退到配置的默认值。
- 撤销栈最多保留 8 层;请求进行中编辑草稿会清空撤销栈。
- 差异对比用词级 LCS,上限 800 token;更长的草稿会降级为字符级比较。
截图
| before | enhanced |
| 草稿非空,✨ 按钮可用 | 增强之后:出现 ↺ 撤销和 ⇄ 差异对比 |
| disabled | diff |
| 草稿为空时按钮禁用 | 差异卡片:新增/删除的片段与计数 |
许可证
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
wjf1/dsh-prompt-enhance
一键把草稿改写成具体可执行的提示词
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,148已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,266已汉化DSH
70.7
这是你的仓库?认领条目