Claude Code 2.1.312 adds an oidc.user_id_claim setting for the Claude apps gateway, stops Claude from overwriting a very large CLAUDE.md after reading only its start, and changes how Bedrock, Vertex, Foundry and Mantle handle unrecognized model names, according to Anthropic’s v2.1.312 release notes. Anthropic released it on GitHub on October 27, 2026.

Applies to: Claude Code 2.1.312. Last checked: October 29, 2026.

On this page

What was added

  • oidc.user_id_claim for the Claude apps gateway: identifies people by an id_token claim other than sub, such as Microsoft Entra ID’s oid (release notes).
  • Click to send: in fullscreen, clicking the “to send now” hint under a queued message sends it right away.
  • Cloud sessions: an effort level in the model picker when you create or edit a routine that runs in the cloud, and a Bash editor with line numbers and a Copy button for the setup script box in cloud environment settings.

Fixes for CLAUDE.md, skills and claude -p

The changelog lists several fixes that touch project files and scripted runs:

  • Claude could overwrite a very large CLAUDE.md, rules file or @-included file in a subdirectory after seeing only its start. Anthropic says Write now asks Claude to read it all or edit in place. How those files load is covered in CLAUDE.md best practices.
  • Per-directory and paths: skills were not found after a Bash cd deeper into a git repository. See Claude Code skills for how skills are scoped.
  • A command with an invalid name stopped all commands from loading, which could leave claude -p with no output.
  • Managed settings and organization policy were not fetched for the rest of the session after signing in from the VS Code extension.
  • The Read tool sometimes failed on PDF pages with “pdftoppm failed: Could not write image” when old session files were being cleaned up at the same time.

Changed defaults on Bedrock, Vertex, Foundry and Mantle

Anthropic changed Bedrock, Vertex, Foundry and Mantle to use the shorter system prompt for model names Claude Code doesn’t recognize, such as custom deployment names and inference profile ARNs, “even when they front Sonnet or Haiku” (release notes). To keep the full prompt, the notes give this setting:

CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0

Automatic model switches after a flagged message now also cover unrecognized model names. The notes say to set CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1 to turn them off. Setup for these providers is in the Amazon Bedrock and Vertex AI guides.

Hooks, subagents and telemetry

  • Prompt and agent hooks now run at most 24 at a time per session, sub-agents included, plus at most 12 that have waited longer than their event’s timeout; a timeout under 1 second now counts as 1 second (release notes). For hook configuration, see Claude Code hooks.
  • A subagent’s autoCompactWindow now lowers the window set by CLAUDE_CODE_AUTO_COMPACT_WINDOW; Anthropic says it still never raises it.
  • Claude Code stops sending the claude_code.safety_event OpenTelemetry event, and mcp_server.name reports the real name of fixed-URL remote MCP servers declared by plugins from the official Anthropic marketplace instead of custom.
  • Usage limit messages now call the 5-hour window the “5-hour limit” instead of the “session limit”, and the VS Code extension shows resets as a clock time.