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_
embedded - ACP re-export of shared embedded-resource materialization.
Implementation lives in
zeroclaw_tools::embedded_resourceso MCP and ACP share one helper withoutzeroclaw-toolsdepending on this crate. - 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
- Draft
Progress - Rendered draft-progress text paired with its semantic origin.
- 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
Enums§
- Draft
Progress Kind - Origin of a rendered draft-progress entry.
- Listener
Health - What a channel can say about its own listener without performing any I/O.
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 the default system prompt.
- build_
system_ prompt_ with_ mode - build_
system_ prompt_ with_ mode_ and_ autonomy - build_
system_ prompt_ with_ mode_ and_ effective_ tools - Build the system prompt with the effective callable tool names supplied by the turn’s assembled registry. The tool descriptions remain separately filtered for the prompt surface, while skill callable metadata uses this name set as its availability source of truth.
- 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.