前言¶
在 DeepSeek Harness (DSH) 中运行智能体时,通常需要在后台进行。如果代理在后台遇到需要批准的请求或错误,如果不主动查看终端,容易错过。dsh-caps-beacon 插件利用 MacBook 内置键盘的 Caps Lock 指示灯提供视觉反馈,让你在离开终端时也能通过键盘状态掌握代理的运行情况。
这是什么¶
dsh-caps-beacon 是 DeepSeek Harness 的一个客户端插件,由用户 xinyang920 维护。它将 Caps Lock LED 转换为状态信标,通过 LED 的亮灭和闪烁频率来指示 DSH 内部代理的状态。
核心功能¶
插件主要提供以下状态指示:
- 常亮:根代理正在运行(执行工具、调用模型、重试等)。
- 闪烁:需要用户关注。包括等待批准、等待回答(
ask_user_question)、计划审查,或上一轮结束时处于错误/阻塞状态。 - 关闭:空闲状态。
插件运行机制上是一个“纯观察者”,它监听 DSH 的公共主机事件(如 approval/request、tools/execute),通过写入一个 C 语言辅助程序来控制 LED,不进行按键注入,也不会修改键盘映射。
安装与启用¶
安装需要执行三个步骤。假设你使用的是 web 配置文件,其他配置文件操作类似。
- 添加插件到配置文件:
dsh plugin --profile web add github:xinyang920/dsh-caps-beacon
- 构建 LED 辅助程序:
进入插件目录并执行make编译:
cd ~/.dsh/profiles/web/node_modules/dsh-caps-beacon && make
这一步会生成 `build/beacon-led` 二进制文件。
- 重启 DSH Web:
Restart dsh web
插件在启动时加载。
如果系统提示权限不足,需要手动在 System Settings → Privacy & Security → Input Monitoring 中添加 dsh-caps-beacon/build/beacon-led 的访问权限。
配置¶
插件支持通过 cordis.patch.yml 进行配置。在配置文件中添加 dsh-caps-beacon 行:
- id: dsh-caps-beacon
config:
enabled: true
ledPath: "" # 默认使用内置的 build/beacon-led
blinkIntervalMs: 250
rootsOnly: true # 默认只响应根代理,忽略子代理
verbose: false # 是否记录每次模式变更的日志
triggers:
approval: true # 开启批准请求检测
question: true # 开启 ask_user_question 检测
error: true # 开启错误/阻塞检测
典型用法¶
安装并启动后,你可以通过键盘上的 Caps Lock 灯来掌握全局:
- 观察工作状态:将任务交给代理后,LED 常亮,表示代理正在后台工作。
- 测试闪烁:在对话中让代理调用
ask_user_question函数,LED 会开始闪烁,提示你需要输入答案。
注意事项¶
- 硬件要求:需要配备内置 Apple 键盘的 MacBook(Magic Keyboards 等外接键盘不支持)。
- 依赖环境:需要 macOS 环境下的 Xcode Command Line Tools(用于
make编译)。 - 权限:可能需要授予 Input Monitoring 权限。
- 许可证:插件遵循 MIT 许可证。
结尾¶
如果你习惯通过键盘状态判断代理运行情况,这个插件可以减少频繁切换窗口的打扰。你可以通过目录页查看更多插件信息,或在 GitHub 上查看源码。
- 插件目录:https://www.skillhub.cn/plugins/xinyang920/dsh-caps-beacon
- GitHub 仓库:https://github.com/xinyang920/dsh-caps-beacon