Update Jun 4, 2026 tracked by Updatify
2.1.118
-
Added vim visual mode (
v) and visual-line mode (V) with selection, operators, and visual feedback -
Merged
/costand/statsinto/usage— both remain as typing shortcuts that open the relevant tab -
Create and switch between named custom themes from
/theme, or hand-edit JSON files in~/.claude/themes/; plugins can also ship themes via athemes/directory -
Hooks can now invoke MCP tools directly via
type: "mcp_tool" -
Added
DISABLE_UPDATESenv var to completely block all update paths including manualclaude update— stricter thanDISABLE_AUTOUPDATER -
WSL on Windows can now inherit Windows-side managed settings via the
wslInheritsWindowsSettingspolicy key -
Auto mode: include
"$defaults"inautoMode.allow,autoMode.soft_deny, orautoMode.environmentto add custom rules alongside the built-in list instead of replacing it - Added a “Don’t ask again” option to the auto mode opt-in prompt
-
Added
claude plugin tagto create release git tags for plugins with version validation -
--continue/--resumenow find sessions that added the current directory via/add-dir -
/colornow syncs the session accent color to claude.ai/code when Remote Control is connected -
The
/modelpicker now honorsANTHROPIC_DEFAULT_*_MODEL_NAME/_DESCRIPTIONoverrides when using a customANTHROPIC_BASE_URLgateway -
When auto-update skips a plugin due to another plugin’s version constraint, the skip now appears in
/doctorand the/pluginErrors tab -
Fixed
/mcpmenu hiding OAuth Authenticate/Re-authenticate actions for servers configured withheadersHelper, and HTTP/SSE MCP servers with custom headers being stuck in “needs authentication” after a transient 401 -
Fixed MCP servers whose OAuth token response omits
expires_inrequiring re-authentication every hour -
Fixed MCP step-up authorization silently refreshing instead of prompting for re-consent when the server’s
insufficient_scope403 names a scope the current token already has - Fixed an unhandled promise rejection when an MCP server’s OAuth flow times out or is cancelled
- Fixed MCP OAuth refresh proceeding without its cross-process lock under contention
- Fixed macOS keychain race where a concurrent MCP token refresh could overwrite a freshly-refreshed OAuth token, causing unexpected “Please run /login” prompts
- Fixed OAuth token refresh failing when the server revokes a token before its local expiry time
-
Fixed credential save crash on Linux/Windows corrupting
~/.claude/.credentials.json -
Fixed
/loginhaving no effect in a session launched withCLAUDE_CODE_OAUTH_TOKEN— the env token is now cleared so disk credentials take effect -
Fixed unreadable text in the “new messages” scroll pill and
/pluginbadges -
Fixed plan acceptance dialog offering “auto mode” instead of “bypass permissions” when running with
--dangerously-skip-permissions -
Fixed agent-type hooks failing with “Messages are required for agent hooks” when configured for events other than
StoporSubagentStop -
Fixed
prompthooks re-firing on tool calls made by an agent-hook verifier subagent -
Fixed
/forkwriting the full parent conversation to disk per fork — now writes a pointer and hydrates on read - Fixed Alt+K / Alt+X / Alt+^ / Alt+_ freezing keyboard input
-
Fixed connecting to a remote session overwriting your local
modelsetting in~/.claude/settings.json -
Fixed typeahead showing “No commands match” error when pasting file paths that start with
/ -
Fixed
plugin installon an already-installed plugin not re-resolving a dependency installed at the wrong version - Fixed unhandled errors from file watcher on invalid paths or fd exhaustion
- Fixed Remote Control sessions getting archived on transient CCR initialization blips during JWT refresh
-
Fixed subagents resumed via
SendMessagenot restoring the explicitcwdthey were spawned with