Claude Code 2.1.318: Power-User Guide to the Latest Features

Last updated: November 5, 2026

Related guide: Kimi Code 2.5: Power-User Guide to Remote Environments

Claude Code’s late-October and early-November builds (v2.1.314 through v2.1.318) add a hard block on writes outside your project, a separate effort level for subagents and mod side jobs, sign-in expiry warnings for scripts, an Agent SDK hook option that fails closed, and new admin controls. Fast mode for Opus 4.8 is removed November 30, 2026.

Contents

This guide covers only what changed since our earlier Claude Code power-user guide to mods, Code Review, models and pricing, which described the state of the tool through v2.1.312 (October 27, 2026). Every item below comes from Anthropic’s official release notes on GitHub and the Claude Code settings reference.

Release-by-release summary

Anthropic shipped four tagged releases in six days. Dates below are the GitHub publish dates in UTC.

Version Date (2026) Headline additions
v2.1.318 Nov 4 Mod fork effort option, sign-in expiry fields and warning, gateway assume_role on Mantle upstreams, record of mod opt-in answers
v2.1.317 Nov 3 Agent SDK hook onFailure: “block”, email-leak check for web and shell calls, /schedule connector warning, gateway cost report API, new OTel attributes
v2.1.316 Oct 31 CLAUDE_CODE_SUBAGENT_EFFORT, CLAUDE_CODE_DISABLE_ULTRATHINK, pooled group budgets, layered gateway policy, Opus 4.8 fast mode deprecation
v2.1.314 Oct 30 permissions.blockWritesOutsideWorkingDirectories, idle compaction in VS Code and Desktop, gateway upstream groups, Bedrock guardrail_trace

Demand is high: X’s recent-post counts showed roughly 97,000 English posts mentioning “Claude Code” in the seven days to November 5, and Google autocomplete suggests “claude code new features 2026” and “claude code subagent effort level”.

Safer writes, hooks and network calls

Block writes outside the working directories (v2.1.314). The new permissions.blockWritesOutsideWorkingDirectories setting makes Write, Edit and NotebookEdit refuse any path outside the working directories, in every permission mode. The settings reference notes that a true value is honored even when a managed source sets false, and that it requires v2.1.314 or later.

Hooks that fail closed (v2.1.317). Agent SDK hook callbacks accept onFailure: "block". If the callback itself throws or fails, the action is blocked instead of being allowed to run. Use it for policy hooks where a crash should never mean “approve”.

Scheduled-task connector warning (v2.1.317). /schedule warns when a new cloud scheduled task gets connectors you did not ask for, and explains how to remove them.

Effort controls for subagents and mods

Two changes separate the effort level of helper work from your main session:

  • CLAUDE_CODE_SUBAGENT_EFFORT (v2.1.316) sets the effort subagents run at when nothing else names one, instead of inheriting the session’s level.
  • A mod’s $.model.fork accepts an effort option (v2.1.318), so a quick side job can run at low regardless of the session’s effort. The result reports the effort that was sent.

v2.1.316 also adds CLAUDE_CODE_DISABLE_ULTRATHINK, which turns the ultrathink keyword off. If you are comparing effort settings across models, our Claude Haiku 5.5 guide to pricing, effort and migration explains how effort interacts with the smaller model.

How to apply the new settings

  1. Update Claude Code and confirm you are on v2.1.314 or later for the write block, v2.1.316 for subagent effort, and v2.1.318 for mod fork effort and expiry fields.
  2. Open your user or project settings file and add "permissions": {"blockWritesOutsideWorkingDirectories": true}.
  3. Export CLAUDE_CODE_SUBAGENT_EFFORT with the level you want subagents to default to, for example in your shell profile or CI environment.
  4. Optionally export CLAUDE_CODE_DISABLE_ULTRATHINK=1 to stop the ultrathink keyword from raising effort.
  5. In Agent SDK code, add onFailure: "block" to any hook callback that enforces policy.
  6. Run claude auth status and check the new loginExpiresAt field.
  7. If you use Opus 4.8 with fast mode, move those sessions to Opus 5.5 before November 30, 2026.

Headless and CI changes

Scripted use with claude -p got several reliability fixes that change exit behavior:

  • v2.1.318 adds credential_expires_at to claude -p JSON results and prints a one-line stderr warning in text output starting 10 days before a stored claude.ai sign-in ends.
  • v2.1.317 makes claude -p print an error and exit 1, instead of exiting 0, when a full disk or quota loses its transcript or ~/.claude.json writes.
  • v2.1.314 makes claude -p print the error and exit 1 when startup fails, where it previously exited 0 with no output.

If your pipeline treated exit code 0 as success, these changes may surface failures that were previously silent. For API-level changes that affect SDK users, see our Claude API version 2026-10-21 upgrade guide and the guide to Claude message threads for faster agent turns.

v2.1.314 also brings idle compaction to VS Code and the Code tab in Claude Desktop: a conversation over 200K tokens left idle is summarized, and the summary is used on your next message if the prompt cache has expired.

Admin and gateway features

Organizations running the Claude apps gateway got the largest batch of new controls:

  • Cost report API (v2.1.317): GET /v1/organizations/analytics/cost returns past spend over a date range, in total or per developer, per day or per IdP group.
  • Pooled group budgets (v2.1.316): one monthly budget shared by a group’s members, on top of each member’s own limit, set with pooled_budget on the spend limits admin API.
  • Layered policy (v2.1.316): managed.policy_mode: layered applies every matching policy, each merged over the ones below it.
  • Upstream groups (v2.1.314): an optional groups list routes only developers in the listed IdP groups to an upstream, including on failover.
  • AWS controls: assume_role on Mantle upstreams (v2.1.318), Bedrock guardrail_trace (v2.1.314) and guardrail.input_tagging (v2.1.316).

Opus 4.8 fast mode deprecation

The v2.1.316 notes state that fast mode for Opus 4.8 is deprecated as of October 30, 2026 and will be removed on November 30, 2026. After removal, fast mode requests on Opus 4.8 return an error and do not fall back to standard Opus 4.8. Anthropic’s stated migration path is Opus 5.5.

Known limitations and comparisons

The release notes do not list plan-specific availability for these features, and several items, such as the cost report and pooled budgets, apply only to the Claude apps gateway.

Compared with other terminal agents, Claude Code’s focus this cycle is enterprise governance and scripting safety rather than new user-facing commands. For alternatives that shipped feature releases in the same period, see the Antigravity CLI 1.5 guide and the OpenCode 2.2 guide to /goal and desktop plugins.

Frequently asked questions

What is the latest Claude Code version?

As of November 5, 2026, the newest release on the Claude Code GitHub releases page is v2.1.318, published November 4, 2026 (UTC). It follows v2.1.317 (November 3), v2.1.316 (October 31) and v2.1.314 (October 30).

When does fast mode for Opus 4.8 go away?

Anthropic deprecated fast mode for Opus 4.8 as of October 30, 2026 and says it will be removed on November 30, 2026. After that, fast mode requests on Opus 4.8 return an error with no fallback. The release notes say to migrate to Opus 5.5 to keep the speedup.

How do I set the effort level for Claude Code subagents?

Since v2.1.316, set the CLAUDE_CODE_SUBAGENT_EFFORT environment variable to choose the effort subagents use when nothing else names one, instead of inheriting the session’s level. For mods, v2.1.318 adds an effort option to $.model.fork.

How do I stop Claude Code from writing outside my project?

Set permissions.blockWritesOutsideWorkingDirectories to true in a settings file. Write, Edit and NotebookEdit then refuse paths outside the working directories in every permission mode. It requires Claude Code v2.1.314 or later, and a true value is honored even when a managed source sets false.

How can I see when my Claude Code sign-in expires?

In v2.1.318, claude auth status shows loginExpiresAt, and claude -p JSON results include credential_expires_at. Text output from claude -p also prints a one-line stderr warning starting 10 days before a stored claude.ai sign-in ends.

Sources:

Related answers

Leave a Comment