dsh-feishu:在飛書裏用面板驅動 DeepSeek Harness

前言

DeepSeek Harness(dsh)把智能體能力封裝成可插拔的插件體系,但默認交互多在終端或本地進程裏完成。團隊日常協作在飛書,若要把 dsh 接到 IM 裏,通常需要自己搭機器人、配應用憑證、再把 slash 命令和審批流串起來。

dsh-feishu(npm 包名 @dsh-feishu/dsh-feishu)是維護者 PGZXB 發佈的 dsh 原生客戶端插件:飛書聊天即 dsh 會話,控制面板把每條 slash 命令做成卡片按鈕,審批與提問在卡內完成,輸出以流式卡片呈現。下面介紹它的定位、能力與安裝用法。

這是什麼

dsh-feishu 是 DeepSeek Harness 的飛書 UI,分類爲客戶端插件。一句話概括:面板驅動的控制檯——每個命令都是控制面板卡片上的按鈕,支持卡內審批與提問、流式卡片,以及掃碼一鍵配置飛書應用。

插件以 MIT 許可證發佈,當前 npm 版本爲 0.2.0,要求 Node.js ≥ 22.13。README 註明 dsh 仍處於 pre-release(0.1.0-rc.x),版本間可能不兼容;main 分支與 npm @latest 均跟蹤 dsh 0.1.1-rc.2

社區目錄頁:https://www.skillhub.cn/plugins/PGZXB/dsh-feishu(SkillHub 爲獨立社區站點,與 DeepSeek / 幻方無官方從屬關係)。源碼與文檔:https://github.com/PGZXB/dsh-feishu

核心功能

面板驅動的命令控制檯

發送 /panel 會彈出控制面板卡片,上面的每個按鈕對應一條 slash 命令,與手動輸入命令等價。不必記語法,點選即可執行 /repo/cd/model/sessions 等操作。

流式輸出卡片

智能體運行時,工具調用、推理過程、Markdown 與表格會即時寫入卡片;結束後卡片變爲完成態,並提供 Stop、複製、重試以及返回面板的按鈕。

卡內審批與提問

權限升級時推送審批卡片,可點 Allow onceReject;智能體提問時以卡片形式呈現,可點選或回覆作答。羣聊中錯誤通知、審批與提問會 @ 發起人。

會話持久化與工作目錄

每個飛書聊天綁定一個 dsh 會話,工作目錄與上下文在 daemon 重啓後仍保留。通過 📚 Pick project(等同 /repo)或 📁 Change dir(等同 /cd <path>)選定目錄後,智能體纔會開始執行任務。

掃碼一鍵配置

dsh-feishu-setup 嚮導通過掃碼創建並配置飛書應用,無需手動在飛書開放平臺填憑證。若已有應用,可設置環境變量或 profile 配置中的 FEISHU_APP_ID / FEISHU_APP_SECRET(詳見倉庫 docs/feishu-setup.md)。

其他能力

  • 羣聊與 @ 提及:默認需 @ 機器人;僅你與機器人的私聊羣也可直接發消息,策略可配置。
  • /group <name> 創建含機器人的羣聊。
  • 表情回應確認、聊天/用戶白名單(allowedChats / allowedUsers)、定時提醒(/schedule)、會話日誌導出(/export)、診斷卡片(/feishu-status)。

安裝與啓用

安裝前確認 Node.js 版本,並全局安裝 pnpm。pnpm ≥ 11 默認會阻止 protobufjs 的構建腳本,安裝插件時需加 --allow-build=protobufjs

從 npm 安裝(推薦)

# 1. 確認 Node.js ≥ 22.13
node --version

# 2. 安裝 pnpm
npm install -g pnpm

# 3. 將插件加入 feishu profile
npx @deepseek-ai/dsh plugin --profile feishu add @dsh-feishu/dsh-feishu@latest --allow-build=protobufjs

# 4. 掃碼創建並配置飛書應用
npx --yes --package @dsh-feishu/dsh-feishu dsh-feishu-setup --new --profile feishu

# 5. 啓動 dsh
npx @deepseek-ai/dsh --profile feishu

從源碼安裝

git clone https://github.com/PGZXB/dsh-feishu.git
cd dsh-feishu
pnpm install
pnpm run build

npx @deepseek-ai/dsh plugin --profile feishu add link:.
pnpm run setup:feishu -- --new --profile feishu
npx @deepseek-ai/dsh --profile feishu

卸載

npx @deepseek-ai/dsh plugin --profile feishu remove @dsh-feishu/dsh-feishu

# 可選:刪除 profile 及 surface 數據
rm -rf ~/.dsh/profiles/feishu ~/.dsh/feishu

典型用法

啓動後在飛書中給機器人發消息即可。一次完整會話通常按以下順序進行:

  1. 開始聊天:私聊機器人,或發送 /group <name> 創建羣聊;羣內需 @ 機器人(策略可改)。
  2. 打開控制面板:發送 /panel
  3. 選擇工作目錄:點 📚 Pick project📁 Change dir;未設置目錄時機器人不會執行任務。
  4. 提問:直接發消息,輸出流式寫入卡片。
  5. 處理審批與提問:在卡片內批准權限或作答。
  6. 管理會話:點 🗂️ Sessions 查看並恢復歷史會話(等同 /sessions);點 ➕ New chat 開新對話(等同 /clear,舊會話仍保留)。

常用命令一覽:

命令 作用
/help 列出全部命令
/panel 打開控制面板
/repo [path] 選擇項目目錄
/cd <path> 設置工作目錄
/model <provider/model> 切換模型
/sessions / /resume <id> 列出或恢復會話
/clear / /new 開始新對話
/goal <text> 設置任務目標
/permission <preset> 切換權限預設
/plan [on\|off] 進入或退出 plan 模式
/export 導出會話日誌文件
/cancel 停止當前輪次
/feishu-status 顯示 surface 診斷信息

完整列表見倉庫 README 的 Commands 章節。

適用場景與注意

適合誰: 已在用或計劃用 dsh 做智能體開發、希望把交互放到飛書 IM 的團隊或個人;需要移動端或協作場景下點選操作、卡內審批,而不想維護一套自建機器人腳手架的用戶。

使用前請注意:

  • dsh 與 dsh-feishu 均處於快速迭代期,升級前對照 README 中的 dsh 版本說明。
  • 插件以當前 dsh 進程權限運行,能訪問該進程可觸及的文件系統與網絡;安裝前應閱讀源碼與 MIT 許可證,確認權限與白名單配置(allowedChats / allowedUsers)符合團隊安全要求。
  • 生產環境建議先在小範圍聊天中驗證 /feishu-status 與權限預設,再擴大使用面。

結尾

dsh-feishu 把 dsh 的 slash 命令、流式輸出和審批流收斂到飛書卡片裏,用 /panel 和掃碼配置降低接入成本。若你已在 dsh 生態裏做智能體,又希望協作入口落在飛書,可以從 npm 安裝並按 Quickstart 走一遍。

羽毛球分组比赛记分
小程序二维码

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

小夜