Vibe Coding
Back to FastClaw

FastClaw / Ability level

channel

Channels bind the same Agent to web chat and team messaging portals, and isolate context by channel session.

channel key concepts infographic
channel key concepts infographic

Channel Manager

Channel Manager uses channel:accountID as key and uses Leaser to prevent multiple processes from occupying the same account at the same time. WebChannel is always present for SSE subscriptions and push fallbacks.

  • Telegram: long polling, registering bot commands, processing photos.
  • Discord: gateway and slash command.
  • Slack:Socket Mode。
  • Feishu: webhook or long connection, supports verification token/encrypt key.
  • LINE:webhook HMAC,reply/push API。

Binding and Isolation

Each channel account can be bound to a specific Agent. Inbound messages will pass through the task queue and be routed to the Agent; the session key is usually determined by a combination of channel, account, and chatID.

Fieldfunction
channelweb, telegram, discord, slack, wechat, feishu, line, etc.
accountIDSpecific accounts or bots under the same channel
chatIDUser, group, channel or thread identifier
agentIDThe Agent that ultimately handles the message

Webhook security

The setup server provides unauth webhook endpoint for Feishu and LINE, but the signature/verification is verified at the adapter layer. Do not treat all webhooks as trusted internal requests in the anti-generation layer.

production suggestions

Public webhook should enable platform signature verification, current limiting, logs and error alarms; different channel accounts should be bound to tokens and agents separately as much as possible.