[Feature] Add Lark/Feishu as a chat channel (willing to contribute) #1565
Replies: 1 comment
-
|
Not a maintainer, but having shipped a Feishu/Lark channel for an AI coding agent recently, here's a checklist of the things that bit us. Everything below has a Lark Open Platform doc link so it can be sanity-checked before the PR opens. 1. Token lifecycle
2. Long-connection vs webhook Long-connection mode (the right default for self-hosted Archon installs behind NAT) authenticates only at connect time — every event after that is plaintext, no signature check, no AES decrypt. Don't run the webhook decryption pipeline on long-connection payloads, you'll corrupt them. Webhook mode is the one that needs signature/encryption handling. Source: Subscribe to events — long-connection mode. 3. Webhook signature — the body trap Header is 4. AES decryption (only when Encrypt Key is configured) AES-256-CBC. Key = 5. Card update — actual rate limits and hard caps For
Source: Patch sent message card — limits & rate caps. 6. For streaming AI responses, use the native streaming mode, not manual throttling Card JSON 2.0 has first-class streaming: set Two related caps for JSON 2.0 cards: max 200 elements/components per card, and JSON 2.0 cards must be shared ( 7. Interactive callbacks (buttons, inputs) Subscribe to the new event 8. Image upload for multimodal coding flows
9. User ID resolution
If a working reference for the above is useful while scoping the PR, codemux (repo) ships a Feishu channel end-to-end. The adapter is at Good luck with the contribution — Archon's existing channel abstraction should land this cleanly. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi @coleam00,
Thanks for the great work on Archon — the Channels architecture (Discord/Telegram) is exactly the kind of remote workflow I've been wanting for my AI coding setup.
I'd like to propose adding Lark (Feishu / 飞书) as a supported channel, and I'm willing to contribute the implementation if you're open to merging it.
Why Lark matters for Archon:
Implementation plan I have in mind:
@larksuiteoapi/node-sdk(well-maintained, covers messaging, interactive cards, file upload).Questions before I start:
Happy to open a draft PR or write a more detailed design doc first — whichever workflow you prefer.
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions