Documentation Navigation
Configure

Configuration

One format, five layers, merged not replaced.

#Precedence

  1. Remote .well-known defaults ship with the app.
  2. Global config applies to every project you open.
  3. CODEY_CONFIG env var points at one override file.
  4. Project codey.json applies to the current repo.
  5. .codey/ folder holds local session and agent state.

#Paths

PlatformGlobal configState
macOS~/.config/codey/codey.json~/.local/share/codey
Linux~/.config/codey/codey.json~/.local/share/codey
Windows%APPDATA%/codey/codey.json%LOCALAPPDATA%/codey

#Project file

codey.json
{
  "model": "anthropic/claude-sonnet-4-5",
  "theme": "codey",
  "permissions": { "bash": "ask" }
}
  • One shape everywhere — global and project files share the same schema.
  • Deep-merged — project keys override global keys, nothing else is dropped.
  • Secrets stay out — use {env:NAME} or {file:~/.secrets/key} instead of raw values.

#See also