.env files (~/.aster/.env global,
.env in the repo local), loaded into the environment at startup.
Managing from the shell
aster config list prints each setting with the layer it came from, which is
the fastest way to answer “why is this value what it is”.
Sections
Model and endpoint
The model, endpoint, and reasoning effort live underreview:. The name is
historical; every command reads them, chat included. aster init, aster model use, and aster provider use all write here.
base_url at it and set a key var
named for it. A key var named for the endpoint (ANTHROPIC_API_KEY,
OPENROUTER_API_KEY) beats the shared ASTER_API_KEY. ASTER_MODEL and
ASTER_BASE_URL outrank this file.
model: auto picks from OpenRouter’s live benchmark rankings instead of a
fixed id (OpenRouter endpoints only). The tier comes from ASTER_ROUTER_TIER
(cheap | balanced | strong, default balanced), picks are cached for a
day in ~/.aster/model-rankings.json, and aster model router shows what
each tier resolves to.
permissions
See Permissions for the full language.
agent
review
See Review for every key.
mcp
See MCP servers for the full section.
schedules
See Schedules.
agents
Sub-agent limits: max_concurrent, max_per_turn, agent_timeout_secs,
collector_model. See Sub-agents.
ui
mom
The switch and the file it reads; the routing policy itself lives in
mom.yaml.
providers
mom.yaml: model routing per turn
A mom.yaml in the repo root or ~/.aster/ routes each turn to a model by
intent. Entries describe intent (power, thinking, prefer), switch rules
fire on conditions like planning, stuck, looping, model-down, and a
cheap router judges the rest. Switches show as mom: notes in chat.
specs/mom.md in the main repository. Logs:
~/.aster/logs/mom-router.jsonl and mom-switches.jsonl.
Environment variables
See Environment variables for the full list. The two that outrank the yaml file:ASTER_MODEL and ASTER_BASE_URL, both reported by
aster status when set.