## 2.1.76 - Added MCP elicitation support — MCP servers can now request structured input mid-task via an interactive dialog (form fields or browser URL) - Added new `Elicitation` and `ElicitationResult` hooks to intercept and override responses before they're sent back - Added `-n` / `--name ` CLI flag to set a display name for the session at startup - Added `worktree.sparsePaths` setting for `claude --worktree` in large monorepos to check out only the directories you need via git sparse-checkout - Added `PostCompact` hook that fires after compaction completes - Added `/effort` slash command to set model effort level - Added session quality survey — enterprise admins can configure the sample rate via the `feedbackSurveyRate` setting - Fixed deferred tools (loaded via `ToolSearch`) losing their input schemas after conversation compaction, causing array and number parameters to be rejected with type errors - Fixed slash commands showing "Unknown skill" - Fixed plan mode asking for re-approval after the plan was already accepted - Fixed voice mode swallowing keypresses while a permission dialog or plan editor was open - Fixed `/voice` not working on Windows when installed via npm - Fixed spurious "Context limit reached" when invoking a skill with `model:` frontmatter on a 1M-context session - Fixed "adaptive thinking is not supported on this model" error when using non-standard model strings - Fixed `Bash(cmd:*)` permission rules not matching when a quoted argument contains `#` - Fixed "don't ask again" in the Bash permission dialog showing the full raw command for pipes and compound commands - Fixed auto-compaction retrying indefinitely after consecutive failures — a circuit breaker now stops after 3 attempts - Fixed MCP reconnect spinner persisting after successful reconnection - Fixed LSP plugins not registering servers when the LSP Manager initialized before marketplaces were reconciled - Fixed clipboard copying in tmux over SSH — now attempts both direct terminal write and tmux clipboard integration - Fixed `/export` showing only the filename instead of the full file path in the success message - Fixed transcript not auto-scrolling to new messages after selecting text - Fixed Escape key not working to exit the login method selection screen - Fixed several Remote Control issues: sessions silently dying when the server reaps an idle environment, rapid messages being queued one-at-a-time instead of batched, and stale work items causing redelivery after JWT refresh - Fixed bridge sessions failing to recover after extended WebSocket disconnects - Fixed slash commands not found when typing the exact name of a soft-hidden command - Improved `--worktree` startup performance by reading git refs directly and skipping redundant `git fetch` when the remote branch is already available locally - Improved background agent behavior — killing a background agent now preserves its partial results in the conversation context - Improved model fallback notifications — now always visible instead of hidden behind verbose mode, with human-friendly model names - Improved blockquote readability on dark terminal themes — text is now italic with a left bar instead of dim - Improved stale worktree cleanup — worktrees left behind after an interrupted parallel run are now automatically cleaned up - Improved Remote Control session titles — now derived from your first prompt instead of showing "Interactive session" - Improved `/voice` to show your dictation language on enable and warn when your `language` setting isn't supported for voice input - Updated `--plugin-dir` to only accept one path to support subcommands — use repeated `--plugin-dir` for multiple directories - [VSCode] Fixed gitignore patterns containing commas silently excluding entire filetypes from the @-mention file picker