Configuration

Configuration

Complete reference for AGTerm environment variables and configuration options.

Server Configuration

Core Settings

VariableDefaultDescription
AGTERM_PORT3000Server port
AGTERM_HOST0.0.0.0Server host/bind address
NODE_ENVdevelopmentEnvironment mode (production requires AGTERM_SECRET)
AGTERM_SECRETdev-secret-...JWT secret key (required in production)

CORS & Security

VariableDefaultDescription
AGTERM_CORS_ORIGINhttp://localhost:5173 (dev)Allowed CORS origin

Feature Flags

VariableDefaultDescription
AGTERM_ALLOW_SHELLtrueEnable/disable shell agent
AGTERM_VAULT_ENABLEDtrueEnable secure API key vault

Session Management

VariableDefaultDescription
AGTERM_MAX_SESSIONS10Maximum concurrent sessions (1-1000)
AGTERM_SESSION_TIMEOUT3600Session idle timeout in seconds

Agent Configuration

VariableDefaultDescription
AGTERM_MAX_ITERATIONS50Maximum iterations for autonomous loops
AGTERM_DEFAULT_PROVIDERanthropicDefault LLM provider
AGTERM_DEFAULT_MODELDefault model name

LLM Provider API Keys

Direct Providers

VariableProviderRequired For
ANTHROPIC_API_KEYAnthropicClaude Code, AGTerm
GOOGLE_API_KEYGoogleGemini CLI, AGTerm
OPENAI_API_KEYOpenAICodex CLI, AGTerm

Gateway Providers

VariableProviderNotes
TOGETHER_API_KEYTogether AIOpen-source models
OPENROUTER_API_KEYOpenRouterMulti-provider gateway
GROQ_API_KEYGroqUltra-fast inference
FIREWORKS_API_KEYFireworks AIFast open-source models
MISTRAL_API_KEYMistral AIEuropean AI provider

Local/Proxy Providers

VariableDefaultDescription
OLLAMA_BASE_URLhttp://localhost:11434Ollama server URL
LITELLM_BASE_URLhttp://localhost:4000LiteLLM proxy URL
LITELLM_API_KEYLiteLLM API key

Agent-Specific Model Overrides

VariableAgentDescription
CLAUDE_MODELClaudeModel for Claude Code
CLAUDE_MAX_TOKENSClaudeMax tokens per response
GEMINI_MODELGeminiModel for Gemini CLI
CODEX_MODELCodexModel for Codex CLI
OPENAI_MODELCodexAlternative for Codex

Directories

VariableDefaultDescription
AGTERM_DIR~/.agtermAGTerm configuration directory
AGTERM_WORKSPACE_ROOT~/.agterm/workspacesSession workspace directory

Rate Limiting

VariableDefaultDescription
AGTERM_RATE_LIMIT_WINDOW900000 (15 min)Rate limit window in milliseconds
AGTERM_RATE_LIMIT_MAX100Maximum requests per window

UI Configuration

VariableDefaultDescription
AGTERM_THEME_DEFAULTagterm-darkDefault terminal theme

JupyterHub Integration

VariableDescription
JUPYTERHUB_USERJupyterHub username (used for auth fallback)
NB_USERAlternative notebook user variable

Example Configuration

Development Setup

# Minimal development config
export ANTHROPIC_API_KEY="sk-ant-..."
export AGTERM_ALLOW_SHELL=true

Production Setup

# Required
export NODE_ENV=production
export AGTERM_SECRET="your-secure-random-secret-here"
export AGTERM_CORS_ORIGIN="https://your-domain.com"

# Providers (at least one)
export ANTHROPIC_API_KEY="sk-ant-..."
export GROQ_API_KEY="gsk_..."

# Security
export AGTERM_ALLOW_SHELL=false
export AGTERM_VAULT_ENABLED=true

# Limits
export AGTERM_MAX_SESSIONS=50
export AGTERM_SESSION_TIMEOUT=7200
export AGTERM_RATE_LIMIT_MAX=200

Multi-Provider Setup

# All major providers
export ANTHROPIC_API_KEY="sk-ant-..."
export GOOGLE_API_KEY="AIza..."
export OPENAI_API_KEY="sk-..."
export GROQ_API_KEY="gsk_..."
export TOGETHER_API_KEY="..."

# Local Ollama
export OLLAMA_BASE_URL="http://localhost:11434"

# Defaults
export AGTERM_DEFAULT_PROVIDER=anthropic
export AGTERM_DEFAULT_MODEL=claude-sonnet-4-20250514

Local-Only Setup

# Ollama only (no external API calls)
export OLLAMA_BASE_URL="http://localhost:11434"
export AGTERM_DEFAULT_PROVIDER=ollama
export AGTERM_DEFAULT_MODEL=llama3.3

# Disable features that need external APIs
export AGTERM_VAULT_ENABLED=false

Configuration Precedence

Settings are resolved in this order (highest priority first):

  1. Session creation parametersprovider and model in API request
  2. CLI commands/provider and /model commands
  3. Environment variablesAGTERM_DEFAULT_*
  4. Built-in defaults — Anthropic with Claude Sonnet

Validation

On startup, AGTerm validates:

  1. AGTERM_SECRET is set in production
  2. AGTERM_PORT is a valid port (1-65535)
  3. AGTERM_MAX_SESSIONS is in range (1-1000)

Invalid configuration causes startup failure in production mode.

Available Themes

Theme IDDescription
agterm-darkDefault dark theme
agterm-lightLight theme
draculaPopular dark theme
nordArctic color palette
tokyo-nightTokyo Night colors
catppuccin-mochaCatppuccin dark
monokai-proMonokai Pro colors
cyberpunk-neonVibrant neon colors
pergamon-darkCustom dark theme
pergamon-blueBlue accent theme
pergamon-lightLight theme variant

Query available themes:

curl http://localhost:3000/api/themes

Related Documentation