Docs / Key Concepts / Channels

Channels

A channel is how you talk to your assistant. Your assistant is the same everywhere — same personality, same memories, same skills. The only thing that changes is where you're talking to it and what the channel can do.

Desktop App

The flagship experience. A native macOS menu bar app with full capabilities:

  • Chat — type messages, see responses, interact with cards, tables, and other UI surfaces
  • Computer use — your assistant can see your screen and control your Mac directly
  • Voice input — hold your activation key and speak, or enable wake word detection
  • Document editor — long-form writing with your assistant as collaborator
  • App viewer — interactive apps your assistant builds render right in the window
  • Screen watch — your assistant can observe what you're doing and offer context-aware help

Every tool, every skill, every feature is available here. If a capability exists, the desktop app supports it.

Telegram

Connect a Telegram bot to your assistant and message it from anywhere. Setup takes a few minutes:

  1. Create a bot via BotFather
  2. Give your assistant the bot token
  3. Your assistant registers the webhook automatically

From there, you can chat with your assistant in Telegram like any other contact. It supports text, images, documents, and interactive buttons for approvals. When your assistant needs permission to do something, it sends an inline button you can tap.

Telegram is also one of the channels your assistant can use to reach you — notifications, follow-ups, and alerts can all land in your Telegram chat.

Slack

Connect your assistant to Slack workspaces via Socket Mode. It can:

  • Respond to @mentions in channels
  • Hold threaded conversations
  • Send rich messages with Block Kit formatting
  • Handle approvals via interactive buttons
  • Send ephemeral messages (visible only to you) for sensitive prompts

Slack has a unique feature: per-channel permission profiles. You can configure which tool categories are allowed in which Slack channels. For example, an engineering channel might allow coding and terminal tools, while a general channel might restrict those.

WhatsApp

Connect via the Meta WhatsApp Cloud API. Your assistant can send and receive messages through a WhatsApp Business number.

Setup requires a Meta Business account and WhatsApp Cloud API credentials. Once connected, messages flow through the same pipeline as every other channel — your assistant sees the context, recalls relevant memories, and responds.

Phone Calls

Your assistant can make and receive phone calls via Twilio.

  • Inbound calls — callers reach your assistant's phone number, and it answers with real-time voice conversation powered by ElevenLabs text-to-speech
  • Outbound calls — your assistant can call people on your behalf (for example, during guardian verification)
  • Transcripts — call recordings are transcribed and stored as conversation history

Setup requires a Twilio account. Your assistant can provision a new phone number or use an existing one.

Email

Email support is in early stages. Your assistant can send outbound emails and receive verification codes via email, but full inbound email processing isn't available yet.

CLI

A command-line interface for interacting with your assistant from the terminal. Uses the same SSE streaming as the desktop and iOS apps. Useful for scripting, automation, or if you prefer working in a terminal.

What works where

Not every channel can do everything. Here's what to expect:

CapabilityDesktopTelegramSlackWhatsAppPhone
ChatYesYesYesYesVoice
Computer useYes
Host file/shell accessYes
Screen watchYes
Voice inputYesYes
Interactive approvalsNative promptInline buttonsInteractive buttonsVerbal/DTMF
Rich contentFull UIMarkdown + mediaBlock KitText + mediaVoice only
NotificationsYesYesYes
SkillsAllAllAll (with channel permissions)AllLimited

Your assistant adapts its output to what the channel supports. If it would normally show you an interactive card, it'll send a text summary on WhatsApp or speak it on a phone call.

Same assistant, everywhere

Your assistant's identity, personality, and memory are channel-independent. A conversation that starts on your desktop can be followed up on Telegram. A fact you share over a phone call is remembered in Slack.

What ties it together is the guardian system. You verify your identity on each channel once — through a challenge-response flow — and from then on, your assistant knows it's you, regardless of where the message comes from. A single contact can be linked across multiple channels (your Telegram account, your Slack handle, your phone number), and the assistant treats them as one person.

Setting up channels

All channel configuration happens through your assistant. You can say things like:

  • “Set up Telegram”
  • “Connect to Slack”
  • “Set up voice”
  • “Provision a phone number”

Your assistant walks you through the setup conversationally — providing API keys, authorizing OAuth, scanning QR codes — rather than through a separate settings panel.

Channel settings are also available in the desktop app under Settings > Connect.