Integration catalog
The 60+ entry integration catalogue by category and how status badges map to configuration.
The integration catalog is Revka’s static inventory of every chat channel, model provider, productivity connector, and platform Revka knows about — 80 entries grouped into nine categories. Each entry carries a live status computed from your current configuration, so the catalog doubles as an at-a-glance map of what is wired up, what you could turn on, and what is still on the roadmap.
Use this page when you want to know which integrations exist, how the dashboard’s status badges are derived, and how to read the same data programmatically over the REST API or the CLI.
What the catalog covers
Section titled “What the catalog covers”The catalog is defined statically in the Revka binary, so it is always present regardless of which channels or providers you have configured. Every entry has four fields:
| Field | Meaning |
|---|---|
name | Display name, e.g. Telegram, OpenRouter, Home Assistant. |
description | One-line summary, e.g. Bot API — long-polling. |
category | One of nine categories (see below). |
status | Computed live from your config: Active, Available, or ComingSoon. |
Status values
Section titled “Status values”Three status values drive the dashboard badges and the CLI/API output:
| Status | Badge | Meaning |
|---|---|---|
Active | Active | Fully implemented and configured/enabled in your current config — ready to use right now. |
Available | Available | Fully implemented but not configured yet. Add the relevant config to activate it. |
ComingSoon | Coming Soon | Planned but not yet implemented. Configuration has no effect until it ships. |
The distinction that matters most: Available means “implemented, just turn it on”, while ComingSoon means “not built yet”. A ComingSoon entry will never become Active no matter what you put in your config.
How status is computed
Section titled “How status is computed”Status is not stored — it is recomputed from your live config.toml every time the catalog is read. The logic varies by integration:
- Channels become
Activewhen their config section is present, e.g.[channels_config.telegram],[channels_config.discord],[channels_config.matrix],[channels_config.email]. OtherwiseAvailable. - Model providers become
Activewhen they are your selected default. Most checkdefault_provider(e.g.openrouter,ollama,groq); a few key off thedefault_modelprefix instead (Google→google/,DeepSeek→deepseek/,xAI→x-ai/,Mistral→mistral). OtherwiseAvailable. - Feature toggles become
Activewhen their subsystem is enabled:Browser([browser] enabled = true),Cron([cron] enabled = true),Google Workspace([google_workspace] enabled = true). - Platforms (
macOS,Linux) areActivewhen the binary is running on that OS;Windows,iOS, andAndroidare alwaysAvailable.
Always-active integrations
Section titled “Always-active integrations”Three integrations are always Active with no configuration at all, because they are core agent capabilities rather than opt-in connectors:
| Integration | Category | Why it is always on |
|---|---|---|
Shell | Tools & Automation | Terminal command execution is built in. |
File System | Tools & Automation | Read/write file access is built in. |
Weather | Tools & Automation | Fetches live conditions from wttr.in — no API key required. |
In addition, the platform you are running on (macOS or Linux) reports Active automatically.
Categories
Section titled “Categories”The catalog groups all entries into nine categories. The API serializes the category as its variant name (the left column); the dashboard shows the human label (the right column).
| Category (API value) | Label | Examples |
|---|---|---|
Chat | Chat Providers | Telegram, Discord, Slack, WhatsApp, Matrix, Signal, iMessage, Email |
AiModel | AI Models | OpenRouter, Anthropic, OpenAI, Google, Ollama, Groq, Bedrock |
Productivity | Productivity | Google Workspace, GitHub, Notion, Linear, Trello, Obsidian |
MusicAudio | Music & Audio | Spotify, Sonos, Shazam |
SmartHome | Smart Home | Home Assistant, Philips Hue, 8Sleep |
ToolsAutomation | Tools & Automation | Shell, File System, Weather, Browser, Cron, Canvas |
MediaCreative | Media & Creative | Image Gen, GIF Search, Screen Capture, Camera |
Social | Social | Twitter/X, Email |
Platform | Platforms | macOS, Linux, Windows, iOS, Android |
Chat Providers
Section titled “Chat Providers”Implemented channels become Active once configured: Telegram, Discord, Slack, Webhooks, WhatsApp, Signal, iMessage, Matrix, DingTalk, QQ Official. Planned (ComingSoon): Microsoft Teams, Nostr, WebChat, Nextcloud Talk, Zalo.
See Channels overview for setup of each.
AI Models
Section titled “AI Models”The largest category — 29 model providers. Implemented providers become Active when selected as your default: OpenRouter, Anthropic, OpenAI, Google, DeepSeek, xAI, Mistral, Ollama, Perplexity, Venice, Vercel AI, Cloudflare AI, Moonshot, Synthetic, OpenCode Zen, OpenCode Go, Z.AI, GLM, MiniMax, Qwen, Amazon Bedrock, Qianfan, Groq, Together AI, Fireworks AI, Novita AI, Cohere. Planned (ComingSoon): Hugging Face, LM Studio.
See Provider catalog to pick and configure a provider.
Productivity
Section titled “Productivity”Google Workspace is implemented and becomes Active when [google_workspace] enabled = true. The rest are ComingSoon: GitHub, Notion, Apple Notes, Apple Reminders, Obsidian, Things 3, Bear Notes, Trello, Linear.
Tools & Automation
Section titled “Tools & Automation”Mix of always-active core tools and configurable subsystems. Always Active: Shell, File System, Weather. Config-gated: Browser ([browser] enabled), Cron ([cron] enabled). Planned (ComingSoon): Voice, Gmail, 1Password, Canvas.
Music & Audio, Smart Home, Media & Creative, Social, Platforms
Section titled “Music & Audio, Smart Home, Media & Creative, Social, Platforms”- Music & Audio: Spotify, Sonos, Shazam — all
ComingSoon. - Smart Home: Home Assistant, Philips Hue, 8Sleep — all
ComingSoon. - Media & Creative: Image Gen, GIF Search, Screen Capture, Camera — all
ComingSoon. - Social: Twitter/X (
ComingSoon); Email (Activewhen[channels_config.email]is set). - Platforms: macOS / Linux (
Activeon that OS), Windows / iOS / Android (Available).
Read the catalog over the REST API
Section titled “Read the catalog over the REST API”Two bearer-authenticated endpoints expose the catalog. Both require a paired token (see Pairing & authentication).
List all integrations with status
Section titled “List all integrations with status”GET /api/integrationsAuthorization: Bearer <token>curl -s http://127.0.0.1:8080/api/integrations \ -H "Authorization: Bearer $REVKA_TOKEN"Response — an array of entries, each with category and status serialized as their enum variant names:
{ "integrations": [ { "name": "Telegram", "description": "Bot API — long-polling", "category": "Chat", "status": "Active" }, { "name": "Shell", "description": "Terminal command execution", "category": "ToolsAutomation", "status": "Active" }, { "name": "Notion", "description": "Workspace & databases", "category": "Productivity", "status": "ComingSoon" } ]}Flat settings map
Section titled “Flat settings map”The settings endpoint returns the same data keyed by name, with a derived enabled boolean. enabled is true only when status is Active — Available and ComingSoon both map to false.
GET /api/integrations/settingsAuthorization: Bearer <token>{ "settings": { "Telegram": { "enabled": true, "category": "Chat", "status": "Active" }, "Discord": { "enabled": false, "category": "Chat", "status": "Available" }, "Spotify": { "enabled": false, "category": "MusicAudio", "status": "ComingSoon" }, "Shell": { "enabled": true, "category": "ToolsAutomation", "status": "Active" } }}Both endpoints are read-only and reflect your live config at request time — there is no write path. To change an integration’s status, edit your config (see below).
Read the catalog from the CLI
Section titled “Read the catalog from the CLI”The CLI exposes one subcommand for inspecting a single integration:
revka integrations info <name>It looks the name up case-insensitively, prints the status with an icon (✅ Active, ⚪ Available, 🔜 Coming Soon), the category, and — for several integrations — a short setup hint. For example:
revka integrations info telegram ⚪ Telegram — Bot API — long-polling Category: Chat Providers Status: Available
Setup: 1. Message @BotFather on Telegram 2. Create a bot and copy the token 3. Run: revka onboard --channels-only 4. Start: revka channel startUnknown names return an error pointing you to revka onboard. Built-in setup hints are included for Telegram, Discord, Slack, OpenRouter, Ollama, iMessage, GitHub, Browser, Cron, Weather, and Webhooks; any other ComingSoon entry prints a “planned” notice.
View the catalog in the dashboard
Section titled “View the catalog in the dashboard”The dashboard’s Integrations page (/integrations) renders GET /api/integrations as filterable cards with the status badges described above. It is read-only — clicking a card shows detail, but configuration happens on the Config page. See Skills, tools & integrations pages.
Activating an integration
Section titled “Activating an integration”The flow to move an entry from Available to Active is always: add the relevant configuration, then restart or reload. Where that config lives depends on the integration type: