通道适配器

LibreFang 支持 40 个消息平台适配器,连接您的 agent 到用户所在的每个平台。


支持的平台

核心平台

平台说明状态
TelegramBot API
DiscordBot API
SlackBot API
WhatsAppBusiness API
SignalBot API
MatrixClient API
EmailIMAP/SMTP

企业平台

平台说明
Microsoft TeamsBot Framework
MattermostWebhook/API
Google ChatBot API
WebexBot API
Feishu/LarkOpen Platform
ZulipAPI

社交平台

平台说明
LINEMessaging API
ViberBot API
Facebook MessengerGraph API
MastodonClient API
BlueskyAT Protocol
RedditOAuth API
LinkedInMarketing API
TwitchPubSub

社区平台

平台说明
IRCClient/Server
XMPPClient API
GuildedHTTP API
RevoltHTTP API
KeybaseClient API
DiscourseAPI
GitterClient API

隐私平台

平台说明
ThreemaGateway API
NostrNIP-04/26
MumbleMurmur API
Nextcloud TalkHTTP API
Rocket.ChatClient API
NtfyHTTP API
GotifyHTTP API

工作平台

平台说明
PumbleHTTP API
FlockWebhook/API
TwistAPI
DingTalkOpen API
ZaloAPI

配置

Telegram

[telegram]
bot_token_env = "TELEGRAM_BOT_TOKEN"
allowed_users = ["user_id_1", "user_id_2"]

Discord

[discord]
bot_token_env = "DISCORD_BOT_TOKEN"
guild_ids = ["server_id_1", "server_id_2"]

Slack

[slack]
bot_token_env = "SLACK_BOT_TOKEN"
app_token_env = "SLACK_APP_TOKEN"

通道覆盖

每个通道支持覆盖设置:

[channels.telegram]
model = "claude-sonnet-4-20250514"
system_prompt = "你是一个客服 agent"
dm_policy = "allow"  # allow/deny
group_policy = "allow"  # allow/deny
rate_limit = 10  # 每分钟消息数
output_format = "markdown"  # markdown/html/plaintext

覆盖选项

选项说明
model覆盖默认模型
system_prompt覆盖系统提示
dm_policyDM 策略 (allow/deny)
group_policy群组策略 (allow/deny)
rate_limit每分钟限制
output_format输出格式

速率限制

每个通道有内置速率限制:

  • 每用户限制 - 防止滥用
  • 每通道限制 - 平台限制
  • 成本感知 - 跟踪 token 使用
[channels.telegram]
rate_limit = 10  # 每分钟 10 条消息

格式化

LibreFang 自动格式化消息:

  • Telegram → HTML
  • Slack → Mrkdwn
  • Discord → 嵌入
  • 其他 → 纯文本

CLI 命令

# 列出通道状态
librefang channel list

# 设置新通道
librefang channel setup telegram

# 测试通道
librefang channel test telegram

# 启用通道
librefang channel enable telegram

# 禁用通道
librefang channel disable telegram

消息路由

AgentRouter 根据规则路由消息:

  • 用户匹配 - 特定用户
  • 通道匹配 - 特定通道
  • 内容匹配 - 关键词/正则

最佳实践

  1. 限制访问 - 使用 allowed_users 限制谁可以访问
  2. 设置速率限制 - 防止滥用
  3. 使用覆盖 - 为不同通道定制行为
  4. 监控使用 - 定期检查通道统计