dsh-button:输入框快捷动作插件

前言

在 DeepSeek Harness(DSH)里,输入框的操作空间有限。多数时候只需要把一句固定的回复填进草稿并提交,比如「继续」「收尾」「按推荐执行」。如果这些动作每次都要手动输入,就会打断工作流。dsh-button 就是为了解决这个重复动作的问题:在输入框旁提供三个快捷按钮,用最少的点击完成最常用的文本提交。

是什么

dsh-button 是 DSH 的客户端插件,维护者为 xinming-chenniang。它只在输入框的 UI 层提供三个快捷动作:

  • 继续:把「继续」两个字填进当前会话并提交
  • 自定义:把配置好的「标签 + 文字」填进当前会话并提交
  • 重发上一条:把最后一条真人用户消息原样再发一次

这三个按钮都是「填字并提交」的动作,不执行宿主命令,也不会覆盖已有草稿。

核心功能

三个按钮

按钮 作用
继续 发送「继续」(标签和文字都能在编辑器里改)
自定义 发送你配置的「标签 + 文字」
重发上一条 把最后一条本人消息原样再发一次

这些按钮共享同一套逻辑:从会话/历史中取文本 → 填入输入框 → 提交。输入框里已有草稿时按钮不会发送,只提示「有草稿,未发送」;繁忙时点击会排队(按钮恒为 queue),空闲时直接发出。

自定义按钮

自定义按钮允许你配置「标签 + 要发送的文字」。常见的用法是把常用动作变成一键:

  • 收尾 = 收尾
  • 知识库 = 用 knowledge-base 技能查一下我最近的对话
  • 健康 = 读 health-assistant 技能再回答

配置文件

配置文件位置(按优先级):

  1. 环境变量 DSH_BUTTON_CONFIG 指向的 .json
  2. $DSH_HOME/dsh-button/buttons.json(默认 C:\Users\<你>\.dsh\dsh-button\buttons.json)

文件不存在时,首次安装自带 5 条默认按钮(总结、审查、测试、提交信息、解释报错)。保存过一次配置后以文件为准,清空按钮就是真的清空,不会回退默认。

配置格式示例:

{
  "buttons": [
    { "label": "收尾", "text": "收尾" },
    { "label": "知识库", "text": "用 knowledge-base 技能查一下我最近的对话" }
  ],
  "hidden": ["resend"],
  "presets": {
    "continue": { "label": "继续", "text": "继续" },
    "resend": { "label": "重发上一条" }
  }
}

hidden 是可删除的预设:continue / resend(分别对应继续、重发上一条)。presets 是可编辑的预设文案:continue 的标签和文字都能改,resend 只能改标签(内容永远是最后一条真人消息)。

界面编辑

在界面里点击「+」打开浮层,分为两区:

  • 预设按钮:也按「标签+内容」显示。继续是两个输入框(标签 / 要发送的文字);重发是标签输入框 + 只读说明「最后一条我发的消息(动态)」;每条右侧「删除」,删掉变「恢复」。
  • 我的按钮:每条一个标签输入框 + 一个文字输入框,底部「+ 添加一条」,每条右侧「×」删除。

保存即落盘。不需要记格式、不用写 =:只填一半的行才会报错并指明第几条;两栏都空的行自动跳过。上限 8 条;标签 ≤ 12 字、文字 ≤ 500 字、标签不能换行(文字可以多行)。

边界行为

  • 配置只决定「发什么字」和「藏哪个预设」,不执行命令、不读文件;点按钮仍走 setDraft + submit。
  • 删预设是真的注销插槽格子(不是画成空),恢复时重新注册,所以删完不会留下空位。
  • 读不到配置(宿主路由不通 / 桌面端 dsh-app:// 转发未验证)时:自定义格只显示「+」,预设全部按默认显示,编辑器里贴出错误;保存也会失败。
  • 配置文件是唯一会被本插件写入的文件;不碰凭据、不出外网。

安装与启用

npm(web profile)

dsh plugin --profile web add dsh-button

装完重启(客户端插件是启动时快照)。

GitHub 源

dsh plugin --profile web add github:xinming-chenniang/dsh-button

桌面端

桌面 profile 由应用独占管理,CLI 会被拒绝:profile "desktop" is managed exclusively by the Electron application。用 设置 → 插件 → 添加插件,输入 dsh-button(或 GitHub 仓库地址),安装后重启应用。

本地源码

设置 → 插件(插件经理)→「安装」→ 选择本机 clone 下来的 dsh-button 目录,或用 link: 安装后重启。

卸载

  • 插件管理器 → remove → 重启 DSH;
  • 或从 profile 的 dependencies 与 dsh.profile.bundles 各删一行、删掉 node_modules 里的 junction,重启。

适用场景与注意

适合需要频繁输入固定回复、希望把常用动作变成一键的开发者。插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。

短结尾

dsh-button 通过在输入框旁提供「继续」「自定义」「重发上一条」三个快捷按钮,把常用的文本提交动作变成一键操作,减少重复输入。目录页与 GitHub 仓库见下。

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

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

Xiaoye