Skip to main content

AI Provider Configuration

OpenQA supports multiple LLM providers.

Anthropic (Default)

Claude is the default provider with two authentication methods:
claude login
Uses Claude Code authentication. No API key needed.

OpenAI

Use GPT models via LangChain agent:
# .env
AGENT_TYPE=langchain
DEFAULT_PROVIDER=openai
OPENAI_API_KEY=sk-...
Or pass options directly:
await runAgent("Click submit", context, {
  agentType: "langchain",
  provider: "openai",
  model: "gpt-4o"  // optional
});

Google (Gemini)

Use Gemini models via LangChain agent:
# .env
AGENT_TYPE=langchain
DEFAULT_PROVIDER=google
GOOGLE_API_KEY=...
Or pass options directly:
await runAgent("Click submit", context, {
  agentType: "langchain",
  provider: "google",
  model: "gemini-1.5-pro"  // optional
});

Environment Variables

VariableDescription
AGENT_TYPE'claude' (default) or 'langchain'
DEFAULT_PROVIDER'anthropic', 'openai', or 'google'
ANTHROPIC_API_KEYAnthropic API key
OPENAI_API_KEYOpenAI API key
GOOGLE_API_KEYGoogle AI API key

Priority Order

Configuration is resolved in this order:
  1. Options passed to runAgent()
  2. Environment variables
  3. Defaults (Claude agent with Anthropic)
// This overrides all env vars
await runAgent("Click", context, {
  agentType: "langchain",
  provider: "openai"
});