packages/dsh-task-board
zhu1090093659/dsh-web侧边栏多列任务看板:卡片交给真实 DSH 智能体会话执行,支持 cron 定时(Host 侧到点执行,关浏览器也生效)。
在输入框加入 ✨ 按钮与 /enhance 命令,把草稿改写成结构化提示词、在输入框下方列出待确认项,跟随当前会话模型,并可撤销改写。
一个 DeepSeek Harness 插件:把输入框里还没想清楚的草稿,一键扩写成可直接发送的结构化提示词,并在发送前列出「待确认」的信息缺口。
gaps)。| 入口 | 命令 | 返回 |
|---|---|---|
| ✨ 按钮(client.js) | /enhance-quiet <draft> | JSON.stringify({prompt, gaps, added}) 字符串,供按钮解析后回填输入框 |
| 手动 slash 命令 | /enhance <draft> | 纯文本:改写后的提示词;有缺口时追加 ## 待确认 / ## To confirm 列表 |
/enhance-quiet 是内部命令,按钮调用后命令卡会被隐藏,不打扰会话流。
增强成功后,输入框下方会出现一条诊断条:说明模型补充了什么、列出「待确认」缺口;点「撤销」可恢复原稿(编辑器自身的 Ctrl+Z 也会尽量生效,但用诊断条更可靠)。发送消息后诊断条自动消失。
配置写在 profile 的 cordis.patch.yml 中该插件行的 config 下;全部可选,非法值回退默认。默认不钉模型:增强调用跟随当前会话模型。
| 键 | 默认 | 含义 |
|---|---|---|
commandName | enhance | 文本命令名(需匹配 ^[a-z][a-z0-9_-]*$) |
quietCommandName | enhance-quiet | 内部 JSON 命令名 |
provider | 空 | 模型 route;与 model 成对出现才生效(省略即跟随会话) |
model | 空 | 模型 id;与 provider 成对 |
systemPrompt | 内置 | 要求模型只输出 {"prompt","gaps","added"} JSON 的系统提示词 |
template | Draft:\n<<<\n{{draft}}\n>>> | 用户消息模板,{{draft}} 会被草稿替换 |
maxInputChars | 4000 | 草稿字符上限 |
maxOutputTokens | 1024 | 单次输出 token 上限 |
timeoutMs | 60000 | 单次调用超时(毫秒) |
模型路由解析顺序(「跟随当前会话模型」= 第 2 步):
config.provider + config.model(成对显式指定时才有,优先级最高);modelSelection 会话投影 —— 编辑器里刚切换、尚未发送的选择(pending)优先,其次是该会话最近一次请求实际使用的模型(last used);session.requestHeader().config);agent.options);ctx.agentDefaultModel.currentSelection()(设置里的默认模型)。都没有时命令返回双语错误提示,不会静默失败。想在某个 profile 里固定用廉价模型,只在该 profile 的 patch 中给这行加 provider + model 成对配置即可。
command/run / command/done 事件(生命周期记录,正常行为)。/enhance-quiet,命令卡由 client 半隐藏;直接手敲该命令仍会出现在会话流里。provider + model 即可。dsh plugin --profile web add git+https://github.com/cosmoliu2002/dsh-prompt-enhancer.git
安装后刷新页面即可看到输入框旁的 ✨(Host 行热加载 + Client bundle 热挂载)。
npm 上同名的
dsh-prompt-enhancer属于另一个项目,本插件的安装源是上面的 GitHub 仓库(或插件市场条目),请不要用dsh plugin add dsh-prompt-enhancer安装 npm 包。
https://raw.githubusercontent.com/cosmoliu2002/dsh-prompt-enhancer/main/market/index.jsondata/plugins/cosmoliu2002__dsh-prompt-enhancer.yml),合并后会在 dsh-market 里出现并支持一键安装。以本地目录为 bundle 用 plugin_manager 的 install_bundle 安装(或把本目录 link 进 profile);安装即生效(Host 行热重载 + Client bundle 由 client-modules 热挂载):
cordis.patch.yml 的 insert 行挂载 Host 半(id prompt-enhancer);package.json 的 dsh.client 声明让 web app 加载 client.js;cordis.patch.yml 里按 id 覆盖该行的 config(provider + model 成对)。index.js Host 半:命令注册 + one-shot LLM + 结果解析(零 import)
client.js Client 半:✨ 按钮 + 诊断条 + 隐藏按钮命令卡
cordis.patch.yml bundle 的 Loader 行
locale/{en,zh}.json 插件管理页标题与描述
icon.svg 插件图标
market/index.json format-1 插件市场索引(内置「发现」标签页用)
LICENSE MIT
README.md 本文件
node --check index.js
node -e "JSON.parse(require('fs').readFileSync('package.json','utf8'))"