Skip to main content
GenosOS uses an extension (plugin) system for channel integrations. Every channel — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, voice, and more — is implemented as a workspace package under extensions/. There are 29 active extensions organized into four tiers.

Extension tiers

Core — always present (8)

These extensions are loaded on every startup. They cover the channels with the broadest global reach and the two voice stacks.
ExtensionChannel / Technology
whatsappWhatsApp (Baileys) — #1 global business channel
telegramTelegram (grammY) — trivial bot setup
discordDiscord (Carbon) — communities, teams, support
slackSlack (Bolt) — enterprise internal comms
signalSignal (signal-utils) — privacy-focused
imessageiMessage — macOS native, Apple ecosystem
voice-callBidirectional phone calls (Twilio/Telnyx/Plivo), STT→LLM→TTS
realtime-callTrue bidirectional voice via OpenAI Realtime API

Infrastructure — needed but invisible (4)

These extensions provide core capabilities used internally. They are not channels you interact with directly.
ExtensionPurpose
memory-coreBase memory system (QMD + SQLite)
memory-lancedbVector search for long-term recall (LanceDB)
device-pairConnect and manage user devices
llm-taskInternal LLM task pipeline

Dev / Power-user (8)

These extensions are available but not loaded for typical users. They serve developer workflows, streaming audiences, and OAuth portal flows.
ExtensionUse case
matrixMatrix federation — popular in dev and open-source communities
twitchTwitch chat bots for streamers
phone-controliOS device control (power-user, not in agent templates)
google-antigravity-authOAuth portal for Google provider
google-gemini-cli-authOAuth portal for Gemini CLI
minimax-portal-authOAuth portal for MiniMax (Chinese AI provider)
qwen-portal-authOAuth portal for Alibaba Qwen
talk-voiceElevenLabs voice control for Talk iOS

Optional by market (9)

These extensions are disabled by default and activated through conversation when a user mentions the relevant channel. GenosOS guides the user through setup automatically.
ExtensionMarketActivation trigger
lineJapan, Taiwan, Thailand”I use LINE”
zalo / zalouserVietnam”I use Zalo”
feishuChina (Lark)“I use Feishu”
msteamsMicrosoft enterprise”I use Teams”
googlechatGoogle enterprise”I use Google Chat”
mattermostSelf-hosted enterprise”I use Mattermost”
nostrCrypto / decentralizedNiche — explicit setup required
To enable an optional extension, just tell your assistant which channel you use:
"I use Microsoft Teams for work"
"Set up Google Chat for me"
"Connect my LINE account"
The agent loads the channel-specific TOON guide, walks you through the setup, and enables the extension.

Plugin SDK

Extensions can import the plugin SDK to integrate with GenosOS internals:
import { ... } from "genosos/plugin-sdk";
import { resolveAccountId } from "genosos/plugin-sdk/account-id";
The SDK is exported from the main package and provides the interface contract every extension must implement.

Extension structure

Each extension is a pnpm workspace package in extensions/<name>/. A minimal extension has:
extensions/my-channel/
├── package.json          # Extension deps go here — NOT in the root package.json
├── src/
│   └── index.js          # Plugin entry point
└── README.md
Key rules:
  • Extension-specific npm dependencies belong in the extension’s own package.json, not the root.
  • Do not use workspace:* in extension dependencies — use devDependencies or peerDependencies for the genosos package (the runtime resolves genosos/plugin-sdk via jiti alias).
  • Each extension declares a plugin.meta object with id, label, and capability flags used by the gateway for routing and status display.

Removed extensions

Nine extensions were removed from the repository as part of a scope reduction (37 → 29 active). They will not be reinstated.
ExtensionReason for removal
bluebubblesRedundant with imessage
ircLegacy protocol, effectively zero user base
tlonUrbit (~0 potential users)
nextcloud-talkRequires Nextcloud, ultra-niche
lobsterDeveloper workflow engine, not a channel
open-proseDeveloper skill pack, not a channel
thread-ownershipSlack-specific multi-agent utility
diagnostics-otel10 OpenTelemetry deps, pure DevOps overhead
copilot-proxyIncomplete private provider proxy