Skip to main content

Claude Code v2.1.286: Permission Prompt Counts, a Leaner --bare Mode, and VS Code Bookmarks

Claude Code v2.1.286 counts stacked permission prompts, makes --bare connect only the MCP servers you name, caps retries per model call, and adds bookmarks and question history to VS Code.

Claude Code v2.1.286 is a large release. It numbers stacked permission prompts, slims down --bare mode, changes how failed API requests are retried, and adds bookmarks, question history and option previews to the VS Code extension. It also tightens secret redaction in logs and error messages and fixes a range of resume, subagent, Remote Control and MCP issues.

What’s New

Permission prompt counts

When several permission requests stack up, the permission prompt now shows a count such as “2 of 5”.

A leaner --bare mode

--bare now connects only the MCP servers named on the command line, sends the model no system reminders, and starts no background tasks. Under --bare, a shell command that reaches its timeout now stops instead of moving to the background.

One retry limit per model call

Failed API requests are now retried under one limit that covers a whole model call, so with the default retry settings a failing call sends at most 14 requests. When the Anthropic API refuses the model your default or a model alias resolves to, Claude Code now retries once on the previous model of the same tier instead of failing every turn.

Send now moves more work to the background

The send-now key (ctrl+enter) now moves a skill’s own shell command to the background instead of ending it. In a subagent’s view, it moves the subagent’s running command to the background so your message is read right away.

Commit guidance runs your verify skill

When your project or user skills include one named verify, Claude is now told to run it right before committing, except for docs-only and tests-only commits.

Stricter npm plugin sources

Plugin installs now refuse npm sources that are git repositories or folders, and install plugin dependencies only from registry packages.

VS Code: bookmarks, question history and richer message rows

The VS Code extension adds bookmarks, which save Claude’s responses and keep them in view in a Bookmarks side panel, and a Questions row that shows each question Claude asked with your picks after you answer a question card. Question cards now show option previews beside or under the options, and rows under a message open the terminal output, browser tab, browser instructions and selected code sent with it. Stop and Escape now end only the current turn, while background agents keep running and can be stopped one by one from the agent map.

Fixes and Improvements

  • Redaction: MCP error messages no longer show a credential’s value when “Bearer” or “Basic” comes before its key name, and percent-encoded Bearer tokens are now fully masked in error messages.
  • Redaction: Redacted logs and transcripts no longer show a secret whose key name has an invisible character inside, such as a zero-width space, or part of a URL password that contains punctuation such as ), quotes, ], & or a second @. The transcript in the zip that /feedback saves to disk no longer contains invalid JSON lines after redaction.
  • Resume: claude --resume and --continue no longer sometimes lose every turn after a batch of parallel tool calls when the earlier session crashed or was killed.
  • API errors: Fixed API 400 errors after a tool or hook returned an object, number or boolean instead of text, including in resumed sessions.
  • Transcripts of other agents: /compact, /clear and /rewind typed while viewing a background agent’s or teammate’s transcript no longer silently act on the main conversation; a dialog now names the target and asks first.
  • Model fallback: Refusal and --fallback-model retries no longer fail when the fallback model can’t run fast; they now run at standard speed, with a one-time notice in interactive sessions. The fallback notice and the autocompact-thrashing error now say when a fallback dropped the context window from 1M to 200K tokens.
  • Login: Several Claude Code processes and IDE extensions no longer each open a login browser when gcpAuthRefresh or awsAuthRefresh credentials expire.
  • Accounts: claude auth status now reports a Console sign-in’s stored API key as api_key instead of claude.ai, and /status marks an Anthropic profile listed beside an API key as not in use.
  • Remote Control: Remote Control sessions (including claude remote-control) now disconnect with a notice when your organization’s policy turns Remote Control off, and a message that arrives while Claude Code is exiting stays queued for the session’s next run instead of going unanswered.
  • MCP: MCP connectors no longer list no tools for up to a day after their server dropped the older MCP handshake, and a repeat MCP sign-in request from Claude no longer replaces the pending sign-in link.
  • Subagents: Foreground subagents no longer sometimes miss the task-tracking tools (TaskCreate/Get/Update/List, TodoWrite), subagents spawned with worktree isolation no longer load the project CLAUDE.md a second time, and Workflow tool subagents are no longer restarted from their original prompt when a connection stalls for a few minutes mid-response.
  • Background work: Background jobs no longer show done while waiting for your approval.
  • /hooks: /hooks now opens on one list of your configured hooks grouped by event, so viewing a hook takes one Enter instead of three.
  • Lists: List screens such as /artifacts, /mcp, /skills and /hooks now line up each row’s details in one column after the names, and overflow rows read ”↑ N more” / ”↓ N more”. In fullscreen mode those rows can be clicked to jump to that end of the list.
  • Pickers: The theme picker is now a scrolling list that fits your terminal, and the output style picker opens on your current style; number keys no longer pick a theme or style.
  • External editor: Ctrl+G now opens editors that take a line number on the line your cursor is on in the prompt.
  • Worktrees: /exit’s Remove worktree now runs after Claude Code stops the servers and shells it started there, which on Windows could keep the folder from being deleted.
  • Windows: claude --bg and the agents view no longer refuse a folder that claude already trusts when its trust record was saved with different letter case.
  • Cloud sessions: Routine runs whose cloud session never started now show as Failed instead of Succeeded, and clearing an organization environment’s setup script no longer leaves new cloud sessions running the old script.
  • Claude Tag: An Add channel button on the spend limits page in admin settings lets you set a limit on any channel, including a private one, from its channel ID or Slack link.

This release contains 88 changes in total; see the full changelog for the complete list.

How to Update

  1. Check your installed version: claude --version
  2. Update in place: claude update
  3. If you run Claude Code with --bare, note that it now connects only the MCP servers named on the command line, sends no system reminders and starts no background tasks.