Skip to main content

Module orchestrator

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::telegram::TelegramChannel;

Modules§

acp_embedded
ACP re-export of shared embedded-resource materialization. Implementation lives in zeroclaw_tools::embedded_resource so MCP and ACP share one helper without zeroclaw-tools depending 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§

ChannelMessage
A message received from or sent to a channel
DraftProgress
Rendered draft-progress text paired with its semantic origin.
MessageDebouncer
Accumulates rapid inbound messages per sender and fires a single combined message after the debounce window elapses without new input.
SendMessage
Message to send through a channel
SqliteSessionBackend
SQLite-backed session store with FTS5 and WAL mode.
StallWatchdog

Enums§

DraftProgressKind
Origin of a rendered draft-progress entry.
ListenerHealth
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 OpenClaw default).

Traits§

Channel
Core channel trait — implement for any messaging platform.
SessionBackend
Trait for session persistence backends. Implementations must be Send + Sync for sharing across async tasks.

Functions§

bind_channel_identity_into
Add identity to 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 None for a type with no operator-bind surface. None is the closed-set gate: only telegram / wechat / line can 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§

ChannelIdentityNormalizer
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.