dsh-feishu-bot:通過飛書機器人連接 DeepSeek Harness 項目

前言

DeepSeek Harness (DSH) 採用插件化架構,允許通過即時通訊工具與項目交互。在構建智能體時,通常需要應用具備消息接收與發送能力。傳統方案往往依賴 HTTP 回調,要求應用暴露公網地址,這在某些網絡環境或安全要求較高的場景下難以實施。

dsh-feishu-bot 插件解決了這一問題。它通過飛書應用機器人建立連接,利用 WebSocket 長連接代替公網回調,無需暴露任何 URL。同時,它支持通過二維碼完成應用的安全綁定,免去了手動複製 App ID 和 App Secret 的繁瑣步驟。

dsh-feishu-bot 簡介

dsh-feishu-bot 是由用戶 452926826 開發的聯網工具類插件。其核心價值在於將 DSH 的項目管理與對話能力接入飛書環境,使開發者能夠通過飛書客戶端直接操作 Harness 的資源。

核心功能

該插件主要提供以下能力:

  1. 長連接通信:使用 WebSocket 保持與飛書的持久連接,支持自動重連和心跳檢測,無需公網回調 URL。
  2. 安全綁定:首次使用時,通過終端顯示的二維碼創建並授權飛書應用。應用創建完成後,憑證(包括 App Secret)僅保存在本地,不會寫入代碼倉庫。
  3. 資源管理:通過飛書命令列表、選擇和創建 DSH 的項目與對話。
  4. 操作審批:當工具請求操作時,插件會通過飛書發送待審批通知,支持通過 /approve 或 /reject 命令進行批准或拒絕。
  5. 消息廣播:支持將對話完成通知廣播至額外的飛書羣組(通過環境變量配置)。

安裝與配置

安裝前請確保系統已安裝 Node.js 20 或更高版本。

安裝命令:

dsh plugin --profile web add github:452926826/dsh-feishu-bot

可選環境變量:
安裝後,可以通過環境變量微調行爲:

# 指定項目根目錄
export FEISHU_PROJECTS_ROOT='/absolute/path/to/projects'

# 限制允許操作 Harness 的飛書羣組(推薦生產環境使用)
export FEISHU_ALLOWED_CHATS='oc_xxx,oc_yyy'

# 廣播完成通知至額外羣組(源對話也會收到通知)
export FEISHU_NOTIFY_CHATS='oc_ops,oc_owner'

常用命令

在飛書與機器人的對話中,使用以下命令進行操作:

  • /lp:列出當前所有項目。
  • /up + 項目名稱或索引:選擇一個現有項目。索引基於 /lp 的輸出。
  • /np + 項目名稱:在當前項目根目錄下創建並選擇一個新項目。
  • /lc:列出當前項目下的所有對話。
  • /uc:進入最近一次完成的對話,並返回其最後兩條消息。
  • /uc + 索引:根據 /lc 的索引選擇並進入某個對話。
  • /nc:在當前項目中創建並選擇一個新對話。
  • /approve:批准當前待定的操作。
  • /reject:拒絕當前待定的操作。
  • /help:顯示幫助信息。

注意事項

  1. 二維碼有效期:終端顯示的綁定二維碼通常在 10 分鐘後過期,超時後需重啓 DSH 重新生成。
  2. 憑證存儲:綁定憑證保存在 ~/.dsh/feishu-bot/credentials.json,文件權限爲 0600。
  3. 權限隔離:普通機器人消息會作爲用戶指令提交給 Harness,擁有與當前活動 DSH 配置文件相同的權限。建議配置 FEISHU_ALLOWED_CHATS 以限制可交互的羣組,避免非預期的操作。
  4. 許可證:插件未明確說明具體的許可證信息。
  5. 構建依賴:如果在安裝過程中遇到 protobufjs 構建警告,可在對應的 pnpm-workspace.yaml 中添加 allowBuilds: protobufjs: true。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜