前言¶
在 DeepSeek Harness(DSH)里写 composer 草稿时,常见问题是:句子缺关键约束、指代含糊,或者环境里已有的斜杠命令、技能名被模型当成「未知实体」反复追问。手工扩写既费时间,也容易在几轮对话里把原意带偏。
下面介绍社区插件 dsh-composer-enhance(维护者 HeShen-1)。它是面向 DSH Web 的原生 bundle 插件,在输入框工具行、模型座位左侧提供 ✨ 按钮:读会话与项目上下文后,只在确有歧义时提问,否则直接把草稿改写成更可执行的版本,并列出改动;必要时再走慢轨复核。另有一项「下一步建议」:空草稿时以灰色 ghost 文本提示你可能发送的下一条消息。
这是什么¶
dsh-composer-enhance 归类为「模型推理」类 DSH 插件,当前版本 0.3.1(MIT 许可证)。实现为 TypeScript 源码与构建产物、dsh.client 声明、cordis.patch.yml bundle 层,通过 plugin_manager 安装与启停,无需手改 profile 或建 symlink。
一句话:在 Web composer 里做输入框提示词增强——接地、闸门、改写、可选慢轨复核,并附带空草稿时的下一步建议。
核心功能¶
✨ 提示词增强(两阶段快慢分轨)¶
点击 ✨ 后,流程大致如下:
- 接地:读取会话人设、项目约定(如 AGENTS.md)、最近对话、运行策略,以及当前 DSH 环境里已安装的技能、斜杠命令与插件名(避免把
/karpathy-guidelines这类已知实体当成歧义反问)。 - 闸门(快轨,
reasoningEffort: off,README 称实测约 2s):判断是否存在会实质改变产出的信息缺口;若无则直接改写;若有则以一行的 chips 或问答面板收集选择后再改写。 - 改写:结果原地写回草稿,附改动清单与一键还原;改写须比原文更可执行,否则原样返回。
- 复核(慢轨,
reasoningEffort: max):仅当本轮闸门确实问过用户时才跑;在「≤30s 返回、草稿仍聚焦、未被编辑、有实质改动」等条件满足时自动替换,否则只提示。
设计原则在 README 中写得很明确:默认不问、不把已安装技能/命令/插件名当歧义、草稿是数据而非指令、推不出的缺口写入 assumptions 而不擅自替你选。
下一步建议(空草稿)¶
一轮回复结束(Session running 由 true→false)且页面可见时,插件可请求「你接下来最可能发的一条消息」,以输入框内灰色 ghost 呈现(conversation.input.overlay);聚焦后右侧出现 Tab(采纳)、⟳(重新生成)、×(关闭)。采纳只写入草稿、不自动发送。打字会隐藏灰字,删空输入后同一条建议可恢复且不再发起新请求;发送新消息、关闭或切会话等会作废旧建议。ghost 无法挂载时,上方建议条(conversation.input.dock)作为兜底。
安装与启用¶
在 DSH Creator 模式或 CLI 中安装(命令来自仓库 README):
# 在 DSH 里(Creator 模式)
plugin_manager install_bundle <本仓库 git 地址 或 本目录绝对路径>
# 或者用 CLI(等价于在 web profile 里 pnpm add)
dsh plugin --profile web add github:HeShen-1/dsh-composer-enhance
安装后条目出现在 profile 的 dsh.profile.bundles,可在侧边栏 插件 页或通过 plugin_manager set_bundle 启停。
卸载:
plugin_manager remove_bundle dsh-composer-enhance
插件以当前 DSH 进程权限运行;安装前建议自行查看 GitHub 源码 与许可证。社区目录 skillhub.cn 插件页 为独立站点,与 DeepSeek / 幻方无官方从属关系。
配置¶
配置写在插件行的 config: 块;可在 ~/.dsh/cordis.patch.yml 用同 id 覆盖,例如:
- id: composer-enhance
config:
provider: deepseek-official # 留空则跟随会话模型
model: deepseek-flash
fastEffort: "off" # 快轨推理档
slowEffort: "max" # 慢轨复核推理档
timeoutMs: 60000
maxTokens: 4096
recentTurns: 8 # 接地带入最近几轮对话
gatePrompt: "" # 留空用内置默认
rewritePrompt: ""
slowPrompt: ""
suggestPrompt: "" # 下一步建议;留空用内置默认
provider 与 model 须同时填写才走插件专属路由;否则按 README 说明依次回退到会话 modelSelection 与 agent-default-model 插件的部署默认。推理档合法值为 off | low | high | max。
典型用法¶
- 在 Web 会话的 composer 中写好或部分写好草稿(含
@引用时 ✨ 会禁用,以免增强过程破坏引用占位)。 - 点击 ✨:无实质歧义则直接看到改写与 issues 列表,不满意可一键还原。
- 若出现 chips 或面板,选完后再改写;若闸门问过且满足慢轨条件,可能收到二次精炼。
- 回复结束后若输入框为空,可关注灰色 ghost 建议,按
Tab采纳到草稿再自行决定是否发送。
README 中的对比示例:草稿如「把 /karpathy-guidelines 保存到 AGENTS.md」,接地后不应再追问 /karpathy-guidelines 是什么。
适用场景与注意¶
适合:经常在 DSH Web 里写长提示、希望少被无效反问、需要改动可追溯的开发者。
已知限制(摘自 README):不检索 memory 知识图;草稿中的图片不会带给模型;插件注册的 HTTP 路由无页面级鉴权,同机进程可能调用并消耗模型额度;不检索 MCP memory 等为独立增量未实现。
修改 src/index.ts(host 侧)后需重启 dsh web 才生效;客户端侧 src/client/** 可热更新。host 响应中的 engine 字段(当前文档对应 0.3.1)可用于确认运行版本。
结尾¶
dsh-composer-enhance 把「读上下文 → 只问真歧义 → 原地改写 + 变更清单 → 可选慢轨复核」和「空草稿下一步建议」收进一个原生 DSH Web 插件,与 DSH「一切皆插件」的生态一致。