All-in-one Feishu / Lark bot powered by OpenAB + Kiro. Deploys the OAB agent and the Feishu gateway together — fill in App ID + App Secret and you're done. WebSocket mode by default (no public webhook URL needed), no separate gateway setup, no manual config.toml edits. Source: https://github.com/openabdev/openab

One-click OpenAB deployment for Feishu / Lark — bot agent + WebSocket gateway bundled together. Just fill in your App ID and App Secret.
Feishu/Lark ◀──Long Connection──▶ ┌──────────────────┐ ◀──WebSocket── ┌────────────┐
(outbound from gw) │ openab-gateway │ │ openab │
│ (feishu only) │ │ (Kiro CLI) │
└──────────────────┘ └────────────┘
internal only internal only
No public HTTPS, no webhook URL, no firewall config — the gateway initiates an outbound WebSocket connection to Feishu Open Platform.
| Service | Purpose | Public |
|---|---|---|
openab | OAB agent running Kiro CLI | No |
openab-gateway | Feishu Long Connection ↔ OAB WebSocket bridge | No |
No PVC sharing, no manual config.toml edits. The agent's config.toml is generated on first boot with the [gateway] block pre-wired to ws://openab-gateway:8080/ws and platform = "feishu".
im.message.receive_v1 event.im:messageim:message:send_as_botcontact:user.base:readonlylark (otherwise leave at feishu).If you have a paid Kiro subscription, go to kiro.dev → Settings → API Keys → create a key and paste it into KIRO_API_KEY. Free tier users skip this and authenticate post-deploy in step 4.
Click deploy. No domain is assigned — both services run on the internal network.
Skip if you set KIRO_API_KEY in step 2.
After the openab service is running, open its terminal in Zeabur Dashboard and run:
runuser -u agent -- kiro-cli login --use-device-flow
Follow the URL and code to authorize in your browser.
Open the bot inside Feishu / Lark and send a direct message. The gateway receives it via its outbound Long Connection, forwards it to OAB, and OAB replies through the gateway.
Group chats: invite the bot, then @<your-bot> hello. By default Feishu requires @mention in groups (FEISHU_REQUIRE_MENTION=true). DMs do not need @mention.
/home/agent/.config/openab/config.toml — OAB config (sessions, reactions, etc.). Created on first boot from a built-in template with the [gateway] block pre-wired. To regenerate, delete and restart.stable channel (ghcr.io/openabdev/openab:stable) and auto-updates with each OpenAB stable release. Gateway is pinned at ghcr.io/openabdev/openab-gateway:0.5.1 (no :stable tag yet). To pin or bump, change the tag in Zeabur Dashboard → Service → Settings. Available tags: OpenAB / Gateway.openab-gateway: FEISHU_ALLOWED_GROUPS / FEISHU_ALLOWED_USERS (comma-separated IDs to restrict access), FEISHU_REQUIRE_MENTION=false (auto-respond in groups without @), FEISHU_ALLOW_BOTS=mentions|all (let other bots @ mention this bot).This bundle uses Kiro as the default agent. For Claude / Codex / Cursor / Gemini / OpenCode / Hermes / Grok, deploy the corresponding bot template separately together with the standalone OpenAB Gateway.
See OpenAB Telegram Bundle or the standalone OpenAB Gateway for Telegram, LINE, Google Chat, MS Teams, WeCom.