revka channel & integrations
Add, remove, list, health-check, and send through channels from the CLI, and inspect integrations.
revka channel is the command-line surface for managing the messaging platforms your agent talks through — Telegram, Discord, Slack, WhatsApp, Matrix, iMessage, email, and the rest of the channel catalog. From the CLI you can list configured channels, start them, run health checks, add or remove a channel, manage the Telegram allowlist, and fire a one-off message through a supported channel (telegram, discord, slack, mattermost, signal, matrix, whatsapp, or qq). The companion revka integrations command lets you inspect the details of a named integration.
Use these commands to wire up and operate channels without hand-editing config.toml, to smoke-test a channel before relying on it, and to script notifications (sensor alerts, job-completion pings) into a chat platform. Channels run inside the long-running daemon; the CLI commands here drive that runtime and its configuration.
For the per-platform setup walkthroughs and the full channel catalog, see Connect a messaging channel and Channels overview.
Synopsis
Section titled “Synopsis”revka channel listrevka channel startrevka channel doctorrevka channel add <channel_type> <config_json>revka channel remove <name>revka channel bind-telegram <identity>revka channel send <message> --channel-id <TYPE> --recipient <TARGET>
revka integrations info <name>revka channel subcommands
Section titled “revka channel subcommands”| Subcommand | Arguments | What it does |
|---|---|---|
list | — | List all configured channels. |
start | — | Start all configured channels. |
doctor | — | Run health checks against all configured channels. |
add | <channel_type> <config_json> | Not implemented — errors and directs you to revka onboard. |
remove | <name> | Not implemented — errors and directs you to edit ~/.revka/config.toml. |
bind-telegram | <identity> | Add a Telegram username or numeric user ID to the allowlist. |
send | <message> --channel-id <TYPE> --recipient <TARGET> | Send a single one-off message through a supported channel type. |
revka channel list
Section titled “revka channel list”Lists every channel currently configured under [channels_config] in config.toml.
revka channel listUse this to confirm which channels exist and under what config names before you start them, run a health check, or send a message.
revka channel start
Section titled “revka channel start”Starts all configured channels.
revka channel startThis brings up the channels defined in your config so they begin listening for inbound messages and can send replies. For a complete production runtime — gateway server, channels, heartbeat monitor, and cron scheduler together — use revka daemon instead, which starts channels as part of the full stack.
revka channel doctor
Section titled “revka channel doctor”Runs the health check (health_check()) for every configured channel and reports liveness.
revka channel doctorReach for this when a channel is misbehaving: it probes each channel’s connection so you can tell which one is failing before digging into logs. Not every channel implements an active liveness probe — webhook-style channels in particular may report differently from polling or WebSocket channels. For broader, whole-system diagnostics see revka doctor, status & self-test.
revka channel add
Section titled “revka channel add”revka channel add is not implemented as an add operation. Running it produces an error directing you to use revka onboard instead:
Channel type '<type>' — use `revka onboard` to configure channelsTo add or reconfigure a channel, run the interactive onboarding wizard:
revka onboard # full setup wizardrevka onboard --channels-only # guided channel-configuration flow onlyAlternatively, add the channel manually by editing ~/.revka/config.toml directly under [channels_config]. For the required keys per channel type see Channels overview and the per-platform pages such as Telegram, Discord & Slack and Matrix, Mattermost & Nextcloud Talk.
revka channel remove
Section titled “revka channel remove”revka channel remove is not implemented as a remove operation. Running it produces an error directing you to edit the config file directly:
Remove channel '<name>' — edit ~/.revka/config.toml directlyTo remove a channel, open ~/.revka/config.toml and delete the corresponding [channels_config.<name>] section, then save the file.
revka channel bind-telegram
Section titled “revka channel bind-telegram”Adds a Telegram identity to the allowlist so that user is permitted to talk to the bot. Accepts either a Telegram username (without the leading @) or a numeric user ID.
revka channel bind-telegram revka_user # by usernamerevka channel bind-telegram 123456789 # by numeric user IDThis appends the identity to Telegram’s allowed_users allowlist. The Telegram channel also supports an in-chat pairing flow; for full Telegram setup and pairing details see Set up Telegram & Matrix.
revka channel send
Section titled “revka channel send”Sends a single, one-off message through a configured channel and exits. This is built for scripted notifications and automation pipelines.
revka channel send 'Someone is near your device.' \ --channel-id telegram \ --recipient 123456789| Flag | Value | Meaning |
|---|---|---|
--channel-id | <TYPE> | The channel type to send through (one of: telegram, discord, slack, mattermost, signal, matrix, whatsapp, qq). |
--recipient | <TARGET> | The platform-specific recipient ID (e.g. a Telegram user ID, a Slack channel ID). |
The --recipient value is interpreted by the target platform: a Telegram chat/user ID, a Slack channel or DM ID, a phone number, and so on. Use send for sensor alerts, cron-job results, or any external system that needs to push a message into chat:
# Notify an ops channel when a backup finishesrevka channel send "Nightly backup completed." --channel-id slack --recipient C1234567890In-chat runtime commands
Section titled “In-chat runtime commands”Inside a chat channel that supports text commands (notably Telegram and Discord), users can change the agent’s model and reset the conversation on the fly, without restarting anything:
| Command | Action |
|---|---|
/models | Show the available providers. |
/models <provider> | Switch the provider for the current session. |
/model | Show the current model. |
/model <model-id> | Switch the model for the current session. |
/new | Clear conversation history and start fresh. |
These run in the channel conversation itself, not from the revka CLI. The CLI channel (stdin/stdout) also supports /quit and /exit to leave an interactive terminal session.
Hot-reload
Section titled “Hot-reload”The channel runtime watches config.toml and applies a defined set of changes live, without a restart. When you edit and save the file, the running channels pick up updates to:
default_providerdefault_modeldefault_temperatureapi_key/api_urlreliability.*
# Editing these keys is picked up by running channels without a restartdefault_provider = "anthropic"default_model = "claude-sonnet-4-20250514"default_temperature = 0.3revka integrations info
Section titled “revka integrations info”Shows the details of a single named integration — its description, capabilities, and required configuration.
revka integrations info <name>Revka ships 50+ integrations, most of which are configured in config.toml. Use info to discover what a given integration does and what keys it needs before wiring it up. For the broader catalog, see Integration catalog and the config reference for channels, tools & integrations.
Examples
Section titled “Examples”# Inspect, then start, the configured channelsrevka channel listrevka channel start
# Health-check everything when a channel looks stuckrevka channel doctor
# Configure channels via the onboarding wizard, then allowlist a Telegram userrevka onboard --channels-onlyrevka channel bind-telegram 123456789
# Send a scripted alert through Telegramrevka channel send 'Disk usage above 90%.' --channel-id telegram --recipient 123456789
# Remove a channel: edit ~/.revka/config.toml and delete the [channels_config.<name>] section
# Look up what an integration needsrevka integrations info notionRelated pages
Section titled “Related pages”- Connect a messaging channel — end-to-end guide to wiring up a channel.
- Set up Telegram & Matrix — Telegram pairing and Matrix setup.
- Set up Mattermost & Nextcloud Talk — team chat channels.
- Channels overview — the channel model, delivery modes, and allowlist semantics.
- Telegram, Discord & Slack — the big-three messaging platforms.
- Integration catalog — the full list of integrations.
- Config: channels, tools & integrations — config keys for channels and integrations.
- revka gateway, daemon & service — run channels as part of the always-on daemon.
- revka doctor, status & self-test — whole-system diagnostics.
- CLI overview & environment — global flags and environment variables.