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 /model picker
  • 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., UserPromptSubmit can 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.

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗