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.| Extension | Channel / Technology |
|---|---|
whatsapp | WhatsApp (Baileys) — #1 global business channel |
telegram | Telegram (grammY) — trivial bot setup |
discord | Discord (Carbon) — communities, teams, support |
slack | Slack (Bolt) — enterprise internal comms |
signal | Signal (signal-utils) — privacy-focused |
imessage | iMessage — macOS native, Apple ecosystem |
voice-call | Bidirectional phone calls (Twilio/Telnyx/Plivo), STT→LLM→TTS |
realtime-call | True 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.| Extension | Purpose |
|---|---|
memory-core | Base memory system (QMD + SQLite) |
memory-lancedb | Vector search for long-term recall (LanceDB) |
device-pair | Connect and manage user devices |
llm-task | Internal 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.| Extension | Use case |
|---|---|
matrix | Matrix federation — popular in dev and open-source communities |
twitch | Twitch chat bots for streamers |
phone-control | iOS device control (power-user, not in agent templates) |
google-antigravity-auth | OAuth portal for Google provider |
google-gemini-cli-auth | OAuth portal for Gemini CLI |
minimax-portal-auth | OAuth portal for MiniMax (Chinese AI provider) |
qwen-portal-auth | OAuth portal for Alibaba Qwen |
talk-voice | ElevenLabs 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.| Extension | Market | Activation trigger |
|---|---|---|
line | Japan, Taiwan, Thailand | ”I use LINE” |
zalo / zalouser | Vietnam | ”I use Zalo” |
feishu | China (Lark) | “I use Feishu” |
msteams | Microsoft enterprise | ”I use Teams” |
googlechat | Google enterprise | ”I use Google Chat” |
mattermost | Self-hosted enterprise | ”I use Mattermost” |
nostr | Crypto / decentralized | Niche — explicit setup required |
Plugin SDK
Extensions can import the plugin SDK to integrate with GenosOS internals:Extension structure
Each extension is a pnpm workspace package inextensions/<name>/. A minimal extension has:
- Extension-specific npm dependencies belong in the extension’s own
package.json, not the root. - Do not use
workspace:*in extensiondependencies— usedevDependenciesorpeerDependenciesfor thegenosospackage (the runtime resolvesgenosos/plugin-sdkvia jiti alias). - Each extension declares a
plugin.metaobject withid,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.| Extension | Reason for removal |
|---|---|
bluebubbles | Redundant with imessage |
irc | Legacy protocol, effectively zero user base |
tlon | Urbit (~0 potential users) |
nextcloud-talk | Requires Nextcloud, ultra-niche |
lobster | Developer workflow engine, not a channel |
open-prose | Developer skill pack, not a channel |
thread-ownership | Slack-specific multi-agent utility |
diagnostics-otel | 10 OpenTelemetry deps, pure DevOps overhead |
copilot-proxy | Incomplete private provider proxy |