Setup Wizard
Configure a model provider, Discord, identity, and optional local services.
Run the interactive wizard after installation:
tars setup
Model provider
Choose Google, OpenAI, Anthropic, a local endpoint, or another OpenAI-compatible endpoint. The wizard
stores the provider and model ID in ~/.tars/config.json; API credentials go to ~/.tars/.env.
Set the context-window size to the actual limit of the selected model. Tars validates and bounds context, compression, rate-limit, and heartbeat values when configuration loads.
Discord
Provide a Discord bot token with Message Content intent enabled and your 17–20 digit Discord user
ID. The wizard requires that owner ID and stores it in config.json. Tars accepts messages only from
the preconfigured owner; if a migrated configuration has no owner ID, every Discord message is
ignored until you rerun tars setup or set DISCORD_OWNER_ID. No direct or guild message can claim
ownership. An explicit channels.discord.enabled: false keeps the channel disabled even when a
token is configured.
See Discord for bot permissions and interaction behavior.
Dashboard
The dashboard is optional and disabled by default. Enabling it creates a strong password unless an
existing password already meets the current policy. It binds to 127.0.0.1 by default and refuses to
start with a missing, known-default, or shorter-than-16-character password.
Keep it on loopback and use an authenticated tunnel for remote access.
Extensions
Setup refreshes the bundled extensions and audits enabled custom MCP policies. If an older custom extension lacks an explicit environment allowlist, setup opens the guided migration. Review every suggested variable name; suggestions come from extension source and are not automatically trusted.
You can repeat the read-only check at any time:
tars extensions audit
Verify
tars extensions audit
tars start
tars status
tars logs
status confirms the PM2 process and session metrics. Use logs to inspect channel, extension,
heartbeat, or cron startup.