Liangebra/dsh-esc-enter0

dsh-esc-enter

opencode 风格的用户体验插件:按 Esc 键取消正在运行的回合(忙时回车追加/打断已是 DSH 内置设置)。

AI 分析

核心用途是提供快捷键 Esc 快速停止当前 AI 任务。适合习惯键盘流操作、希望快速打断或取消当前回合响应的网页端用户。

包名
dsh-esc-enter
版本
0.1.0
许可证
MIT
最近更新
2026年8月16日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Liangebra/dsh-esc-enter

dsh-esc-enter

opencode 式 UX:Esc 取消当前任务 — DeepSeek Harness Web UI 按键插件。

Press Esc while the agent is running to cancel the current turn — the same action as the Stop button (Session.cancel()), keeping queued work for later turns.

Esc 取消当前回合(与"停止"按钮同机制,队列里未跑的工作保留到下一回合)。

特性 / Features

  • Esc = 退出当前任务:agent 运行中按 Esc 立即取消当前回合
  • Enter 行为不重复实现:busy 时 Enter 是"追加指令"(queue)还是"打断"(steer),由 DSH 内置的「Enter behavior while busy」设置负责
  • 空闲时不拦截 Esc:命令菜单 / 弹层照常关闭
  • 挂载于 conversation.composer.dock 槽,无宿主逻辑,纯客户端

安装 / Install

dsh plugin --profile web add github:Liangebra/dsh-esc-enter

重启 dsh web 并硬刷新浏览器(Ctrl/Cmd+Shift+R)。

工作原理 / How it works

Client bundle 监听 conversation.composer.dock 槽位;当 ConversationSnapshot.running === true 时注册 document 级 capture 阶段的 keydown 监听,命中 Esc 即调用 sessions.binding(sessionId).session.cancel()(与停止按钮同一路径)。

协议 / License

MIT