claudekit / updates / claude-code-2-1-181
[ PATCH · ]

Claude Code 2.1.181

A new `/config key=value` syntax sets any setting straight from the prompt (e.g. `/config thinking=false`), working in interactive, `-p`, and Remote Control. A `CLAUDE_CLIENT_PRESENCE_FILE` environment variable suppresses mobile push notifications while you're at the machine, the bundled Bun runtime moves to 1.4, and long paragraphs now stream line-by-line instead of waiting for the first line break. A large batch of fixes lands across startup (a ~120ms regression, a 15-second blank-terminal hang), Write/Edit producing 0-byte files on network drives, prompt caching not reading on custom `ANTHROPIC_BASE_URL` and Foundry, macOS error -600 auth failures, and terminal rendering.

Official announcement →

This article is a summary based on official documentation.

What changed

Claude Code 2.1.181 shipped on June 17, 2026. A new /config key=value syntax lets you change settings straight from the prompt, alongside usability work on streaming, the subagent panel, and auto-retry. On top of that, a large batch of regressions and bugs across startup speed, file writes, authentication, credentials, and terminal rendering gets cleaned up.

New features

  • /config key=value syntax to set any setting from the prompt

    Changing a single setting meant going through a dedicated slash command or the settings file. You can now set any setting straight from the prompt (e.g. /config thinking=false) — it works in interactive, -p, and Remote Control.

  • CLAUDE_CLIENT_PRESENCE_FILE environment variable

    Mobile push notifications kept arriving even while you were sitting at the machine. Point this variable at a marker file to suppress mobile push notifications while you’re present.

  • sandbox.allowAppleEvents opt-in setting

    Sandboxed commands could not send Apple Events on macOS. The new sandbox.allowAppleEvents opt-in setting lets sandboxed commands send Apple Events.

Key improvements

  • Bundled Bun runtime upgraded to 1.4

    The bundled Bun runtime moves to 1.4.

  • Improved streaming of long paragraphs

    Long paragraphs waited for the first line break before any text showed. Text now appears line-by-line instead.

  • Auto-retry on connection drops mid-thinking

    An API connection drop mid-thinking just showed “Connection closed while thinking” and stalled. It now automatically retries.

  • Improved subagent panel

    A growing subagent list took over the screen and hid the controls. Idle subagents auto-hide after 30s, the list caps at 5 rows with scroll hints, and keyboard hints now show in the footer.

  • Improved MCP OAuth browser page

    The MCP OAuth page didn’t match Claude Code’s look and had to be closed by hand. It now matches Claude Code’s visual style and auto-closes on success.

  • Fullscreen URL opening requires Cmd/Ctrl+click

    URLs opened on a plain click in fullscreen mode, unlike native terminals. Opening a URL now requires Cmd+click (macOS) / Ctrl+click, matching native terminal behavior.

  • Simplified Improved N memories line

    The memory line listed every individual file and grew long. It no longer lists individual files outside verbose mode.

Bug fixes

Startup

  • Startup regression in fresh environments (~120ms) — introduced in 2.1.169, the first prompt waited for the managed-settings fetch even with no MCP servers configured. It no longer waits when no MCP servers are configured.
  • Startup blocking with a blank terminal for up to 15 seconds — when the account settings fetch is slow on a degraded network. Fixed.
  • Startup crash from a corrupted .claude.jsonTypeError: Cannot read properties of null when .claude.json contains corrupted null project entries. Fixed.
  • macOS TUI freezing at session start — Ctrl+C unresponsive when Spotlight is busy reindexing. Fixed.

Sessions & model

  • Long-running idle sessions losing their history — when another Claude Code process ran the 30-day transcript cleanup. Fixed.
  • /recap and conversation forks using the previous model — immediately after a model switch. Fixed.
  • Prompt caching not reading on custom ANTHROPIC_BASE_URL and on Foundry — caused by a per-request attestation token changing every turn. Fixed.
  • The API retry indicator staying on screen after the retry succeeded — “Retrying in 0s · attempt N/10” lingered after success. Fixed.

Subagents

  • Foreground subagents spawning unbounded nested chains — they now respect the same 5-level depth limit as background subagents.
  • Subagent “Thinking” duration showing the parent agent’s elapsed time — instead of the subagent’s own. Fixed.
  • Subagents blocked on a nested agent showing a ticking elapsed time — instead of “waiting” in the agent panel. Fixed.

Auth & credentials

  • open, osascript, and browser-based auth flows failing with error -600 on macOS — fixed by adding the Apple Events entitlement.
  • AWS awsCredentialExport credentials with a short remaining lifetime causing refreshes every minute — fixed, and it now accepts the JSON shape from aws configure export-credentials.

MCP & Remote Control

  • claude mcp get/list showing ✓ Connected when tools/list fails — they now show ! Connected · tools fetch failed with the error detail.
  • /remote-control leaving a stale “connecting…” line — it now confirms in the transcript once connected.

Files & settings

  • Write/Edit producing 0-byte or truncated files — on network drives and cloud-synced folders. Fixed.
  • ExitWorktree refusing to remove a clean worktree — failing with “Could not verify worktree state” when bare git cannot be resolved on Windows. Fixed.
  • Agent creation failing with “EEXIST: file already exists” — when the agents directory already exists (Windows/OneDrive). Fixed.
  • Settings changes failing with ENOENT/effort or /model failing when ~/.claude/settings.json is a relative symlink under a symlinked ~/.claude. Fixed.

Input & clipboard

  • Ctrl+C in fullscreen overwriting the clipboard — after a native terminal selection (modifier+drag), Ctrl+C overwrote the clipboard with the app’s prior selection. Fixed.
  • Ctrl+V showing “No image found in clipboard” instead of pasting — when the clipboard contains text. Fixed.
  • /copy and copy-on-select on Linux not detecting a clipboard utility — installed after Claude Code started. Fixed.

Display & rendering

  • IDE selection line numbers off by one — in context reminders (IntelliJ and VS Code). Fixed.
  • AskUserQuestion preview content cut off at the dialog edge — instead of word-wrapping. Fixed.
  • AskUserQuestion multi-select questions silently dropping a typed “Other” free-text answer — when submitting. Fixed.
  • /stats “Most active day” and daily token chart dates showing one day early — in UTC-negative timezones. Fixed.
  • Tab-indented code rendering with incorrect indentation — in the Write (create-file) preview. Fixed.
  • User prompts queued mid-turn not showing a full-width background highlight — in the transcript. Fixed.
  • The activity spinner’s pulse dwelling on the wrong glyph size — in Ghostty. Fixed.

Notes

  • /config works everywhere/config key=value works in interactive, -p, and Remote Control (e.g. /config thinking=false).
  • macOS Apple Events permission — the error -600 failures in open, osascript, and browser auth flows are resolved by the new Apple Events entitlement. To let sandboxed commands send Apple Events, you still need to opt in with sandbox.allowAppleEvents.
  • Suppress mobile push while at the machine — point CLAUDE_CLIENT_PRESENCE_FILE at a marker file to suppress mobile push notifications while you’re present.
  • Foreground subagents are now capped at 5 levels — they respect the same nesting depth limit as background subagents.