Skip to main content
The main configuration file stores your workspace list, LLM connections, and app-wide defaults.

Location

Structure

Fields

llmConnections

Array of LLM connection configurations. Each connection represents a provider setup (Anthropic, Codex/OpenAI, OpenRouter, etc.). See LLM Connections for schema details and examples.

defaultLlmConnection

Slug of the default LLM connection used for new sessions (unless overridden by a workspace). If omitted, the first connection in llmConnections is used.

workspaces

Array of configured workspaces. Each workspace represents a directory or project context.
FieldRequiredDescription
idYesUnique identifier for the workspace
nameYesDisplay name you assigned
rootPathYesFilesystem path to the workspace directory
createdAtYesUnix timestamp (ms) when the workspace was created
lastAccessedAtNoUnix timestamp (ms) of last access, used for sorting
iconUrlNoCustom icon URL for the workspace
mcpUrlNoPrimary MCP server URL for the workspace
mcpAuthTypeNoAuth type for MCP: "workspace_oauth", "workspace_bearer", or "public"

activeWorkspaceId

The ID of the currently active workspace, or null if no workspace is selected. This determines which workspace context is used when Craft Agents starts.

activeSessionId

The ID of the currently active session within the active workspace, or null if no session is selected.

notificationsEnabled

Enable or disable desktop notifications for task completion events. Default: true.

colorTheme

ID of the selected preset theme (e.g., "dracula", "nord"). Default: "default".
For per‑workspace defaults, use defaults.colorTheme in each workspace config. See Workspaces.

dismissedUpdateVersion

Version string of an update the user has dismissed. The app won’t prompt to update to this specific version again.

pendingUpdate

Object containing information about an update ready for auto-install on next launch:

Example Configuration

For the modern multi-provider setup, use llmConnections plus defaultLlmConnection. Example:

Automatic Backups

On startup, Craft Agents snapshots an existing config.json to a dated file alongside it before any code path can mutate the workspace registry. This gives you a recoverable copy if a failure or accidental reset clobbers the live config.
Behavior:
  • One backup per day, named config.json.bak-YYYY-MM-DD.
  • The 3 most recent backups are retained; older ones are pruned automatically.
  • The first startup of a given day captures the snapshot. Subsequent startups on the same day do not overwrite it, so the dated backup always holds the pre-mutation state.
  • Backups are best-effort. If writing fails, the error is logged and startup continues normally.
To restore a backup, quit Craft Agents, then copy the dated file over config.json:

Modifying Configuration

Most settings can be changed through the app:
SettingHow to change
API ConnectionSettings → API Connection
ModelClick the model name in the status bar
WorkspaceUse the workspace dropdown in the sidebar
For advanced changes, edit the file directly while Craft Agents is not running.
Back up your config file before manual edits. Invalid JSON will prevent Craft Agents from starting.