Open source · MIT · runs on your box

A switchboard for your Pro or Max.

A team of always-on assistants you text. On a leash.

Switchroom turns the Claude subscription you already pay for into a team of always-on assistants you text on Telegram. Each one has a name, remembers you, and does the actual work. They stop and ask before anything with consequences, and only your tap says go.

Unmodified claude CLI · your existing OAuth · no API keys, no second bill

One take · five agents · one tap — a real ship day, on loop.

How it works

Name them. Text them. They work — on your subscription, on a leash.

01

Name your specialists

One bot per job — a chief of staff, a marketer, a health coach, a writing partner. Each has its own name, memory, tools, and credentials. Adding one is ten lines of YAML.

Your fleet is just chats in Telegram.
02

Text them on Telegram

Like you'd text a good assistant. They know your context, so you rarely re-explain. Not coding bots — whatever job you give them.

A specialist that remembers your voice.
03

They work — on a leash

Each runs the unmodified claude CLI on your own Pro or Max login. You watch progress in plain words, and anything with consequences waits for your tap.

Live status, pinned to the chat.

Why Switchroom

Four things it does properly

standing-team

A real team, not a chatbot

One specialist per job, each with its own name, memory, and tools. It feels like a colleague who knows your context, not a chat window that forgets you every session.

always-available

There when you reach for them

Each specialist is a long-running service. It survives reboots, network drops, your laptop closing — and runs its scheduled work whether or not you're watching. Available and punctual, not autonomous.

hold-the-leash

You hold the leash

Your assistants don't roam. They act only on what you ask or the schedules you set, then stop at anything with consequences and ask first. Only your authenticated tap grants it — no agent can self-elevate or route around you.

subscription-honest

The rest of your Claude subscription

It runs on the Pro or Max plan you already pay for, the same login as the desktop. No API meter, no second invoice. One bill — the one you already pay.

Telegram, done properly

Replies that read like they were made for the app

Answers render as native Telegram rich messages: real tables, syntax-lit code blocks, expandable quotes for the long tail, live-updating progress cards pinned to the chat. Short answers stay plain prose. Structure shows up only when it earns its place on your screen.

Seventeen Telegram tools under the hood — reply, stream, react, edit, pin, checklists, attachments, approval cards — so the chat feels like a person who knows the platform, not a bot dumping monospace.

One reply: table, code, expandable quote — all native.

On a leash

Most agent tools act first. Switchroom asks first.

Give an assistant broad standing access and one day it helpfully does something irreversible. Switchroom is built the other way: every credential, tool, and consequential action is a deliberate grant you approve. The control isn't a setting — it's the design.

You ask. The agent does the work, then stops at the consequence.

You get the card. What, where, why — and two buttons. Nothing moves without your tap.

You tap, it ships. Every grant is scoped, audited, and expires. Deny works just as fast.

Install

Five minutes to your first specialist

One box you own — a cheap VPS or the Linux machine under your desk. One script installs the dependencies, one wizard sets up Telegram, the vault, and your first agent. OAuth with the same flow as the desktop app, and you never touch the server again.

Already in Claude Code?

Shortest path — from inside any session:

/plugin marketplace add switchroom/switchroom
/plugin install switchroom@switchroom
/switchroom:setup
# fresh Linux box, one script
$ curl -fsSL https://github.com/switchroom/switchroom\
    /raw/main/scripts/install-deps.sh | sudo bash

# Telegram + vault + first agent, interactive
$ switchroom setup
$ switchroom apply
$ docker compose -p switchroom up -d

# OAuth your Pro/Max — same login as the desktop
$ switchroom auth add default --via-claude
$ switchroom auth use default