dsh-shortcut-extensions: Adding a layer of keyboard-driven quick switching to the DSH interface

前言

在 DeepSeek Harness(DSH)里做模型切换、会话跳转、权限调整,若主要靠鼠标点侧边栏和菜单,长会话、多工作区时节奏会明显拖慢。宿主本身有快捷键体系,但缺少一套集中的「调色板式」切换与可开关的拓展命令注册。dsh-shortcut-extensions 是维护者 BenHanks303 发布的客户端类插件,在 DSH Web / Desktop 标准组合上挂一层键盘驱动的快速切换,并提供侧边栏控制面板与快捷键参考页。插件当前在 GitHub 上星标为 0,以社区目录与仓库说明为准,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,SkillHub 等目录为独立站点。

这是什么

dsh-shortcut-extensions(快捷键拓展)面向已在用 DSH Web 或 Desktop 的用户:通过模糊搜索的模型调色板、带提示预览的会话调色板、按最近顺序循环会话、跳转到「已回答但未读」的会话、聚焦输入框,以及可配置的权限预设循环,把高频操作绑到快捷键上。主机端 index.js 的 apply 为空,能力均通过宿主服务与 client.js 注册;纯 JavaScript,无构建步骤、无 npm 依赖(React 由宿主模块表提供)。许可证为 MIT,package.json 中版本为 1.1.0。

另有一项与宿主 UI 相关的补充:Header chips — 工作区名称与 git 分支显示在会话标题旁(conversation.session.header.actions),进入会话时会重新读取分支信息。

核心功能

下面按 README 已列能力说明;各命令均可在 DSH Settings → Shortcuts 或插件面板「快捷键参考」页按设备本地重绑。

模型调色板(默认 ⌘⇧M / Ctrl+Shift+M)

模糊搜索模型;Ant Design 风格的上色 provider 标签(点击标签可筛该 provider);名称后缀标签(如 routing group);推理能力徽章;可将常用模型 pin 到顶部。

会话调色板(默认 ⌘⇧S / Ctrl+Shift+S)

双栏:左侧会话列表,右侧跟随高亮行的本人提示预览(防抖 + 缓存)。含已归档会话及徽章;Enter 打开会话,归档项会自动恢复。

会话循环(Desktop:Ctrl+Tab / Ctrl+Shift+Tab)

按侧边栏的最近使用顺序在前一个 / 后一个会话间切换。

跳转到下一个已回答会话(默认 Desktop ⌘G / Ctrl+G;Web ⌘⇧G / Ctrl+Shift+G)

跳到最近已回答、尚未查看的会话;若无则回退到仍在运行中的会话。

聚焦 Composer(默认 Desktop ⌘I / Ctrl+I;Web ⌘⌥I / Ctrl+Alt+I)

通过宿主 composer facade 恢复光标位置。

权限循环(默认 ⌘⇧P / Ctrl+Shift+P)

在面板中配置的预设间循环(任意 2 项及以上:Read Only / Workspace Write / Full access,以及部署侧额外预设)。无权限预设能力时,相关 UI 会优雅隐藏。

侧边栏控制面板

每条命令显示实时键帽与开关;快捷键参考页列出宿主命令,支持本机重绑 / 重置;短暂提示条避免命令静默失败。

其它实现细节

  • IME 安全:组合输入状态下不抢键,用 Enter 确认候选不会误选调色板项。
  • 明暗主题适配;调色板固定高度,搜索时布局不跳动。
  • 可选能力缺失时降级:例如无 turn-outline 投影时,提示预览会显示说明而非报错。

安装与启用

官方 README 给出的步骤如下(勿自行拼接 dsh plugin add github:... 一类未在资料中出现的命令):

  1. 克隆本仓库到本地。
  2. 在 DSH 中打开 插件 (Plugins),从克隆目录安装该插件。
  3. 重载窗口(macOS:Cmd+R)。

依赖标准 DSH Web 组合。键位覆盖存储位置:Desktop 为 userData/keybindings.json;Web 为 origin 本地存储,按设备保存。

典型用法

  1. 需要换模型时按 Ctrl+Shift+M(macOS 为 ⌘⇧M),输入关键字筛选,必要时点 provider 标签缩小范围,选中带 pin 的常用项或列表项确认。
  2. 在长列表里找历史会话时按 Ctrl+Shift+S,左侧移动高亮,右侧查看该会话下自己的 prompt 预览,Enter 进入;归档会话会一并列出并在打开时恢复。
  3. Desktop 下用 Ctrl+Tab / Ctrl+Shift+Tab 按最近顺序切会话,无需鼠标点侧边栏。
  4. 等模型跑完多个会话时,用 Ctrl+G(Web 为 Ctrl+Shift+G)跳到最近已回答且未读的那条。
  5. 写消息前按 Ctrl+I(Web 为 Ctrl+Alt+I)回到输入框并恢复光标。
  6. 在面板里配置权限预设后,用 Ctrl+Shift+P 在预设间循环;具体组合以面板与 Settings → Shortcuts 为准。

打开插件侧边栏面板可逐项开关命令,并在参考页核对与宿主冲突的键位后再改绑。

适用场景与注意

适合谁:习惯键盘流、同时开很多 DSH 会话、频繁换模型或权限预设的 Web / Desktop 用户。

权限与安全:插件在当前 DSH 进程权限下运行,安装前应阅读仓库源码与 MIT 许可证,自行评估是否纳入工作流。

浏览器与 Desktop 限制(README Notes):

  • 浏览器保留部分系统键:单修饰键绑定如 Cmd+G 仅 Desktop;Firefox 占用 Cmd+Shift+P(隐私窗口)。
  • Desktop 中 Cmd+W 属于原生「关闭窗口」,插件无法接管。

社区目录页:https://www.skillhub.cn/plugins/BenHanks303/dsh-shortcut-extensions
源码与完整快捷键表:https://github.com/BenHanks303/dsh-shortcut-extensions(中文说明见仓库内 README.zh.md)。

结尾

dsh-shortcut-extensions 把模型与会话的「调色板式」切换、未读已答跳转、Composer 聚焦和权限循环收到一套可开关的快捷键与侧边栏里,并兼顾 IME 与主题。若你的 DSH 工作流已经以键盘为主,可按 README 从本地目录安装后在 Settings 与插件面板里微调键位即可。

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

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

Xiaoye