dsh-approval-autofocus:让 Enter 直接批准 DSH 审批卡

DSH(DeepSeek Harness)在处理审批卡片时存在一个交互痛点:当卡片(@deepseek-ai/dsh-client-ui-approval)出现时,浏览器会隐藏原始输入框(display:none),导致焦点丢失。默认情况下,Enter 和 Esc 键仅在焦点位于卡片内时生效。这意味着用户必须先手动点击卡片文本,才能使用快捷键。dsh-approval-autofocus 修复了这个断层。

这是什么

这是一个 DeepSeek Harness 的客户端插件,由 chupeter854-lang 维护。它监听 DOM,当检测到审批卡片出现且当前焦点处于空闲状态(如 <body> 或被隐藏的 composer)时,自动将焦点移入卡片的详情区域。这允许用户直接通过键盘快捷键进行操作。

核心功能

  • 自动聚焦:卡片出现且无其他焦点占用时,自动进入详情区域。
  • 键盘绑定:Enter 触发批准,Esc 触发拒绝。
  • 焦点保护:不会干扰终端、对话框或输入框中的焦点。
  • 兼容性回退:基于 data-approval-scroll 属性和 [tabindex="0"] 选择器(排除按钮)进行兼容。

安装与启用

1. 从归档安装(推荐)

  1. 将插件文件夹解压到固定目录,例如 ~/plugins/dsh-approval-autofocus。
  2. 在 DSH 侧边栏点击 Plugins -> Add plugin。
  3. 粘贴该文件夹的绝对路径。
  4. 点击 Enable now。如果页面提示,重启 DSH。

2. 从 Git 仓库

在添加插件对话框中粘贴仓库 URL。目前没有托管仓库,该归档即为最终形式。

3. 手动配置

编辑 ~/.dsh/profiles/<profile>/package.json,在 dsh.profile.bundles 中添加包名;或者在 ~/.dsh/profiles/<profile>/cordis.patch.yml 中插入一行配置。

- insert:
    - id: approval-autofocus
      name: dsh-approval-autofocus

典型用法

  • 当审批卡片出现时,焦点会自动进入卡片,直接按 Enter 批准,按 Esc 拒绝。
  • 在终端或输入框中打字时,插件不会抢占焦点。

注意事项与限制

  • 安全提示:插件仅移动焦点,不模拟按键。但如果模型输出试图诱导你按下 Enter,由于焦点已被预置在卡片上,可能会导致意外批准。建议在需要确认时点击远离卡片,或禁用插件。
  • 兼容性:基于 DSH 0.2.0-rc.2 构建。如果 DSH 重新调整卡片结构,插件可能静默失效。
  • 非官方:这是社区维护的插件,非 DeepSeek 官方组件。

结语

该插件通过自动管理焦点,让审批流程更符合键盘操作习惯。更多细节可参考 GitHub 仓库。

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

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

小夜