前言¶
DeepSeek Harness (DSH) 的設計理念是“一切皆插件”。在開發或調試 agent 時,頻繁切換聊天軟件和命令行終端是常見的干擾。本插件通過飛書 IM 通道,將聊天界面直接變爲 DSH 的遠程控制台,利用 WebSocket 長連接實現流式響應與交互式決策。
插件定位¶
這是一個由 whoisjiahao 維護的 DSH 客戶端插件。它不提供獨立的 AI 模型,而是作爲飛書與 DSH 之間的橋接層。其核心價值在於將飛書的富卡片與交互能力引入 DSH 流程,讓 agent 在聊天中通過按鈕完成權限審批、參數確認,並將推理過程實時渲染。
核心功能¶
- 掃碼即用:無需預先配置飛書應用。啓動 DSH web 時打印二維碼,飛書掃描即可自動創建應用並持久化憑據。
- 流式富卡片:回覆以卡片形式呈現,支持加載中實時進度、完成態結論、失敗態重試。超限時自動降級爲原生文本消息。
- 一鍵審批:當 agent 需要文件讀寫或 Shell 權限時,飛書端彈出交互卡片,點擊按鈕即可決策,無需切窗口打字。
- 交互命令:發送裸命令(如
/help)會自動生成交互卡片。有固定選項的顯示下拉框,需參數的顯示輸入框,無參數的顯示確認按鈕。 - 無需公網:基於 WebSocket 長連接通信,不需要配置公網 URL、回調地址或端口轉發。
- 多會話隔離:私聊、羣聊、話題各自擁有獨立的 agent,互不干擾。支持
/new和/stop控制會話。 - 安全默認:默認拒絕非白名單流量。生產環境必須配置白名單以確保安全。
安裝與啓用¶
本插件依賴宿主的核心服務(agents、settings、commands、sessionController),需要先運行 DSH web 環境。
-
環境要求
- Node.js 版本需滿足
^22.19.0 || >=24。 - 運行
dsh web。
- Node.js 版本需滿足
-
安裝插件
在~/.dsh/profiles/web目錄下執行以下命令:
dsh plugin --profile web add github:whoisjiahao/dsh-feishu-channel#v0.9.0
- 啓動與授權
重啓dsh web。控制台會打印二維碼提示:
feishu-channel: 請用飛書掃碼創建應用…
使用飛書 App 掃描該二維碼,確認創建應用。憑據會自動保存在配置中,下次啓動無需再掃。
使用方式¶
- 基礎對話:在飛書私聊或羣聊中(羣聊需 @ 機器人)發送消息,agent 會以流式卡片形式回覆。
- 命令交互:直接發送
/new、/reset、/stop等命令,飛書會自動生成交互控件供你選擇或輸入。 - 權限審批:當 agent 執行需要敏感權限的操作時,飛書界面會彈出審批卡片,點擊“允許”或“拒絕”即可。
配置與安全¶
插件默認僅允許白名單內的流量。在生產環境中,必須在配置中設置以下項以確保安全:
- senderAllowlist:私聊白名單,限制只有特定用戶能發起對話。
- groupAllowlist:羣聊白名單,限制只有特定羣組能使用。
- approvers:審批白名單,限制只有特定用戶能點擊審批按鈕。
常用命令¶
在飛書中可直接使用以下命令控制 agent:
/new:新建空白會話/reset:重置當前會話/stop:停止當前任務/model:查看或切換模型/effort:查看或調整推理強度/help:列出可用命令
結語¶
該插件通過飛書將 DSH 的能力嵌入日常溝通流中,適合需要在聊天窗口內快速驗證 agent 邏輯或進行簡單運維的開發者。所有代碼開源,遵循 MIT 協議。