dsh-composer-prompt-optimizer:在 DSH 输入框一键优化提示词

前言

在 DeepSeek Harness(DSH)里写任务说明,常见做法是先在输入框里打几句草稿,再手动补全目标、范围、验收条件。会话里若已有几轮讨论,还要自己把上下文揉进同一条提示里。草稿短、信息散时,模型往往只能猜你的意图。

下面介绍社区插件 dsh-composer-prompt-optimizer(GitHub 仓库 subisle/dsh-prompt-optimizer)。它在聊天输入框工具栏增加一键改写:结合当前会话里最近几轮用户发言,并用你已在界面选中的模型,把草稿整理成结构更清晰的提示词,再写回输入框。

这是什么

dsh-composer-prompt-optimizer 是 maintainer subisle 发布的 DSH 插件,npm 包名与插件行中的 name 均为 dsh-composer-prompt-optimizer(与 GitHub 仓库名 dsh-prompt-optimizer 不同,是因为 npm 上 dsh-prompt-optimizer 已被他人占用,以 package.json 的 name 为准)。当前版本 0.2.0,许可证 MIT,分类上属于 模型推理 类能力:通过一次辅助 LLM 调用来改写提示,而不是直接替你执行任务。

插件在 Composer 上挂载工具栏按钮。点击后读取当前草稿,调用宿主侧的优化逻辑,用结果替换草稿;若优化过程中草稿已被修改,会提示冲突而不是静默覆盖。

核心功能

一键改写与零副作用

优化过程是单次辅助 LLM 调用(purpose: 'compaction'):按 README 说明,不会写入会话日志、不会激活 Agent,可用 Esc 取消。优化进行中按钮变暗并禁用,无 spinner、无布局跳动,并带有合适的 aria-label。

会话上下文

会从聊天快照中取最近若干轮用户发言作为参考(默认最多 6 轮,每轮上下文有字符上限)。@path 类提及会原样保留。

注入安全与输出形态

草稿与上下文包在 <draft-evidence> 等证据标记中,声明为数据而非指令;标记冲突会转义,避免草稿里类似「忽略所有规则」的文本劫持优化器。

优化器按「目标 → 范围 → 要求 → 交付物 → 验收」重组内容,不做 persona 卡片,不编造事实。短草稿会按扩展策略补全(例如 README 示例:审计项目看一下目前有啥问题 可扩展为带范围、要求、交付与验收的审计说明);长草稿则主要重组、去重、补缺口。输出会自动去掉多余代码围栏或包裹引号。

模型路由

优化调用复用当前会话的模型,解析顺序为:

  1. 会话 modelSelection 投影中的待选模型(刚切换的那个)
  2. 投影中上次使用的路由
  3. 会话日志 requestHeader 中记录的路由
  4. 部署配置的 agentDefaultModel 回退

安装与启用

推荐从 npm 安装到指定 profile(将 <name> 换成你的 profile 名):

dsh plugin --profile <name> add dsh-composer-prompt-optimizer

也可从 release 包、本地目录或 GitHub 安装(README 原文):

curl -LO https://github.com/subisle/dsh-prompt-optimizer/releases/download/v0.2.0/dsh-composer-prompt-optimizer-0.2.0.tgz
dsh plugin --profile <name> add ./dsh-composer-prompt-optimizer-0.2.0.tgz

dsh plugin --profile <name> add /path/to/prompt-optimizer

dsh plugin --profile <name> add github:subisle/dsh-prompt-optimizer

安装后可用下面命令确认 profile 中已 compose 该插件:

dsh --profile <name> --dump-config | grep -A1 prompt-optimizer

在 DSH Desktop 中,README 要求安装到 ~/.dsh/profiles/desktop 并重启应用:客户端条目可 HMR 热更新,宿主侧需重启后才生效。

插件声明对 DSH 相关 peer 为 ^0.2.0-rc.2;compose 时会做 semver 校验,宿主版本不在范围内时 profile 会跳过该 bundle。

典型用法

  1. 在 Composer 输入框里输入简短任务草稿(甚至几个词即可)。
  2. 确认输入框旁模型选择与你期望用于优化的路由一致(优化会使用该会话模型)。
  3. 点击工具栏上的优化按钮,等待草稿被替换为结构化提示。
  4. 对比改写前后,按需微调后再发送正式请求。

README 建议的最快验证方式:打几个字、点优化按钮、直接对比前后差异。

配置(可选)

在 profile 的插件行中,id 为 prompt-optimizer,name 为 dsh-composer-prompt-optimizer。字段均可选;非法值会导致插件加载失败并报 schema 错误,不会静默回退默认值。

- id: prompt-optimizer
  name: dsh-composer-prompt-optimizer
  config:
    maxOutputTokens: 4096
    timeoutMs: 120000
字段 默认 说明
maxDraftChars 8000 草稿最大字符数,超出报 draft-too-large
maxContextTurns 6 带入的最近用户轮数
maxContextChars 600 每轮上下文截断上限
maxOutputTokens 2048 辅助调用输出 token 上限
timeoutMs 60000 端到端超时(prompt-optimizer/timeout)

适用场景与注意

适合:经常在 DSH Composer 里写 coding-agent 任务说明、草稿偏短或结构混乱、希望把最近几轮用户上下文一并纳入提示的开发者。

注意:

  • 插件在当前 dsh 进程权限下运行,优化会发起一次 LLM 调用;安装前请自行查看 GitHub 源码 与 MIT 许可证,确认符合你的安全与合规要求。
  • 社区目录 SkillHub 插件页 与 GitHub 为独立信息源,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,本文事实以仓库 README 与 package.json 为准。

结尾

dsh-composer-prompt-optimizer 把「补全任务说明」收成输入框里的一步:上下文感知、用当前选中模型、结构化输出且尽量不污染会话日志。若你在用 DSH 写 Agent 任务,可在 profile 里按上文命令安装后试用。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜