agenticonsult logoagent i /consultDocs
Reference

Configuration reference

Where every setting lives, when a change applies, and which Settings surface edits it — the three configuration tiers, the key catalog, and the install folder map.

Every Command Center setting is a value in a file under your install root (or in your per-user application-data directory). There is no hidden settings database. Which file a setting lives in decides when a change applies — some settings are hot and apply on the next operation, others need the affected component to restart. This page maps the three configuration tiers, catalogs the keys you actually configure, and closes with the folder layout of an installed product.

The three configuration tiers

TierFileWhat lives thereWhen changes applyEdited by
Environment fileapp/.envSecrets and wiring: API keys, database connection, daemon endpoints, harvest credentialsAfter the affected component restartsSettings ▸ API Keys · Database · Integrations · Daemons · Project, and Observer ▸ Settings ▸ Proxy
Runtime configconfig/cc.config.jsonHot runtime knobs: output paths, autostart, control planes, graph backend, fleet limitsImmediately — read fresh on the next operationSettings ▸ Paths & Outputs · Terminals · Database, and Dashboard ▸ Platform Health
Preference storesper-user application-data directoryUI state and per-view preferences: themes, terminal behavior, session resumeImmediatelyThe view or dialog that owns the preference

app/.env — keys and wiring (restart-bound)

The environment file is the home of everything secret or structural: API keys, the graph-database connection, daemon endpoints and ports, and optional harvest credentials. The annotated template ships next to it as app/.env.example; the live file is local to your machine and its values never leave it — Settings panels only ever report whether a secret is set.

Three consumers read this file:

  1. The configuration sync — generates the install root's .mcp.json (the tooling manifest every agent session loads) from the environment file. Saving from any Settings panel re-runs it automatically.
  2. The daemons — each background service reads its keys once, at process start.
  3. The Settings view — the env-backed groups (API Keys, Database, Integrations, Daemons, Project) read and write the file directly.

Because every consumer reads it at startup, every change here is restart-bound: after a save, restart the affected daemon (Dashboard ▸ Platform Health) — running agent sessions pick the change up on their next launch. This is by design; anything that must apply live lives in the runtime config instead.

Generated files — never hand-edit. .mcp.json (and .mcp.http.json) at the install root are written by the configuration sync from the environment file. Direct edits are overwritten on the next save. To change what they contain, change the environment file.

config/cc.config.json — hot runtime settings

The runtime config lives at the install root under config/, deliberately outside the app tree. It is created from a shipped template on first run and never overwritten afterward. The app and the daemons read it lazily — per operation, not at boot — so a change applies on the very next operation, with no restart and no sync step.

Its contract keeps it safe to edit by hand:

  • Every value is optional. A null or absent key means the built-in default — an untouched file is stock behavior exactly.
  • Unknown keys pass through. A hand-added key is never dropped by a Settings save.
  • Secrets and wiring do not belong here — they stay in the environment file.
SectionWhat it controlsRead bySettings surface
outputs.*Where output trees land (see Paths and outputs)the owning daemon, per operationSettings ▸ Paths & Outputs
autostart.*Which background services launch with the appthe app at launchDashboard ▸ Platform Health
control.*The agent control-plane enable gatesthe control servers, liveSettings ▸ Terminals ▸ Agent control planes
kg.*Knowledge-graph backend mode and local server heapthe app and the configuration syncSettings ▸ Database
missions.*Fleet worker cap and mission-lint thresholdsthe fleet host, fresh per callSettings ▸ Terminals ▸ Mission fleet
account.*The account server the sign-in flow targetsthe sign-in and entitlement flownone — file-edited (see Account server)
runtime.*Child-process supervisionthe app when spawning daemonsnone — shipped default
features.*Release toggles for not-yet-released views — fail-closed: absent means hiddenthe appnone — file-edited

Preference stores — per-view UI state

Per-view preferences — the UI theme, terminal pane behavior, session-resume switches, activity-log retention — live in small per-user files in your operating system's application-data directory, outside the install root. They apply immediately, persist across restarts, and are per-machine. You never edit these files directly; the owning view writes them (Settings ▸ Themes, Settings ▸ Terminals, the New Workspace dialog, and so on).

One note on precedence: for any value that is backed by the environment file, the environment file is authoritative — the app re-reads it at every launch. Preference stores only hold state that has no environment-file counterpart.

Key catalog

The curated list — the settings a buyer actually configures, grouped the way Settings groups them. The Applies column tells you what, if anything, must restart.

API keys — Settings ▸ API Keys

KeyWhat it doesAppliesWhere in Settings
GEMINI_API_KEYEmbeddings, knowledge-base ingest, and direct Gemini queries. The free tier works.restart of the affected daemons + next agent sessionAPI Keys ▸ "Gemini key · embeddings & KB"
GEMINI_IMAGE_API_KEYImage generation only. Requires a paid-tier key; the image daemon fails loud when it is missing. Leave blank to run without image generation — the daemon is then skipped at launch.restart of the image daemonAPI Keys ▸ "Gemini key · image generation"
XAI_API_KEYReserved. The Voice assistant authenticates via OAuth, so this key is normally unused.API Keys ▸ "xAI API key"

The Gemini model and embedding identifiers (EMBED_MODEL, LLM_MODEL, GEMINI_MODEL, EMBED_DIM) also live in the environment file. The shipped defaults are correct; change them only if you know a newer model you want and accept re-embedding consequences.

Knowledge-graph backend — Settings ▸ Database

The knowledge graph runs on ArcadeDB in one of two backend modes. The mode itself is a hot runtime-config value; the connection profiles are environment-file values.

KeyWhat it doesAppliesWhere in Settings
kg.backend_modelocal (the provisioned server the app runs itself, no Docker) or docker (any external instance you point it at).hot — "Apply switch" repoints the app immediately; restart the knowledge-base daemon and running agent sessions to carry the switch to agentsDatabase ▸ Backend mode
kg.local_heap_mbThe local graph server's memory ceiling in MB (default 1024).saved hot; takes effect the next time the local server startsDatabase ▸ JVM heap (MB)
ARCADEDB_URI · ARCADEDB_HTTP_URI · ARCADEDB_USERNAME · ARCADEDB_PASSWORD · ARCADEDB_DATABASEThe external connection profile — used when the backend mode is docker. The password must match the server's root password.restart of the knowledge-base daemonDatabase ▸ the connection fields (External mode)
CC_KG_LOCAL_* (server dir, ports, username, password, database)The provisioned-local profile. Fully installer-managed: Settings ▸ Database ▸ Install fills every value, and the password is auto-generated per machine. You normally never touch these.managed by Install / RepairDatabase ▸ Provisioned (local)

Paths and outputs — Settings ▸ Paths & Outputs

Output-tree relocations live in the runtime config (outputs.*). Blank means the default folder under the install root; set an absolute path to relocate that output tree. Whether an override is honored depends on the owning daemon — and the Settings page badges the rows honestly:

KeyOutput treeApplies
content_site_rootThe intelligence desk's content tree — briefings, reports, roundups. Point it at your site's content folder.hot — read live on the next dispatch
products_dist_dirBuilt product exports. Set a folder to collect all exports in one place.hot — read live on the next export
kg_exports_dirKnowledge-graph export bundles. Must stay outside documents/ — an override inside it is refused.hot — read live on the next export
imagegen_archive_dirGenerated hero and inline images.on the image daemon's next restart
observer_reports_dirHarvested news reports.not honored yet — the value is stored, but no daemon reads it; wiring ships in a later update
renders_dirVideo render outputs.not honored yet — ships in a later update
social_assets_dirSocial drafts and media assets.not honored yet — ships in a later update

The three "not honored yet" rows are disabled and badged exactly that way in Settings. They exist so the config surface is complete; setting them today has no effect.

Daemon endpoints and agent transport — Settings ▸ Daemons

Each background service derives its port from its own URL key, and the app resolves every call through the same key — change a URL and client and server move together. The host stays 127.0.0.1 (these are local child processes); the port is the knob. All changes apply after the affected daemon restarts.

KeyComponentDefault
OBSERVER_DAEMON_URLObserver (news harvesting)http://127.0.0.1:8765
ROUTINES_DAEMON_URLRoutines (automation engine; also hosts the products, video, and footage APIs)http://127.0.0.1:8766
KB_DAEMON_URLKnowledge basehttp://127.0.0.1:8767
IMAGEGEN_DAEMON_URLImage generationhttp://127.0.0.1:8768
VOICE_DAEMON_URL · VOICE_WS_URLVoice (HTTP + WebSocket, one process)http://127.0.0.1:8769 · ws://127.0.0.1:8770
MEMORY_DAEMON_URLShared agent memory (read-only surface for the Memory view)http://127.0.0.1:8771
GATEWAY_URLShared MCP gateway — one endpoint that fronts the whole tool stack so agent sessions don't each spawn their own servershttp://127.0.0.1:8772

Three related switches on the same page:

KeyWhat it doesAppliesWhere in Settings
GATEWAY_TOKENOptional gateway hardening. Blank keeps it open on loopback like every other local service; set a long random value to require a bearer token.restart + re-syncDaemons ▸ gateway fields
ROUTINES_USE_GATEWAYRoute routine dispatches through the shared gateway (default on). Health-gated — a down gateway falls back automatically, so it never strands a routine.restart of the routines daemonDaemons
CC_MAIN_MCP_TRANSPORTHow app-launched agent terminals reach their tools: stdio (each session spawns its own servers — the default) or gateway (share the one gateway stack, with automatic fallback at launch).next agent terminal launchedDaemons ▸ "Main session MCP transport"

Terminals and the mission fleet — Settings ▸ Terminals

KeyWhat it doesAppliesWhere in Settings
control.terminalEnable gate for the terminal control plane — agents driving Command Center terminals. The more powerful surface: it can run shell commands.immediate, and persistsTerminals ▸ Agent control planes
control.windowEnable gate for the window control plane — agents arranging windows and views.immediate, and persistsTerminals ▸ Agent control planes
missions.maxWorkersPer-mission cap on concurrently spawned fleet workers. Default 8, clamped 1–64.hot — read fresh on the very next spawnTerminals ▸ Mission fleet
missions.staleDaysDays without timeline activity before an active mission surfaces a stale-mission lint finding. Default 30.hot — next lint runTerminals ▸ Mission fleet
missions.archiveAfterDaysDays a completed mission sits inactive before an archival-due lint finding. Default 28.hot — next lint runTerminals ▸ Mission fleet

The remaining switches on this page are preference-store values (hot, per-machine): Auto-resume on restart and Keep agents warm (session resume), and the pane drag-to-reorder behavior. The two per-spawn agent toggles — skip permission prompts and auto-trust new folders — live in the New Workspace dialog, not in Settings.

Autostart — Dashboard ▸ Platform Health

autostart.* controls which background services launch with the app: the local graph server, the knowledge base, image generation, routines, the observer, and Voice. The default is on for everything — a fresh install starts ready. Flip a service off from its Platform Health toggle; the change applies at the next app launch.

Integrations — Settings ▸ Integrations

All optional; leave any group blank to run without it. Applies after the consuming daemon restarts.

GroupKeysWhat it does
Email accountEMAIL_ADDRESS · EMAIL_PASSWORD · EMAIL_DISPLAY_NAME · EMAIL_IMAP_HOST / _PORT · EMAIL_SMTP_HOST / _PORTThe email account the platform reads and sends through. Any IMAP/SMTP provider.
Newsletter harvestingNEWSLETTER_IMAP_HOST / _PORT · NEWSLETTER_EMAIL · NEWSLETTER_PASSWORDA dedicated inbox the observer harvests newsletters from.
X API fallbackX_BEARER_TOKEN · X_MONTHLY_READ_BUDGETOptional official-API fallback for X harvesting, with a monthly read budget (default 100).

Proxy — Observer ▸ Settings ▸ Proxy

The observer's residential-proxy credentials (PROXY_POOL_USER, PROXY_POOL_PASS, PROXY_ROTATING_URL) are environment-file values, but you configure them from the Observer view's own Settings panel, not the global Settings — it includes a provider preset, a connection test, and the transport toggles. Full setup, provider formats, and expectations: BYO proxy setup. Changes apply after the observer daemon restarts.

Project root — Settings ▸ Project

The active project directory — the workspace Command Center operates on. Set it with Settings ▸ Project ▸ Browse; it syncs to the file-access allowlist and every file-backed view, and new terminals open there. The optional PROJECT_ROOT environment key overrides the automatic resolution; leave it blank on a normal install.

Account server

account.base_url in the runtime config retargets the account backend the desktop sign-in and entitlement flow talks to. Leave it null — that is the shipped state, and it resolves to the production account server. A non-null absolute origin is an advanced escape hatch for running a local account server against an installed build; it wins everywhere the sign-in flow runs. There is no Settings surface for it — edit the file.

Advanced — shipped defaults you should know exist

KeyWhat it doesShipped state
runtime.supervise_childrenBinds every spawned background service to the app's own process, so daemons terminate together with Command Center — including on a crash.true on installed builds — no orphaned processes
features.*Release toggles for views that ship dark. Fail-closed: an absent or null flag means the view does not appear anywhere in the app.all null
MEMORY_DEFAULT_PROJECTThe project stamp written on new shared-memory entries. Blank defaults to the workspace folder name.blank

The folder layout

The buyer's mental map of an installed product — what lives where under the install root. Depth on the documents/ workspace itself is in Your workspace and documents.

<install root>/
├── CLAUDE.md            the operating contract — every agent session reads it first
├── .claude/             the agent control plane
│   ├── agents/          agent definitions
│   ├── skills/          skill packages
│   ├── protocols/       the doctrine corpus (described, not reproduced, in this manual)
│   └── routines/        routine definitions
├── mcp-servers/         the MCP servers and background daemons
├── app/                 the desktop application
│   ├── .env             ★ keys + wiring (the environment file)
│   └── .env.example     the annotated template
├── config/
│   └── cc.config.json   ★ hot runtime settings (created on first run)
├── .mcp.json            generated agent-tooling manifest — never hand-edit
├── documents/           your working tree: reports, missions, news, context artifacts
├── arcadedb/            the provisioned-local graph server home (server · runtime · data)
├── remotion/            the programmatic video engine
└── hyperframes/         the HTML-first video engine

Highlights of the documents/ tree — the part that is yours:

FolderWhat accumulates there
documents/general_reports/Agent-written reports, research, and the per-mission working folders
documents/grand-blackboard/The standing strategic directives and the missions log
documents/context-artifacts/Context artifacts — the curated grounding notes for agent sessions
documents/news_harvest/Harvested news items and the observer's index
documents/terminal-workspaces/Terminal workspace state and the agent-control audit log
documents/outside_sources/Files you bring in from outside — PDFs, data, reference material

Two things live outside the install root, in your per-user application-data directory: the app's window preferences and secrets mirror, and the per-view preference stores (theme, terminal behavior, session resume). They are per-machine by design and move with your user profile, not the install.

Verifying a configuration

Settings ▸ Doctor runs the readiness checks — environment file present, every placeholder resolved, tool interpreters on disk, the graph database reachable — and reports a pass/fail table. Run it after any environment-file change that did not behave as expected. The check-by-check reference: Doctor checks.

On this page