dsh-feishu
飞书(Lark)集成插件,适用于 DeepSeek Harness (DSH)。
通过飞书机器人的长连接 WebSocket 实时接收消息,自动分类为对话或任务,任务交给 DSH Agent 执行,全程实时推送进度和结果。
功能
- 飞书 WebSocket Bot:长连接实时接收消息,无需公网 IP
- 智能分流:自动区分对话消息(直接回复)和任务消息(提交给 Agent 执行)
- 秒级任务分派:fs.watch 事件驱动,任务文件写入后立即触发 Agent 执行
- 实时进度推送:通过
send_feishu_message 工具在任务执行过程中随时推送
- Automation 兜底:agentLoop 不可用时自动降级到 DSH Automation(5分钟延迟)
- 群聊 + 私聊:群聊需要 @ 机器人,私聊直接处理
安装
dsh market install dsh-feishu
或手动安装:
cd ~/.dsh/profiles/web
npm install dsh-feishu
配置
安装后编辑 ~/.dsh/profiles/web/cordis.patch.yml,在插件行中填写配置:
- insert:
- id: dsh-feishu
name: 'dsh-feishu'
config:
appId: 'cli_xxxxxxxxxx' # 飞书应用 App ID
appSecret: 'xxxxxxxxxxxxxxxxxx' # 飞书应用 App Secret
workspace: 'D:\workspace\project' # DSH 工作区路径
allowUsers: # 允许使用的用户 open_id 白名单
- 'ou_xxxxxxxxxxxxxxxx'
defaultChatId: 'oc_xxxxxxxx' # 可选:默认发送消息的群 chat_id
飞书应用配置
- 在飞书开放平台创建应用
- 开启 机器人 能力
- 添加权限:
im:message:send_as_bot(发送消息)
im:message.receive_v1(接收消息)
- 订阅方式选择 长连接(WebSocket)
- 将机器人添加到群或与用户开启私聊
使用方式
群聊
在群里 @机器人 发送任务:
@机器人 帮我创建一个 hello.txt 文件,内容写当前时间
私聊
直接发送任务,无需 @:
帮我分析当前工作区的项目结构
对话
简单问候会直接回复,不创建任务:
你好 → 你好!👋 有什么我可以帮你的吗?
谢谢 → 不客气!随时可以来找我 😊
工作原理
飞书消息
↓
Bot 插件(智能分类)
├─ 对话 → 秒级直接回复
└─ 任务 → 写入 .dsh-feishu-queue/task-*.json
↓
Dispatcher(fs.watch 监听)
↓
agentLoop.createAgent()
↓
DSH Agent 执行任务
↓
send_feishu_message(实时推送)→ 飞书
兜底机制:如果 agentLoop 不可用,任务文件保留在队列中,DSH Automation 会在 5 分钟内处理并将结果写入 .dsh-feishu-results/,Bot 插件通过 fs.watch 监听结果文件并自动发送到飞书。
注册的工具
安装后,所有 DSH 会话(包括 Automation)都可以使用 send_feishu_message 工具:
send_feishu_message(content="消息内容", chat_id="oc_xxxxxxxx")
content:必填,消息文本
chat_id:可选,不填时使用配置的 defaultChatId
License
MIT