Providers

Iron Rain supports 7 providers out of the box — both API-based and CLI-based. Use your existing subscriptions.

API vs CLI providers

API providers call model APIs directly via HTTP — you need an API key.
CLI providers spawn your existing CLI tools (Claude Code, Codex, Gemini CLI) — they use your existing subscription, no API key needed.

Multimodal support

API providers (Anthropic, OpenAI, Gemini) support image references via @./image.png or @image:path. Images are base64-encoded and sent as multimodal content. CLI and Ollama bridges receive the text-only portion.

Ollama (local, free)

Run open-source models locally. No API key, no cost, full privacy.

Setup

  1. Install Ollama: ollama.com
  2. Pull a model: ollama pull llama3.2
  3. Start the server: ollama serve

Config

{
  "slots": {
    "main": { "provider": "ollama", "model": "llama3.2" }
  },
  "providers": {
    "ollama": { "apiBase": "http://localhost:11434" }
  }
}

Popular models

ModelSizeBest for
llama3.23BFast general tasks
qwen2.5-coder:32b32BCode generation
deepseek-coder-v216BCode understanding
mistral7BBalanced performance

Anthropic (API)

Claude models via the Anthropic API.

Setup

  1. Get an API key at console.anthropic.com
  2. Set the environment variable: export ANTHROPIC_API_KEY=sk-ant-...

Config

{
  "slots": {
    "main": { "provider": "anthropic", "model": "claude-sonnet-4-20250514" }
  },
  "providers": {
    "anthropic": { "apiKey": "env:ANTHROPIC_API_KEY" }
  }
}

Available models

ModelBest for
claude-opus-4-6Complex reasoning, architecture
claude-sonnet-4-20250514Balanced speed/quality
claude-haiku-4-5-20251001Fast, cheap tasks

Claude Code (CLI)

Use your existing Claude Code subscription — no API key needed. Iron Rain spawns claude as a subprocess.

Setup

  1. Install Claude Code: npm install -g @anthropic-ai/claude-code
  2. Log in: claude login

Config

{
  "slots": {
    "main": { "provider": "claude-code", "model": "claude-sonnet-4-20250514" }
  }
}
Custom binary path

If claude is not in your PATH, set apiBase to the full path of the binary.

OpenAI (API)

GPT models via the OpenAI API.

Setup

  1. Get an API key at platform.openai.com
  2. Set the environment variable: export OPENAI_API_KEY=sk-...

Config

{
  "slots": {
    "execute": { "provider": "openai", "model": "gpt-4o" }
  },
  "providers": {
    "openai": { "apiKey": "env:OPENAI_API_KEY" }
  }
}

Available models

ModelBest for
gpt-4oBalanced, multimodal
o3Advanced reasoning
o4-miniFast reasoning

Codex (CLI)

Use your OpenAI Codex subscription via the CLI.

Setup

  1. Install Codex: npm install -g @openai/codex
  2. Log in via the Codex CLI

Config

{
  "slots": {
    "execute": { "provider": "codex", "model": "o4-mini" }
  }
}

Gemini (API)

Google Gemini models via the Generative Language API.

Setup

  1. Get an API key at AI Studio
  2. Set the environment variable: export GEMINI_API_KEY=...

Config

{
  "slots": {
    "explore": { "provider": "gemini", "model": "gemini-2.5-flash" }
  },
  "providers": {
    "gemini": { "apiKey": "env:GEMINI_API_KEY" }
  }
}

Available models

ModelBest for
gemini-2.5-proComplex tasks
gemini-2.5-flashFast, balanced
gemini-2.0-flashUltra-fast

Gemini CLI

Use the Google Gemini CLI with your existing subscription.

Setup

  1. Install the Gemini CLI
  2. Log in via the CLI

Config

{
  "slots": {
    "explore": { "provider": "gemini-cli", "model": "gemini-2.5-flash" }
  }
}

OpenAI-compatible (any provider)

Any provider with an OpenAI-compatible API works out of the box. This includes Groq, Together AI, Fireworks, Azure OpenAI, LM Studio, and many others.

Config

{
  "slots": {
    "explore": { "provider": "groq", "model": "llama-3.3-70b-versatile" }
  },
  "providers": {
    "groq": {
      "apiKey": "env:GROQ_API_KEY",
      "apiBase": "https://api.groq.com/openai/v1"
    }
  }
}
How it works

Any provider name that isn't one of the built-in names (ollama, anthropic, claude-code, codex, gemini, gemini-cli) automatically uses the OpenAI-compatible bridge. Just provide apiKey and apiBase.

Recommended slot assignments

Some suggested configurations depending on your setup:

All-local (free, private)

{
  "slots": {
    "main":    { "provider": "ollama", "model": "llama3.2" },
    "explore": { "provider": "ollama", "model": "llama3.2" },
    "execute": { "provider": "ollama", "model": "qwen2.5-coder:32b" }
  }
}

Subscription-based (no API keys)

{
  "slots": {
    "main":    { "provider": "claude-code", "model": "claude-sonnet-4-20250514" },
    "explore": { "provider": "gemini-cli", "model": "gemini-2.5-flash" },
    "execute": { "provider": "codex",      "model": "o4-mini" }
  }
}

Power user (mixed API + local)

{
  "slots": {
    "main":    { "provider": "anthropic", "model": "claude-opus-4-6" },
    "explore": { "provider": "ollama",    "model": "qwen2.5-coder:32b" },
    "execute": { "provider": "openai",    "model": "gpt-4o" }
  }
}