Configuration
Configure Mando's daemon, captain, and integrations.
Mando stores all configuration in ~/.mando/config.json. You can edit it through the Settings UI in the app or modify the JSON directly — changes are picked up on the next captain tick.
Config structure
The config is organized into sections:
{
"workspace": "~/code",
"features": { },
"channels": { },
"captain": { },
"scout": { },
"env": { }
}workspace
The root directory where your projects live.
features
Toggle capabilities on or off:
| Field | Default | Purpose |
|---|---|---|
scout | false | Enable Scout (research & reading list) |
captain
Controls the orchestration engine:
| Field | Default | Purpose |
|---|---|---|
autoSchedule | true | Automatically pick up and assign tasks |
projects | {} | Map of managed git repositories |
Each project entry:
{
"/path/to/repo": {
"name": "my-project",
"path": "/path/to/repo",
"githubRepo": "org/repo"
}
}channels
Notification and bot configuration. See Telegram Setup for details.
env
API keys and secrets. These are injected into the runtime environment — bot tokens, API keys, and other credentials go here rather than in their respective config sections.
Common keys:
| Variable | Purpose |
|---|---|
TELEGRAM_MANDO_BOT_TOKEN | Main Telegram bot token |
Data directory
Everything Mando needs lives under ~/.mando/:
| Path | Purpose |
|---|---|
config.json | Main configuration |
mando.db | SQLite database (tasks, sessions, timeline) |
auth-token | Bearer token for daemon auth |
daemon.port | Current daemon port |
logs/ | Runtime logs (JSONL format) |
state/ | Worker streams, health, and WAL |