Claude Code: What's New in January 2026
A summary of all updates, new features, and bug fixes released for Claude Code during January 2026.
New Features in January 2026
- Added arrow key history navigation in vim normal mode when cursor cannot move further(v2.1.20)
- Added external editor shortcut (Ctrl+G) to the help menu for better discoverability(v2.1.20)
- Added PR review status indicator to the prompt footer, showing the current branch's PR state (approved, changes requested, pending, or draft) as a colored dot with a clickable link(v2.1.20)
- Added support for loading `CLAUDE.md` files from additional directories specified via --add-dir flag(v2.1.20)
- Added ability to delete tasks via the `TaskUpdate` tool(v2.1.20)
- Changed the `/commit-push-pr` skill to automatically post PR URLs to Slack channels when configured via MCP tools(v2.1.20)
- Changed the `/copy` command to be available to all users(v2.1.20)
- Changed background agents to prompt for tool permissions before launching(v2.1.20)
- Changed permission rules like `Bash(*)` to be accepted and treated as equivalent to `Bash`, simplifying permission configuration(v2.1.20)
- Added environment variable `CLAUDE_CODE_ENABLE_TASKS` to temporarily disable the new task system.(v2.1.19)
- Introduced shorthand accessors like `$0`, `$1`, etc., for accessing individual arguments within custom commands.(v2.1.19)
- [SDK] Enabled replay of `queued_command` attachment messages as `SDKUserMessageReplay` events when `replayUserMessages` is active.(v2.1.19)
- [VSCode] Enabled session forking and rewind functionality for all users.(v2.1.19)
- Added new task management system with dependency tracking capabilities.(v2.1.16)
- Introduced native plugin management support within the VSCode extension.(v2.1.16)
- Enabled OAuth users in VSCode to browse and resume remote Claude sessions directly from the Sessions dialog.(v2.1.16)
- Added deprecation notification for npm installations, directing users to use `claude install` or consult the getting started documentation.(v2.1.15)
- Added history-based autocomplete in bash mode, allowing users to type a partial command and press Tab to complete from their bash command history(v2.1.14)
- Added search functionality to the installed plugins list, enabling filtering by name or description(v2.1.14)
- Added support for pinning plugins to specific git commit SHAs, ensuring marketplace entries install exact versions(v2.1.14)
- Added /usage command in VSCode to display current plan usage(v2.1.14)
- Added `auto:N` syntax for configuring the MCP tool search auto-enable threshold based on context window percentage (0-100).(v2.1.9)
- Added `plansDirectory` setting to customize the storage location for plan files.(v2.1.9)
- Enabled external editor support (Ctrl+G) within the AskUserQuestion "Other" input field.(v2.1.9)
- Added session URL attribution to commits and PRs generated from web sessions.(v2.1.9)
- Added support for `PreToolUse` hooks to return `additionalContext` to the model.(v2.1.9)
- Added `${CLAUDE_SESSION_ID}` string substitution for skills to access the current session ID.(v2.1.9)
- Added `showTurnDuration` setting to allow users to hide turn duration messages in the output.(v2.1.7)
- Enabled MCP tool search auto mode by default, deferring tool descriptions that exceed 10% of the context window to reduce upfront context usage.(v2.1.7)
- Added search functionality to the /config command for quickly filtering settings.(v2.1.6)
- Added Updates section to /doctor showing auto-update channel and available npm versions (stable/latest).(v2.1.6)
- Added date range filtering to the /stats command, allowing cycling between Last 7 days, Last 30 days, and All time.(v2.1.6)
- Added automatic discovery of skills from nested .claude/skills directories when working with files in subdirectories.(v2.1.6)
- Added context_window.used_percentage and context_window.remaining_percentage fields to the status line input for easier context window display.(v2.1.6)
- Added an error display when the editor fails during Ctrl+G.(v2.1.6)
- Added CLAUDE_CODE_TMPDIR environment variable to allow overriding the default temporary directory used for internal files.(v2.1.5)
- Added CLAUDE_CODE_DISABLE_BACKGROUND_TASKS environment variable to allow users to disable all background task functionality, including auto-backgrounding and the Ctrl+B shortcut.(v2.1.4)
- Added a release channel toggle ('stable' or 'latest') accessible via the `/config` command.(v2.1.3)
- [VSCode] Added a clickable destination selector for permission requests, allowing users to choose where settings are saved (this project, all projects, shared with team, or session only).(v2.1.3)
- Added source path metadata to images dragged onto the terminal to help Claude understand image origins(v2.1.2)
- Added clickable hyperlinks for file paths in tool output in terminals that support OSC 8 (like iTerm)(v2.1.2)
- Added support for Windows Package Manager (winget) installations with automatic detection and update instructions(v2.1.2)
- Added Shift+Tab keyboard shortcut in plan mode to quickly select "auto-accept edits" option(v2.1.2)
- Added FORCE_AUTOUPDATE_PLUGINS environment variable to allow plugin autoupdate even when the main auto-updater is disabled(v2.1.2)
- Added agent_type to SessionStart hook input, populated if --agent is specified(v2.1.2)
Bug Fixes in January 2026
- Fixed startup performance issues when resuming sessions that have saved_hook_context(v2.1.29)
- Fixed session compaction issues that could cause resume to load full history instead of the compact summary(v2.1.20)
- Fixed agents sometimes ignoring user messages sent while actively working on a task(v2.1.20)
- Fixed wide character (emoji, CJK) rendering artifacts where trailing columns were not cleared when replaced by narrower characters(v2.1.20)
- Fixed JSON parsing errors when MCP tool responses contain special Unicode characters(v2.1.20)
- Fixed up/down arrow keys in multi-line and wrapped text input to prioritize cursor movement over history navigation(v2.1.20)
- Fixed draft prompt being lost when pressing UP arrow to navigate command history(v2.1.20)
- Fixed ghost text flickering when typing slash commands mid-input(v2.1.20)
- Fixed marketplace source removal not properly deleting settings(v2.1.20)
- Fixed duplicate output in some commands like `/context`(v2.1.20)
- Fixed task list sometimes showing outside the main conversation view(v2.1.20)
- Fixed syntax highlighting for diffs occurring within multiline constructs like Python docstrings(v2.1.20)
- Fixed crashes when cancelling tool use(v2.1.20)
- Fixed crashes occurring on processors that lack AVX instruction support.(v2.1.19)
- Fixed dangling Claude Code processes when the terminal is closed by implementing SIGKILL as a fallback upon catching EIO errors from `process.exit()`. (v2.1.19)
- Fixed `/rename` and `/tag` commands failing to update the correct session when resuming from a different directory (e.g., git worktrees).(v2.1.19)
- Fixed session resuming by custom title failing when executed from a different directory.(v2.1.19)
- Fixed pasted text content being lost when using prompt stash (Ctrl+S) and subsequent restore.(v2.1.19)
- Fixed the agent list incorrectly displaying "Sonnet (default)" instead of "Inherit (default)" for agents without an explicit model setting.(v2.1.19)
- Fixed backgrounded hook commands not returning early, which previously caused the session to wait unnecessarily.(v2.1.19)
- Fixed file write preview incorrectly omitting empty lines.(v2.1.19)
- Fixed crashes occurring on processors that lack AVX instruction support.(v2.1.17)
- Fixed out-of-memory crashes occurring when resuming sessions that utilized heavy subagent usage.(v2.1.16)
- Resolved an issue where the "context remaining" warning failed to hide after executing the `/compact` command.(v2.1.16)
- Fixed session titles displayed on the resume screen so they now correctly respect the user's configured language setting.(v2.1.16)
- [IDE] Fixed a race condition on Windows where the Claude Code sidebar view container failed to appear upon application startup.(v2.1.16)
- Fixed the "Context left until auto-compact" warning that failed to disappear after executing the `/compact` command.(v2.1.15)
- Fixed the MCP stdio server timeout issue that prevented the child process from being killed, which previously caused UI freezes.(v2.1.15)
- Fixed a regression where the context window blocking limit was calculated too aggressively, allowing usage up to ~98% instead of ~65%(v2.1.14)
- Fixed memory issues that could cause crashes when running parallel subagents(v2.1.14)
- Fixed memory leak in long-running sessions where stream resources were not cleaned up after shell commands completed(v2.1.14)
- Fixed the @ symbol incorrectly triggering file autocomplete suggestions in bash mode(v2.1.14)
- Fixed @-mention menu folder click behavior to correctly navigate into directories instead of selecting them(v2.1.14)
- Fixed /feedback command generating invalid GitHub issue URLs when the description is very long(v2.1.14)
- Fixed /context command to display the same token count and percentage as the status line in verbose mode(v2.1.14)
- Fixed an issue where /config, /context, /model, and /todos command overlays could close unexpectedly(v2.1.14)
- Fixed slash command autocomplete selecting the wrong command when typing similar commands (e.g., /context vs /compact)(v2.1.14)
- Fixed inconsistent back navigation in the plugin marketplace when only one marketplace is configured(v2.1.14)
- Fixed iTerm2 progress bar not clearing properly on exit, preventing lingering indicators and bell sounds(v2.1.14)
- Fixed excessive MCP connection requests when using HTTP/SSE transports.(v2.1.11)
- Fixed API errors related to orphan tool_result blocks occurring during long sessions with parallel tool calls.(v2.1.9)
- Fixed MCP server reconnection hanging when the cached connection promise fails to resolve.(v2.1.9)
- Fixed Ctrl+Z suspend functionality not working in terminals utilizing the Kitty keyboard protocol (including Ghostty, iTerm2, kitty, and WezTerm).(v2.1.9)
- Fixed a security vulnerability where wildcard permission rules could incorrectly match compound commands containing shell operators.(v2.1.7)
- Fixed false "file modified" errors occurring on Windows due to cloud sync tools or antivirus scanners touching file timestamps without content changes.(v2.1.7)
- Fixed orphaned `tool_result` errors when sibling tools failed during streaming execution.(v2.1.7)
- Fixed context window blocking limit calculation to use the effective context window (reserving space for max output tokens) instead of the full context window.(v2.1.7)
- Fixed a visual glitch where the spinner briefly flashed when running local slash commands like `/model` or `/theme`.(v2.1.7)
- Fixed terminal title animation jitter by utilizing fixed-width braille characters.(v2.1.7)
- Fixed plugins with git submodules not being fully initialized upon installation.(v2.1.7)
- Fixed bash commands failing on Windows when temporary directory paths contained characters like `t` or `n` that were misinterpreted as escape sequences.(v2.1.7)
- [VSCode] Fixed an issue where the `claudeProcessWrapper` setting was incorrectly passing the wrapper path instead of the Claude binary path.(v2.1.7)
- Fixed permission bypass via shell line continuation that could allow blocked commands to execute.(v2.1.6)
- Fixed false "File has been unexpectedly modified" errors when file watchers touch files without changing content.(v2.1.6)
- Fixed text styling (bold, colors) getting progressively misaligned in multi-line responses.(v2.1.6)
- Fixed the feedback panel closing unexpectedly when typing 'n' in the description field.(v2.1.6)
- Fixed rate limit warning appearing at low usage after weekly reset (now requires 70% usage).(v2.1.6)
- Fixed rate limit options menu incorrectly auto-opening when resuming a previous session.(v2.1.6)
- Fixed numpad keys outputting escape sequences instead of characters in Kitty keyboard protocol terminals.(v2.1.6)
- Fixed Option+Return not inserting newlines in Kitty keyboard protocol terminals.(v2.1.6)
- Fixed corrupted config backup files accumulating in the home directory (now only one backup is created per config file).(v2.1.6)
- Fixed mcp list and mcp get commands leaving orphaned MCP server processes.(v2.1.6)
- Fixed visual artifacts in ink2 mode when nodes become hidden via display:none.(v2.1.6)
- [VSCode] Fixed usage indicator not updating after manual compact.(v2.1.6)
- Fixed an issue where the "Help improve Claude" setting fetch would fail due to a stale OAuth token; it now correctly refreshes OAuth and retries the fetch.(v2.1.4)
- Fixed plan files persisting across `/clear` commands, ensuring a fresh plan file is used after clearing a conversation.(v2.1.3)
- Fixed false skill duplicate detection on filesystems with large inodes (e.g., ExFAT) by implementing 64-bit precision for inode values.(v2.1.3)
- Fixed mismatch between the background task count displayed in the status bar and the items shown in the tasks dialog.(v2.1.3)
- Fixed sub-agents using the incorrect model during conversation compaction.(v2.1.3)
- Fixed web search in sub-agents using the incorrect model.(v2.1.3)
- Fixed trust dialog acceptance when running from the home directory, ensuring trust-requiring features like hooks are enabled for the session.(v2.1.3)
- Fixed a command injection vulnerability in bash command processing where malformed input could execute arbitrary commands(v2.1.2)
- Fixed a memory leak where tree-sitter parse trees were not being freed, causing WASM memory to grow unbounded over long sessions(v2.1.2)
- Fixed binary files (images, PDFs, etc.) being accidentally included in memory when using @include directives in CLAUDE.md files(v2.1.2)
- Fixed updates incorrectly claiming another installation is in progress(v2.1.2)
- Fixed crash when socket files exist in watched directories(v2.1.2)
- Fixed remote session URL and teleport being broken when using /tasks command(v2.1.2)
- Fixed MCP tool names being exposed in analytics events by sanitizing user-specific server configurations(v2.1.2)
- Fixed usage display not updating after manual compact in VSCode(v2.1.2)
- Fixed issue with macOS code-sign warning when using Claude in Chrome integration(v2.0.76)
Improvements in January 2026
- Improved `/sandbox` command UI to show dependency status with installation instructions when dependencies are missing(v2.1.20)
- Improved thinking status text with a subtle shimmer animation(v2.1.20)
- Improved task list to dynamically adjust visible items based on terminal height(v2.1.20)
- Improved fork conversation hint to show how to resume the original session(v2.1.20)
- Changed collapsed read/search groups to show present tense ("Reading", "Searching for") while in progress, and past tense ("Read", "Searched for") when complete(v2.1.20)
- Changed teammate messages to render with rich Markdown formatting (bold, code blocks, lists, etc.) instead of plain text(v2.1.20)
- Changed `ToolSearch` results to appear as a brief notification instead of inline in the conversation(v2.1.20)
- Changed config backups to be timestamped and rotated (keeping 5 most recent) to prevent data loss(v2.1.20)
- Changed skills without additional permissions or hooks to no longer require explicit approval.(v2.1.19)
- Updated indexed argument syntax from `$ARGUMENTS.0` to the bracket syntax `$ARGUMENTS[0]` for consistency.(v2.1.19)
- Improved UI rendering performance by integrating the React Compiler.(v2.1.15)
- Improved backspace behavior to delete pasted text as a single token instead of one character at a time(v2.1.14)
- Added the ability to provide feedback directly when accepting permission prompts.(v2.1.7)
- Added inline display of the agent's final response in task notifications, allowing users to see results without opening the full transcript file.(v2.1.7)
- Improved typing responsiveness by reducing memory allocation overhead during terminal rendering.(v2.1.7)
- Fixed jitter in the terminal title animation.(v2.1.7)
- Changed OAuth and API Console URLs from `console.anthropic.com` to `platform.claude.com`.(v2.1.7)
- Improved the external CLAUDE.md imports approval dialog to show which files are being imported and from where.(v2.1.6)
- Improved the /tasks dialog to go directly to task details when there's only one background task running.(v2.1.6)
- Improved @ autocomplete with icons for different suggestion types and single-line formatting.(v2.1.6)
- Updated "Help improve Claude" setting fetch to refresh OAuth and retry when it fails due to a stale OAuth token.(v2.1.6)
- Changed task notification display to cap at 3 lines with overflow summary when multiple background tasks complete simultaneously.(v2.1.6)
- Changed terminal title to "Claude Code" on startup for better window identification.(v2.1.6)
- Merged slash commands and skills, simplifying the mental model without changing user behavior.(v2.1.3)
- Added detection and warnings for unreachable permission rules, providing source information and actionable fix guidance in `/doctor` and after saving rules.(v2.1.3)
- Improved terminal rendering stability by preventing uncontrolled writes from corrupting cursor state.(v2.1.3)
- Improved slash command suggestion readability by truncating long descriptions to 2 lines.(v2.1.3)
- Increased the tool hook execution timeout from 60 seconds to 10 minutes.(v2.1.3)
- Improved Option-as-Meta hint on macOS to show terminal-specific instructions for native CSIu terminals like iTerm2, Kitty, and WezTerm(v2.1.2)
- Improved error message when pasting images over SSH to suggest using scp instead of the unhelpful clipboard shortcut hint(v2.1.2)
- Improved permission explainer to not flag routine dev workflows (git fetch/rebase, npm install, tests, PRs) as medium risk(v2.1.2)
- Changed large bash command outputs to be saved to disk instead of truncated, allowing Claude to read the full content(v2.1.2)
- Changed large tool outputs to be persisted to disk instead of truncated, providing full output access via file references(v2.1.2)
- Changed /plugins installed tab to unify plugins and MCPs with scope-based grouping(v2.1.2)
- Deprecated Windows managed settings path C:\ProgramData\ClaudeCode\managed-settings.json; administrators should migrate to C:\Program Files\ClaudeCode\managed-settings.json(v2.1.2)
- Changed minimum zod peer dependency to ^4.0.0 in SDK(v2.1.2)
All Releases in January 2026
v2.1.291 fixThis release focuses on stability and performance improvements. The primary change addresses slow startup times experienced when resuming sessions that utilize saved hook context.
v2.1.209 features12 fixesThis release introduces several new quality-of-life features, including PR review status indicators in the prompt footer and improved vim navigation. Numerous bugs related to agent responsiveness, rendering artifacts for wide characters, and history navigation have been resolved. Additionally, the UI has been refined with better status animations and improved configuration management for tool permissions and config backups.
v2.1.194 features8 fixesThis release introduces new shorthand argument accessors (`$0`, `$1`) for custom commands and enables session forking/rewind in VSCode for all users. Several critical bugs were resolved, including crashes on older processors and issues with session resumption across different directories.
v2.1.171 fixThis release focuses on stability and compatibility by addressing a critical issue. The primary change is a fix that prevents crashes on older processors lacking AVX instruction support.
v2.1.163 features4 fixesThis release introduces a significant new task management system featuring dependency tracking and enhances IDE integration with native plugin management in VSCode. Key fixes address stability issues, including out-of-memory crashes during session resume, and corrects display logic for context warnings and session titles.
v2.1.151 feature2 fixesThis release focuses on improving stability and performance by fixing UI freezing issues related to the MCP stdio server and context warnings. It also introduces a deprecation notice for npm installations, guiding users toward the recommended installation method.
v2.1.144 features11 fixesThis release introduces significant quality-of-life improvements, including history-based autocomplete for bash and search functionality for installed plugins. Several critical bugs were resolved, notably fixing an overly aggressive context window blocking limit and addressing memory leaks in long-running sessions.
v2.1.12v2.1.111 fixThis release focuses on stability by addressing an issue related to connection requests. Specifically, excessive MCP connection requests when using HTTP/SSE transports have been resolved.
v2.1.96 features3 fixesThis release introduces several new configuration and integration capabilities, including customizable plan storage and enhanced session context access via new string substitutions. Several critical bugs were resolved, specifically addressing failures in long parallel tool call sessions and improving terminal suspend functionality across various terminal emulators.
v2.1.72 features9 fixesThis release introduces new configuration options, including the ability to hide turn duration messages and an improved default behavior for managing large tool sets via MCP search auto mode. Several critical bugs were fixed, addressing security vulnerabilities, false file modification errors on Windows, and issues related to context window calculation and command execution.
v2.1.66 features12 fixesThis release introduces several new command-line utilities, including search for /config and date range filtering for /stats, alongside automatic skill discovery in subdirectories. Numerous bugs have been resolved, particularly concerning terminal input handling (numpad, Option+Return) and stability issues with rate limit warnings and configuration backups. The user experience is also enhanced with improved task dialogs and better context window visibility.
v2.1.51 featureThis release introduces a new environment variable, CLAUDE_CODE_TMPDIR, which allows users to specify a custom temporary directory for internal processing files. This is particularly useful for environments with specific temporary storage requirements.
v2.1.41 feature1 fixThis release introduces a new environment variable, CLAUDE_CODE_DISABLE_BACKGROUND_TASKS, giving users granular control to disable background tasks entirely. Additionally, a critical bug affecting the "Help improve Claude" setting fetch due to stale OAuth tokens has been resolved.
v2.1.32 features6 fixesThis release simplifies the user experience by merging slash commands and skills and introduces a new configuration option to select the release channel ('stable' or 'latest'). Several critical bugs were fixed, including issues with plan file persistence after clearing conversations and incorrect model usage in sub-agents. Additionally, VS Code users gain more control over permission saving destinations.
v2.1.26 features8 fixesThis release introduces several new capabilities, including source path metadata for dragged images and support for winget installations. Key fixes address a command injection vulnerability and memory leaks during long sessions. Additionally, large tool outputs are now saved to disk instead of being truncated, ensuring Claude has access to the full content.
v2.1.1v2.0.761 fixThis release addresses a specific technical issue related to code signing on macOS when using the Claude integration within the Chrome browser. Users should no longer encounter the code-sign warning.