A template for running persistent Claude Code agents as a team, reachable via Telegram.
Each agent runs in a tmux session with its own identity, memory, docs, and Telegram bot. Agents share MCP servers for things like Gmail, Calendar, and Drive. Recurring tasks run via OS-level crontab that pokes each agent’s session on a schedule.
cd ~ # or wherever you want to install
curl -fsSL https://cct.vantasoft.com/install.sh | bash
cd claude-code-teams/agents/orchestrator
claude --dangerously-skip-permissions
When Claude launches, type setup wizard to kick it off. The orchestrator will guide you through the rest (Telegram bot, Google OAuth, schedules).
git (already on most Macs/Linux boxes)The orchestrator will install tmux and node for you on first launch if they’re missing.
We recommend a Mac Mini (or any always-on home server). A cloud VM (EC2, DigitalOcean, etc.) works fine too. The key requirements are:
claude-code-teams/ # The install directory
├── CLAUDE.md # Shared config inherited by all agents
├── agents/
│ └── orchestrator/ # Chief of staff (reference agent)
│ ├── CLAUDE.md
│ ├── tasks.md
│ ├── schedules/ # One .md per recurring task, with cron frontmatter
│ ├── docs/
│ ├── memory/
│ ├── scripts/
│ │ ├── start-agent.sh
│ │ ├── create-agent.sh
│ │ └── sync-schedules.sh
│ └── .claude/
└── mcp/
└── google-workspace/ # Gmail, Calendar, Drive MCP server
~/.claude/channels/ # Telegram bot configs (user home)
~/.config/ # OAuth tokens, etc. (user home)
~/.mcp.json # MCP server registry (user home, created during setup)
Each agent:
CLAUDE.md (shared) + its own CLAUDE.md (role-specific)Just ask your orchestrator via Telegram: “Add a coder agent” or “I need a finance agent.” The orchestrator will scaffold the directory, walk you through creating a Telegram bot for it, configure the channel, and launch it.
You shouldn’t need to run scripts manually — the orchestrator handles orchestration.
Your agent team accumulates state over time: CLAUDE.md files, schedules, agent-specific docs, memory files, learned triage rules. Fork this repo and push your team’s state to your fork regularly for:
Ask your orchestrator to set up a nightly git push schedule.
MIT