Configuration

Flux merges defaults, ~/.flux/config.json, and ./.flux/config.json in that order. Environment variables then override provider credentials and Ollama address settings; CLI flags override the active startup values.

{
  "provider": "openai",
  "model": "gpt-5.4-mini",
  "effort": "medium",
  "maxTokens": 16384,
  "maxIterations": 800,
  "errorRetries": 5,
  "permissionMode": "ask",
  "allowedTools": ["read_file", "run_command:npm run *"],
  "systemPrompt": "Follow the conventions documented in this repository.",
  "hooks": {
    "afterEdit": "npm run typecheck",
    "afterShell": "git status --short",
    "preCommit": "npm test"
  },
  "theme": {
    "userLabel": "blue",
    "agentLabel": "magenta",
    "promptColor": "green"
  },
  "mcpServers": {}
}

#Fields

Field Values or behavior
provider anthropic, openai, gemini, or ollama
model Provider-specific model identifier
effort low, medium, high, or max; invalid values fall back to medium
maxTokens Maximum output tokens per model response
maxIterations Maximum agent/tool iterations; must be a positive integer
errorRetries Transient provider retries; must be zero or greater
permissionMode ask, auto-accept, or deny-writes
allowedTools Tool names or scoped patterns that can run without confirmation
systemPrompt Additional project instructions
hooks Optional commands for afterEdit, afterShell, and preCommit
theme Partial terminal color overrides
mcpServers Named stdio MCP server definitions

Project allowedTools entries are added to global entries rather than replacing them. The generated top-level template object in project configuration is documentation metadata and is removed before runtime merging.