前言¶
在 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