8gent Code.Docs
Reference

Files and environment variables

Where 8gent keeps its settings, and every environment variable it reads, traced to the code on main.

Files

Everything lives in ~/.8gent/ unless noted. EIGHT_DATA_DIR moves it.

PathWhat is in itHow to change it
~/.8gent/providers.jsonThe active provider and model, and provider entries/provider, /model, --provider, --model
~/.8gent/settings.jsonVoice, performance, per-tab models, provider URLs, theme options, agent names/settings, or edit it
~/.8gent/keys.envAPI keys for hosted providers, KEY=value lines. Shell variables win over it8gent keys
~/.8gent/user.jsonYour profile from first run/onboarding, /preferences, 8gent preferences set
~/.8gent/permissions.jsonAllow and deny patternsEdit it. See Allow and deny rules
~/.8gent/hooks.jsonHooksEdit it. See Hooks
~/.8gent/mcp.jsonMCP serversEdit it. See MCP
~/.8gent/failover.jsonModel failover chainsEdit it
~/.8gent/config.jsonYour /theme choice/theme
<project>/.8gent/config.jsonPer-project settings, including vision8gent init, /vision
~/.8gent/sessions/Saved conversations/history, 8gent session
~/.8gent/memory/Local memory (SQLite)8gent memory
~/.8gent/runs/<runId>/ledger.jsonlThe record of each /goal runRead only
~/.8gent/models/decide/A System One judge GGUF, for use without OllamaPut the file there
~/.8gent/sounds/launch.mp3The launch tuneReplace the file

settings.json

Defaults, abridged:

{
  "voice": {
    "outputEnabled": true,
    "ttsVoice": "Ava",
    "perAgent": { "orchestrator": "Daniel", "engineer": "Karen", "qa": "Moira" }
  },
  "performance": { "mode": "auto", "introBanner": "auto" },
  "models": {
    "tabs": {
      "orchestrator": { "provider": "ollama", "model": "qwen3.6:27b" },
      "engineer": { "provider": "lmstudio", "model": "google/gemma-4-26b-a4b" },
      "qa": { "provider": "apfel", "model": "apple-foundationmodel" }
    }
  },
  "agents": { "names": { "orchestrator": "Orchestrator", "engineer": "Engineer", "qa": "QA" } }
}

Environment variables

Engines and models

VariableWhat it doesDefault
OLLAMA_HOST, OLLAMA_BASE_URLWhere Ollama is. A bare host gets port 11434http://localhost:11434
EIGHT_LOCAL_SERVERllama-server to use llama-server and never contact Ollamaollama
LLAMA_SERVER_URLWhere llama-server ishttp://127.0.0.1:8080
LMSTUDIO_BASE_URLWhere LM Studio is, for requestshttp://localhost:1234/v1
LM_STUDIO_HOSTWhere the first-run check looks for LM Studioport 1234
APFEL_BASE_URLWhere the Apple Foundation bridge ishttp://127.0.0.1:11435/v1
OPENROUTER_API_KEYEnables OpenRouterunset
EIGHT_TEXT_TOOLS1 forces the text tool protocol for any provider, 0 forces native tool callstext protocol for Ollama, LM Studio, llama-server

System One

VariableWhat it doesDefault
EIGHT_SYSTEM_ONE0 off outside Guarded, 1 strict everywhereon
EIGHT_S1_SHARED_JUDGE0 gives each process its own judgeon
EIGHT_DECIDE_OLLAMA_HOSTServer that holds the shared judgehttp://localhost:11434
EIGHT_S1_ALLOWLIST0 sends read-only commands to the judge tooon
EIGHT_DECIDE_GGUFA judge GGUF file to load in-processunset
EIGHT_DECIDE_MODELA specific judge model, used only if installedunset

Display

VariableWhat it does
NO_COLORNo colour. See Accessibility and voice
FORCE_COLOR0 colour off, 1 to 3 on, over NO_COLOR
8GENT_NO_INTRO1: no splash
8GENT_REDUCED_MOTION1: no motion anywhere
8GENT_LITE1: lite performance mode, no splash. Same as performance.mode: "lite"

Data

VariableWhat it doesDefault
EIGHT_DATA_DIRWhere 8gent keeps its data~/.8gent