A lightweight CLI tool that helps developers choose the right AI model for their needs.
There are hundreds of AI models across OpenAI, Anthropic, Google, DeepSeek, Mistral, Meta, and dozens more providers. modelwho scores and ranks them based on what you actually care about (cost, capabilities, context window, reasoning, tool use) so you don't have to dig through docs and pricing pages.
go install github.com/nehasriva/modelwho@latestgit clone https://github.com/nehasriva/modelwho.git
cd modelwho
make build
./bin/modelwho# Interactive wizard — answers 2 questions, gives you recommendations
modelwho
# Search with filters
modelwho search --reasoning -n 5
# Use-case presets
modelwho search --preset coding
# Compare models side by side
modelwho compare claude-opus-4.5 gpt-5.2 deepseek-reasoner
# Detailed model info
modelwho info gpt-5-promodelwho fetches model data and lets you search, filter, score, and compare models.
The scoring engine is the core differentiator. Instead of just filtering, it uses weighted multi-dimensional scoring across 7 dimensions:
| Dimension | What it measures |
|---|---|
| Cost | Lower cost = higher score (inverse ranking) |
| Context Window | How well it meets your context needs |
| Reasoning | Chain-of-thought / extended thinking support |
| Tool Use | Function calling / tool calling support |
| Multimodal | Coverage of needed input modalities |
| Recency | How recently the model was updated |
| Output Capacity | Maximum output token limit |
Weights are tuned per use case (presets) or set by the interactive wizard.
Launches a guided experience. You pick between:
- Quick mode — 2 questions (use case + budget), uses smart defaults
- Full mode — 5 pages to customize capabilities, context, budget, and provider preferences
# Models with reasoning (Big 7 providers by default)
modelwho search --reasoning
# Budget-friendly models with tool calling
modelwho search --tool-call --max-cost 2
# Open-weight models that support images
modelwho search --open-weights --input-modality image
# Combine with presets — include all providers
modelwho search --preset agents --all -n 10
# Free-text search
modelwho search --query "claude" -n 5Available flags:
| Flag | Description |
|---|---|
-p, --provider |
Filter by provider(s) — openai, anthropic, google, etc. |
-f, --family |
Filter by model family |
--reasoning |
Require reasoning capability |
--tool-call |
Require tool calling |
--structured-output |
Require structured JSON output |
--attachment |
Require attachment support |
--open-weights |
Only open-weights / self-hostable models |
--max-cost |
Max input cost per million tokens |
--max-cost-output |
Max output cost per million tokens |
--min-context |
Minimum context window size |
--min-output |
Minimum output token limit |
--input-modality |
Required input types — text, image, audio, video, pdf |
--all |
Include all providers (default: Big 7 only) |
--preset |
Apply scoring preset — coding, agents, chatbot, etc. |
-n, --top |
Number of results (default 10) |
-q, --query |
Free-text search on model name/ID |
--json |
Output as JSON |
Compare 2–4 models with winner highlighting (star marks the best in each row):
$ modelwho compare claude-opus-4.5 gpt-5.2 deepseek-reasoner
Model Comparison
Claude Opus 4.5 GPT-5.2 DeepSeek Reasoner
anthropic openai deepseek
──────────────────────────── ──────────────────────────── ────────────────────────────
Cost In $5.00 Cost In $1.75 Cost In $0.28 ★
Cost Out $25.00 Cost Out $14.00 Cost Out $0.42 ★
Context 200K Context 400K ★ Context 128K
Output 64K Output 128K ★ Output 128K ★
──────────────────────────── ──────────────────────────── ────────────────────────────
Reasoning ✓ Reasoning ✓ Reasoning ✓
Tool Call ✓ Tool Call ✓ Tool Call ✓
Structured ✗ Structured ✓ Structured ✗
Attachments ✓ Attachments ✓ Attachments ✓
Open Wts ✗ Open Wts ✗ Open Wts ✗
──────────────────────────── ──────────────────────────── ────────────────────────────
Input: text, image, pdf Input: text, image Input: text
Updated: 2025-11-01 Updated: 2025-12-11 Updated: 2025-09-29
modelwho info gpt-5-pro
modelwho info claude-sonnet # partial match worksShows pricing (input/output/cache), token limits, capabilities, modalities, dates, and which hosting providers also offer the model.
modelwho list providers # all providers with model counts
modelwho list models # all models
modelwho list models -p google # just Google's modelsmodelwho update # force-refresh from models.devData is cached at ~/.modelwho/cache.json with a 24-hour TTL. If you're offline, stale cache is used automatically with a warning.
Presets are pre-tuned scoring profiles for common use cases:
| Preset | Best for | Key weights |
|---|---|---|
coding |
AI pair programming | High reasoning, tool use, context |
creative |
Writing & content | Balanced cost and quality |
data |
Data analysis / extraction | Reasoning, structured output, large context |
chatbot |
Customer support | Low cost, fast, conversational |
agents |
Autonomous tool use | Max tool calling + reasoning |
multimodal |
Image/audio/video | Multimodal input support |
budget |
Cheapest that works | Cost is everything |
modelwho search --preset coding -n 5Model data comes from models.dev, an open-source MIT-licensed database maintained by the community. It covers 1,500+ models across 70+ providers including all major ones (OpenAI, Anthropic, Google, DeepSeek, Meta, Mistral, Cohere, xAI) and hosting providers (Azure, AWS Bedrock, Together AI, etc.).
By default, only the Big 7 providers are shown (OpenAI, Anthropic, Google, DeepSeek, Meta, Mistral, xAI). Use --all to include all hosting providers.
modelwho/
├── main.go # Entry point
├── cmd/ # CLI commands (cobra)
│ ├── root.go # No args → wizard, with flags → search
│ ├── search.go # Flag-based filtering + scoring
│ ├── compare.go # Side-by-side comparison
│ ├── list.go # List providers/models
│ ├── info.go # Detailed model view
│ ├── preset.go # Use-case presets
│ ├── update.go # Force cache refresh
│ └── wizard.go # Interactive wizard orchestration
├── internal/
│ ├── api/ # HTTP client + file cache
│ ├── model/ # Domain types, catalog, filtering
│ ├── score/ # Recommendation engine + presets
│ ├── wizard/ # Interactive forms (charmbracelet/huh)
│ └── ui/ # Terminal rendering (lipgloss)
└── testdata/ # API response fixture
- cobra — CLI framework
- huh — Interactive forms
- lipgloss — Terminal styling and tables
- models.dev — AI model database
