Feature request: expose model and effort level to plugins/hooks API
Resolved 💬 5 comments Opened Mar 4, 2026 by skylar-dunnlubin Closed May 6, 2026
Summary
Allow plugins, hooks, or slash commands to programmatically set the model and effort level per-request, enabling intent-based routing workflows.
Use case
As a power user, I want to define intent-based presets (e.g., "quick task" → Haiku, "deep debugging" → Opus high, "architecture review" → Opus ultrathink) that automatically configure the right model and effort level — either via slash commands or a UserPromptSubmit hook.
Current behavior
- Model and effort can only be changed mid-session via the manual
/modelpicker - Plugins and hooks have no API to read or modify these parameters
- The Anthropic API fully supports per-request model/effort switching, but Claude Code doesn't expose this to its extension points
Proposed behavior
Expose model and/or effort level as configurable via one or more of:
- Hook context (e.g.,
UserPromptSubmitcan return{ model, effortLevel }) - A plugin API method
- Slash command metadata
This would enable building intent routers, task-specific presets, and adaptive workflows on top of Claude Code.
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗