What changed
Claude Code 2.1.149 shipped on May 22, 2026. On observability, /usage now breaks down limit consumption by skills, subagents, plugins, and per-MCP-server cost; the /diff detail view is keyboard-scrollable; and markdown output renders GFM task lists as checkboxes. For enterprise, the new allowAllClaudeAiMcps managed setting loads claude.ai cloud MCP connectors alongside managed-mcp.json. On security and permissions, four gaps are closed: PowerShell built-in cd functions bypassing working-directory tracking, the sandbox write allowlist in git worktrees being far too broad, PowerShell prefix/wildcard allow rules not pre-approving native executables, and stale PWD/OLDPWD/DIRSTACK tracking across cd/pushd/popd. The rest is a find-induced macOS host crash fix, /ultraplan and remote session false-fails on clean trees, otelHeadersHelper silent failures on spaced paths, and a wide bug-fix sweep across the transcript view, /feedback, /insights, /config, the status bar, and fullscreen UI.
New features
-
/usageper-category breakdown of what’s driving your limits usage/usageshowed how much of your limit remained but didn’t say what was driving it. The breakdown now splits consumption by skills, subagents, plugins, and per-MCP-server cost. -
Keyboard scrolling in the
/diffdetail viewThe
/diffdetail view depended on the terminal’s own scrolling or a mouse. It now scrolls with arrow keys,j/k,PgUp/PgDn,Space, andHome/End. -
GFM task list checkbox rendering in markdown output
- [ ] todoand- [x] donerendered as plain bullets, so checked and unchecked items looked the same. Markdown output now renders GitHub Flavored Markdown task lists as checkboxes. -
Enterprise:
allowAllClaudeAiMcpsmanaged settingEnterprise deployments either restrict MCP connectors to
managed-mcp.jsonor want to allow claude.ai cloud connectors alongside it. The newallowAllClaudeAiMcpsmanaged setting loads claude.ai cloud MCP connectors alongsidemanaged-mcp.json.
Improvements
-
/feedbackreports now include the conversation before context compactionIn long sessions where context compaction had already run,
/feedbackreports only contained the post-compaction tail, making issues from earlier in the session hard to triage. Reports now include the conversation that happened before context compaction.
Bug fixes
Security & permissions
- PowerShell permission bypass via built-in
cdfunctions —cd..,cd\\,cd~, andX:changed the working directory undetected, letting a later command read outside the workspace. These built-ins are now tracked so the bypass is closed. - Sandbox write allowlist in git worktrees covering the entire main repository root instead of only the shared
.gitdirectory — the allowlist is now scoped to the shared.gitdirectory, withhooks/andconfigdenied. - PowerShell prefix/wildcard allow rules (e.g.
PowerShell(dotnet.exe build *)) not pre-approving native executables and scripts — the rules now match as intended and pre-approve them. - Permission-analysis gap where the parser trusted stale variable-tracking values for
PWD/OLDPWD/DIRSTACKacrosscd/pushd/popd— variable tracking is now kept in sync with command flow.
Stability & diagnostics
findin the Bash tool exhausting the macOS system file/vnode table and crashing the host on large directory trees — resource usage is bounded so the host is not affected.- Managed-settings approval dialog leaving the terminal frozen after accepting at startup — fixed.
/ultraplanand remote session creation failing with “Could not capture uncommitted changes” when the working tree has no real changes — clean trees are now allowed through.otelHeadersHelperfailing silently when the script path contains spaces — helper failures are now reported in/doctorand the debug log.
Transcript, /feedback, /insights
- Ctrl+O transcript view freezing at the moment it was opened instead of tailing new messages — it now tails new messages as expected.
/insightscrashing when cached session-meta files are missing optional fields — missing fields are tolerated.- Malformed PowerShell and History tool calls with missing input being misclassified as reads in transcript collapsing — they are now categorized correctly.
Slash commands, autocomplete, status bar
- Slash-command argument-hint clipping trailing typed characters when the hint overflows the input box — the hint is truncated instead of the user’s input.
- Argument-hint and progressive arg suggestions not appearing after Tab-completing a skill whose frontmatter
name:differs from its directory basename — suggestions now appear using the skill name. - Status bar showing the user’s baseline
/effortsetting instead of the effort level applied by skill/agenteffort:frontmatter — the applied effort level is shown. /configexit summary reporting phantom changes to auto-compact and theme when toggling unrelated settings — only actually-changed settings are reported.
Input & history
- Editing a recalled prompt-history entry losing the edit when navigating further up/down with arrow keys — edits are preserved.
- Race where a just-submitted prompt could appear twice in the up-arrow history — recorded once.
Terminal & UI
- Thinking spinner staying amber across tool calls and onto fresh thinking bursts — the color now updates to match state.
- Collapsed Bash output reporting the wrong hidden-line count for outputs with many short lines — the count is now accurate.
- Tapping the “Jump to bottom” pill in fullscreen mode not dismissing it immediately — it now dismisses immediately.
Remote control
- Renaming a Remote Control session from claude.ai or the Claude mobile app not updating the local session name for
claude --resume— renames now propagate to the local session list.
Notes
/usageper-category breakdown: limit consumption is split out at a glance, which is useful for cost analysis and internal reporting. Per-MCP-server cost as its own line item is the biggest visibility change.- Four permission patches in one release: PowerShell
cdbypass, git-worktree write allowlist scope, PowerShell prefix/wildcard allow rules, and stalePWD/OLDPWD/DIRSTACKtracking all touch the permission model. Organizations that rely on plan/auto mode and allow rules for workspace boundaries should upgrade promptly. allowAllClaudeAiMcpsis an enterprise managed setting: it isn’t a user-level toggle. Turning it on loads claude.ai cloud MCP connectors alongsidemanaged-mcp.json, so verify the cloud connectors are consistent with your data policy before enabling.- macOS
findhost crashes addressed: large directory trees could exhaust the macOS file/vnode table and take down the host when runningfindthrough the Bash tool. Workarounds shouldn’t be needed after this release. /ultraplanand remote session false-fails cleared: failures with “Could not capture uncommitted changes” on clean working trees are resolved, so CI or automation flows calling/ultraplanare worth retrying./feedbackscope expanded: the report now includes pre-compaction conversation, which makes feedback from long sessions more actionable.