前言¶
DSH(DeepSeek Harness)作爲工作區環境,常需要在聊天軟件中繼續推進任務。傳統集成方式通常需要配置公網回調地址,且往往需要處理大量歷史消息。Feishu Workspace Bridge 解決了這個問題,它將 DSH 工作區與飛書羣一一對應,並在 DSH 會話和飛書羣之間實現實時雙向同步消息。
插件介紹¶
Feishu Workspace Bridge 是一個由 bandianliancha 維護的聯網工具類插件。其核心邏輯是:綁定一個飛書企業自建應用機器人,在工作區首次有消息時按需創建飛書私有羣,並在 DSH 會話與該羣之間雙向同步消息。插件不讀取歷史消息,也不需要公網回調地址。
核心功能¶
- 實時雙向同步消息
- 按需創建飛書私有羣
- Markdown 支持
- 消息隊列投遞
- 不讀取歷史消息
- 進程重啓後繼續處理失敗消息
- 憑證安全存儲(系統鑰匙串或文件)
安裝與啓用¶
使用官方命令安裝插件:
dsh plugin --profile web add dsh-plugin-feishu-workspace
安裝後需要重啓 DSH Web 服務:
dsh web --no-open
配置¶
重啓完成後,在 DSH 設置的“飛書機器人”中填寫以下信息:
- App ID
- App Secret
- 你的飛書 Open ID(格式爲 ou_...)
點擊“保存並驗證”。插件會在保存前檢查機器人、事件訂閱和全部必需權限。驗證失敗時不會覆蓋已有配置。
飛書開放平臺配置¶
使用此插件需要在飛書開放平臺完成以下配置:
- 啓用機器人能力。
- 在“事件與回調”中選擇“使用長連接接收事件”,並訂閱
im.message.receive_v1(本地運行不需要公網回調地址)。 - 開通以下權限:
im:chat:create:創建羣聊im:chat:獲取與更新羣組信息im:message:send_as_bot:以應用身份發消息im:message.group_msg:接收羣聊消息im:message.reactions:write_only:添加消息表情回覆application:application:self_manage:管理應用自身信息
數據與安全¶
- 憑證存儲:macOS 上 App Secret 保存在系統鑰匙串;Linux 上 App Secret 保存在權限爲
0600的文件中(路徑通常爲~/.dsh/feishu-workspace-bridge.secrets.json)。 - 數據庫:默認位置爲
~/.dsh/feishu-workspace-bridge.sqlite。 - 消息處理:入站和出站消息使用消息 ID 去重;已送達記錄保留 30 天后自動清理,尚未送達的記錄不會被定期清除。
工作機制¶
- 生命週期:一個工作區最多綁定一個羣。羣由機器人創建,默認爲私有羣,羣信息僅允許羣主或管理員修改。工作區改名後羣名自動同步,工作區刪除後羣自動解散。
- 消息隊列:DSH 正在處理任務時,來自飛書的新消息使用
queue模式排隊,不會打斷當前任務。 - 可靠性:每條消息都會記錄狀態;臨時失敗會指數退避重試,進程重啓後繼續處理。長消息會分段發送,不會靜默截斷。
注意事項¶
- 需要 Node.js 20 或更高版本。
- 需要 DeepSeek Harness (DSH)。
- 需要 DSH 版本爲 0.1.7-alpha.1 或更高。
- DSH 只在啓動時加載服務端插件,修改代碼後需要重啓
dsh web。
總結¶
Feishu Workspace Bridge 提供了一種無需公網回調、不讀取歷史消息的 DSH 與飛書集成方案。通過私有羣和消息隊列機制,它保證了同步的實時性和穩定性。