Sample config.toml
A complete, annotated ~/.cluster/config.toml showing every key and table Cluster Build reads, with its default value, to copy from.
The file below lists every key Cluster Build reads from
~/.cluster/config.toml, set to its default unless the comment says
otherwise. A real file only needs the keys you change — an absent key means
"use the default" — so copy the lines you want rather than the whole thing.
Keys shown commented out have no stored value by default — the CLI derives one at runtime (your hostname, the production cloud host, the model's own reasoning default) — so leave them absent unless you want to override that. Tables marked example are placeholders: a provider, MCP server, or trusted path that would not exist on your machine.
# ~/.cluster/config.toml
# ---------------------------------------------------------------------------
# Model
# ---------------------------------------------------------------------------
# Model used for new sessions. Run `cluster models` for the current catalog.
default_model = "claude-opus-4-7"
# Provider used at startup: "cluster" (built in) or the name of a
# [model_providers.<name>] table below.
default_model_provider = "cluster"
# Reasoning effort hint: none, minimal, low, medium, high, xhigh, max.
# Omit to use each model's own default.
# reasoning_effort = "high"
# Gateway scheduling tier: "standard" or "fast" (premium rate; `/fast`).
service_tier = "standard"
# ---------------------------------------------------------------------------
# Appearance
# ---------------------------------------------------------------------------
# Terminal appearance: "light" or "dark". `/appearance` writes this;
# CLUSTER_TERM_BG overrides it for one run.
# term_bg = "dark"
# Bundled or user-provided syntax theme (~/.cluster/themes/). `/theme` writes this.
# syntax_theme = "catppuccin-mocha"
# ---------------------------------------------------------------------------
# Context
# ---------------------------------------------------------------------------
# Summarize older turns automatically as the conversation fills.
auto_compact_enabled = true
auto_compact_threshold_tokens = 160000
compact_keep_recent_user_tokens = 20000
# Share cwd, shell, date, and timezone with the model.
include_environment_context = true
# Send ~/.cluster/AGENTS.md and the repository's AGENTS.md / CLAUDE.md files.
include_project_instructions = true
# ---------------------------------------------------------------------------
# Updates and remote control
# ---------------------------------------------------------------------------
# Check for and install newer releases in the background on interactive startup.
auto_update_enabled = true
# Advertise new interactive sessions to remote control automatically.
remote_control_at_startup = false
# Name this machine shows under in the remote session list (default: hostname).
# remote_control_server_name = "laptop"
# ---------------------------------------------------------------------------
# Endpoints (leave at defaults unless pointed at a staging environment)
# ---------------------------------------------------------------------------
api_url = "https://llm.clusterbase.dev"
search_api_url = "https://search.clusterbase.ai"
billing_api_url = "https://gateway.clusterbase.ai"
auth_issuer = "https://accounts.clusterbase.ai"
auth_audience = "agent-api"
# managed_agents_url = "https://agents.clusterbase.dev"
# ---------------------------------------------------------------------------
# Memory
# ---------------------------------------------------------------------------
[memory]
use_memories = true # inject the memory overview and enable memory tools
generate_memories = true # extract and consolidate memory from finished sessions
# ---------------------------------------------------------------------------
# Built-in tools
# ---------------------------------------------------------------------------
[browser]
enabled = true # Playwright-backed browser provider
[computer]
enabled = false # native desktop tool (Linux GNOME Wayland, macOS 26+)
unattended = false # true suppresses per-process capture and control prompts
[tools.request_user_input]
default_mode = false # true allows clarifying questions outside plan mode
# ---------------------------------------------------------------------------
# Skills (~/.cluster/skills/<name>/SKILL.md)
# ---------------------------------------------------------------------------
[skills]
enabled = true
disabled = [] # skill directory names to skip
# ---------------------------------------------------------------------------
# Model providers (example) — at most one, kind must be "ollama"
# ---------------------------------------------------------------------------
# [model_providers.local]
# kind = "ollama"
# base_url = "http://127.0.0.1:11434" # host root; /v1 is appended
# ---------------------------------------------------------------------------
# MCP servers (examples)
# ---------------------------------------------------------------------------
# A stdio server launched on demand. Only variable *names* go in env_vars;
# values are read from your environment at startup.
# [mcp.servers.ups]
# transport = "stdio"
# command = "npx"
# args = ["-y", "ups-mcp"]
# env_vars = ["UPS_CLIENT_ID", "UPS_CLIENT_SECRET", "UPS_ACCOUNT_NUMBER"]
# read_only_tools = ["track_package"]
# startup_timeout_sec = 30 # default 5
# tool_timeout_sec = 120 # default 120
# enabled = true
#
# [mcp.servers.ups.env]
# UPS_ENVIRONMENT = "production"
# A streamable-HTTP server with a bearer token and an extra header, both
# read from environment variables.
# [mcp.servers.tasks]
# transport = "streamable_http"
# url = "https://tasks.example/mcp"
# bearer_token_env_var = "TASKS_MCP_TOKEN"
#
# [mcp.servers.tasks.env_http_headers]
# X-Api-Key = "TASKS_API_KEY"
# A streamable-HTTP server using a per-user OAuth token managed by the CLI
# (`cluster mcp login tasks-oauth`). All three oauth_* keys are required
# together and exclude the bearer fields above.
# [mcp.servers.tasks-oauth]
# transport = "streamable_http"
# url = "https://tasks.example/mcp"
# oauth_audience = "tasks"
# oauth_client = "cluster-mcp"
# oauth_scopes = ["openid", "offline_access"]
# ---------------------------------------------------------------------------
# Workspace trust (example) — managed by `cluster trust add/remove/list`
# ---------------------------------------------------------------------------
# [projects."/Users/me/src/app"]
# trust_level = "trusted"
#
# [projects."/Users/me/src/app/vendor"]
# trust_level = "untrusted"Next steps
- Config basics — what each top-level key
does and how to set it with
cluster config set. - Advanced configuration — the tables in detail: providers, MCP servers, skills, trust, and state locations.