Expand description
Channel subsystem for messaging platform integrations.
This module provides the multi-channel messaging infrastructure that connects
Construct to external platforms. Each channel implements the Channel trait
defined in traits, which provides a uniform interface for sending messages,
listening for incoming messages, health checking, and typing indicators.
Channels are instantiated by start_channels based on the runtime configuration.
The subsystem manages per-sender conversation history, concurrent message processing
with configurable parallelism, and exponential-backoff reconnection for resilience.
§Extension
To add a new channel, implement Channel in a new submodule and wire it into
start_channels. See AGENTS.md §7.2 for the full change playbook.
Re-exports§
pub use bluesky::BlueskyChannel;pub use clawdtalk::ClawdTalkChannel;pub use clawdtalk::ClawdTalkConfig;pub use cli::CliChannel;pub use dingtalk::DingTalkChannel;pub use discord::DiscordChannel;pub use discord_history::DiscordHistoryChannel;pub use email_channel::EmailChannel;pub use gmail_push::GmailPushChannel;pub use imessage::IMessageChannel;pub use irc::IrcChannel;pub use linq::LinqChannel;pub use mattermost::MattermostChannel;pub use mochat::MochatChannel;pub use nextcloud_talk::NextcloudTalkChannel;pub use notion::NotionChannel;pub use qq::QQChannel;pub use reddit::RedditChannel;pub use signal::SignalChannel;pub use slack::SlackChannel;pub use telegram::TelegramChannel;pub use traits::Channel;pub use traits::SendMessage;pub use tts::TtsManager;pub use tts::TtsProvider;pub use twitter::TwitterChannel;pub use voice_call::VoiceCallChannel;pub use voice_call::VoiceCallConfig;pub use wati::WatiChannel;pub use webhook::WebhookChannel;pub use wecom::WeComChannel;pub use whatsapp::WhatsAppChannel;
Modules§
- acp_
server - ACP (Agent Control Protocol) Server — JSON-RPC 2.0 over stdio.
- bluesky
- clawdtalk
- ClawdTalk voice channel - real-time voice calling via Telnyx SIP infrastructure.
- cli
- debounce
- Inbound message debouncing for rapid senders.
- dingtalk
- discord
- discord_
history - email_
channel - gmail_
push - Gmail Pub/Sub push notification channel.
- imessage
- irc
- link_
enricher - Link enricher: auto-detects URLs in inbound messages, fetches their content, and prepends summaries so the agent has link context without explicit tool calls.
- linq
- mattermost
- media_
pipeline - Automatic media understanding pipeline for inbound channel messages.
- mochat
- nextcloud_
talk - notion
- session_
backend - Trait abstraction for session persistence backends.
- session_
sqlite - SQLite-backed session persistence with FTS5 search.
- session_
store - JSONL-based session persistence for channel conversations.
- signal
- slack
- telegram
- traits
- transcription
- tts
- Multi-provider Text-to-Speech (TTS) subsystem.
- voice_
call - Real-time voice call channel for Twilio, Telnyx, and Plivo.
- wati
- webhook
- wecom
Functions§
- build_
system_ prompt - Load workspace identity files and build a system prompt.
- build_
system_ prompt_ with_ mode - build_
system_ prompt_ with_ mode_ and_ autonomy - doctor_
channels - Run health checks for configured channels.
- start_
channels - Start all configured channels and route messages to the agent