前言¶
DeepSeek Harness 的核心生态理念是「一切皆插件」。在智能体开发或调试场景中,频繁的审批、确认计划以及重复输入内容需要大量的鼠标点击操作,这容易打断工作流。为了减少对鼠标的依赖,提高操作效率,需要一种更精细的输入与交互控制方式。
下面介绍 @zhangqingyu/dsh-keyboard-shortcuts,它是一个客户端插件,通过可配置的键盘快捷键管理器,将输入历史回填、审批和计划快捷键能力引入 DeepSeek Harness,并将配置持久化保存。
核心功能¶
该插件主要提供以下能力:
- 可配置的键盘快捷键管理器:允许在设置页面自定义快捷键。
- 设置页面绑定:提供可视化的快捷键录制界面。
- 输入历史回填:支持使用
ArrowUp回填上一次提交的内容,使用ArrowDown向后翻或回到草稿。 - 审批与计划快捷键:支持快速审批权限升级和计划审批。
- 配置持久化:使用
localStorage存储配置,刷新页面后保持生效。 - 剪贴板兼容:不拦截系统的复制、剪切、粘贴操作,依赖原生 Edit 菜单修复 macOS 特殊组合键。
安装与启用¶
克隆仓库后,使用 DeepSeek Harness 的命令行工具进行安装。
git clone https://github.com/904915452/dsh-keyboard-shortcuts.git
cd dsh-keyboard-shortcuts
dsh plugin --profile web add "file:$(pwd)"
安装完成后,重启应用并刷新页面。进入「设置」页面,即可看到新增的「键盘快捷键」配置页。
使用说明¶
插件在「设置 → 键盘快捷键」页面提供可视化的快捷键录制功能。点击事件右侧的按钮,按下键盘组合键即可完成绑定。
默认快捷键¶
插件内置了以下事件的默认快捷键:
| 事件 | 默认快捷键 | 作用 |
|---|---|---|
| 上一条输入 | ArrowUp |
回填上一次提交的内容 |
| 下一条输入 | ArrowDown |
向后翻 / 回到正在编辑的草稿 |
| 允许权限升级 | Mod+Enter |
审批弹窗「允许一次」 |
| 拒绝权限升级 | Escape |
审批弹窗「拒绝」 |
| 批准计划 | Mod+Enter |
计划审批「确认执行」 |
| 计划转聊天 | Escape |
计划审批「去聊天里说」 |
Mod在 macOS 上代表Cmd,在 Windows/Linux 上代表Ctrl。
快捷键录制与冲突处理¶
- 录制:点击设置页对应事件右侧的按钮,按下目标组合键即可完成绑定。
- 冲突处理:多个事件可以共享同一快捷键(例如
Mod+Enter同时绑定「允许权限升级」和「批准计划」)。当按下快捷键时,系统会按顺序尝试匹配对应事件。如果匹配到第一个事件但未找到对应弹窗,会继续尝试下一个事件,而不是直接放弃。
技术细节与限制¶
- DOM 结构依赖:审批和计划按钮的快捷键依赖于当前版本弹窗的 DOM 结构(如
[data-approval-key]/[data-plan-review-key])。如果应用升级导致结构变化,需要同步调整插件逻辑。 - 输入历史触发条件:输入历史(
ArrowUp/ArrowDown)只在特定条件下触发:- 应用处于空闲态(
phase === "plain")。 - 光标位于首行(
ArrowUp)或末行(ArrowDown)。 - 没有打开下拉菜单(如
/候选菜单或[role="listbox"])。
- 应用处于空闲态(
- 剪贴板兼容:插件在
document层挂载捕获阶段监听,但不会拦截composer自身的剪贴板事件,也不干扰消息上的复制按钮,避免破坏原生复制体验。macOS 的Cmd+C/V/X/A依赖原生 Edit 菜单修复。
结语¶
该插件通过配置持久化和精细的事件绑定,简化了 DeepSeek Harness 中的重复操作流程。如需查看更多插件或提交反馈,可访问 GitHub 仓库。