Quick Start¶
Get a personal AI assistant running in under 5 minutes.
1. Install Leo¶
See Installation for all options.
2. Run the Setup Wizard¶
The interactive wizard walks you through:
- Creating a user profile — tells the assistant who you are
- Picking a workspace — the root directory for your agent's files
- Configuring MCP servers (optional) — integrations (calendar, email, etc.)
- Adding scheduled tasks (optional) — recurring jobs like daily briefings
- Optionally installing as a daemon — for persistence across reboots
The wizard does not install or configure any messaging channel. Leo is channel-agnostic.
3. (Optional) Install a Channel Plugin¶
If you want mobile access or another way to chat with your assistant, install a Claude Code channel plugin separately. For example, to enable Telegram:
Follow the plugin's own setup flow to connect your bot. Then reference the plugin in leo.yaml under your assistant's template:
templates:
assistant:
workspace: ~/agents/assistant
channels: [plugin:telegram@claude-plugins-official]
Leo passes the list to the spawned Claude process via the LEO_CHANNELS environment variable; the plugin owns its own auth and routing.
4. Start the Service¶
Spawn the assistant agent from its template, then send it a message:
Your assistant is now listening. If you configured a channel plugin, send a message to it and the agent will respond.
Background operation
leo service start runs the daemon (and everything it supervises — agents, including the ones backing persistent tasks) in the background with automatic restart. For daemon mode (persists across reboots), see Background Mode.
5. Test a Scheduled Task¶
If you added a task during setup, run it manually:
If the agent has something to report, you'll receive a message on your configured channel. If there's nothing noteworthy, it outputs NO_REPLY.
6. Verify Your Schedule¶
Check that your scheduled tasks are loaded and see when each will fire next:
When the daemon is running, the NEXT RUN column shows the upcoming fire time for each task. Leo runs its own in-process scheduler — there is no system crontab to install.
What's Next¶
- Scheduling — deep dive into cron expressions, timezones, and silent mode
- Background Mode — keep your service alive across reboots
- Writing Tasks — create custom scheduled tasks
- Configuration — full leo.yaml reference