Skip to content

Configuration

Michael Elliott edited this page Mar 14, 2026 · 2 revisions

Configuration

Config file: ~/.titan/titan.json

Minimal Config

{
  "agent": { "model": "anthropic/claude-sonnet-4-20250514" },
  "gateway": { "port": 48420, "auth": { "mode": "password", "password": "your-password" } }
}

Environment Variables

Variable Purpose
ANTHROPIC_API_KEY Claude API key
OPENAI_API_KEY GPT API key
GOOGLE_API_KEY Gemini API key
OLLAMA_BASE_URL Ollama server URL
GROQ_API_KEY Groq API key
MISTRAL_API_KEY Mistral API key
OPENROUTER_API_KEY OpenRouter API key
FIREWORKS_API_KEY Fireworks AI key
XAI_API_KEY xAI (Grok) key
TOGETHER_API_KEY Together AI key
DEEPSEEK_API_KEY DeepSeek key
CEREBRAS_API_KEY Cerebras key
COHERE_API_KEY Cohere key
PERPLEXITY_API_KEY Perplexity key
GITHUB_TOKEN GitHub PAT
GMAIL_ADDRESS / GMAIL_APP_PASSWORD Email
HOME_ASSISTANT_URL / HOME_ASSISTANT_TOKEN Smart home
GOOGLE_CALENDAR_API_KEY Calendar
DISCORD_TOKEN / TELEGRAM_TOKEN / SLACK_TOKEN Channels
LIVEKIT_URL / LIVEKIT_API_KEY / LIVEKIT_API_SECRET LiveKit voice
CAPSOLVER_API_KEY CapSolver CAPTCHA solving
X_API_KEY / X_API_SECRET / X_ACCESS_TOKEN / X_ACCESS_SECRET X/Twitter

Model Aliases

{ "agent": { "modelAliases": { "fast": "openai/gpt-4o-mini", "smart": "anthropic/claude-sonnet-4-20250514" } } }

Use: /model fast or titan model --alias fast openai/gpt-4o-mini

Auth Profile Rotation

{ "providers": { "anthropic": { "apiKey": "primary", "profiles": [{ "apiKey": "backup1" }] } } }

Auto-rotates on errors with 60s cooldown.

Model Allowlisting

{ "agent": { "allowedModels": ["anthropic/*", "openai/gpt-4o"] } }

Fallback Model Chains

{
  "agent": {
    "fallbackChain": [
      "anthropic/claude-sonnet-4-20250514",
      "openai/gpt-4o",
      "ollama/devstral-small-2"
    ],
    "fallbackSelfHeal": true
  }
}

Automatic failover through the chain on provider errors. Self-heal retries the primary after recovery.

Autopilot Configuration

{
  "autopilot": {
    "enabled": true,
    "mode": "goals",
    "schedule": "*/30 * * * *",
    "maxActionsPerRun": 5
  }
}

Modes: goals (work toward defined goals), checklist (execute task list), self-improve (evaluate and improve own performance).

Autonomy Configuration

{
  "agent": {
    "autonomy": {
      "mode": "supervised",
      "selfInitiative": true,
      "goalManagement": true,
      "maxConcurrentGoals": 5
    }
  }
}

Training Configuration

{
  "training": {
    "enabled": true,
    "baseModel": "qwen3.5:35b",
    "method": "lora",
    "backend": "unsloth",
    "exportFormat": "gguf",
    "ollamaAutoImport": true,
    "dualPipeline": true
  }
}

Dual pipelines: Tool Router (classify tool calls) and Main Agent (general fine-tuning).

Self-Improvement Configuration

{
  "selfImprovement": {
    "enabled": true,
    "evalSchedule": "0 3 * * *",
    "judge": "anthropic/claude-sonnet-4-20250514",
    "autoresearch": true
  }
}

Browser & CAPTCHA Configuration

{
  "browsing": {
    "poolSize": 3,
    "headless": true,
    "timeout": 30000
  },
  "captcha": {
    "provider": "capsolver",
    "apiKey": "YOUR_CAPSOLVER_KEY",
    "autoSolve": true
  }
}

Prometheus Metrics

{
  "metrics": {
    "enabled": true,
    "port": 9090,
    "path": "/metrics"
  }
}

Exposes request counts, latencies, token usage, provider health, and skill execution metrics.

ContextEngine Plugins

{
  "contextEngine": {
    "plugins": ["memory-graph", "rag-search", "briefing"],
    "maxContextTokens": 8000
  }
}

Plugins inject relevant context before each LLM call.

Clone this wiki locally