Skip to content

Settings

AutoC stores configuration in JSON. Use /settings for common options, or edit JSON directly — both write the same fields; /settings saves automatically.

Scopes

LocationScope
~/.autoc/agent/settings.jsonGlobal (all projects)
.autoc/settings.jsonProject (current working directory, overrides global)

Run /reload after changing paths or toolchain options. Setup steps live in each toolchain guide (e.g. EB tresos); this page is the field reference.

Models

AutoC currently supports WhyEngineer models only. Most users do not need to set defaultProvider / defaultModel manually; see Getting started and Using AutoC.

All settings

Models and thinking

KeyTypeDefaultDescription
defaultProviderstring-Default provider
defaultModelstring-Default model ID
defaultThinkingLevelstring-off, minimal, low, medium, high, xhigh
hideThinkingBlockbooleanfalseHide thinking blocks in output
thinkingBudgetsobject-Custom token budgets per thinking level

thinkingBudgets

json
{
  "thinkingBudgets": {
    "minimal": 1024,
    "low": 4096,
    "medium": 10240,
    "high": 32768
  }
}

UI and display

KeyTypeDefaultDescription
themestring"dark"Theme name (dark, light, or custom)
quietStartupbooleanfalseHide startup area
collapseChangelogbooleanfalseShow compact changelog after updates
enableInstallTelemetrybooleantrueAnonymous install/update telemetry (does not control update checks)
doubleEscapeActionstring"tree"Double Esc: tree, fork, or none
treeFilterModestring"default"Default /tree filter: default, no-tools, user-only, labeled-only, all
editorPaddingXnumber0Editor horizontal padding (0–3)
autocompleteMaxVisiblenumber5Autocomplete dropdown size (3–20)
showHardwareCursorbooleanfalseShow terminal hardware cursor

Telemetry and update checks

enableInstallTelemetry only controls anonymous install/update reports. Disabling it does not disable version update checks.

  • PI_SKIP_VERSION_CHECK=1 — skip version update check
  • --offline or PI_OFFLINE=1 — skip all startup network activity (updates, package checks, telemetry)

Warnings

KeyTypeDefaultDescription
warnings.anthropicExtraUsagebooleantrueWarn when Anthropic subscription may use paid extra usage

Compaction

KeyTypeDefaultDescription
compaction.enabledbooleantrueEnable automatic context compaction
compaction.reserveTokensnumber16384Tokens reserved for model reply
compaction.keepRecentTokensnumber20000Recent tokens kept out of summarization

Branch summary

KeyTypeDefaultDescription
branchSummary.reserveTokensnumber16384Tokens reserved for branch summary
branchSummary.skipPromptbooleanfalseSkip “summarize abandoned branch?” prompt in /tree (default: no summary)

Retry

KeyTypeDefaultDescription
retry.enabledbooleantrueAuto-retry transient errors
retry.maxRetriesnumber3Max retries
retry.baseDelayMsnumber2000Exponential backoff base (2s, 4s, 8s…)
retry.provider.timeoutMsnumberSDK defaultRequest timeout (ms)
retry.provider.maxRetriesnumberSDK defaultSDK-layer retries
retry.provider.maxRetryDelayMsnumber60000Cap on server-requested wait (ms); 0 = no cap

Message delivery

KeyTypeDefaultDescription
steeringModestring"one-at-a-time"Steering messages: all or one-at-a-time
followUpModestring"one-at-a-time"Follow-up messages: all or one-at-a-time
transportstring"sse"Transport preference: sse, websocket, auto

Terminal and images

KeyTypeDefaultDescription
terminal.showImagesbooleantrueShow images in terminal (if supported)
terminal.imageWidthCellsnumber60Inline image width (cells)
terminal.clearOnShrinkbooleanfalseClear blank lines when content shrinks (may flicker)
images.autoResizebooleantrueResize images to max 2000×2000 before send
images.blockImagesbooleanfalseBlock sending images to the model

Shell

KeyTypeDefaultDescription
shellPathstring-Custom shell path (e.g. Cygwin on Windows)
shellCommandPrefixstring-Prefix prepended to every bash command
npmCommandstring[]-argv for npm-related operations

Session directory

KeyTypeDefaultDescription
sessionDirstring-Session file directory; absolute, relative, or ~

Priority (high to low): --session-dirPI_CODING_AGENT_SESSION_DIRsessionDir in settings.json.

Model cycling (Ctrl+P)

KeyTypeDefaultDescription
enabledModelsstring[]-Model patterns for Ctrl+P (same as --models)

EB tresos

Quickstart: EB tresos. Install path / Project path in /settings map to the first two rows; includeModules and below are JSON-only.

KeyTypeDefaultDescription
eb.tresosPathstring-EB tresos install root (/settings → Install path)
eb.projectPathstring.projectProject path (/settings → Project path)
eb.includeModulesstring[]-Load only listed modules (case-insensitive)
eb.excludeModulesstring[]-Exclude after include filter
eb.name / eb.target / eb.derivate / eb.pnstring-Override display parsed from .project

Per-project module filter (.autoc/settings.json):

json
{
  "eb": {
    "includeModules": ["Mcu", "Port"]
  }
}

DaVinci Configurator

Quickstart: DaVinci Configurator. /settings path fields map to the first two rows; includeModules is JSON-only.

KeyTypeDefaultDescription
davinci.configuratorPathstring${SIP}/DaVinciConfiguratorInstall root (/settings → Configurator path)
davinci.projectPathstring.Project directory (/settings → Project path)
davinci.includeModulesstring[]-Load only listed ECUC modules
davinci.excludeModulesstring[]-Exclude after include
davinci.name / davinci.derivativestring-Override display parsed from .dpa

ETAS ISOLAR

Quickstart: ETAS ISOLAR. /settings covers Install path, Project path, Data ARXML paths, External modules; includeModules / autoAssignParams below.

KeyTypeDefaultDescription
etas.installPathstring-ISOLAR-AB install root; else ISOLAR_HOME
etas.projectPathstring.RTA-CAR project directory
etas.dataArxmlPathsstring[]-ECUC value ARXML; non-empty loads only listed files
etas.externalModulesstring[]-EB+ETAS mixed: ETAS-side module config names
etas.autoAssignParamsstring[]-Param SHORT-NAMEs auto-assigned by ISOLAR at generate
etas.includeModulesstring[]-Load only listed ECUC modules
etas.excludeModulesstring[]-Exclude after include
etas.namestring-Override display from .project

System Template

KeyTypeDefaultDescription
autosar.systemTemplatePathsstring[]-System-level ARXML paths or globs; or use /system import

See System Template (Beta).

License server

KeyTypeDefaultDescription
license.serverAddrstring-License server address (host:port, e.g. 192.168.1.10:9847)

Change in TUI via /settings → License server. Enterprise: Enterprise licensing.

Markdown

KeyTypeDefaultDescription
markdown.codeBlockIndentstring" "Code block indent

Extension resource paths

Where to load extensions, skills, prompt templates, and themes.

  • Relative paths in ~/.autoc/agent/settings.json resolve from ~/.autoc/agent
  • Relative paths in .autoc/settings.json resolve from .autoc
  • Absolute paths and ~ supported
KeyTypeDefaultDescription
packagesarray[]Load resources from npm/git packages
extensionsstring[][]Local extension paths or directories
skillsstring[][]Local skill paths or directories
promptsstring[][]Local prompt template paths or directories
themesstring[][]Local theme paths or directories
enableSkillCommandsbooleantrueRegister skills as /skill:name commands

Arrays support globs and exclusions: !pattern to exclude, +path / -path to force include/exclude exact paths.

Example

json
{
  "theme": "dark",
  "defaultThinkingLevel": "medium",
  "compaction": {
    "enabled": true,
    "reserveTokens": 16384,
    "keepRecentTokens": 20000
  },
  "retry": {
    "enabled": true,
    "maxRetries": 3
  },
  "eb": {
    "tresosPath": "C:/EB/tresos",
    "projectPath": ".project"
  },
  "davinci": {
    "configuratorPath": "${SIP}/DaVinciConfigurator",
    "projectPath": "."
  },
  "etas": {
    "installPath": "D:/ETAS/ISOLAR-AB",
    "projectPath": "."
  },
  "enabledModels": ["deepseek-*"]
}

Project override example

json
// ~/.autoc/agent/settings.json (global)
{
  "theme": "dark",
  "compaction": { "enabled": true, "reserveTokens": 16384 }
}

// .autoc/settings.json (project)
{
  "compaction": { "reserveTokens": 8192 }
}

// merged result
{
  "theme": "dark",
  "compaction": { "enabled": true, "reserveTokens": 8192 }
}

AUTOSAR BSW AI configuration assistant