AI Frontier Labs Release Notes Podcast

Claude Code v2.1.121: MCP gains alwaysLoad and transient-error auto-retry, claude plugin prune cleans orphaned deps, PostToolUse hooks now replace tool output for all tools (was MCP-only), CLAUDE_CODE_FORK_SUBAGENT works in --print/SDK, /terminal-setup fixes iTerm2+tmux /copy, plus Vertex X.509 federation, SDK mcp_authenticate redirectUri, OTEL enrichments, scrollable dialogs, /skills filter, and memory leak fixes that flatten multi-GB session bloat.

Show Notes

What's new in Claude Code v2.1.121

A quietly meaty release. MCP gets two real polish wins (alwaysLoad opt-out of tool-search deferral, transient-error auto-retry up to 3x). Plugin authors get claude plugin prune for orphaned deps. PostToolUse hooks expand to all tools (previously MCP-only). Headless and SDK get CLAUDE_CODE_FORK_SUBAGENT parity and a --dangerously-skip-permissions allowlist for .claude/skills/, agents/, and commands/. /terminal-setup fixes the iTerm2+tmux /copy footgun. Vertex AI gains X.509 Workload Identity Federation; SDK mcp_authenticate gains redirectUri. OTEL spans add stop_reason, finish_reasons, and gated user_system_prompt. Plus scrollable overflow dialogs, /skills type-to-filter, and three serious memory leak fixes that flatten multi-GB session bloat.

MCP alwaysLoad opts out of tool-search deferral

Why: Tool-search deferral keeps MCP tools out of the model's view until needed, but for must-be-available servers that introduces latency and discoverability gaps.

What: Adds an alwaysLoad option to MCP server config; when true, all tools from that server skip tool-search deferral and are always available.

How: Set "alwaysLoad": true on the MCP server entry in your settings JSON.

claude plugin prune for orphaned plugin dependencies

Why: Auto-installed plugin dependencies stayed on disk after their parent plugin was uninstalled, leaving orphaned state that nothing collected.

What: Adds claude plugin prune to remove orphaned auto-installed plugin dependencies; plugin uninstall --prune cascades through dependents.

How: Run claude plugin prune standalone, or pass --prune to claude plugin uninstall.

PostToolUse hooks can replace output for all tools

Why: Hook authors could only mutate tool output for MCP tools — every other tool surface was read-only from a hook's perspective.

What: PostToolUse hooks can now replace tool output for all tools via hookSpecificOutput.updatedToolOutput, not just MCP-originated tools.

How: Set hookSpecificOutput.updatedToolOutput in your hook return; works for any tool that fires PostToolUse.

CLAUDE_CODE_FORK_SUBAGENT works in non-interactive sessions

Why: Forked subagents shipped for interactive use but were silently ignored under claude --print and the SDK, blocking automation pipelines.

What: Enables CLAUDE_CODE_FORK_SUBAGENT=1 for SDK and claude -p non-interactive sessions, matching interactive-mode behavior.

How: export CLAUDE_CODE_FORK_SUBAGENT=1 before launching claude -p or your SDK process.

--dangerously-skip-permissions allowlist for .claude/{skills,agents,commands}

Why: Even with the dangerous flag, writes to common authoring directories prompted, slowing skill/agent/command iteration loops.

What: --dangerously-skip-permissions no longer prompts for writes to .claude/skills/, .claude/agents/, and .claude/commands/.

How: Run claude --dangerously-skip-permissions as before; writes to those three directories now fall through silently.

/terminal-setup enables iTerm2 clipboard for /copy (including tmux)

Why: /copy from inside tmux on iTerm2 silently failed because iTerm2's "Applications in terminal may access clipboard" setting was off by default.

What: /terminal-setup now enables iTerm2's "Applications in terminal may access clipboard" setting, so /copy works including from tmux.

How: Run /terminal-setup once on iTerm2; /copy then works through tmux without manual iTerm2 settings changes.

MCP servers auto-retry transient startup errors up to 3 times

Why: A flaky MCP server hitting a transient error during startup left the connection permanently dead until the user manually reconnected.

What: MCP servers that hit a transient error during startup now auto-retry up to 3 times before staying disconnected.

How: Automatic — no config; flaky servers self-heal up to 3 attempts before surfacing.

Vertex AI X.509 Workload Identity Federation (mTLS ADC)

Why: Enterprises on Vertex AI standardized on certificate-based Workload Identity Federation but Claude Code only accepted service account keys or OAuth tokens.

What: Adds support for X.509 certificate-based Workload Identity Federation (mTLS Application Default Credentials) on Vertex AI.

How: Configure Vertex Workload Identity Federation with X.509 certs in your gcloud ADC; Claude Code picks them up automatically.

SDK mcp_authenticate redirectUri + OpenTelemetry enrichments

Why: Claude.ai connectors and custom-scheme OAuth flows had no way to specify their redirect URI, and OTEL spans lacked stop_reason and full prompt context.

What: SDK mcp_authenticate now supports redirectUri for custom-scheme completion and claude.ai connectors; OTEL adds stop_reason, gen_ai.response.finish_reasons, and user_system_prompt (gated by OTEL_LOG_USER_PROMPTS) to LLM request spans.

How: Pass redirectUri to mcp_authenticate; set OTEL_LOG_USER_PROMPTS=1 to opt into user-prompt span attributes.

Scrollable overflow dialogs + /skills type-to-filter

Why: Dialogs taller than the terminal viewport had unreachable rows, and /skills lists scrolled off-screen with no way to jump to a specific skill.

What: Dialogs that overflow the terminal are now scrollable with arrow keys, PgUp/PgDn, home/end, and mouse wheel in both fullscreen and non-fullscreen; /skills gains a type-to-filter search box.

How: Automatic — overflow dialogs accept the standard navigation keys; /skills filter activates when you start typing.

Memory leak fixes that ship with the release

Why: Long-running sessions leaked multi-GB of RSS through several distinct paths — image processing, /usage with large transcript histories, and stalled progress events on long-running tools.

What: Fixes unbounded memory growth when processing many images, /usage leaking up to ~2GB on machines with large transcript histories, and a memory leak when long-running tools fail to emit a clear progress event.

How: Automatic on upgrade; long-running sessions stop accumulating ghost memory.


Hosts: Alex Chen & Sarah Kim · Generated from the official Claude Code CHANGELOG.

Full changelog: github.com/anthropics/claude-code/CHANGELOG.md

Claude Code docs: code.claude.com/docs

  • (00:00) - MCP polish: alwaysLoad + transient retry
  • (01:07) - claude plugin prune for orphaned deps
  • (01:29) - PostToolUse hooks replace output for all tools
  • (01:55) - Headless: FORK_SUBAGENT + skip-perms allowlist
  • (02:34) - /terminal-setup enables iTerm2 clipboard
  • (02:57) - Vertex X.509 federation + SDK mcp_authenticate
  • (03:30) - OTEL enrichments + UX polish
  • (04:15) - Memory leak fixes for long sessions

What is AI Frontier Labs Release Notes Podcast?

Each episode breaks down the latest release notes from AI frontier labs, so you know exactly what changed and why it matters for your workflow.

NOTE: This podcast is AI-generated, both in terms of content and in terms of voice over. AI can make mistakes. Please double-check content before any decisions based on this content.