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