[FEATURE] Per-tool model configuration
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Feature Request: Per-tool model configuration
Summary
Allow users to manually specify which model should be used for each tool in Claude Code (e.g., Haiku for read_file, grep, list_directory; Sonnet/Opus for write_file, edit_file).
Motivation
Claude Code uses various tools under the hood (file reading, writing, shell commands, etc.). These tools have vastly different complexity requirements:
- Reading a file doesn't require advanced reasoning — any model can do it
- Editing code or writing new files benefits from the most capable model available
Currently, one model handles everything. Letting users tag each tool with a preferred model would give fine-grained control over the cost/performance tradeoff.
Proposed Solution
Proposed Solution
A configuration option where users explicitly map tools to models:
{
"toolModels": {
"read_file": "claude-haiku-4-5-20251001",
"list_directory": "claude-haiku-4-5-20251001",
"grep": "claude-haiku-4-5-20251001",
"bash": "claude-sonnet-4-5-20250929",
"write_file": "claude-opus-4-5-20251101",
"edit_file": "claude-opus-4-5-20251101",
"default": "claude-sonnet-4-5-20250929"
}
}
Users would have full control — no magic or automatic detection, just explicit mappings.
Alternative Solutions
Additional Context
This could start as a simple rule-based system (certain commands → Haiku) and evolve into smarter automatic detection over time.`,
Priority
Medium - Would be very helpful
Feature Category
CLI commands and flags
Use Case Example
Benefits
- Transparent: Users know exactly which model runs which tool
- Customizable: Different users can optimize differently based on their priorities (cost vs. speed vs. quality)
- Simple to implement: No complexity detection needed — just a lookup table
- Predictable: Behavior is deterministic based on config
Additional Context
Additional Context
This approach keeps the user in control rather than relying on heuristics. Power users who want to optimize their Claude Code usage would appreciate this level of granularity.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗