Module orchestrator
Expand description
Channel subsystem for messaging platform integrations.
Re-exports§
pub use crate::discord::DiscordChannel;pub use crate::email_channel::EmailChannel;pub use crate::filesystem::FilesystemChannel;pub use crate::gmail_push::GmailPushChannel;pub use crate::transcription;pub use crate::tts::TtsManager;pub use crate::tts::TtsProvider;pub use crate::webhook::WebhookChannel;pub use crate::cli::CliChannel;pub use crate::link_enricher;pub use crate::telegram::TelegramChannel;
Modules§
- acp_
server - ACP (Agent Control Protocol) Server — JSON-RPC 2.0 over stdio.
- media_
pipeline - Automatic media understanding pipeline for inbound channel messages.
Structs§
- Channel
Message - A message received from or sent to a channel
- Message
Debouncer - Accumulates rapid inbound messages per sender and fires a single combined message after the debounce window elapses without new input.
- Send
Message - Message to send through a channel
- Sqlite
Session Backend - SQLite-backed session store with FTS5 and WAL mode.
- Stall
Watchdog
Constants§
- BOOTSTRAP_
MAX_ CHARS - Maximum characters per injected workspace file (matches
OpenClawdefault).
Traits§
- Channel
- Core channel trait — implement for any messaging platform.
- Session
Backend - Trait for session persistence backends.
Implementations must be
Send + Syncfor sharing across async tasks.
Functions§
- bind_
channel_ identity_ into - Add
identityto the peer group bound to<type>.<alias>in-place. - bind_
telegram_ identity - build_
channel_ map - build_
system_ prompt - build_
system_ prompt_ with_ mode - build_
system_ prompt_ with_ mode_ and_ autonomy - channel_
alias_ configured - Whether a
[channels.<type>.<alias>]section exists. Rust has no reflection over the typed channel maps, so this stays an explicit per-type match; only this arm grows when a new pairing channel lands. - channel_
identity_ normalizer - Resolve the identity normalizer for a pairing-capable channel type, or
Nonefor a type with no operator-bind surface.Noneis the closed-set gate: onlytelegram/wechat/linecan be bound this way. - conversation_
history_ key - deliver_
announcement - doctor_
channels - Run health checks for configured channels.
- register_
channels_ for_ tools - send_
channel_ message - Send a one-off message to a configured channel.
- start_
channels - Start all configured channels and route messages to the agent
Type Aliases§
- Channel
Identity Normalizer - Per-channel-type identity normalizer. The operator-bind op is otherwise identical across the pairing-capable channels; the only variance is how a raw identity is canonicalized before it is stored in the allowlist.