前言¶
DeepSeek Harness(DSH)社区常用插件方式扩展客户端能力。csiroqa/dsh-hotkeys 面向 DSH 的 web 使用场景,把切换会话、发送/清空草稿、停止生成、复制会话、归档会话等操作绑定到键盘,减少鼠标往返。它更适合需要在 DSH 中高频操作会话、并希望用快捷键替代部分点击动作的开发者。
这是什么¶
- 插件:
csiroqa/dsh-hotkeys - 维护者:
csiroqa - 许可:MIT
- 安装对象:DSH web profile
- 核心目标:为 DSH 客户端添加全局快捷键,并支持配置键位、
sendMode、ignoreInputs
核心功能¶
会话导航¶
- 会话切换:按侧栏顺序环绕切换,按住可连续切换。
- 新会话:与侧栏“新建会话”同一入口。
草稿与发送¶
- 发送草稿:
send等价 composer 加速 Enter;草稿为空且有排队消息时,把排队消息推入运行中的回合;发送/受理进行中自动拦截。 - 清空草稿:只清文本,保留已附加图片。
会话管理¶
- 停止生成:停止当前会话运行中的回合;仅普通会话与 continuable 子代理可打断;未运行时给出页面内提示。
- 复制会话:fork 当前会话(标题递增)并跳转到新会话。
- 归档会话:调用原生
workspaces.archiveSession,将当前会话移入“已归档”。
/hotkeys 命令¶
在会话中输入 /hotkeys,可列出全部 8 个动作的当前生效键位,包含用户自定义覆盖。
触发守卫¶
- IME 组合输入中不触发。
- AltGr 键击不触发。
- 已被消费(
defaultPrevented)的按键不触发。 - 开启
ignoreInputs时,纯按键组合(无 Ctrl/Cmd/Alt)在输入框/文本域内不触发。 - 按住不放只放行导航类动作。
- 非法/重复键位会在控制台
warn,并指明动作名。
安装与启用¶
先准备环境:
- Node.js >= 22
- pnpm
- 本机
deepseek-harness源码检出(依赖以link:指向../deepseek-harness)
然后执行:
git clone https://github.com/csiroqa/dsh-hotkeys.git
cd dsh-hotkeys
pnpm install
pnpm build
安装进 web profile。插件以 link: 指向当前仓库目录,因此命令使用当前目录:
dsh plugin --profile web add link:$(pwd)
重启 dsh web,并在浏览器中执行 Ctrl+F5 硬刷新。之后如果需要改源码,重新 pnpm build 并硬刷新即可生效。
典型用法¶
1、打开任意会话,使用 Ctrl+Alt+[ / Ctrl+Alt+] 切换会话;使用 Ctrl+Alt+N 新建会话。
2、输入草稿后使用 Ctrl+Enter 发送;使用 Ctrl+. 停止生成;使用 Ctrl+Shift+F 复制会话。
3、使用 Ctrl+Alt+A 归档当前会话,会话会移入侧栏“已归档”。
4、输入 /hotkeys 查看当前生效的全部快捷键。
键位中的 mod 在 Windows/Linux 上为 Ctrl,在 macOS 上为 ⌘。键位按 US 键盘布局假设,shift 上档字符会还原。
配置¶
键位、sendMode、ignoreInputs 通过 settings 命名空间持久化。
可以在 DSH 中通过“设置 > 通用 > 快捷键”进行可视化编辑:
- 编辑各动作键位。
- 一个动作支持多个键位,逗号分隔。
- 输入空串可禁用该动作,并重置回默认。
- 调整
sendMode。 - 打开或关闭
ignoreInputs。
也可以编辑 $DSH_HOME/settings.yaml 的 hotkeys: 段,配置键位、sendMode、ignoreInputs。
注意:cordis.patch.yml 的 insert config 段不达浏览器半区,键位配置请写 settings.yaml。
sendMode 设为 auto 时,与 composer 加速 Enter 行为一致。ignoreInputs 用于控制纯按键组合是否在输入框/文本域内触发。
适用场景与注意¶
适合经常使用 DSH web 会话、希望减少鼠标操作的人。该插件针对 DSH 0.1.1-rc.2 源码检出开发验证,并在 @deepseek-ai/dsh@0.1.1-rc.2(npm 全局/npx 安装)环境实测可用。平台为 Windows / macOS / Linux,Node.js 版本要求为 >= 22。
需要注意:
- 插件会在当前 dsh 进程权限下运行。安装前请先检查源码与 LICENSE。
- 它依赖
sessions/workspaces两个公开服务,以及一处 untyped 的conversation.input运行时面;ui-conversation缺席时相关动作静默降级。 - 已知限制:slash 菜单打开时的拾取仲裁由 composer 私有持有,
send直接提交草稿而非拾取高亮项。 - 快捷键只在本机页面上生效,DSH 默认回环绑定,不涉及任何网络监听。
- 键位配置写入
$DSH_HOME/settings.yaml,这是本机文件;请勿把 DSH 端口暴露到公网。
许可与链接¶
本项目使用 MIT License。使用、修改、引用或收录时,请保留 LICENSE 文件与版权声明,并标明出处(本仓库链接)。
项目仓库:https://github.com/csiroqa/dsh-hotkeys