Source: ai-research/claude-code-docs-whats-new-w37-2026-09-18.md (official W37 digest, fetched 2026-09-18) + ai-research/claude-code-docs-changelog-2026-09-18.md (changelog v2.1.268–277, fetched 2026-09-18). Covers v2.1.263–v2.1.277 (September 7–18, 2026). Note: v2.1.262 does not appear in the changelog (matches the pattern of occasional skipped version numbers).

W37’s headline features are claude plugin eval (test suites for plugins with scored, reproducible results) and Desktop pane pop-out (drag any pane to a second window). The week through the time of this sweep (v2.1.277, September 18) also brings: fast mode in remote sessions, AGENTS.md support, send-now interrupt key, claude.ai skills sync to terminal, and a wave of gateway/observability additions. Continues Week 36.

Key Takeaways

  • claude plugin eval is live (v2.1.269) — run a plugin against a suite of test cases and get a scored comparison table showing what the plugin contributes vs. a baseline run without it. claude plugin eval init generates the test suite by asking what a good result looks like. Results save as report.html under evals/results/. Every eval run is a real model call; the default comparison baseline doubles the cost.
  • Desktop pane pop-out — any pane in the Claude Code Desktop app can be dragged out into its own window (diff, terminal, preview). Dock it back when done. Multi-screen workflows no longer require running separate terminal sessions.
  • maxEffortLevel setting (v2.1.269) — cap the effort level on a per-model or global basis, across all providers including Bedrock, Vertex AI, and Foundry. Useful for organizations that want to prevent accidental max effort runs on expensive models.
  • /output-style command (v2.1.269) — list and switch output styles from any session type, including non-interactive -p runs. Previously output styles were only adjustable in interactive sessions.
  • Auto mode denial now names the rule — when the auto mode classifier blocks an action, the reason Claude receives names the matching rule (e.g. [Data Exfiltration]). Turns a blocking event from opaque into debuggable.
  • Mid-prompt / command completion — typing / mid-prompt now shows a list of matching commands instead of a single suggestion. Plugin skills match on their name without the plugin prefix.
  • AGENTS.md support (v2.1.277) — Claude Code now reads AGENTS.md for project instructions when no CLAUDE.md is present. This closes a compatibility gap with codebases that use the AGENTS.md convention (used by Codex CLI and some other agents). Both files serve the same role; CLAUDE.md takes precedence when both exist.
  • Send-now key (v2.1.275/v2.1.277) — Ctrl+Enter / Ctrl+X Ctrl+S interrupts the current turn and sends queued messages. Useful for course-correcting a running turn without waiting for it to complete.
  • claude.ai skills sync to terminal sessions (v2.1.275) — skills installed in the claude.ai web app now sync to terminal Claude Code sessions on the same account. Previously, installing a skill via claude.ai did not affect the CLI.
  • /plugin install <plugin> --marketplace <source> (v2.1.275) — install a plugin directly from a named marketplace source without setting the marketplace as default first.
  • WebFetch deadline (v2.1.268) — WebFetch now fails after 300 seconds instead of hanging indefinitely. Set CLAUDE_CODE_WEBFETCH_DEADLINE_MS to change the deadline, or 0 to remove the limit.

claude plugin eval — test your plugin before shipping

The eval command has three parts:

claude plugin eval init — generates a test suite interactively. Claude asks what a good result looks like for your plugin (a task description), then proposes test cases and the scoring checks, runs the suite once, and writes the files to evals/ in your plugin directory.

claude plugin eval . — runs all cases in the suite and prints a scored comparison table. For each case, it shows the score with the plugin, the score without, and the delta. The “without” baseline is the default — it doubles the cost but shows what the plugin actually contributes.

report.html — saved to evals/results/ after every run. Contains per-run detail, not just the summary table that prints in the terminal.

# In your plugin's root directory:
claude plugin eval init     # interactive setup → writes evals/ directory
claude plugin eval .        # run suite, print table, write report.html

Every eval run is a real model call on your account. A suite with 10 cases and a comparison baseline = 20 model calls minimum per run.

This is the evaluation primitive the claude plugin eval skill in the W37 digest refers to. A /skill-doctor report (introduced in Week 36) shows usage data; plugin eval shows quality data. The two instruments are complementary.

Desktop pane pop-out

Any pane in the Claude Code Desktop app — diff, terminal, file preview — can be dragged out into its own browser window. The pane remains live (the diff refreshes as Claude edits; the terminal stays connected) and can be docked back by closing the pop-out window or via the dock button in the pane header.

Practical use: drag the diff panel to a second monitor while Claude continues working in the main window. Or pop the terminal to a second screen for a long-running job while keeping the conversation front and center on the primary screen.

AGENTS.md support (v2.1.277)

When no CLAUDE.md exists in a project, Claude Code now reads AGENTS.md for project instructions. CLAUDE.md takes precedence when both files are present; AGENTS.md is only read as a fallback.

This is a compatibility addition: AGENTS.md is used by Codex CLI (openai/codex) and some community-built agent frameworks as their equivalent of Claude Code’s CLAUDE.md. Projects using those tools can now open in Claude Code without having to rename or duplicate their project instructions file.

For new projects: the canonical Claude Code convention is still CLAUDE.md. AGENTS.md support is for cross-tool compatibility, not a replacement.

v2.1.268–v2.1.277: changelog entries beyond the W37 digest

The W37 digest covers v2.1.263–v2.1.269. Additional releases through the time of this sweep (September 18):

v2.1.270 — September 12

Single fix: read-only git commands unexpectedly asking for permission after running awhile (regression in v2.1.269, fixed immediately).

v2.1.271 — September 14

Notable additions:

  • Fast mode in Claude Code Remote sessions (cloud and self-hosted runners)
  • Mouse support in /config panel in fullscreen mode
  • Per-command allowed_domains for Bash, PowerShell, Monitor in auto mode — restrict which network destinations a specific shell command can reach, without writing a global deny rule
  • omitClaudeMd in agent frontmatter — skip CLAUDE.md loading for this agent definition. Use for subagents that should operate without inheriting the parent project’s instructions.
  • --accept-command <sha256> for claude plugin install/update — non-interactively accept a plugin’s install command by its sha256, enabling fully automated plugin management
  • multiplier in modelPricing (1-10) — applies a chargeback rate multiplier for internal cost accounting

Security fixes: cached org policy reused after account switch; org policy rejected by third-party proxies; enterprise managed-mcp.json read failures silently ignored; cloud sessions rejecting subagent tool calls with schema validation errors.

Bash permission fixes: missing file checks for fmt/column commands; wildcards in patterns skipping permission checks; shell variable declarations misrepresenting commands.

v2.1.272 — September 15

Bug fixes and reliability improvements (no itemised changelog).

v2.1.273 — September 15

  • Gateway hint headers (opt-in with CLAUDE_CODE_GATEWAY_HINT_HEADERS=1) — five new headers (x-claude-code-request-class, x-claude-code-agent-type, x-claude-code-prev-tool-durations, x-claude-code-compaction, x-claude-code-context-compacted) give gateway proxies per-request routing and caching signals
  • Forking remote-control sessions — sessions started with claude --remote-control or /remote-control can now be forked
  • MCP server disconnect notification — disconnections now show a notification with a /mcp pointer

Security fixes: allowManagedMcpServersOnly and deniedMcpServers were ignored with server-managed settings present (both are now respected); skills synced from claude.ai persisting after an organization disabled Skills (now correctly removed).

Major fixes: context meter counting advisor-tool turns at 2× real size; /tui refusing restart due to finished agent-team teammate; scheduled tasks running in wrong session after config was copied.

v2.1.274 — September 17

Observability additions:

  • CLAUDE_CODE_MCP_STARTUP_WAIT_MS — bound how long Claude Code waits for MCP servers to connect at startup; set to 0 to proceed immediately without waiting
  • effort attribute on claude_code.llm_request OTel span — correlate model requests with the effort level that produced them
  • claude_code.managed_settings_resolved OTel event — emitted when managed settings resolve, useful for debugging config inheritance
  • enduser.sub (IdP subject) in gateway telemetry — trace requests back to identity-provider subject identifiers
  • Gateway warning at 256+ open requests on a single replica

Critical fixes: sessions stuck endlessly retrying “unexpected tool_use_id” 400 errors now self-heal; Streamable HTTP MCP tool calls timing out after 5 minutes now fixed; MCP prompts/resources not refreshing on list-changed notifications.

v2.1.275 — September 17

  • Signed-in account display on Claude apps gateway sign-in screen
  • claude.ai skills sync to terminal sessions — skills installed via claude.ai web now sync to CLI sessions on the same account
  • /plugin install <plugin> --marketplace <source> — targeted installation from a named source
  • Memory dialog in VS Code — view, edit, and delete saved memory entries
  • Send attached images without typing text in VS Code

Fixes include: --forward-subagent-text dropping messages from forked skills; fullscreen freezing on large file diffs; stray </ccmemory> closing tags in responses; /rewind restoring zero-filled files in forked/background sessions.

v2.1.276 — September 18

Single regression fix: all requests failing with 400 … Input tag 'advisor_20260301' when ANTHROPIC_BASE_URL pointed at a proxy or gateway (introduced in v2.1.275).

v2.1.277 — September 18

  • AGENTS.md support (project instructions fallback when no CLAUDE.md)
  • CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY=1 — tell Claude Code that the gateway proxy marks the egress boundary; affects network-access decisions in auto mode
  • headers: map for Claude apps gateway upstreams — static headers for upstream requests from the gateway
  • Send-now key (Ctrl+Enter / Ctrl+X Ctrl+S) — interrupt the current turn and send queued messages

VS Code: Sign out row in panel menu; background shells and running tasks in agent map with Stop action; Copy response button and /copy command; session cost and token usage in Account & usage dialog.

Try It

  • Author a plugin? Run claude plugin eval init — let Claude draft your eval suite rather than writing test cases by hand. The comparison baseline shows whether your plugin is actually contributing.
  • Multi-monitor setup? Pop the diff panel to a second screen with the Desktop pane pop-out. /diff to toggle the panel, then drag to the second window.
  • Add AGENTS.md compatibility check to any cross-tool projects — if you share projects with Codex CLI users, both tools now read from the same file. CLAUDE.md still wins if both exist.
  • Set CLAUDE_CODE_WEBFETCH_DEADLINE_MS on any automation that fetches slow or large pages — the 300-second hard timeout prevents hung sessions in unattended pipelines.
  • Sync skills from claude.ai — skills installed in the web app now appear in your terminal sessions after v2.1.275. Check that any web-installed skills you use are now active in the CLI too.
  • If you run auto mode on Bedrock/Vertex/Foundry, check allowed_domains (v2.1.271) for Bash commands that should only reach specific hosts. This is the first per-command network scoping in auto mode.

Open Questions

  • Does AGENTS.md support fall back only to the project root, or does it walk directory levels like CLAUDE.md? CLAUDE.md has a three-level hierarchy (project / user / directory); whether AGENTS.md gets the same treatment is not stated.
  • What model does claude plugin eval use for scoring checks? The digest says “every check that has a second model judge the reply is a real model call” — but does not specify which model judges.
  • Does omitClaudeMd in agent frontmatter also skip AGENTS.md? Likely yes, but not stated explicitly.
  • Does fast mode in remote sessions (v2.1.271) have the same token/capability profile as fast mode in interactive sessions? Fast mode in interactive sessions was documented in Week 33; whether remote sessions see the same latency benefit is not confirmed.
  • CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY=1 — what exactly does this change? The changelog entry is one line; the effects on auto mode network decisions are not elaborated.
  • What’s New — Week 36 — the preceding digest (v2.1.251–261); Fable 5.1, background computer use, /diff panel, /skill-doctor.
  • Plugins and Marketplacesclaude plugin eval, --marketplace flag for install, claude plugin eval init workflow.
  • CLI ReferencemaxEffortLevel, /output-style, CLAUDE_CODE_WEBFETCH_DEADLINE_MS, omitClaudeMd, --accept-command, CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY, CLAUDE_CODE_MCP_STARTUP_WAIT_MS.
  • Hooks — auto mode denial now names the matched rule; forking for remote-control sessions.
  • Auto Mode — per-command allowed_domains (v2.1.271) for Bash/PowerShell/Monitor; denial reason naming.
  • Essential MCP ServersCLAUDE_CODE_MCP_STARTUP_WAIT_MS for controlling startup connection wait; list_changed tight-loop CPU fix (v2.1.271).
  • Scheduled Tasks — scheduled task session targeting fix (v2.1.273: tasks running in wrong session after config copy).
  • Agent Teams/tui restart fix with finished teammate (v2.1.273); agent map additions in VS Code.