[FEATURE] Add chat:cycleEffort / chat:increaseEffort / chat:decreaseEffort actions for single-key effort switching
Preflight Checklist
- [x] I have searched existing requests — this has been filed three times before but all instances were auto-closed by the stale bot without maintainer review.
- [x] This is a single feature request.
Problem Statement
There is no global keybinding action to change reasoning effort level from the chat input. The existing modelPicker:increaseEffort / modelPicker:decreaseEffort actions only fire inside the ModelPicker context — i.e., only after the picker is already open via cmd+p. This forces a minimum 3-keystroke flow (cmd+p, →, enter) for what should be a single-key adjustment.
The /effort slash command works but requires typing and can't be bound to a hotkey.
Proposed Solution
Add three new actions in the Chat context that mirror the existing chat:cycleMode pattern (which already provides single-key mode cycling via shift+tab):
| Action | Behavior |
|---|---|
| chat:cycleEffort | Cycle through effort levels (low → medium → high → max → low) |
| chat:increaseEffort | Bump effort up one level (clamped at max) |
| chat:decreaseEffort | Bump effort down one level (clamped at low) |
Users could then bind whatever keys fit their terminal:
{
"context": "Chat",
"bindings": {
"ctrl+shift+e": "chat:cycleEffort"
}
}
This is a small surface-area addition — the underlying state mutation already exists (the model picker uses it, and /effort invokes it). Just expose it as Chat-context actions.
Alternative Solutions
/effortslash command — works, but not bindable to a hotkey.cmd+p→ arrow → enter — three keystrokes, breaks flow for power users adjusting mid-session.- Terminal-side macro (e.g., Warp custom shortcut that types the keystroke sequence) — fragile; depends on terminal product and doesn't survive switching terminals.
Prior Art (please don't auto-close as duplicate of locked issues)
This has been requested multiple times. All prior issues were auto-closed by the stale bot without any maintainer response, and are now locked so further signal can't accumulate on them:
- #31519 — canonical request, auto-closed as
not_planneddue to inactivity, then locked. 4 👍, no maintainer reply. - #41160 — duplicate-closed into #31519
- #49257 — duplicate-closed into #41160
- #32735 — duplicate-closed; specifically asks for
Option+1/2/3direct-set bindings - Related: #38966 (single-key model cycling), #50323 (mode-aware effort)
Filing fresh because the locked issues can no longer collect 👍s or comments. Recurring asks from independent users across ~3 months is signal.
Priority
Medium — productivity papercut for power users who adjust effort frequently. Comparable to chat:cycleMode which already has the exact pattern.
Feature Category
Interactive mode (TUI) — keybindings
Use Case
Power users (especially those running Opus 4.7 at varying effort tiers) frequently dial effort up for hard architectural questions and back down for quick edits. The current 3-keystroke picker flow is slow enough that many users either (a) stay at one effort all session, or (b) use /effort which breaks the input flow. A single-key cycle would make effort switching as fast as mode switching is today via shift+tab.
Showing cached comments. Read the full discussion on GitHub ↗
5 Comments
Found 1 possible duplicate issue:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
👎 to the duplicate suggestion — #50843 is not a separate prior issue; it's itself part of the chain this filing already cites. Per its own comment thread, #50843 was auto-flagged as a duplicate of #49257 / #31519 / #41160 (the exact issues listed in this filing's "Prior Art" section) and locked without any maintainer response.
So the count is now five independent users filing the same request over ~3 months, with the stale bot auto-closing each one and locking the thread before any human review:
not_plannedvia inactivity)completed— but per its own thread it was just another duplicate of the same chain)This pattern itself is the signal: when the same small UX gap keeps getting filed independently and the only response is auto-closure, the triage process is filtering out a real recurring ask. Please leave this one open long enough for a maintainer to look.
Posting solely to keep this open — this comment exists only to prevent the stale bot from auto-closing the thread, since #61904 is the last remaining issue in this chain that can still accumulate 👍s and comments.
For context, I filed the canonical version of this request back in March (#31519). It was auto-closed as
not_plannedfor inactivity and then locked, despite multiple +1s and no maintainer reply. The same thing happened to every subsequent instance (#41160, #49257, #50843, #32735) — five independent users, one real ask, now scattered across five locked duplicates.@anthropics team: please consider disabling (or substantially loosening) the stale-bot auto-close for
enhancementissues. Auto-closing valid feature requests before any human triage doesn't shrink the backlog — it fragments a single recurring request into a pile of locked duplicates and makes the issue board considerably messier to search and reason about. "Stale" is not the same as "resolved" or "unwanted," and locking the threads means the signal can't even consolidate in one place.I am slightly disturbed this is still not added...
Not stale