ClawSkills logoClawSkills

Feishu Bridge

通过 WebSocket 长连接将飞书(Lark)机器人连接到 Clawdbot。无需公网服务器、域名或 ngrok。在设置飞书/Lark 作为消息传递服务时使用

介绍

# Feishu Bridge

通过本地 WebSocket 将飞书机器人消息转发到 Clawdbot 网关。

## 架构

``` Feishu user → Feishu cloud ←WS→ bridge.mjs (local) ←WS→ Clawdbot Gateway → AI agent ```

- 飞书 SDK 主动发起连接(无需入站端口/公网 IP) - 桥接使用现有的网关令牌向网关进行身份验证 - 每个飞书对话映射到一个 Clawdbot 会话 (`feishu:<chatId>`)

## 设置

### 1. 创建飞书机器人

1. 前往 [open.feishu.cn/app](https://open.feishu.cn/app) → 创建企业自建应用 → 添加 **机器人** 能力 2. 启用权限:`im:message`、`im:message.group_at_msg`、`im:message.p2p_msg` 3. 事件:添加 `im.message.receive_v1`,将推送方式设置为 **WebSocket 长连接** 4. 发布应用(创建版本 → 申请审核) 5. 记下 **App ID** 和 **App Secret**

### 2. 存储 Secret

```bash mkdir -p ~/.clawdbot/secrets echo "YOUR_APP_SECRET" > ~/.clawdbot/secrets/feishu_app_secret chmod 600 ~/.clawdbot/secrets/feishu_app_secret ```

### 3. 安装与运行

```bash cd <skill-dir>/feishu-bridge npm install FEISHU_APP_ID=cli_xxx node bridge.mjs ```

### 4. 自动启动 (macOS)

```bash FEISHU_APP_ID=cli_xxx node setup-service.mjs launchctl load ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist ```

## 诊断

```bash # Check service launchctl list | grep feishu

# Logs tail -f ~/.clawdbot/logs/feishu-bridge.err.log

# Stop launchctl unload ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist ```

## 群聊行为

仅在以下情况下桥接才会回复:用户 @ 提及机器人、消息以 `?`/`?` 结尾、包含请求动词(帮/请/分析/总结…)或直呼机器人名字。可以在 `bridge.mjs` → `shouldRespondInGroup()` 中自定义名字列表。

## 环境变量

| 变量 | 必填 | 默认值 | |---|---|---| | `FEISHU_APP_ID` | ✅ | — | | `FEISHU_APP_SECRET_PATH` | — | `~/.clawdbot/secrets/feishu_app_secret` | | `CLAWDBOT_CONFIG_PATH` | — | `~/.clawdbot/clawdbot.json` | | `CLAWDBOT_AGENT_ID` | — | `main` | | `FEISHU_THINKING_THRESHOLD_MS` | — | `2500` |

更多产品