Try the lowest-effort path first
Once it is installed, describe the change in the session and let the agent write the settings:
Add a provider named my-gateway at https://llm.internal.example/v1,
declare the model qwen3-32b, and make it my model.Ask for a diff of what it wrote. Provider entries, model metadata, subagent kinds, workflow budgets — all of it can be configured this way, and for most changes this is where the work ends. See Natural-language configuration.
What a picker covers, do with commands
/login, /model, /decision, and /effort write the shape the selected
provider expects, so no schema to learn. The full list is in the
command reference.
Reference pages for editing the file
To check fields one by one, copy configuration between machines, or provision a batch of environments, these pages follow the structure of settings.json:
- Settings reference — the complete field reference: every key, its type, its default, expanded by nesting level;
- Providers — the built-in provider set and login;
- Models — slots,
/model, and/decision; - Custom and self-hosted models — the entry shape for private endpoints and gateways;
- Subagents — kind definitions and tool whitelists;
- Permissions — what the agent may touch;
- Skills — load reusable instruction packs;
- MCP — connect external tool servers;
- Cetas Home — the directory itself.
What is shared, and what is not
Sharing one home means every surface reads the same configuration, credentials, and session store. It does not mean every surface behaves identically: the terminal has pickers, the editor has ACP config options, and the runner takes flags. Each surface page states what it supports.
Selections made in one surface are visible to the next: /model in the terminal
is what the editor restores on its next start.