v2.1.30
Claude CodeSummary
This release introduces significant enhancements to the Read tool, allowing specific page ranges for PDFs and returning lightweight references for very large documents. Key fixes address issues with phantom content in API history and session corruption hangs. Additionally, new debugging tools and improved memory management for session resumption enhance overall stability and usability.
New Features
- Added `pages` parameter to the Read tool for PDFs, allowing specific page ranges to be read (e.g., `pages: "1-5"`).
- Enabled lightweight reference return for large PDFs (>10 pages) when mentioned with `@` instead of inlining them into context.
- Added pre-configured OAuth client credentials support for MCP servers lacking Dynamic Client Registration (e.g., Slack) using `--client-id` and `--client-secret` with `claude mcp add`.
- Added `/debug` command to help troubleshoot the current session.
- Added support for additional `git log` and `git show` flags in read-only mode (e.g., `--topo-order`, `--cherry-pick`, `--format`, `--raw`).
- Added token count, tool uses, and duration metrics to Task tool results.
- Added reduced motion mode to the configuration settings.
- Added multiline input support to the "Other" text input in VSCode question dialogs (using Shift+Enter for new lines).
Bug Fixes
- Fixed phantom "(no content)" text blocks appearing in API conversation history, which reduced token waste and potential model confusion.
- Fixed prompt cache not correctly invalidating when tool descriptions or input schemas changed (it previously only invalidated when tool names changed).
- Fixed 400 errors that could occur after running `/login` when the conversation contained thinking blocks.
- Fixed a hang that occurred when resuming sessions with corrupted transcript files containing `parentUuid` cycles.
- Fixed rate limit message showing an incorrect "/upgrade" suggestion for Max 20x users when extra-usage is unavailable.
- Fixed permission dialogs stealing focus while the user was actively typing.
- Fixed subagents being unable to access SDK-provided MCP tools because they were not synced to the shared application state.
- Fixed a regression where Windows users with a `.bashrc` file could not run bash commands.
- Fixed duplicate sessions appearing in the VSCode session list when starting a new conversation.
Improvements
- Improved memory usage for `--resume` (68% reduction for users with many sessions) by replacing the session index with lightweight stat-based loading and progressive enrichment.
- Improved the `TaskStop` tool to display the stopped command/task description in the result line instead of a generic "Task stopped" message.
- Changed `/model` command to execute immediately instead of being queued.