Skip to main content

Claude Code v2.1.233: GitLab Merge Request Worktrees, Linux Bash Memory Limits, and Opt-In Todo Tools on Newer Models

Claude Code v2.1.233 adds GitLab merge request support to --worktree and claude agents, an opt-in Linux memory limit for Bash commands, a WebFetch cache TTL variable, and makes todo tools opt-in on newer models.

Claude Code v2.1.233 is a mid-sized release with 20 changelog entries. It brings GitLab merge requests to worktree and agent workflows, adds new controls for Bash memory use, WebFetch caching, and per-user identity forwarding through the apps gateway, and makes the todo and task-tracking tools opt-in on newer models. The remaining entries fix issues in MCP, hooks, skills, and Windows Bash permissions, including a 2.1.232 regression.

What’s New

GitLab Merge Requests in --worktree and claude agents

The --worktree flag and the claude agents view now support GitLab merge request URLs. In the claude agents view, merge requests are displayed as !N.

Opt-In Memory Limit for Bash Commands on Linux

On Linux, Bash tool commands can now run inside a memory cgroup, configured through CLAUDE_CODE_TOOL_MEMORY_LIMIT. The feature is opt-in and is meant to keep a runaway build from stalling the session.

Todo and Task Tools Now Opt-In on Newer Models

The todo/task-tracking tools (TaskCreate/Get/Update/List and TodoWrite) are no longer available on Opus 4.8, Sonnet 5, Fable 5, Mythos 5, and newer models. Set CLAUDE_CODE_ENABLE_TODO_TOOLS=1 to bring them back.

Per-User Identity Forwarding in the Apps Gateway

A new opt-in forward_user_identity apps gateway setting for Anthropic upstreams sends the signed-in user’s identity as headers. This lets a proxy behind the gateway attribute spend per user.

Configurable WebFetch Cache TTL

The new CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS environment variable sets the TTL of the WebFetch session URL cache. The default is unchanged at 15 minutes.

Unrecognized Model Diagnostics in Print Mode

When a request goes out for a model ID that Claude Code doesn’t recognize, print mode now writes a [claude-code:unrecognized_model] line to stderr. Map the model with modelOverrides to silence it.

Fixes and Improvements

  • Windows and Bash permissions: On Windows, auto mode no longer repeatedly stops for manual approval on ordinary cd <dir> && <command> > file Bash commands (a 2.1.232 regression). The 2.1.232 Bash permission changes for Cygwin-style symlinks on Windows and for input redirections (< file) have been reverted; the changelog says a narrower version will return in a later release.
  • Security: Windows paths spelled with the NT \??\ device prefix no longer bypass UNC path validation, closing an NTLM credential-leak vector.
  • Sessions: Cloud sessions are no longer occasionally marked as lost when the environment shuts down while Claude is waiting on a permission prompt. Idle sessions on Linux no longer sometimes keep one CPU core at 100% when sandboxing is enabled.
  • Hooks: Notification hooks now fire for permission prompts when Claude Code runs under Claude Desktop or VS Code.
  • MCP: MCP v2 connections no longer endlessly reopen the subscriptions/listen stream against servers that terminate long-held streams on a fixed timeout, such as serverless hosts.
  • Skills and commands: Bundled skill aliases such as /checkup and /review no longer report “Unknown command” in -p mode or with plugins/MCP loaded when a user or project skill shadows the bundled skill. Skill and command argument substitution no longer re-expands argument values as template markers.
  • Plugins: claude plugin validate now checks a bare .claude/skills directory and reports SKILL.md files whose frontmatter fails to parse.
  • Self-hosted runner: claude self-hosted-runner sessions start faster. The session branch is now created without rewriting the working tree, and two server round trips no longer block the agent’s launch.
  • Apps gateway: 400/413 errors from Vertex, Foundry, and Claude Platform on AWS upstreams now carry the upstream’s own message, and a bug with auto-compact on the apps gateway is fixed.
  • Accessibility: In screen reader mode, the /effort selector renders as a numbered list with a typed-number prompt, and hint and dialog text is no longer clipped.
  • Tips: The GitHub app setup tip no longer appears in repositories whose origin remote is on gitlab.com or bitbucket.org, and the enterprise marketplace tip now covers non-GitHub internal git hosts.

How to Update

  1. Check your installed version: claude --version
  2. Update in place: claude update
  3. If you rely on the todo/task-tracking tools with Opus 4.8, Sonnet 5, Fable 5, Mythos 5, or newer models, set CLAUDE_CODE_ENABLE_TODO_TOOLS=1 to keep them.