News

Claude Code v2.1.120 → v2.1.123 (April 28–29, 2026): claude ultrareview in CI, Windows Without Git Bash, MCP alwaysLoad, plugin prune

Claude Code's late-April 2026 point releases (v2.1.120–v2.1.123) make /ultrareview runnable from CI as a non-interactive subcommand, drop the Git Bash requirement on Windows in favor of PowerShell, add an alwaysLoad option for MCP servers, and ship claude plugin prune for orphaned plugin dependencies.

By AI Coding Tools Directory2026-04-305 min read
Last reviewed: 2026-04-30
ACTD
AI Coding Tools Directory

Editorial Team

The AI Coding Tools Directory editorial team researches and reviews AI-powered development tools to help developers find the best solutions for their workflows.

The week after Week 17 shipped four stable point releases for Claude Codev2.1.120 → v2.1.123, dated April 28–29, 2026. They're not yet rolled into a Week 18 digest, but the changelog has substantial wins worth pulling forward: claude ultrareview is now a non-interactive subcommand you can call from CI, Windows no longer requires Git Bash, MCP servers get an alwaysLoad opt-out from tool-search deferral, and claude plugin prune finally cleans up orphaned plugin dependencies.

Claude Code logo
Claude CodeSubscription

Anthropic's terminal-based AI coding agent with Claude Opus 4.7, /ultrareview, Routines, /ultraplan, and 80.9% SWE-bench

TL;DR

  • claude ultrareview [target] (v2.1.120): non-interactive CI subcommand. --json for raw output, exits 0 on completion / 1 on failure.
  • Windows without Git Bash (v2.1.120): when Git for Windows is missing, Claude Code uses PowerShell as the shell tool.
  • MCP alwaysLoad (v2.1.121): tools from a server skip tool-search deferral and stay always-available.
  • claude plugin prune (v2.1.121): remove orphaned auto-installed plugin deps; plugin uninstall --prune cascades.
  • /resume finds the session by PR URL (v2.1.122) for GitHub, GitHub Enterprise, GitLab, and Bitbucket.
  • ${CLAUDE_EFFORT} in skills (v2.1.120) so a skill can branch on the active effort level.
  • Memory-leak fixes for image-heavy sessions, /usage, and long-running tools — plus dozens of UX polish fixes.

Quick Answer

If you maintain a CI pipeline, the highest-leverage change is claude ultrareview as a CI step — it's the same cloud bug-hunting fleet that shipped to public preview in Week 17, but now you can wire it into a pre-merge gate without holding a terminal open. If you're on Windows, drop the Git Bash dependency: a fresh install with only PowerShell now works. Plugin authors and heavy MCP users should look at alwaysLoad and claude plugin prune to keep their environment lean.

Run claude update (or npm install -g @anthropic-ai/claude-code@latest) to pick up the changes.

What Shipped in v2.1.120 → v2.1.123

Change Version What it does
claude ultrareview [target] v2.1.120 Non-interactive /ultrareview for CI; --json for raw, exit 1 on failure
Windows: no Git Bash required v2.1.120 Falls back to PowerShell as the shell tool
${CLAUDE_EFFORT} in skills v2.1.120 Skills can branch on the current effort level
MCP alwaysLoad v2.1.121 Server's tools skip tool-search deferral
claude plugin prune v2.1.121 Removes orphaned auto-installed plugin deps
/resume finds session by PR URL v2.1.122 GitHub, GitHub Enterprise, GitLab, Bitbucket
ANTHROPIC_BEDROCK_SERVICE_TIER v2.1.122 default / flex / priority for Bedrock
OAuth 401 retry-loop fix v2.1.123 When CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 is set

claude ultrareview in CI

/ultrareview was already an interactive slash command — you'd run it from the CLI or Desktop and findings would land back in the conversation. v2.1.120 adds a non-interactive subcommand so you can drive it from a CI job:

# Review the current branch, fail the job if findings come back.
claude ultrareview

# Review a specific PR, get JSON for downstream tooling.
claude ultrareview 1234 --json > findings.json

It prints findings to stdout, exits 0 on completion and 1 on failure, which is what you want for a pre-merge gate. Combined with /autofix-pr shipped in Week 15, the cloud-side review/fix loop is now scriptable end-to-end. For a broader landscape view, see our AI code review tools roundup.

Windows: Git Bash Is No Longer Required

A meaningful Windows ergonomics win: when Git for Windows isn't installed, Claude Code now uses PowerShell as the shell tool instead of refusing to start. This pairs with Week 13's native PowerShell tool and finally makes Claude Code installable on a vanilla Windows machine without first dragging in Git Bash for a shell. If you maintain a Windows dev image at a company, you can drop one fewer prerequisite.

MCP alwaysLoad and claude plugin prune

Two changes for people running a lot of MCP servers and plugins.

alwaysLoad (v2.1.121) is a new MCP server config option. By default, Claude Code uses tool-search deferral: tools live in a searchable index and are pulled in only when the model asks for them by name, which keeps the tool list small. Set alwaysLoad: true on an MCP server config and all of that server's tools bypass deferral and are always present in the model's tool list:

{
  "mcpServers": {
    "my-critical-server": {
      "command": "node",
      "args": ["server.js"],
      "alwaysLoad": true
    }
  }
}

Useful for an MCP server you call constantly, where the deferral round-trip is more cost than benefit.

claude plugin prune (v2.1.121) removes orphaned auto-installed plugin dependencies — plugins that were installed as transitive deps and are no longer needed. plugin uninstall --prune cascades the prune as part of an uninstall, so you don't accumulate unused plugins after iterating on a marketplace.

claude plugin prune              # remove orphaned auto-installed deps
claude plugin uninstall my-plugin --prune

/resume by PR URL

A small but high-leverage change in v2.1.122: paste a PR URL into the /resume search box and it finds the session that created that PR — for GitHub, GitHub Enterprise, GitLab, and Bitbucket. If you're juggling several Claude sessions across forge URLs, you no longer have to remember which session produced which PR. Combined with Week 17's session recap, getting back into context after a break is now a one-paste operation.

Skills Can Branch on Effort Level

${CLAUDE_EFFORT} (v2.1.120) is a new template variable available inside skill content. A skill can read the current effort level and adapt — for example, a "review this code" skill might pull in extra checklists at xhigh effort and skip them at low. Pairs with Week 16's interactive /effort slider.

Bedrock and Vertex AI Polish

A long list of enterprise-only fixes ride along:

  • ANTHROPIC_BEDROCK_SERVICE_TIER picks default, flex, or priority and is sent as the X-Amzn-Bedrock-Service-Tier header (v2.1.122).
  • /model Effort option now appears for Bedrock application inference profile ARNs, and those ARNs receive output_config.effort (v2.1.122).
  • Vertex AI X.509 Workload Identity Federation (mTLS ADC) is now supported (v2.1.121).
  • Vertex count_tokens no longer 400s for users behind proxy gateways (v2.1.122).
  • Several output_config: Extra inputs are not permitted errors on Vertex/Bedrock structured-output queries are fixed (v2.1.122).

The Memory-Leak Sweep

If you've ever had a long Claude Code session balloon to multi-GB RSS, v2.1.121 is your release:

  • Unbounded memory growth when processing many images in a session — fixed.
  • /usage leaking up to ~2GB on machines with large transcript histories — fixed.
  • Long-running tools that fail to emit a clear progress event no longer leak.
  • Embedded grep/find/rg wrappers now fall back to installed tools when the running binary is deleted mid-session.

Plus an OS-level fix in v2.1.120: find in the Bash tool no longer exhausts open file descriptors on large directory trees, which had been triggering host-wide crashes on macOS and Linux native builds.

Other Notable Wins

  • claude plugin validate accepts $schema, version, and description at the top of marketplace.json, and $schema in plugin.json (v2.1.120).
  • Faster startup after upgrade: the Recent Activity panel was removed from the release-notes splash (v2.1.121).
  • MCP servers auto-retry up to 3 times on transient startup errors instead of staying disconnected (v2.1.121).
  • Long dialogs are now scrollable with arrow keys, PgUp/PgDn, home/end, and mouse wheel (v2.1.121).
  • /skills has a type-to-filter search box (v2.1.121).
  • PostToolUse hooks can now replace tool output for all tools via hookSpecificOutput.updatedToolOutput — previously MCP-only (v2.1.121).
  • --dangerously-skip-permissions no longer prompts for writes to .claude/skills/, .claude/agents/, and .claude/commands/ (v2.1.121).
  • /terminal-setup enables iTerm2's "Applications in terminal may access clipboard" so /copy works, including from tmux (v2.1.121).
  • OAuth 401 retry-loop when CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 is set — fixed in v2.1.123.

How This Compares

Capability Claude Code OpenAI Codex Cursor
Non-interactive cloud code review for CI claude ultrareview (v2.1.120) n/a n/a
Windows shell without Git Bash Yes (PowerShell fallback) n/a n/a
MCP server always-load opt-out alwaysLoad (v2.1.121) n/a (no native MCP server config) Limited
Orphan plugin pruning claude plugin prune (v2.1.121) n/a n/a

For more on the recent Claude Code release cadence, see our Week 15, Week 16, and Week 17 updates. For deeper comparisons see aider">Claude Code vs Aider and cursor-vs-claude-code">Cursor vs Claude Code.

OpenAI Codex logo
OpenAI CodexFreemium

Cloud coding agent with GPT-5.5 frontier model, 1M+ developers, Desktop App, in-app browser use, and parallel sandboxed environments

Sources


For current model guidance, see our Claude Opus 4.6 vs Opus 4.5 comparison and the beginner's guide to AI models.

Claude Opus 4.6 logo
Claude Opus 4.6Pay-per-use

Anthropic's frontier reasoning model: 80.9% SWE-bench record, 1M token beta context, and adaptive thinking

Free Resource

2026 AI Coding Tools Comparison Chart

Side-by-side comparison of features, pricing, and capabilities for every major AI coding tool.

No spam, unsubscribe anytime.

Frequently Asked Questions

Can I run /ultrareview from CI now?
Yes. v2.1.120 added a claude ultrareview [target] subcommand that runs /ultrareview non-interactively. It prints findings to stdout (use --json for raw output), exits 0 on completion, and exits 1 on failure — designed to be wired into a CI step or pre-merge script.
Do I still need Git Bash on Windows?
No. As of v2.1.120, when Git for Windows is absent, Claude Code falls back to PowerShell as the shell tool. Git Bash is no longer a hard requirement for Windows installs.
What is the new MCP alwaysLoad option?
alwaysLoad is a new MCP server config flag added in v2.1.121. When set to true, all tools from that server skip tool-search deferral and are always loaded into the model's tool list, instead of being lazily fetched when ToolSearch surfaces them.
What does claude plugin prune do?
claude plugin prune (v2.1.121) removes orphaned auto-installed plugin dependencies — plugins that were installed as transitive deps of other plugins that you've since uninstalled. plugin uninstall --prune cascades the prune as part of the uninstall.
Are these versions stable, and how do I update?
Yes. v2.1.120 → v2.1.123 are stable point releases on the official Claude Code changelog (April 28–29, 2026). Run claude update to pick them up; the CLI will switch to native binaries automatically if you're on macOS or Linux per the Week 16 native-binaries change.