v2.1.86
2.1.86
Highlights:
- Added X-Claude-Code-Session-Id header to requests so proxies can group sessions without parsing bodies
- Added debug-before-escalate rule: require on-call diagnosis/fix attempts before escalation to cut handoffs
- Removed requirement for Bash command descriptions, allowing concise command-only responses for easier parsing
CLI changelog
- Added X-Claude-Code-Session-Id header to API requests so proxies can aggregate requests by session without parsing the body
- Added .jj and .sl to VCS directory exclusion lists so Grep and file autocomplete don't descend into Jujutsu or Sapling metadata
- Fixed --resume failing with "tool_use ids were found without tool_result blocks" on sessions created before v2.1.85
- Fixed Write/Edit/Read failing on files outside the project root (e.g., ~/.claude/CLAUDE.md) when conditional skills or rules are configured
- Fixed unnecessary config disk writes on every skill invocation that could cause performance issues and config corruption on Windows
- Fixed potential out-of-memory crash when using /feedback on very long sessions with large transcript files
- Fixed --bare mode dropping MCP tools in interactive sessions and silently discarding messages enqueued mid-turn
- Fixed the c shortcut copying only ~20 characters of the OAuth login URL instead of the full URL
- Fixed masked input (e.g., OAuth code paste) leaking the start of the token when wrapping across multiple lines on narrow terminals
- Fixed official marketplace plugin scripts failing with "Permission denied" on macOS/Linux since v2.1.83
- Fixed statusline showing another session's model when running multiple Claude Code instances and using /model in one of them
- Fixed scroll not following new messages after wheel scroll or click-to-select at the bottom of a long conversation
- … +14 more CLI changelog entries
Source: https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md#2186
Metadata
-
Time since 2.1.85 release: 23h 34m 30s
-
Bundle file size: +47.8 kB (+0.4%)
-
Est. LOC (prettified): +1,420 (+0.4%)
-
Prompt files: +4 (+0.1%)
-
Prompt tokens: +821 (+0.2%)
Prompt token mix by kind:
- system: 82.8%→82.7%
- system-reminder: 13.0%→13.0%
- tools: 3.6%→3.6%
- agent: 0.6%→0.6%
Files:
- metadata: 7bb8fdd/meta/metadata.md#diff-a08dfa163baef97ea4f56d29009ac65f5f7dbc46e3a58e80d7aa06a2a2520899L10-R10
- prompt stats: 7bb8fdd/meta/prompt-stats.md#diff-fa8e31336ece71d159f37b6fd4ed0c61939849140bd5c08c7ca793b5b2ae7f58L1-R1
System prompt changes
Notable changes:
- Claude’s Skill guidance got shortened: update-config/loop/schedule descriptions lost details/examples, and claude-api “DO NOT TRIGGER” exclusions were cut. This can change when Claude decides to invoke these skills and reduces specificity for correct routing.
- Claude is now instructed to investigate failures first: read errors, check assumptions, try a targeted fix; avoid blind repeat retries but also avoid abandoning a viable approach after one failure. AskUserQuestion is framed as escalation only after real investigation.
- Claude’s “avoid premature abstraction” rule now adds a second constraint: avoid half-finished implementations. Net effect: Claude should still keep designs minimal, but is nudged to fully implement what the task requires instead of stopping at partial solutions.
- Claude no longer has an explicit Bash guideline to write a clear, user-facing description of each command (with extra context for complex pipelines/flags). This can reduce how much Claude explains Bash actions before running them.
Links:
- 1bf8182/cc-prompt.md#diff-b0a16d13c25d701124251a8943c92de0ff67deacae73de1e83107722f5e5d7f1L28-R28
- 1bf8182/cc-prompt.md#diff-b0a16d13c25d701124251a8943c92de0ff67deacae73de1e83107722f5e5d7f1L73-R73
- 1bf8182/cc-prompt.md#diff-b0a16d13c25d701124251a8943c92de0ff67deacae73de1e83107722f5e5d7f1L77-R77
- 1bf8182/cc-prompt.md#diff-b0a16d13c25d701124251a8943c92de0ff67deacae73de1e83107722f5e5d7f1L408-R408