DSH 生態強調插件化。如果在開發或使用 DeepSeek Harness 時,需要在 AI 回合完成、權限申請、提問、出錯或開始運行等場景發生時獲取外部通知,dsh-webhook-notifier 插件提供了一種基於 HTTP 的解決方案。
該插件由 masknull 維護。它允許用戶配置 Webhook URL 和觸發條件,從而在特定事件發生時發送 HTTP 請求(GET/POST)。
核心功能¶
- 5 種觸發場景:支持獨立開關的觸發條件包括 AI 回合完成、權限申請、提問、出錯和開始運行。
- HTTP 請求支持:支持 GET 和 POST 方法,請求體支持 JSON 和 Form 格式。
- 負載模式:支持“預設字段”模式(使用模板)或“自定義文本”模式。
- 固定字段:每次請求都會自動包含
type(事件類型)和type_cn(中文類型)字段。 - 自定義請求頭:允許添加任意請求頭鍵值對。
- 測試與日誌:提供內置的“測試發送”功能驗證連接;支持發送日誌,展開後可查看請求內容、響應和錯誤詳情。
- 配置持久化:配置保存在
$DSH_HOME/settings.yaml,重啓後保持生效。
安裝與啓用¶
安裝插件需要執行以下命令:
dsh plugin --profile web add github:masknull/dsh-webhook-notifier
安裝後,需要重啓 dsh web 進程才能使插件生效。
典型用法¶
- 打開 DSH 設置,進入 Webhook Notifier 頁面。
- 開啓 Webhook 通知 開關。
- 配置請求參數:選擇請求方式(GET/POST)、輸入 Webhook URL、選擇負載模式(預設字段或自定義文本)、添加自定義請求頭。
- 勾選需要觸發的場景(例如僅勾選“AI 回合完成”)。
- 在負載配置中填充數據,可使用佔位符動態填充信息。
- 點擊 測試發送 驗證連接是否正常,確認無誤後保存配置。
佔位符¶
在預設字段或自定義文本中,支持使用以下佔位符來動態填充信息:
{{type}}/{{type_cn}}:消息類型(英文/中文){{sessionId}}:會話 ID{{sessionName}}:會話標題{{turn}}:回合數{{time}}:當前時間(UTC+8){{trigger}}:觸發場景{{toolName}}:工具名稱(權限申請場景){{reason}}:原因(權限申請場景){{error}}:錯誤信息(AI 出錯場景){{question}}:問題文本(AI 提問場景){{status}}:狀態(Agent 運行場景){{userMessage}}:最新用戶消息{{assistantMessage}}:最新 AI 回覆{{createdAt}}:會話創建時間
適用場景與注意事項¶
該插件適合需要將 DSH 事件同步到外部系統、監控 AI 運行狀態或集成第三方服務的場景。例如,可與 Desktop Pet 項目配合,在桌面寵物上展示實時通知。
注意事項:
* 需要確保 DeepSeek DSH 版本 >= 0.1.5-rc.2。
* 配置文件保存在 $DSH_HOME/settings.yaml,如需完全刪除配置,需手動清理該文件內容。
* 插件以當前 DSH 進程的權限運行,使用時請確保 Webhook URL 的安全性。
生態背景¶
DSH 生態採用“一切皆插件”的理念。本插件收錄自社區目錄,與 DeepSeek / 幻方無官方從屬關係。相關鏈接如下: