Summary
Allow users to configure the default LLM provider and model via environment variables.
Depends on
cognitive-forge #16 — pluggable LLM provider architecture must be implemented first.
Current Behavior
All commands default to OpenRouter + openai/gpt-4o hardcoded in source.
Desired Behavior
# Use Claude directly (no OpenRouter needed)
CFORGE_PROVIDER=claude
ANTHROPIC_API_KEY=sk-ant-...
# Use Ollama locally (zero cost, data stays local)
CFORGE_PROVIDER=ollama
CFORGE_DEFAULT_MODEL=llama3
# Use OpenRouter (current default, unchanged)
CFORGE_PROVIDER=openrouter
OPENROUTER_API_KEY=sk-or-...
CFORGE_DEFAULT_MODEL=openai/gpt-4o
Implementation
After cognitive-forge #16 lands:
CFORGE_PROVIDER env var selects the provider (claude/ollama/openrouter/custom)
CFORGE_DEFAULT_MODEL selects the model within that provider
- Provider factory in infrastructure layer resolves the correct LLMClient
/model <name> in chat still overrides per-session
.env.example updated with all provider options
- README documents provider configuration
Acceptance Criteria
Summary
Allow users to configure the default LLM provider and model via environment variables.
Depends on
cognitive-forge #16 — pluggable LLM provider architecture must be implemented first.
Current Behavior
All commands default to OpenRouter +
openai/gpt-4ohardcoded in source.Desired Behavior
Implementation
After cognitive-forge #16 lands:
CFORGE_PROVIDERenv var selects the provider (claude/ollama/openrouter/custom)CFORGE_DEFAULT_MODELselects the model within that provider/model <name>in chat still overrides per-session.env.exampleupdated with all provider optionsAcceptance Criteria