Developer Tools & APIs

Claude Code v2.1.163: Version Guardrails, Plugin Management, and a Sweep of Windows Fixes

Claude Code's latest release adds enterprise version enforcement, a /plugin list command, hook improvements, and fixes a pile of Windows and terminal rendering issues.

developer tools apis category

Claude Code v2.1.163 is a solid operational update rather than a headline-grabbing features release. It tightens enterprise controls, improves plugin visibility, gives hook authors more flexibility, and works through a meaningful backlog of Windows and terminal issues. Here is what changed and why it matters.

Enterprise Version Guardrails

The biggest addition for organisations managing Claude Code deployments is a pair of new managed settings: requiredMinimumVersion and requiredMaximumVersion.

When these are configured, Claude Code checks its own version at startup and refuses to launch if it falls outside the allowed range, directing the user to an approved version instead. This is straightforward to understand but genuinely useful in practice. Enterprise teams often need to pin tooling to specific versions for security audits, compliance reasons, or simply to avoid capability drift across a development team. Until now, there was no built-in mechanism to enforce that. Now there is.

If you manage Claude Code at an org level, this is the setting you have been waiting for.

Plugin Management Gets a New Command

Plugins for Claude Code are still in public beta, but the ecosystem is growing. This release adds /plugin list as a dedicated subcommand, with --enabled and --disabled filters so you can quickly see what is installed and in what state.

It sounds minor, but discoverability matters. As plugin counts grow, being able to run /plugin list --disabled to spot anything that should be active is a small but practical quality-of-life gain for both individual developers and teams doing environment audits.

A Handy Shortcut in /btw

The /btw command gives you a quick answer from Claude without interrupting your main task flow. This release adds a c keyboard shortcut inside that view to copy the raw markdown answer to your clipboard.

The key word there is raw markdown. Rather than copying rendered text (which can lose formatting when pasted into a document or Slack message), you get the source markdown. Paste it into Notion, a README, or a PR description and it arrives formatted correctly. Small addition, but one of those things you will use constantly once you know about it.

Stop and SubagentStop Hooks Can Now Keep a Turn Going

This one is more technical but significant for anyone building custom automation on top of Claude Code.

Previously, Stop and SubagentStop hooks could signal that something had happened, but they could not easily pass feedback back into the current turn without it being treated as an error. Now, these hook types can return hookSpecificOutput.additionalContext, which injects feedback into the ongoing turn and keeps it moving, without triggering an error state.

For teams using Claude Code in CI pipelines or building sophisticated agentic workflows with custom hooks, this unlocks cleaner loop management. You can have a Stop hook check a condition, provide context, and allow the turn to continue, all without needing to work around the error classification system.

Windows and Terminal Fixes

This release includes a notable sweep of Windows-specific and terminal rendering fixes, which is worth calling out directly rather than burying in a changelog footnote.

Windows fixes include:

  • The EEXIST error when the session-env directory had the read-only attribute or lived inside OneDrive is resolved.
  • Scrolling in attached background sessions now works properly on Windows, including PgUp/PgDn, mouse wheel, and Ctrl+O transcript navigation.
  • A crash when closing the terminal while attached to a background session is fixed.
  • Pressing the left arrow key in claude agents no longer leaves the list unresponsive to keyboard input.
  • Ghost characters appearing at the left edge when switching panes in Agent View on Windows Terminal with CJK content are gone.

General terminal improvements:

  • The layout engine’s JIT compilation profile has been stabilised, improving overall rendering performance.
  • Large file write rendering performance is also improved.
  • VS Code users seeing garbled glyphs now get a visible tip suggesting they disable terminal GPU acceleration or run /terminal-setup.

If you have been tolerating any of these issues, the upgrade is straightforward.

A Few Other Fixes Worth Knowing About

CI pipeline fix: claude -p was failing with “ANTHROPIC_API_KEY required” on Bedrock, Vertex, and Foundry when CI=true was set but no Anthropic API key was present. This affected teams running Claude Code in automated pipelines with alternative providers. It is fixed.

Background task fix: Background sessions in claude agents were losing their running tasks when reattached after a Claude Code update. That is resolved.

Session ID consistency: stdio MCP servers now receive the same CLAUDE_CODE_SESSION_ID as hooks and Bash when using --resume. Previously this was inconsistent, which could cause issues in tooling that relied on session continuity.

Security fix: A regression where a custom API gateway could receive the user’s Anthropic OAuth credential instead of the gateway’s own token has been corrected. Worth noting if you run Claude Code through a custom gateway setup.

Update behaviour fix: claude update was installing the latest version rather than the configured release channel’s version for npm installations. It now respects the channel correctly.

The Bigger Picture

This release sits in a broader period of rapid Claude Code development. The tool has been moving quickly across model defaults, plugin infrastructure, and enterprise controls. v2.1.163 is less about new capabilities and more about making the existing ones reliable and controllable, especially for teams running Claude Code at scale or in automated environments.

The version guardrails, the hook improvements, and the CI fix in particular signal that Anthropic is paying attention to how organisations are deploying this in production, not just how individual developers use it on their laptops.