Summary
Should terminal-ai auto-detect the provider when common environment variables like OPENAI_API_KEY or ANTHROPIC_API_KEY are set, without requiring explicit configuration?
Research: How Other AI CLI Tools Handle This
| Tool |
Env Vars |
Default Model |
Auto-Detect? |
| llm (Simon Willison) |
Custom key storage |
gpt-4o-mini |
No - plugin-based |
| shell-gpt |
OPENAI_API_KEY |
gpt-4o |
OpenAI-first |
| mods (Charm) |
Standard vars |
gpt-4o |
Config-first, then env |
| aichat |
Standard vars |
openai:gpt-4o |
Yes - prefix-based |
Proposed Implementation
Environment variables to auto-detect:
| Variable |
Provider |
Default Model |
OPENAI_API_KEY |
OpenAI |
gpt-4o |
ANTHROPIC_API_KEY |
Anthropic |
claude-sonnet-4-20250514 |
Priority order:
- Explicit config (
~/.ai/config.yaml)
AI_* environment variables
- Common provider env vars (
OPENAI_API_KEY, etc.)
Task List
Open Questions
References
Summary
Should terminal-ai auto-detect the provider when common environment variables like
OPENAI_API_KEYorANTHROPIC_API_KEYare set, without requiring explicit configuration?Research: How Other AI CLI Tools Handle This
gpt-4o-miniOPENAI_API_KEYgpt-4ogpt-4oopenai:gpt-4oProposed Implementation
Environment variables to auto-detect:
OPENAI_API_KEYgpt-4oANTHROPIC_API_KEYclaude-sonnet-4-20250514Priority order:
~/.ai/config.yaml)AI_*environment variablesOPENAI_API_KEY, etc.)Task List
.envfiles from current directoryOPENAI_API_KEYand use OpenAI withgpt-4odefaultANTHROPIC_API_KEYand use Anthropic withclaude-sonnet-4-20250514default--no-dotenvflag to disable.envloading--no-env-detectflag to disable auto-detection of common env varsAI_NO_DOTENV=1env var to disable.envloadingAI_NO_ENV_DETECT=1env var to disable auto-detectionOpen Questions
References