Providers
The default model is openai/gpt-4o-mini. Switch to any supported provider, a local Ollama instance, or a custom OpenAI-compatible endpoint by changing the spec.model block.
Standard Providers
| Provider | Extra to install | Example model |
|---|---|---|
openai | (included) | gpt-4o-mini |
anthropic | initrunner[anthropic] | claude-sonnet-4-20250514 |
google | initrunner[google] | gemini-2.0-flash |
groq | initrunner[groq] | llama-3.3-70b-versatile |
mistral | initrunner[mistral] | mistral-large-latest |
cohere | initrunner[cohere] | command-r-plus |
bedrock | initrunner[bedrock] | anthropic.claude-sonnet-4-20250514-v1:0 |
xai | initrunner[xai] | grok-3 |
Install all provider extras at once:
pip install initrunner[all-models]Example
spec:
model:
provider: anthropic
name: claude-sonnet-4-20250514Ollama (Local Models)
Set provider: ollama. No API key is needed — the runner defaults to http://localhost:11434/v1:
spec:
model:
provider: ollama
name: llama3.2Override the URL if Ollama is on a different host or port:
spec:
model:
provider: ollama
name: llama3.2
base_url: http://192.168.1.50:11434/v1Docker note: If the runner is inside Docker and Ollama is on the host, use
http://host.docker.internal:11434/v1as thebase_url.
OpenRouter / Custom Endpoints
Any OpenAI-compatible API works. Set provider: openai, point base_url at the endpoint, and specify which env var holds the API key:
spec:
model:
provider: openai
name: anthropic/claude-sonnet-4
base_url: https://openrouter.ai/api/v1
api_key_env: OPENROUTER_API_KEYThis also works for vLLM, LiteLLM, Azure OpenAI, or any other service that exposes the OpenAI chat completions format.
Model Config Reference
| Field | Type | Default | Description |
|---|---|---|---|
provider | str | "openai" | Provider name (openai, anthropic, google, groq, mistral, ollama) |
name | str | "gpt-4o-mini" | Model identifier |
base_url | str | null | null | Custom endpoint URL (triggers OpenAI-compatible mode) |
api_key_env | str | null | null | Environment variable containing the API key |
temperature | float | 0.1 | Sampling temperature (0.0-2.0) |
max_tokens | int | 4096 | Maximum tokens per response (1-128000) |
Full Role Example
apiVersion: initrunner/v1
kind: Agent
metadata:
name: support-agent
description: Answers questions from the support knowledge base
tags:
- support
- rag
spec:
role: |
You are a support agent. Use search_documents to find relevant
articles before answering. Always cite your sources.
model:
provider: openai
name: gpt-4o-mini
temperature: 0.1
max_tokens: 4096
ingest:
sources:
- "./knowledge-base/**/*.md"
- "./docs/**/*.pdf"
chunking:
strategy: fixed
chunk_size: 512
chunk_overlap: 50
tools:
- type: filesystem
root_path: ./src
read_only: true
- type: mcp
transport: stdio
command: npx
args: ["-y", "@anthropic/mcp-server-filesystem"]
triggers:
- type: file_watch
paths: ["./knowledge-base"]
extensions: [".html", ".md"]
prompt_template: "Knowledge base updated: {path}. Re-index."
- type: cron
schedule: "0 9 * * 1"
prompt: "Generate weekly support coverage report."
guardrails:
max_tokens_per_run: 50000
max_tool_calls: 20
timeout_seconds: 300
max_request_limit: 50