Source Intelligence

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

All releases Home olderv2.0.37 v2.0.42newer

Claude Code v2.0.41

21 entries read diff v2.0.37 → v2.0.41 Markdown

Version 2.0.41 introduces major improvements to git workflow management, including automatic tracking of uncommitted changes and unpushed commits, enhanced multi-agent planning with structured 4-phase workflows, and better terminal rendering with improved ANSI escape sequence handling and Unicode support.

Find
Pick an entry · j / k steps through
21 entries

Changesopen

Git Repository Status Tracking#

What: Comprehensive git status detection for branch management and workflow automation

How it works:

  • Automatically detects commits ahead of default branch (main/master)
  • Checks for uncommitted changes in working directory
  • Detects unpushed commits to remote
  • Warns before switching branches with uncommitted/unpushed work

Details:

  • New functions: lJ1() at line 87137 (comprehensive status aggregator), Hn9() at line 87127 (commit counting), dJ1() at line 87177 (default branch detection)
  • Integrated into branch switching workflows
  • Prevents accidental loss of work during teleport operations
  • Evidence: lJ1() at line 87137, Hn9() at line 87127, dJ1() at line 87177 in pretty-v2.0.41.js

Uncommitted Changes UI#

What: Interactive dialog when switching branches with uncommitted or unpushed changes

How to trigger:

# Automatically appears when switching branches with uncommitted work
claude  # then use teleport feature

Details:

  • Shows different warnings for uncommitted changes vs unpushed commits
  • Provides three options: Continue without committing, Commit and push changes, Cancel operation
  • Prevents data loss during branch switches
  • Evidence: uT2() at line 428379 in pretty-v2.0.41.js (replaces unrelated function at line 428358 in v2.0.37)

Automatic Upstream Branch Setup#

What: Automatically configures upstream tracking after git checkout

How it works: After checking out a branch, automatically runs:

git branch --set-upstream-to=origin/<branch> <branch>

Details:

  • Checks if upstream is already configured
  • Verifies remote branch exists before setting upstream
  • Logs all actions for debugging
  • Called automatically after branch checkout operations
  • Evidence: tl5() at line 427581 in pretty-v2.0.41.js (new function, doesn't exist in v2.0.37)

Brace Expansion for CLAUDE.md Paths#

What: Glob-style brace expansion in CLAUDE.md frontmatter configuration

How to use:

paths: src/{components,utils}/{*.ts,*.tsx}

Expands to:

src/components/*.ts
src/components/*.tsx
src/utils/*.ts
src/utils/*.tsx

Details:

  • Custom implementation supporting nested braces
  • Recursive expansion for complex patterns
  • Used in CLAUDE.md frontmatter paths: field
  • Evidence: nP0() at line 52984, aP0() at line 53002 in pretty-v2.0.41.js (not present in v2.0.37)

VCS Account Linking#

What: OAuth-based GitHub account linking with Claude account

How it works:

  • Automatically detects GitHub authentication via gh CLI
  • Links GitHub account to Anthropic backend
  • Enables enhanced GitHub integration features

Details:

  • API endpoint: https://api.anthropic.com/api/claude_code/link_vcs_account
  • Feature flag: vcs_account_linking_enabled
  • Runs in background after authentication
  • Tracks organization UUID and billing type
  • Evidence: cl5() at line 426586, mt1() at line 426608 in pretty-v2.0.41.js (not in v2.0.37)

Conductor App Detection#

What: Detects when running inside Conductor desktop app

Details:

  • Checks process.env.__CFBundleIdentifier === "com.conductor.app"
  • Allows behavior customization for Conductor environment
  • Similar to existing IDE detection (VSCode, Cursor, etc.)
  • Evidence: Vb9() at line 47155 in pretty-v2.0.41.js (v2.0.37 has different code at line 47461)

Glob Operations with Ripgrep (Experimental)#

What: Optional performance optimization using ripgrep for file pattern matching

How to use: Requires feature flag tengu_glob_with_rg to be enabled.

Details:

  • Uses rg --files --glob <pattern> for matching
  • Sorts results by modification time
  • Includes hidden files
  • Respects ignore patterns
  • Performance benefit for large codebases
  • Evidence: Feature flag check at line 483919 in pretty-v2.0.41.js (not in v2.0.37)

Enhanced Multi-Agent Plan Mode#

What: Structured 4-phase planning workflow with parallel agent coordination

How it works:

  1. Phase 1: Initial Understanding - Read 3-4 relevant files, clarify ambiguities
  2. Phase 2: Multi-Agent Planning - Launch 2 to N agents in parallel with different perspectives
  3. Phase 3: Synthesis - Collect responses, ask trade-off questions
  4. Phase 4: Final Plan - Present synthesized recommendation

Details:

  • Quality over quantity: meaningful contrasts between agent perspectives
  • Dynamic perspective generation (e.g., "simplicity vs performance vs maintainability")
  • Parallel agent launches in single message (multiple tool calls)
  • Context-aware perspective selection based on task type
  • Evidence: Enhanced workflow at line 475195 in pretty-v2.0.41.js (basic version at line 473774 in v2.0.37)

Network Path Security Enhancements#

What: Expanded detection of suspicious Windows network paths

Improvements over v2.0.37:

  • Added DavWWWRoot detection (WebDAV mounted drives)
  • Added IP address-based UNC path detection (IPv4 and IPv6)
  • Added forward slash variants for all patterns
  • Added SSL port notation patterns (@SSL@, @\d+@SSL)

Details:

  • Protects against WebDAV attacks
  • Validates paths before execution
  • Shows security warnings for suspicious paths
  • Evidence: ddA() at line 222047 in pretty-v2.0.41.js (enhanced from i2Q() at line 222404 in v2.0.37)

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

ANSI Escape Sequence Handling#

What: Improved parsing of terminal color codes and escape sequences

Details:

  • Proper handling of 256-color codes (ESC[38;5;Nm)
  • Proper handling of RGB color codes (ESC[38;2;R;G;Bm)
  • Fixes rendering bugs with complex color sequences
  • More accurate terminal width calculations
  • Evidence: Km9() at line 76407, Em9() at line 76423 in pretty-v2.0.41.js (different code at same lines in v2.0.37)

Unicode Text Segmentation#

What: Better handling of emoji and full-width characters in terminal output

Details:

  • Uses Intl.Segmenter for proper grapheme cluster detection
  • Detects full-width characters (CJK, emoji) for alignment
  • Prevents terminal rendering issues with Unicode
  • Evidence: Nm9() at line 76699, $m9 initialization at line 76716 in pretty-v2.0.41.js (enhanced from v2.0.37)

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

TodoList Tool Documentation#

What: Comprehensive examples and guidance for todo list usage

Improvements:

  • Added 4 detailed examples of when TO use (dark mode implementation, function renaming, e-commerce features, React optimization)
  • Added 4 examples of when NOT to use (simple questions, informational requests, single edits, commands)
  • Clarified activeForm requirement ("Fix bug" → "Fixing bug")
  • Emphasized exactly ONE task must be in_progress at a time
  • Added guidance not to mark tasks complete if tests fail

Details:

  • Better user experience through clearer task status
  • Prevents misuse for trivial tasks
  • Ensures systematic progress tracking
  • Evidence: Enhanced documentation in Kv0 tool description at lines 1287-1469 in diff

ExitPlanMode Tool Clarification#

What: Clearer guidance on appropriate use of plan mode

Details:

  • Only for tasks requiring code implementation planning
  • NOT for research/understanding tasks
  • Must clarify ambiguities before exiting
  • Added 3 specific examples distinguishing planning vs research
  • Evidence: Enhanced guidance in a12() at lines 1902-1917 in diff

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

LSP Diagnostic Improvements#

What: Better handling of Language Server Protocol diagnostics

Details:

  • Deduplication of diagnostics across multiple LSP servers
  • More detailed logging for diagnostic delivery
  • Better error messages for malformed LSP responses
  • Reduces duplicate error reports in editor
  • Evidence: Enhanced diagnostic handling at lines 1710-1734 in diff

Error Message Improvements#

What: More specific error types and clearer user feedback

New error types:

  • repeated_529 - Rate limit errors with specific guidance
  • prompt_too_long - Oversized prompts with size information
  • pdf_too_large - PDF page limit violations
  • oauth_org_not_allowed - OAuth restriction details

Details:

  • Better categorization of error conditions
  • More actionable error messages
  • Context-specific troubleshooting hints
  • Evidence: New error types at lines 1499-1554 in diff

Slash Command Documentation#

What: Enhanced explanation of slash command behavior

Details:

  • Clearer explanation that commands expand to prompts
  • Shows <command-message> format example
  • Warning not to invoke commands already running
  • Better understanding of command execution model
  • Evidence: Enhanced documentation at lines 96963-96982 in diff

MCP Tool Token Tracking#

Separate token usage tracking for MCP tools, distinguishing them from built-in tools in context window breakdown.

Evidence

Token tracking at lines 97073-97152 in diff

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

Hook Summary Messages#

Consolidated plugin hook execution summaries showing hook count, errors, and prevention status with better formatting.

Evidence

FaQ(), ij6() at lines 3166-3181, 1625-1648 in diff

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

Truncation Indicators#

Better warnings for truncated content, showing kilobytes removed for large tool results and warnings for git status truncation.

Evidence

Improvements at lines 1174, 2150-2151 in diff

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

Thinking Mode Metadata#

Enhanced thinking mode integration with better metadata passing and settings synchronization for alwaysThinkingEnabled.

Evidence

dwQ(), pwQ() at lines 61382-61438, 3485-3486 in diff

Note: This changelog covers changes from v2.0.37 to v2.0.41. All line numbers reference the prettified source files in the archive. Function names are from the minified/obfuscated source and may not reflect original implementation names.

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

Verbatim
Official · Anthropic

Anthropic’s official release notes

Published verbatim by Anthropic for v2.0.41. Text is unmodified from the upstream changelog. Everything else on this page came out of the bundle instead, which is why the two lists don't match.

  • Added model parameter to prompt-based stop hooks, allowing users to specify a custom model for hook evaluation
  • Fixed slash commands from user settings being loaded twice, which could cause rendering issues
  • Fixed incorrect labeling of user settings vs project settings in command descriptions
  • Fixed crash when plugin command hooks timeout during execution
  • Fixed: Bedrock users no longer see duplicate Opus entries in the /model picker when using --model haiku
  • Fixed broken security documentation links in trust dialogs and onboarding
  • Fixed issue where pressing ESC to close the diff modal would also interrupt the model
  • ctrl-r history search landing on a slash command no longer cancels the search
  • SDK: Support custom timeouts for hooks
  • Allow more safe git commands to run without approval
  • Plugins: Added support for sharing and installing output styles
  • Teleporting a session from web will automatically set the upstream branch
System prompt

The system prompt was not captured for this release, so this page cannot say whether it moved.