spacehub

surshar / claude-code

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

Built by Anthropic · github.com/anthropics

claude-code / CHANGELOG.md
GitHub Actionschore: Update CHANGELOG.md 6358669 · on Dec 11, 2025 History
1,085 lines · 43.1 KBPreviewCodeRaw
1# Changelog
2
3## 2.0.65
4
5- Added ability to switch models while writing a prompt using alt+p (linux, windows), option+p (macos).
6- Added context window information to status line input
7- Added `fileSuggestion` setting for custom `@` file search commands
8- Added `CLAUDE_CODE_SHELL` environment variable to override automatic shell detection (useful when login shell differs from actual working shell)
9- Fixed prompt not being saved to history when aborting a query with Escape
10- Fixed Read tool image handling to identify format from bytes instead of file extension
11
12## 2.0.64
13
14- Made auto-compacting instant
15- Agents and bash commands can run asynchronously and send messages to wake up the main agent
16- /stats now provides users with interesting CC stats, such as favorite model, usage graph, usage streak
17- Added named session support: use `/rename` to name sessions, `/resume <name>` in REPL or `claude --resume <name>` from the terminal to resume them
18- Added support for .claude/rules/`. See https://code.claude.com/docs/en/memory for details.
19- Added image dimension metadata when images are resized, enabling accurate coordinate mappings for large images
20- Fixed auto-loading .env when using native installer
21- Fixed `--system-prompt` being ignored when using `--continue` or `--resume` flags
22- Improved `/resume` screen with grouped forked sessions and keyboard shortcuts for preview (P) and rename (R)
23- VSCode: Added copy-to-clipboard button on code blocks and bash tool inputs
24- VSCode: Fixed extension not working on Windows ARM64 by falling back to x64 binary via emulation
25- Bedrock: Improve efficiency of token counting
26- Bedrock: Add support for `aws login` AWS Management Console credentials
27- Unshipped AgentOutputTool and BashOutputTool, in favor of a new unified TaskOutputTool
28
29## 2.0.62
30
31- Added "(Recommended)" indicator for multiple-choice questions, with the recommended option moved to the top of the list
32- Added `attribution` setting to customize commit and PR bylines (deprecates `includeCoAuthoredBy`)
33- Fixed duplicate slash commands appearing when ~/.claude is symlinked to a project directory
34- Fixed slash command selection not working when multiple commands share the same name
35- Fixed an issue where skill files inside symlinked skill directories could become circular symlinks
36- Fixed running versions getting removed because lock file incorrectly going stale
37- Fixed IDE diff tab not closing when rejecting file changes
38
39## 2.0.61
40
41- Reverted VSCode support for multiple terminal clients due to responsiveness issues.
42
43## 2.0.60
44
45- Added background agent support. Agents run in the background while you work
46- Added --disable-slash-commands CLI flag to disable all slash commands
47- Added model name to "Co-Authored-By" commit messages
48- Enabled "/mcp enable [server-name]" or "/mcp disable [server-name]" to quickly toggle all servers
49- Updated Fetch to skip summarization for pre-approved websites
50- VSCode: Added support for multiple terminal clients connecting to the IDE server simultaneously
51
52## 2.0.59
53
54- Added --agent CLI flag to override the agent setting for the current session
55- Added `agent` setting to configure main thread with a specific agent's system prompt, tool restrictions, and model
56- VS Code: Fixed .claude.json config file being read from incorrect location
57
58## 2.0.58
59
60- Pro users now have access to Opus 4.5 as part of their subscription!
61- Fixed timer duration showing "11m 60s" instead of "12m 0s"
62- Windows: Managed settings now prefer `C:\Program Files\ClaudeCode` if it exists. Support for `C:\ProgramData\ClaudeCode` will be removed in a future version.
63
64## 2.0.57
65
66- Added feedback input when rejecting plans, allowing users to tell Claude what to change
67- VSCode: Added streaming message support for real-time response display
68
69## 2.0.56
70
71- Added setting to enable/disable terminal progress bar (OSC 9;4)
72- VSCode Extension: Added support for VS Code's secondary sidebar (VS Code 1.97+), allowing Claude Code to be displayed in the right sidebar while keeping the file explorer on the left. Requires setting sidebar as Preferred Location in the config.
73
74## 2.0.55
75
76- Fixed proxy DNS resolution being forced on by default. Now opt-in via `CLAUDE_CODE_PROXY_RESOLVES_HOSTS=true` environment variable
77- Fixed keyboard navigation becoming unresponsive when holding down arrow keys in memory location selector
78- Improved AskUserQuestion tool to auto-submit single-select questions on the last question, eliminating the extra review screen for simple question flows
79- Improved fuzzy matching for `@` file suggestions with faster, more accurate results
80
81## 2.0.54
82
83- Hooks: Enable PermissionRequest hooks to process 'always allow' suggestions and apply permission updates
84- Fix issue with excessive iTerm notifications
85
86## 2.0.52
87
88- Fixed duplicate message display when starting Claude with a command line argument
89- Fixed `/usage` command progress bars to fill up as usage increases (instead of showing remaining percentage)
90- Fixed image pasting not working on Linux systems running Wayland (now falls back to wl-paste when xclip is unavailable)
91- Permit some uses of `$!` in bash commands
92
93## 2.0.51
94
95- Added Opus 4.5! https://www.anthropic.com/news/claude-opus-4-5
96- Introducing Claude Code for Desktop: https://claude.com/download
97- To give you room to try out our new model, we've updated usage limits for Claude Code users. See the Claude Opus 4.5 blog for full details
98- Pro users can now purchase extra usage for access to Opus 4.5 in Claude Code
99- Plan Mode now builds more precise plans and executes more thoroughly
100- Usage limit notifications now easier to understand
101- Switched `/usage` back to "% used"
102- Fixed handling of thinking errors
103- Fixed performance regression
104
105## 2.0.50
106
107- Fixed bug preventing calling MCP tools that have nested references in their input schemas
108- Silenced a noisy but harmless error during upgrades
109- Improved ultrathink text display
110- Improved clarity of 5-hour session limit warning message
111
112## 2.0.49
113
114- Added readline-style ctrl-y for pasting deleted text
115- Improved clarity of usage limit warning message
116- Fixed handling of subagent permissions
117
118## 2.0.47
119
120- Improved error messages and validation for `claude --teleport`
121- Improved error handling in `/usage`
122- Fixed race condition with history entry not getting logged at exit
123- Fixed Vertex AI configuration not being applied from `settings.json`
124
125## 2.0.46
126
127- Fixed image files being reported with incorrect media type when format cannot be detected from metadata
128
129## 2.0.45
130
131- Added support for Microsoft Foundry! See https://code.claude.com/docs/en/azure-ai-foundry
132- Added `PermissionRequest` hook to automatically approve or deny tool permission requests with custom logic
133- Send background tasks to Claude Code on the web by starting a message with `&`
134
135## 2.0.43
136
137- Added `permissionMode` field for custom agents
138- Added `tool_use_id` field to `PreToolUseHookInput` and `PostToolUseHookInput` types
139- Added skills frontmatter field to declare skills to auto-load for subagents
140- Added the `SubagentStart` hook event
141- Fixed nested `CLAUDE.md` files not loading when @-mentioning files
142- Fixed duplicate rendering of some messages in the UI
143- Fixed some visual flickers
144- Fixed NotebookEdit tool inserting cells at incorrect positions when cell IDs matched the pattern `cell-N`
145
146## 2.0.42
147
148- Added `agent_id` and `agent_transcript_path` fields to `SubagentStop` hooks.
149
150## 2.0.41
151
152- Added `model` parameter to prompt-based stop hooks, allowing users to specify a custom model for hook evaluation
153- Fixed slash commands from user settings being loaded twice, which could cause rendering issues
154- Fixed incorrect labeling of user settings vs project settings in command descriptions
155- Fixed crash when plugin command hooks timeout during execution
156- Fixed: Bedrock users no longer see duplicate Opus entries in the /model picker when using `--model haiku`
157- Fixed broken security documentation links in trust dialogs and onboarding
158- Fixed issue where pressing ESC to close the diff modal would also interrupt the model
159- ctrl-r history search landing on a slash command no longer cancels the search
160- SDK: Support custom timeouts for hooks
161- Allow more safe git commands to run without approval
162- Plugins: Added support for sharing and installing output styles
163- Teleporting a session from web will automatically set the upstream branch
164
165## 2.0.37
166
167- Fixed how idleness is computed for notifications
168- Hooks: Added matcher values for Notification hook events
169- Output Styles: Added `keep-coding-instructions` option to frontmatter
170
171## 2.0.36
172
173- Fixed: DISABLE_AUTOUPDATER environment variable now properly disables package manager update notifications
174- Fixed queued messages being incorrectly executed as bash commands
175- Fixed input being lost when typing while a queued message is processed
176
177## 2.0.35
178
179- Improve fuzzy search results when searching commands
180- Improved VS Code extension to respect `chat.fontSize` and `chat.fontFamily` settings throughout the entire UI, and apply font changes immediately without requiring reload
181- Added `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` environment variable to automatically exit SDK mode after a specified idle duration, useful for automated workflows and scripts
182- Migrated `ignorePatterns` from project config to deny permissions in the localSettings.
183- Fixed menu navigation getting stuck on items with empty string or other falsy values (e.g., in the `/hooks` menu)
184
185## 2.0.34
186
187- VSCode Extension: Added setting to configure the initial permission mode for new conversations
188- Improved file path suggestion performance with native Rust-based fuzzy finder
189- Fixed infinite token refresh loop that caused MCP servers with OAuth (e.g., Slack) to hang during connection
190- Fixed memory crash when reading or writing large files (especially base64-encoded images)
191
192## 2.0.33
193
194- Native binary installs now launch quicker.
195- Fixed `claude doctor` incorrectly detecting Homebrew vs npm-global installations by properly resolving symlinks
196- Fixed `claude mcp serve` exposing tools with incompatible outputSchemas
197
198## 2.0.32
199
200- Un-deprecate output styles based on community feedback
201- Added `companyAnnouncements` setting for displaying announcements on startup
202- Fixed hook progress messages not updating correctly during PostToolUse hook execution
203
204## 2.0.31
205
206- Windows: native installation uses shift+tab as shortcut for mode switching, instead of alt+m
207- Vertex: add support for Web Search on supported models
208- VSCode: Adding the respectGitIgnore configuration to include .gitignored files in file searches (defaults to true)
209- Fixed a bug with subagents and MCP servers related to "Tool names must be unique" error
210- Fixed issue causing `/compact` to fail with `prompt_too_long` by making it respect existing compact boundaries
211- Fixed plugin uninstall not removing plugins
212
213## 2.0.30
214
215- Added helpful hint to run `security unlock-keychain` when encountering API key errors on macOS with locked keychain
216- Added `allowUnsandboxedCommands` sandbox setting to disable the dangerouslyDisableSandbox escape hatch at policy level
217- Added `disallowedTools` field to custom agent definitions for explicit tool blocking
218- Added prompt-based stop hooks
219- VSCode: Added respectGitIgnore configuration to include .gitignored files in file searches (defaults to true)
220- Enabled SSE MCP servers on native build
221- Deprecated output styles. Review options in `/output-style` and use --system-prompt-file, --system-prompt, --append-system-prompt, CLAUDE.md, or plugins instead
222- Removed support for custom ripgrep configuration, resolving an issue where Search returns no results and config discovery fails
223- Fixed Explore agent creating unwanted .md investigation files during codebase exploration
224- Fixed a bug where `/context` would sometimes fail with "max_tokens must be greater than thinking.budget_tokens" error message
225- Fixed `--mcp-config` flag to correctly override file-based MCP configurations
226- Fixed bug that saved session permissions to local settings
227- Fixed MCP tools not being available to sub-agents
228- Fixed hooks and plugins not executing when using --dangerously-skip-permissions flag
229- Fixed delay when navigating through typeahead suggestions with arrow keys
230- VSCode: Restored selection indicator in input footer showing current file or code selection status
231
232## 2.0.28
233
234- Plan mode: introduced new Plan subagent
235- Subagents: claude can now choose to resume subagents
236- Subagents: claude can dynamically choose the model used by its subagents
237- SDK: added --max-budget-usd flag
238- Discovery of custom slash commands, subagents, and output styles no longer respects .gitignore
239- Stop `/terminal-setup` from adding backslash to `Shift + Enter` in VS Code
240- Add branch and tag support for git-based plugins and marketplaces using fragment syntax (e.g., `owner/repo#branch`)
241- Fixed a bug where macOS permission prompts would show up upon initial launch when launching from home directory
242- Various other bug fixes
243
244## 2.0.27
245
246- New UI for permission prompts
247- Added current branch filtering and search to session resume screen for easier navigation
248- Fixed directory @-mention causing "No assistant message found" error
249- VSCode Extension: Add config setting to include .gitignored files in file searches
250- VSCode Extension: Bug fixes for unrelated 'Warmup' conversations, and configuration/settings occasionally being reset to defaults
251
252## 2.0.25
253
254- Removed legacy SDK entrypoint. Please migrate to @anthropic-ai/claude-agent-sdk for future SDK updates: https://platform.claude.com/docs/en/agent-sdk/migration-guide
255
256## 2.0.24
257
258- Fixed a bug where project-level skills were not loading when --setting-sources 'project' was specified
259- Claude Code Web: Support for Web -> CLI teleport
260- Sandbox: Releasing a sandbox mode for the BashTool on Linux & Mac
261- Bedrock: Display awsAuthRefresh output when auth is required
262
263## 2.0.22
264
265- Fixed content layout shift when scrolling through slash commands
266- IDE: Add toggle to enable/disable thinking.
267- Fix bug causing duplicate permission prompts with parallel tool calls
268- Add support for enterprise managed MCP allowlist and denylist
269
270## 2.0.21
271
272- Support MCP `structuredContent` field in tool responses
273- Added an interactive question tool
274- Claude will now ask you questions more often in plan mode
275- Added Haiku 4.5 as a model option for Pro users
276- Fixed an issue where queued commands don't have access to previous messages' output
277
278## 2.0.20
279
280- Added support for Claude Skills
281
282## 2.0.19
283
284- Auto-background long-running bash commands instead of killing them. Customize with BASH_DEFAULT_TIMEOUT_MS
285- Fixed a bug where Haiku was unnecessarily called in print mode
286
287## 2.0.17
288
289- Added Haiku 4.5 to model selector!
290- Haiku 4.5 automatically uses Sonnet in plan mode, and Haiku for execution (i.e. SonnetPlan by default)
291- 3P (Bedrock and Vertex) are not automatically upgraded yet. Manual upgrading can be done through setting `ANTHROPIC_DEFAULT_HAIKU_MODEL`
292- Introducing the Explore subagent. Powered by Haiku it'll search through your codebase efficiently to save context!
293- OTEL: support HTTP_PROXY and HTTPS_PROXY
294- `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` now disables release notes fetching
295
296## 2.0.15
297
298- Fixed bug with resuming where previously created files needed to be read again before writing
299- Fixed bug with `-p` mode where @-mentioned files needed to be read again before writing
300
301## 2.0.14
302
303- Fix @-mentioning MCP servers to toggle them on/off
304- Improve permission checks for bash with inline env vars
305- Fix ultrathink + thinking toggle
306- Reduce unnecessary logins
307- Document --system-prompt
308- Several improvements to rendering
309- Plugins UI polish
310
311## 2.0.13
312
313- Fixed `/plugin` not working on native build
314
315## 2.0.12
316
317- **Plugin System Released**: Extend Claude Code with custom commands, agents, hooks, and MCP servers from marketplaces
318- `/plugin install`, `/plugin enable/disable`, `/plugin marketplace` commands for plugin management
319- Repository-level plugin configuration via `extraKnownMarketplaces` for team collaboration
320- `/plugin validate` command for validating plugin structure and configuration
321- Plugin announcement blog post at https://www.anthropic.com/news/claude-code-plugins
322- Plugin documentation available at https://code.claude.com/docs/en/plugins
323- Comprehensive error messages and diagnostics via `/doctor` command
324- Avoid flickering in `/model` selector
325- Improvements to `/help`
326- Avoid mentioning hooks in `/resume` summaries
327- Changes to the "verbose" setting in `/config` now persist across sessions
328
329## 2.0.11
330
331- Reduced system prompt size by 1.4k tokens
332- IDE: Fixed keyboard shortcuts and focus issues for smoother interaction
333- Fixed Opus fallback rate limit errors appearing incorrectly
334- Fixed /add-dir command selecting wrong default tab
335
336## 2.0.10
337
338- Rewrote terminal renderer for buttery smooth UI
339- Enable/disable MCP servers by @mentioning, or in /mcp
340- Added tab completion for shell commands in bash mode
341- PreToolUse hooks can now modify tool inputs
342- Press Ctrl-G to edit your prompt in your system's configured text editor
343- Fixes for bash permission checks with environment variables in the command
344
345## 2.0.9
346
347- Fix regression where bash backgrounding stopped working
348
349## 2.0.8
350
351- Update Bedrock default Sonnet model to `global.anthropic.claude-sonnet-4-5-20250929-v1:0`
352- IDE: Add drag-and-drop support for files and folders in chat
353- /context: Fix counting for thinking blocks
354- Improve message rendering for users with light themes on dark terminals
355- Remove deprecated .claude.json allowedTools, ignorePatterns, env, and todoFeatureEnabled config options (instead, configure these in your settings.json)
356
357## 2.0.5
358
359- IDE: Fix IME unintended message submission with Enter and Tab
360- IDE: Add "Open in Terminal" link in login screen
361- Fix unhandled OAuth expiration 401 API errors
362- SDK: Added SDKUserMessageReplay.isReplay to prevent duplicate messages
363
364## 2.0.1
365
366- Skip Sonnet 4.5 default model setting change for Bedrock and Vertex
367- Various bug fixes and presentation improvements
368
369## 2.0.0
370
371- New native VS Code extension
372- Fresh coat of paint throughout the whole app
373- /rewind a conversation to undo code changes
374- /usage command to see plan limits
375- Tab to toggle thinking (sticky across sessions)
376- Ctrl-R to search history
377- Unshipped claude config command
378- Hooks: Reduced PostToolUse 'tool_use' ids were found without 'tool_result' blocks errors
379- SDK: The Claude Code SDK is now the Claude Agent SDK
380- Add subagents dynamically with `--agents` flag
381
382## 1.0.126
383
384- Enable /context command for Bedrock and Vertex
385- Add mTLS support for HTTP-based OpenTelemetry exporters
386
387## 1.0.124
388
389- Set `CLAUDE_BASH_NO_LOGIN` environment variable to 1 or true to to skip login shell for BashTool
390- Fix Bedrock and Vertex environment variables evaluating all strings as truthy
391- No longer inform Claude of the list of allowed tools when permission is denied
392- Fixed security vulnerability in Bash tool permission checks
393- Improved VSCode extension performance for large files
394
395## 1.0.123
396
397- Bash permission rules now support output redirections when matching (e.g., `Bash(python:*)` matches `python script.py > output.txt`)
398- Fixed thinking mode triggering on negation phrases like "don't think"
399- Fixed rendering performance degradation during token streaming
400- Added SlashCommand tool, which enables Claude to invoke your slash commands. https://code.claude.com/docs/en/slash-commands#SlashCommand-tool
401- Enhanced BashTool environment snapshot logging
402- Fixed a bug where resuming a conversation in headless mode would sometimes enable thinking unnecessarily
403- Migrated --debug logging to a file, to enable easy tailing & filtering
404
405## 1.0.120
406
407- Fix input lag during typing, especially noticeable with large prompts
408- Improved VSCode extension command registry and sessions dialog user experience
409- Enhanced sessions dialog responsiveness and visual feedback
410- Fixed IDE compatibility issue by removing worktree support check
411- Fixed security vulnerability where Bash tool permission checks could be bypassed using prefix matching
412
413## 1.0.119
414
415- Fix Windows issue where process visually freezes on entering interactive mode
416- Support dynamic headers for MCP servers via headersHelper configuration
417- Fix thinking mode not working in headless sessions
418- Fix slash commands now properly update allowed tools instead of replacing them
419
420## 1.0.117
421
422- Add Ctrl-R history search to recall previous commands like bash/zsh
423- Fix input lag while typing, especially on Windows
424- Add sed command to auto-allowed commands in acceptEdits mode
425- Fix Windows PATH comparison to be case-insensitive for drive letters
426- Add permissions management hint to /add-dir output
427
428## 1.0.115
429
430- Improve thinking mode display with enhanced visual effects
431- Type /t to temporarily disable thinking mode in your prompt
432- Improve path validation for glob and grep tools
433- Show condensed output for post-tool hooks to reduce visual clutter
434- Fix visual feedback when loading state completes
435- Improve UI consistency for permission request dialogs
436
437## 1.0.113
438
439- Deprecated piped input in interactive mode
440- Move Ctrl+R keybinding for toggling transcript to Ctrl+O
441
442## 1.0.112
443
444- Transcript mode (Ctrl+R): Added the model used to generate each assistant message
445- Addressed issue where some Claude Max users were incorrectly recognized as Claude Pro users
446- Hooks: Added systemMessage support for SessionEnd hooks
447- Added `spinnerTipsEnabled` setting to disable spinner tips
448- IDE: Various improvements and bug fixes
449
450## 1.0.111
451
452- /model now validates provided model names
453- Fixed Bash tool crashes caused by malformed shell syntax parsing
454
455## 1.0.110
456
457- /terminal-setup command now supports WezTerm
458- MCP: OAuth tokens now proactively refresh before expiration
459- Fixed reliability issues with background Bash processes
460
461## 1.0.109
462
463- SDK: Added partial message streaming support via `--include-partial-messages` CLI flag
464
465## 1.0.106
466
467- Windows: Fixed path permission matching to consistently use POSIX format (e.g., `Read(//c/Users/...)`)
468
469## 1.0.97
470
471- Settings: /doctor now validates permission rule syntax and suggests corrections
472
473## 1.0.94
474
475- Vertex: add support for global endpoints for supported models
476- /memory command now allows direct editing of all imported memory files
477- SDK: Add custom tools as callbacks
478- Added /todos command to list current todo items
479
480## 1.0.93
481
482- Windows: Add alt + v shortcut for pasting images from clipboard
483- Support NO_PROXY environment variable to bypass proxy for specified hostnames and IPs
484
485## 1.0.90
486
487- Settings file changes take effect immediately - no restart required
488
489## 1.0.88
490
491- Fixed issue causing "OAuth authentication is currently not supported"
492- Status line input now includes `exceeds_200k_tokens`
493- Fixed incorrect usage tracking in /cost.
494- Introduced `ANTHROPIC_DEFAULT_SONNET_MODEL` and `ANTHROPIC_DEFAULT_OPUS_MODEL` for controlling model aliases opusplan, opus, and sonnet.
495- Bedrock: Updated default Sonnet model to Sonnet 4
496
497## 1.0.86
498
499- Added /context to help users self-serve debug context issues
500- SDK: Added UUID support for all SDK messages
501- SDK: Added `--replay-user-messages` to replay user messages back to stdout
502
503## 1.0.85
504
505- Status line input now includes session cost info
506- Hooks: Introduced SessionEnd hook
507
508## 1.0.84
509
510- Fix tool_use/tool_result id mismatch error when network is unstable
511- Fix Claude sometimes ignoring real-time steering when wrapping up a task
512- @-mention: Add ~/.claude/\* files to suggestions for easier agent, output style, and slash command editing
513- Use built-in ripgrep by default; to opt out of this behavior, set USE_BUILTIN_RIPGREP=0
514
515## 1.0.83
516
517- @-mention: Support files with spaces in path
518- New shimmering spinner
519
520## 1.0.82
521
522- SDK: Add request cancellation support
523- SDK: New additionalDirectories option to search custom paths, improved slash command processing
524- Settings: Validation prevents invalid fields in .claude/settings.json files
525- MCP: Improve tool name consistency
526- Bash: Fix crash when Claude tries to automatically read large files
527
528## 1.0.81
529
530- Released output styles, including new built-in educational output styles "Explanatory" and "Learning". Docs: https://code.claude.com/docs/en/output-styles
531- Agents: Fix custom agent loading when agent files are unparsable
532
533## 1.0.80
534
535- UI improvements: Fix text contrast for custom subagent colors and spinner rendering issues
536
537## 1.0.77
538
539- Bash tool: Fix heredoc and multiline string escaping, improve stderr redirection handling
540- SDK: Add session support and permission denial tracking
541- Fix token limit errors in conversation summarization
542- Opus Plan Mode: New setting in `/model` to run Opus only in plan mode, Sonnet otherwise
543
544## 1.0.73
545
546- MCP: Support multiple config files with `--mcp-config file1.json file2.json`
547- MCP: Press Esc to cancel OAuth authentication flows
548- Bash: Improved command validation and reduced false security warnings
549- UI: Enhanced spinner animations and status line visual hierarchy
550- Linux: Added support for Alpine and musl-based distributions (requires separate ripgrep installation)
551
552## 1.0.72
553
554- Ask permissions: have Claude Code always ask for confirmation to use specific tools with /permissions
555
556## 1.0.71
557
558- Background commands: (Ctrl-b) to run any Bash command in the background so Claude can keep working (great for dev servers, tailing logs, etc.)
559- Customizable status line: add your terminal prompt to Claude Code with /statusline
560
561## 1.0.70
562
563- Performance: Optimized message rendering for better performance with large contexts
564- Windows: Fixed native file search, ripgrep, and subagent functionality
565- Added support for @-mentions in slash command arguments
566
567## 1.0.69
568
569- Upgraded Opus to version 4.1
570
571## 1.0.68
572
573- Fix incorrect model names being used for certain commands like `/pr-comments`
574- Windows: improve permissions checks for allow / deny tools and project trust. This may create a new project entry in `.claude.json` - manually merge the history field if desired.
575- Windows: improve sub-process spawning to eliminate "No such file or directory" when running commands like pnpm
576- Enhanced /doctor command with CLAUDE.md and MCP tool context for self-serve debugging
577- SDK: Added canUseTool callback support for tool confirmation
578- Added `disableAllHooks` setting
579- Improved file suggestions performance in large repos
580
581## 1.0.65
582
583- IDE: Fixed connection stability issues and error handling for diagnostics
584- Windows: Fixed shell environment setup for users without .bashrc files
585
586## 1.0.64
587
588- Agents: Added model customization support - you can now specify which model an agent should use
589- Agents: Fixed unintended access to the recursive agent tool
590- Hooks: Added systemMessage field to hook JSON output for displaying warnings and context
591- SDK: Fixed user input tracking across multi-turn conversations
592- Added hidden files to file search and @-mention suggestions
593
594## 1.0.63
595
596- Windows: Fixed file search, @agent mentions, and custom slash commands functionality
597
598## 1.0.62
599
600- Added @-mention support with typeahead for custom agents. @<your-custom-agent> to invoke it
601- Hooks: Added SessionStart hook for new session initialization
602- /add-dir command now supports typeahead for directory paths
603- Improved network connectivity check reliability
604
605## 1.0.61
606
607- Transcript mode (Ctrl+R): Changed Esc to exit transcript mode rather than interrupt
608- Settings: Added `--settings` flag to load settings from a JSON file
609- Settings: Fixed resolution of settings files paths that are symlinks
610- OTEL: Fixed reporting of wrong organization after authentication changes
611- Slash commands: Fixed permissions checking for allowed-tools with Bash
612- IDE: Added support for pasting images in VSCode MacOS using ⌘+V
613- IDE: Added `CLAUDE_CODE_AUTO_CONNECT_IDE=false` for disabling IDE auto-connection
614- Added `CLAUDE_CODE_SHELL_PREFIX` for wrapping Claude and user-provided shell commands run by Claude Code
615
616## 1.0.60
617
618- You can now create custom subagents for specialized tasks! Run /agents to get started
619
620## 1.0.59
621
622- SDK: Added tool confirmation support with canUseTool callback
623- SDK: Allow specifying env for spawned process
624- Hooks: Exposed PermissionDecision to hooks (including "ask")
625- Hooks: UserPromptSubmit now supports additionalContext in advanced JSON output
626- Fixed issue where some Max users that specified Opus would still see fallback to Sonnet
627
628## 1.0.58
629
630- Added support for reading PDFs
631- MCP: Improved server health status display in 'claude mcp list'
632- Hooks: Added CLAUDE_PROJECT_DIR env var for hook commands
633
634## 1.0.57
635
636- Added support for specifying a model in slash commands
637- Improved permission messages to help Claude understand allowed tools
638- Fix: Remove trailing newlines from bash output in terminal wrapping
639
640## 1.0.56
641
642- Windows: Enabled shift+tab for mode switching on versions of Node.js that support terminal VT mode
643- Fixes for WSL IDE detection
644- Fix an issue causing awsRefreshHelper changes to .aws directory not to be picked up
645
646## 1.0.55
647
648- Clarified knowledge cutoff for Opus 4 and Sonnet 4 models
649- Windows: fixed Ctrl+Z crash
650- SDK: Added ability to capture error logging
651- Add --system-prompt-file option to override system prompt in print mode
652
653## 1.0.54
654
655- Hooks: Added UserPromptSubmit hook and the current working directory to hook inputs
656- Custom slash commands: Added argument-hint to frontmatter
657- Windows: OAuth uses port 45454 and properly constructs browser URL
658- Windows: mode switching now uses alt + m, and plan mode renders properly
659- Shell: Switch to in-memory shell snapshot to fix file-related errors
660
661## 1.0.53
662
663- Updated @-mention file truncation from 100 lines to 2000 lines
664- Add helper script settings for AWS token refresh: awsAuthRefresh (for foreground operations like aws sso login) and awsCredentialExport (for background operation with STS-like response).
665
666## 1.0.52
667
668- Added support for MCP server instructions
669
670## 1.0.51
671
672- Added support for native Windows (requires Git for Windows)
673- Added support for Bedrock API keys through environment variable AWS_BEARER_TOKEN_BEDROCK
674- Settings: /doctor can now help you identify and fix invalid setting files
675- `--append-system-prompt` can now be used in interactive mode, not just --print/-p.
676- Increased auto-compact warning threshold from 60% to 80%
677- Fixed an issue with handling user directories with spaces for shell snapshots
678- OTEL resource now includes os.type, os.version, host.arch, and wsl.version (if running on Windows Subsystem for Linux)
679- Custom slash commands: Fixed user-level commands in subdirectories
680- Plan mode: Fixed issue where rejected plan from sub-task would get discarded
681
682## 1.0.48
683
684- Fixed a bug in v1.0.45 where the app would sometimes freeze on launch
685- Added progress messages to Bash tool based on the last 5 lines of command output
686- Added expanding variables support for MCP server configuration
687- Moved shell snapshots from /tmp to ~/.claude for more reliable Bash tool calls
688- Improved IDE extension path handling when Claude Code runs in WSL
689- Hooks: Added a PreCompact hook
690- Vim mode: Added c, f/F, t/T
691
692## 1.0.45
693
694- Redesigned Search (Grep) tool with new tool input parameters and features
695- Disabled IDE diffs for notebook files, fixing "Timeout waiting after 1000ms" error
696- Fixed config file corruption issue by enforcing atomic writes
697- Updated prompt input undo to Ctrl+\_ to avoid breaking existing Ctrl+U behavior, matching zsh's undo shortcut
698- Stop Hooks: Fixed transcript path after /clear and fixed triggering when loop ends with tool call
699- Custom slash commands: Restored namespacing in command names based on subdirectories. For example, .claude/commands/frontend/component.md is now /frontend:component, not /component.
700
701## 1.0.44
702
703- New /export command lets you quickly export a conversation for sharing
704- MCP: resource_link tool results are now supported
705- MCP: tool annotations and tool titles now display in /mcp view
706- Changed Ctrl+Z to suspend Claude Code. Resume by running `fg`. Prompt input undo is now Ctrl+U.
707
708## 1.0.43
709
710- Fixed a bug where the theme selector was saving excessively
711- Hooks: Added EPIPE system error handling
712
713## 1.0.42
714
715- Added tilde (`~`) expansion support to `/add-dir` command
716
717## 1.0.41
718
719- Hooks: Split Stop hook triggering into Stop and SubagentStop
720- Hooks: Enabled optional timeout configuration for each command
721- Hooks: Added "hook_event_name" to hook input
722- Fixed a bug where MCP tools would display twice in tool list
723- New tool parameters JSON for Bash tool in `tool_decision` event
724
725## 1.0.40
726
727- Fixed a bug causing API connection errors with UNABLE_TO_GET_ISSUER_CERT_LOCALLY if `NODE_EXTRA_CA_CERTS` was set
728
729## 1.0.39
730
731- New Active Time metric in OpenTelemetry logging
732
733## 1.0.38
734
735- Released hooks. Special thanks to community input in https://github.com/anthropics/claude-code/issues/712. Docs: https://code.claude.com/docs/en/hooks
736
737## 1.0.37
738
739- Remove ability to set `Proxy-Authorization` header via ANTHROPIC_AUTH_TOKEN or apiKeyHelper
740
741## 1.0.36
742
743- Web search now takes today's date into context
744- Fixed a bug where stdio MCP servers were not terminating properly on exit
745
746## 1.0.35
747
748- Added support for MCP OAuth Authorization Server discovery
749
750## 1.0.34
751
752- Fixed a memory leak causing a MaxListenersExceededWarning message to appear
753
754## 1.0.33
755
756- Improved logging functionality with session ID support
757- Added prompt input undo functionality (Ctrl+Z and vim 'u' command)
758- Improvements to plan mode
759
760## 1.0.32
761
762- Updated loopback config for litellm
763- Added forceLoginMethod setting to bypass login selection screen
764
765## 1.0.31
766
767- Fixed a bug where ~/.claude.json would get reset when file contained invalid JSON
768
769## 1.0.30
770
771- Custom slash commands: Run bash output, @-mention files, enable thinking with thinking keywords
772- Improved file path autocomplete with filename matching
773- Added timestamps in Ctrl-r mode and fixed Ctrl-c handling
774- Enhanced jq regex support for complex filters with pipes and select
775
776## 1.0.29
777
778- Improved CJK character support in cursor navigation and rendering
779
780## 1.0.28
781
782- Slash commands: Fix selector display during history navigation
783- Resizes images before upload to prevent API size limit errors
784- Added XDG_CONFIG_HOME support to configuration directory
785- Performance optimizations for memory usage
786- New attributes (terminal.type, language) in OpenTelemetry logging
787
788## 1.0.27
789
790- Streamable HTTP MCP servers are now supported
791- Remote MCP servers (SSE and HTTP) now support OAuth
792- MCP resources can now be @-mentioned
793- /resume slash command to switch conversations within Claude Code
794
795## 1.0.25
796
797- Slash commands: moved "project" and "user" prefixes to descriptions
798- Slash commands: improved reliability for command discovery
799- Improved support for Ghostty
800- Improved web search reliability
801
802## 1.0.24
803
804- Improved /mcp output
805- Fixed a bug where settings arrays got overwritten instead of merged
806
807## 1.0.23
808
809- Released TypeScript SDK: import @anthropic-ai/claude-code to get started
810- Released Python SDK: pip install claude-code-sdk to get started
811
812## 1.0.22
813
814- SDK: Renamed `total_cost` to `total_cost_usd`
815
816## 1.0.21
817
818- Improved editing of files with tab-based indentation
819- Fix for tool_use without matching tool_result errors
820- Fixed a bug where stdio MCP server processes would linger after quitting Claude Code
821
822## 1.0.18
823
824- Added --add-dir CLI argument for specifying additional working directories
825- Added streaming input support without require -p flag
826- Improved startup performance and session storage performance
827- Added CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR environment variable to freeze working directory for bash commands
828- Added detailed MCP server tools display (/mcp)
829- MCP authentication and permission improvements
830- Added auto-reconnection for MCP SSE connections on disconnect
831- Fixed issue where pasted content was lost when dialogs appeared
832
833## 1.0.17
834
835- We now emit messages from sub-tasks in -p mode (look for the parent_tool_use_id property)
836- Fixed crashes when the VS Code diff tool is invoked multiple times quickly
837- MCP server list UI improvements
838- Update Claude Code process title to display "claude" instead of "node"
839
840## 1.0.11
841
842- Claude Code can now also be used with a Claude Pro subscription
843- Added /upgrade for smoother switching to Claude Max plans
844- Improved UI for authentication from API keys and Bedrock/Vertex/external auth tokens
845- Improved shell configuration error handling
846- Improved todo list handling during compaction
847
848## 1.0.10
849
850- Added markdown table support
851- Improved streaming performance
852
853## 1.0.8
854
855- Fixed Vertex AI region fallback when using CLOUD_ML_REGION
856- Increased default otel interval from 1s -> 5s
857- Fixed edge cases where MCP_TIMEOUT and MCP_TOOL_TIMEOUT weren't being respected
858- Fixed a regression where search tools unnecessarily asked for permissions
859- Added support for triggering thinking non-English languages
860- Improved compacting UI
861
862## 1.0.7
863
864- Renamed /allowed-tools -> /permissions
865- Migrated allowedTools and ignorePatterns from .claude.json -> settings.json
866- Deprecated claude config commands in favor of editing settings.json
867- Fixed a bug where --dangerously-skip-permissions sometimes didn't work in --print mode
868- Improved error handling for /install-github-app
869- Bugfixes, UI polish, and tool reliability improvements
870
871## 1.0.6
872
873- Improved edit reliability for tab-indented files
874- Respect CLAUDE_CONFIG_DIR everywhere
875- Reduced unnecessary tool permission prompts
876- Added support for symlinks in @file typeahead
877- Bugfixes, UI polish, and tool reliability improvements
878
879## 1.0.4
880
881- Fixed a bug where MCP tool errors weren't being parsed correctly
882
883## 1.0.1
884
885- Added `DISABLE_INTERLEAVED_THINKING` to give users the option to opt out of interleaved thinking.
886- Improved model references to show provider-specific names (Sonnet 3.7 for Bedrock, Sonnet 4 for Console)
887- Updated documentation links and OAuth process descriptions
888
889## 1.0.0
890
891- Claude Code is now generally available
892- Introducing Sonnet 4 and Opus 4 models
893
894## 0.2.125
895
896- Breaking change: Bedrock ARN passed to `ANTHROPIC_MODEL` or `ANTHROPIC_SMALL_FAST_MODEL` should no longer contain an escaped slash (specify `/` instead of `%2F`)
897- Removed `DEBUG=true` in favor of `ANTHROPIC_LOG=debug`, to log all requests
898
899## 0.2.117
900
901- Breaking change: --print JSON output now returns nested message objects, for forwards-compatibility as we introduce new metadata fields
902- Introduced settings.cleanupPeriodDays
903- Introduced CLAUDE_CODE_API_KEY_HELPER_TTL_MS env var
904- Introduced --debug mode
905
906## 0.2.108
907
908- You can now send messages to Claude while it works to steer Claude in real-time
909- Introduced BASH_DEFAULT_TIMEOUT_MS and BASH_MAX_TIMEOUT_MS env vars
910- Fixed a bug where thinking was not working in -p mode
911- Fixed a regression in /cost reporting
912- Deprecated MCP wizard interface in favor of other MCP commands
913- Lots of other bugfixes and improvements
914
915## 0.2.107
916
917- CLAUDE.md files can now import other files. Add @path/to/file.md to ./CLAUDE.md to load additional files on launch
918
919## 0.2.106
920
921- MCP SSE server configs can now specify custom headers
922- Fixed a bug where MCP permission prompt didn't always show correctly
923
924## 0.2.105
925
926- Claude can now search the web
927- Moved system & account status to /status
928- Added word movement keybindings for Vim
929- Improved latency for startup, todo tool, and file edits
930
931## 0.2.102
932
933- Improved thinking triggering reliability
934- Improved @mention reliability for images and folders
935- You can now paste multiple large chunks into one prompt
936
937## 0.2.100
938
939- Fixed a crash caused by a stack overflow error
940- Made db storage optional; missing db support disables --continue and --resume
941
942## 0.2.98
943
944- Fixed an issue where auto-compact was running twice
945
946## 0.2.96
947
948- Claude Code can now also be used with a Claude Max subscription (https://claude.ai/upgrade)
949
950## 0.2.93
951
952- Resume conversations from where you left off from with "claude --continue" and "claude --resume"
953- Claude now has access to a Todo list that helps it stay on track and be more organized
954
955## 0.2.82
956
957- Added support for --disallowedTools
958- Renamed tools for consistency: LSTool -> LS, View -> Read, etc.
959
960## 0.2.75
961
962- Hit Enter to queue up additional messages while Claude is working
963- Drag in or copy/paste image files directly into the prompt
964- @-mention files to directly add them to context
965- Run one-off MCP servers with `claude --mcp-config <path-to-file>`
966- Improved performance for filename auto-complete
967
968## 0.2.74
969
970- Added support for refreshing dynamically generated API keys (via apiKeyHelper), with a 5 minute TTL
971- Task tool can now perform writes and run bash commands
972
973## 0.2.72
974
975- Updated spinner to indicate tokens loaded and tool usage
976
977## 0.2.70
978
979- Network commands like curl are now available for Claude to use
980- Claude can now run multiple web queries in parallel
981- Pressing ESC once immediately interrupts Claude in Auto-accept mode
982
983## 0.2.69
984
985- Fixed UI glitches with improved Select component behavior
986- Enhanced terminal output display with better text truncation logic
987
988## 0.2.67
989
990- Shared project permission rules can be saved in .claude/settings.json
991
992## 0.2.66
993
994- Print mode (-p) now supports streaming output via --output-format=stream-json
995- Fixed issue where pasting could trigger memory or bash mode unexpectedly
996
997## 0.2.63
998
999- Fixed an issue where MCP tools were loaded twice, which caused tool call errors
1000
1001## 0.2.61
1002
1003- Navigate menus with vim-style keys (j/k) or bash/emacs shortcuts (Ctrl+n/p) for faster interaction
1004- Enhanced image detection for more reliable clipboard paste functionality
1005- Fixed an issue where ESC key could crash the conversation history selector
1006
1007## 0.2.59
1008
1009- Copy+paste images directly into your prompt
1010- Improved progress indicators for bash and fetch tools
1011- Bugfixes for non-interactive mode (-p)
1012
1013## 0.2.54
1014
1015- Quickly add to Memory by starting your message with '#'
1016- Press ctrl+r to see full output for long tool results
1017- Added support for MCP SSE transport
1018
1019## 0.2.53
1020
1021- New web fetch tool lets Claude view URLs that you paste in
1022- Fixed a bug with JPEG detection
1023
1024## 0.2.50
1025
1026- New MCP "project" scope now allows you to add MCP servers to .mcp.json files and commit them to your repository
1027
1028## 0.2.49
1029
1030- Previous MCP server scopes have been renamed: previous "project" scope is now "local" and "global" scope is now "user"
1031
1032## 0.2.47
1033
1034- Press Tab to auto-complete file and folder names
1035- Press Shift + Tab to toggle auto-accept for file edits
1036- Automatic conversation compaction for infinite conversation length (toggle with /config)
1037
1038## 0.2.44
1039
1040- Ask Claude to make a plan with thinking mode: just say 'think' or 'think harder' or even 'ultrathink'
1041
1042## 0.2.41
1043
1044- MCP server startup timeout can now be configured via MCP_TIMEOUT environment variable
1045- MCP server startup no longer blocks the app from starting up
1046
1047## 0.2.37
1048
1049- New /release-notes command lets you view release notes at any time
1050- `claude config add/remove` commands now accept multiple values separated by commas or spaces
1051
1052## 0.2.36
1053
1054- Import MCP servers from Claude Desktop with `claude mcp add-from-claude-desktop`
1055- Add MCP servers as JSON strings with `claude mcp add-json <n> <json>`
1056
1057## 0.2.34
1058
1059- Vim bindings for text input - enable with /vim or /config
1060
1061## 0.2.32
1062
1063- Interactive MCP setup wizard: Run "claude mcp add" to add MCP servers with a step-by-step interface
1064- Fix for some PersistentShell issues
1065
1066## 0.2.31
1067
1068- Custom slash commands: Markdown files in .claude/commands/ directories now appear as custom slash commands to insert prompts into your conversation
1069- MCP debug mode: Run with --mcp-debug flag to get more information about MCP server errors
1070
1071## 0.2.30
1072
1073- Added ANSI color theme for better terminal compatibility
1074- Fixed issue where slash command arguments weren't being sent properly
1075- (Mac-only) API keys are now stored in macOS Keychain
1076
1077## 0.2.26
1078
1079- New /approved-tools command for managing tool permissions
1080- Word-level diff display for improved code readability
1081- Fuzzy matching for slash commands
1082
1083## 0.2.21
1084
1085- Fuzzy matching for /commands