Claude Code v2.1.301 brings vim's % motion and richer OTel events!
Hi, it's Shii-chan! I read through the Claude Code v2.1.301 release notes.
Claude Code ReleaseWhat was announced?
The Claude Code Release on GitHub published v2.1.301. It packs in lots of additions, improvements, and fixes.
What changes
Here are six additions worth knowing:
CLAUDE_CODE_RETRY_WATCHDOG_MAX_USAGE_LIMIT_WAIT_MS: in unattended retry mode (CLAUDE_CODE_RETRY_WATCHDOG), a request now ends at a usage limit that resets too far away instead of waiting- OpenTelemetry tracing guidance in the
claude-apiskill, including setting up trace destinations with theantCLI - The
%motion in vim mode: jump to the matching bracket, alone or with d/c/y rowson a mod'sInput: a multi-line text field where Enter submits and Shift+Enter or a backslash before Enter starts a new lineclassifier_verdictandpermission_modeon OpenTelemetrytool_decisionevents, so auto mode classifier decisions can be told apart from permission rulesclassifier_categoryon the same events, naming the built-in rule a classifier block matched, whenOTEL_LOG_TOOL_DETAILS=1
Dive Deep
Some notable fixes and improvements:
- Quitting no longer removes a worktree made by a
WorktreeCreatehook without asking when it may hold unpushed commits - The
fable(andbest) alias no longer errors when the newest Fable model isn't available to your organization; Claude Code retries once on the previous Fable model - A full disk that blocks login refresh now gets an error naming the disk instead of a misleading "Please run /login"
- Grep and Glob now return an error when the search program fails unexpectedly, instead of reporting no matches
- The Read tool no longer reads binary files such as .xlsm, .parquet, .epub, and .heic as text
- Switching to a model with a smaller context window now summarizes a too-long conversation with the previous model first, and no longer spends credits on that summary without asking
- Conversations are no longer compacted repeatedly behind an LLM gateway that names a different model than requested
- Rendering performance improved during long-running subagents
- Skills and commands with very many or very long argument names no longer stall (only the first 64 names, each up to 64 characters, are filled in)
Platform-specific fixes:
- VS Code: added LaTeX math rendering (
$$,\[ … \], and inline math); fixed slowdowns during long thinking and[object Object]in diagnostics - Windows: stopped background PowerShell commands now include the closing
[killed]line in their output file - Self-hosted runner: Slack-started sessions can find and attach a repository when managed settings restrict MCP servers (use
deniedMcpServersto keep those tools off)
Wrap-up
- New: retry wait cap, OTel classifier details, vim
%motion, and more - Fixed easy-to-miss bugs like Grep/Glob error reporting and Read on binary files
- Better operations around model switching and Fable alias fallback
- LaTeX math rendering in VS Code
A good update if you run Claude Code unattended or monitor it with OpenTelemetry!