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 c3a32e4 · on Sep 8, 2025 History
623 lines · 21.7 KBPreviewCodeRaw
1# Changelog
2
3## 1.0.106
4
5- Windows: Fixed path permission matching to consistently use POSIX format (e.g., `Read(//c/Users/...)`)
6
7## 1.0.97
8
9- Settings: /doctor now validates permission rule syntax and suggests corrections
10
11## 1.0.94
12
13- Vertex: add support for global endpoints for supported models
14- /memory command now allows direct editing of all imported memory files
15- SDK: Add custom tools as callbacks
16- Added /todos command to list current todo items
17
18## 1.0.93
19
20- Windows: Add alt + v shortcut for pasting images from clipboard
21- Support NO_PROXY environment variable to bypass proxy for specified hostnames and IPs
22
23## 1.0.90
24
25- Settings file changes take effect immediately - no restart required
26
27## 1.0.88
28
29- Fixed issue causing "OAuth authentication is currently not supported"
30- Status line input now includes `exceeds_200k_tokens`
31- Fixed incorrect usage tracking in /cost.
32- Introduced `ANTHROPIC_DEFAULT_SONNET_MODEL` and `ANTHROPIC_DEFAULT_OPUS_MODEL` for controlling model aliases opusplan, opus, and sonnet.
33- Bedrock: Updated default Sonnet model to Sonnet 4
34
35## 1.0.86
36
37- Added /context to help users self-serve debug context issues
38- SDK: Added UUID support for all SDK messages
39- SDK: Added `--replay-user-messages` to replay user messages back to stdout
40
41## 1.0.85
42
43- Status line input now includes session cost info
44- Hooks: Introduced SessionEnd hook
45
46## 1.0.84
47
48- Fix tool_use/tool_result id mismatch error when network is unstable
49- Fix Claude sometimes ignoring real-time steering when wrapping up a task
50- @-mention: Add ~/.claude/\* files to suggestions for easier agent, output style, and slash command editing
51- Use built-in ripgrep by default; to opt out of this behavior, set USE_BUILTIN_RIPGREP=0
52
53## 1.0.83
54
55- @-mention: Support files with spaces in path
56- New shimmering spinner
57
58## 1.0.82
59
60- SDK: Add request cancellation support
61- SDK: New additionalDirectories option to search custom paths, improved slash command processing
62- Settings: Validation prevents invalid fields in .claude/settings.json files
63- MCP: Improve tool name consistency
64- Bash: Fix crash when Claude tries to automatically read large files
65
66## 1.0.81
67
68- Released output styles, including new built-in educational output styles "Explanatory" and "Learning". Docs: https://docs.anthropic.com/en/docs/claude-code/output-styles
69- Agents: Fix custom agent loading when agent files are unparsable
70
71## 1.0.80
72
73- UI improvements: Fix text contrast for custom subagent colors and spinner rendering issues
74
75## 1.0.77
76
77- Bash tool: Fix heredoc and multiline string escaping, improve stderr redirection handling
78- SDK: Add session support and permission denial tracking
79- Fix token limit errors in conversation summarization
80- Opus Plan Mode: New setting in `/model` to run Opus only in plan mode, Sonnet otherwise
81
82## 1.0.73
83
84- MCP: Support multiple config files with `--mcp-config file1.json file2.json`
85- MCP: Press Esc to cancel OAuth authentication flows
86- Bash: Improved command validation and reduced false security warnings
87- UI: Enhanced spinner animations and status line visual hierarchy
88- Linux: Added support for Alpine and musl-based distributions (requires separate ripgrep installation)
89
90## 1.0.72
91
92- Ask permissions: have Claude Code always ask for confirmation to use specific tools with /permissions
93
94## 1.0.71
95
96- Background commands: (Ctrl-b) to run any Bash command in the background so Claude can keep working (great for dev servers, tailing logs, etc.)
97- Customizable status line: add your terminal prompt to Claude Code with /statusline
98
99## 1.0.70
100
101- Performance: Optimized message rendering for better performance with large contexts
102- Windows: Fixed native file search, ripgrep, and subagent functionality
103- Added support for @-mentions in slash command arguments
104
105## 1.0.69
106
107- Upgraded Opus to version 4.1
108
109## 1.0.68
110
111- Fix incorrect model names being used for certain commands like `/pr-comments`
112- 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.
113- Windows: improve sub-process spawning to eliminate "No such file or directory" when running commands like pnpm
114- Enhanced /doctor command with CLAUDE.md and MCP tool context for self-serve debugging
115- SDK: Added canUseTool callback support for tool confirmation
116- Added `disableAllHooks` setting
117- Improved file suggestions performance in large repos
118
119## 1.0.65
120
121- IDE: Fixed connection stability issues and error handling for diagnostics
122- Windows: Fixed shell environment setup for users without .bashrc files
123
124## 1.0.64
125
126- Agents: Added model customization support - you can now specify which model an agent should use
127- Agents: Fixed unintended access to the recursive agent tool
128- Hooks: Added systemMessage field to hook JSON output for displaying warnings and context
129- SDK: Fixed user input tracking across multi-turn conversations
130- Added hidden files to file search and @-mention suggestions
131
132## 1.0.63
133
134- Windows: Fixed file search, @agent mentions, and custom slash commands functionality
135
136## 1.0.62
137
138- Added @-mention support with typeahead for custom agents. @<your-custom-agent> to invoke it
139- Hooks: Added SessionStart hook for new session initialization
140- /add-dir command now supports typeahead for directory paths
141- Improved network connectivity check reliability
142
143## 1.0.61
144
145- Transcript mode (Ctrl+R): Changed Esc to exit transcript mode rather than interrupt
146- Settings: Added `--settings` flag to load settings from a JSON file
147- Settings: Fixed resolution of settings files paths that are symlinks
148- OTEL: Fixed reporting of wrong organization after authentication changes
149- Slash commands: Fixed permissions checking for allowed-tools with Bash
150- IDE: Added support for pasting images in VSCode MacOS using ⌘+V
151- IDE: Added `CLAUDE_CODE_AUTO_CONNECT_IDE=false` for disabling IDE auto-connection
152- Added `CLAUDE_CODE_SHELL_PREFIX` for wrapping Claude and user-provided shell commands run by Claude Code
153
154## 1.0.60
155
156- You can now create custom subagents for specialized tasks! Run /agents to get started
157
158## 1.0.59
159
160- SDK: Added tool confirmation support with canUseTool callback
161- SDK: Allow specifying env for spawned process
162- Hooks: Exposed PermissionDecision to hooks (including "ask")
163- Hooks: UserPromptSubmit now supports additionalContext in advanced JSON output
164- Fixed issue where some Max users that specified Opus would still see fallback to Sonnet
165
166## 1.0.58
167
168- Added support for reading PDFs
169- MCP: Improved server health status display in 'claude mcp list'
170- Hooks: Added CLAUDE_PROJECT_DIR env var for hook commands
171
172## 1.0.57
173
174- Added support for specifying a model in slash commands
175- Improved permission messages to help Claude understand allowed tools
176- Fix: Remove trailing newlines from bash output in terminal wrapping
177
178## 1.0.56
179
180- Windows: Enabled shift+tab for mode switching on versions of Node.js that support terminal VT mode
181- Fixes for WSL IDE detection
182- Fix an issue causing awsRefreshHelper changes to .aws directory not to be picked up
183
184## 1.0.55
185
186- Clarified knowledge cutoff for Opus 4 and Sonnet 4 models
187- Windows: fixed Ctrl+Z crash
188- SDK: Added ability to capture error logging
189- Add --system-prompt-file option to override system prompt in print mode
190
191## 1.0.54
192
193- Hooks: Added UserPromptSubmit hook and the current working directory to hook inputs
194- Custom slash commands: Added argument-hint to frontmatter
195- Windows: OAuth uses port 45454 and properly constructs browser URL
196- Windows: mode switching now uses alt + m, and plan mode renders properly
197- Shell: Switch to in-memory shell snapshot to fix file-related errors
198
199## 1.0.53
200
201- Updated @-mention file truncation from 100 lines to 2000 lines
202- 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).
203
204## 1.0.52
205
206- Added support for MCP server instructions
207
208## 1.0.51
209
210- Added support for native Windows (requires Git for Windows)
211- Added support for Bedrock API keys through environment variable AWS_BEARER_TOKEN_BEDROCK
212- Settings: /doctor can now help you identify and fix invalid setting files
213- `--append-system-prompt` can now be used in interactive mode, not just --print/-p.
214- Increased auto-compact warning threshold from 60% to 80%
215- Fixed an issue with handling user directories with spaces for shell snapshots
216- OTEL resource now includes os.type, os.version, host.arch, and wsl.version (if running on Windows Subsystem for Linux)
217- Custom slash commands: Fixed user-level commands in subdirectories
218- Plan mode: Fixed issue where rejected plan from sub-task would get discarded
219
220## 1.0.48
221
222- Fixed a bug in v1.0.45 where the app would sometimes freeze on launch
223- Added progress messages to Bash tool based on the last 5 lines of command output
224- Added expanding variables support for MCP server configuration
225- Moved shell snapshots from /tmp to ~/.claude for more reliable Bash tool calls
226- Improved IDE extension path handling when Claude Code runs in WSL
227- Hooks: Added a PreCompact hook
228- Vim mode: Added c, f/F, t/T
229
230## 1.0.45
231
232- Redesigned Search (Grep) tool with new tool input parameters and features
233- Disabled IDE diffs for notebook files, fixing "Timeout waiting after 1000ms" error
234- Fixed config file corruption issue by enforcing atomic writes
235- Updated prompt input undo to Ctrl+\_ to avoid breaking existing Ctrl+U behavior, matching zsh's undo shortcut
236- Stop Hooks: Fixed transcript path after /clear and fixed triggering when loop ends with tool call
237- Custom slash commands: Restored namespacing in command names based on subdirectories. For example, .claude/commands/frontend/component.md is now /frontend:component, not /component.
238
239## 1.0.44
240
241- New /export command lets you quickly export a conversation for sharing
242- MCP: resource_link tool results are now supported
243- MCP: tool annotations and tool titles now display in /mcp view
244- Changed Ctrl+Z to suspend Claude Code. Resume by running `fg`. Prompt input undo is now Ctrl+U.
245
246## 1.0.43
247
248- Fixed a bug where the theme selector was saving excessively
249- Hooks: Added EPIPE system error handling
250
251## 1.0.42
252
253- Added tilde (`~`) expansion support to `/add-dir` command
254
255## 1.0.41
256
257- Hooks: Split Stop hook triggering into Stop and SubagentStop
258- Hooks: Enabled optional timeout configuration for each command
259- Hooks: Added "hook_event_name" to hook input
260- Fixed a bug where MCP tools would display twice in tool list
261- New tool parameters JSON for Bash tool in `tool_decision` event
262
263## 1.0.40
264
265- Fixed a bug causing API connection errors with UNABLE_TO_GET_ISSUER_CERT_LOCALLY if `NODE_EXTRA_CA_CERTS` was set
266
267## 1.0.39
268
269- New Active Time metric in OpenTelemetry logging
270
271## 1.0.38
272
273- Released hooks. Special thanks to community input in https://github.com/anthropics/claude-code/issues/712. Docs: https://docs.anthropic.com/en/docs/claude-code/hooks
274
275## 1.0.37
276
277- Remove ability to set `Proxy-Authorization` header via ANTHROPIC_AUTH_TOKEN or apiKeyHelper
278
279## 1.0.36
280
281- Web search now takes today's date into context
282- Fixed a bug where stdio MCP servers were not terminating properly on exit
283
284## 1.0.35
285
286- Added support for MCP OAuth Authorization Server discovery
287
288## 1.0.34
289
290- Fixed a memory leak causing a MaxListenersExceededWarning message to appear
291
292## 1.0.33
293
294- Improved logging functionality with session ID support
295- Added prompt input undo functionality (Ctrl+Z and vim 'u' command)
296- Improvements to plan mode
297
298## 1.0.32
299
300- Updated loopback config for litellm
301- Added forceLoginMethod setting to bypass login selection screen
302
303## 1.0.31
304
305- Fixed a bug where ~/.claude.json would get reset when file contained invalid JSON
306
307## 1.0.30
308
309- Custom slash commands: Run bash output, @-mention files, enable thinking with thinking keywords
310- Improved file path autocomplete with filename matching
311- Added timestamps in Ctrl-r mode and fixed Ctrl-c handling
312- Enhanced jq regex support for complex filters with pipes and select
313
314## 1.0.29
315
316- Improved CJK character support in cursor navigation and rendering
317
318## 1.0.28
319
320- Slash commands: Fix selector display during history navigation
321- Resizes images before upload to prevent API size limit errors
322- Added XDG_CONFIG_HOME support to configuration directory
323- Performance optimizations for memory usage
324- New attributes (terminal.type, language) in OpenTelemetry logging
325
326## 1.0.27
327
328- Streamable HTTP MCP servers are now supported
329- Remote MCP servers (SSE and HTTP) now support OAuth
330- MCP resources can now be @-mentioned
331- /resume slash command to switch conversations within Claude Code
332
333## 1.0.25
334
335- Slash commands: moved "project" and "user" prefixes to descriptions
336- Slash commands: improved reliability for command discovery
337- Improved support for Ghostty
338- Improved web search reliability
339
340## 1.0.24
341
342- Improved /mcp output
343- Fixed a bug where settings arrays got overwritten instead of merged
344
345## 1.0.23
346
347- Released TypeScript SDK: import @anthropic-ai/claude-code to get started
348- Released Python SDK: pip install claude-code-sdk to get started
349
350## 1.0.22
351
352- SDK: Renamed `total_cost` to `total_cost_usd`
353
354## 1.0.21
355
356- Improved editing of files with tab-based indentation
357- Fix for tool_use without matching tool_result errors
358- Fixed a bug where stdio MCP server processes would linger after quitting Claude Code
359
360## 1.0.18
361
362- Added --add-dir CLI argument for specifying additional working directories
363- Added streaming input support without require -p flag
364- Improved startup performance and session storage performance
365- Added CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR environment variable to freeze working directory for bash commands
366- Added detailed MCP server tools display (/mcp)
367- MCP authentication and permission improvements
368- Added auto-reconnection for MCP SSE connections on disconnect
369- Fixed issue where pasted content was lost when dialogs appeared
370
371## 1.0.17
372
373- We now emit messages from sub-tasks in -p mode (look for the parent_tool_use_id property)
374- Fixed crashes when the VS Code diff tool is invoked multiple times quickly
375- MCP server list UI improvements
376- Update Claude Code process title to display "claude" instead of "node"
377
378## 1.0.11
379
380- Claude Code can now also be used with a Claude Pro subscription
381- Added /upgrade for smoother switching to Claude Max plans
382- Improved UI for authentication from API keys and Bedrock/Vertex/external auth tokens
383- Improved shell configuration error handling
384- Improved todo list handling during compaction
385
386## 1.0.10
387
388- Added markdown table support
389- Improved streaming performance
390
391## 1.0.8
392
393- Fixed Vertex AI region fallback when using CLOUD_ML_REGION
394- Increased default otel interval from 1s -> 5s
395- Fixed edge cases where MCP_TIMEOUT and MCP_TOOL_TIMEOUT weren't being respected
396- Fixed a regression where search tools unnecessarily asked for permissions
397- Added support for triggering thinking non-English languages
398- Improved compacting UI
399
400## 1.0.7
401
402- Renamed /allowed-tools -> /permissions
403- Migrated allowedTools and ignorePatterns from .claude.json -> settings.json
404- Deprecated claude config commands in favor of editing settings.json
405- Fixed a bug where --dangerously-skip-permissions sometimes didn't work in --print mode
406- Improved error handling for /install-github-app
407- Bugfixes, UI polish, and tool reliability improvements
408
409## 1.0.6
410
411- Improved edit reliability for tab-indented files
412- Respect CLAUDE_CONFIG_DIR everywhere
413- Reduced unnecessary tool permission prompts
414- Added support for symlinks in @file typeahead
415- Bugfixes, UI polish, and tool reliability improvements
416
417## 1.0.4
418
419- Fixed a bug where MCP tool errors weren't being parsed correctly
420
421## 1.0.1
422
423- Added `DISABLE_INTERLEAVED_THINKING` to give users the option to opt out of interleaved thinking.
424- Improved model references to show provider-specific names (Sonnet 3.7 for Bedrock, Sonnet 4 for Console)
425- Updated documentation links and OAuth process descriptions
426
427## 1.0.0
428
429- Claude Code is now generally available
430- Introducing Sonnet 4 and Opus 4 models
431
432## 0.2.125
433
434- Breaking change: Bedrock ARN passed to `ANTHROPIC_MODEL` or `ANTHROPIC_SMALL_FAST_MODEL` should no longer contain an escaped slash (specify `/` instead of `%2F`)
435- Removed `DEBUG=true` in favor of `ANTHROPIC_LOG=debug`, to log all requests
436
437## 0.2.117
438
439- Breaking change: --print JSON output now returns nested message objects, for forwards-compatibility as we introduce new metadata fields
440- Introduced settings.cleanupPeriodDays
441- Introduced CLAUDE_CODE_API_KEY_HELPER_TTL_MS env var
442- Introduced --debug mode
443
444## 0.2.108
445
446- You can now send messages to Claude while it works to steer Claude in real-time
447- Introduced BASH_DEFAULT_TIMEOUT_MS and BASH_MAX_TIMEOUT_MS env vars
448- Fixed a bug where thinking was not working in -p mode
449- Fixed a regression in /cost reporting
450- Deprecated MCP wizard interface in favor of other MCP commands
451- Lots of other bugfixes and improvements
452
453## 0.2.107
454
455- CLAUDE.md files can now import other files. Add @path/to/file.md to ./CLAUDE.md to load additional files on launch
456
457## 0.2.106
458
459- MCP SSE server configs can now specify custom headers
460- Fixed a bug where MCP permission prompt didn't always show correctly
461
462## 0.2.105
463
464- Claude can now search the web
465- Moved system & account status to /status
466- Added word movement keybindings for Vim
467- Improved latency for startup, todo tool, and file edits
468
469## 0.2.102
470
471- Improved thinking triggering reliability
472- Improved @mention reliability for images and folders
473- You can now paste multiple large chunks into one prompt
474
475## 0.2.100
476
477- Fixed a crash caused by a stack overflow error
478- Made db storage optional; missing db support disables --continue and --resume
479
480## 0.2.98
481
482- Fixed an issue where auto-compact was running twice
483
484## 0.2.96
485
486- Claude Code can now also be used with a Claude Max subscription (https://claude.ai/upgrade)
487
488## 0.2.93
489
490- Resume conversations from where you left off from with "claude --continue" and "claude --resume"
491- Claude now has access to a Todo list that helps it stay on track and be more organized
492
493## 0.2.82
494
495- Added support for --disallowedTools
496- Renamed tools for consistency: LSTool -> LS, View -> Read, etc.
497
498## 0.2.75
499
500- Hit Enter to queue up additional messages while Claude is working
501- Drag in or copy/paste image files directly into the prompt
502- @-mention files to directly add them to context
503- Run one-off MCP servers with `claude --mcp-config <path-to-file>`
504- Improved performance for filename auto-complete
505
506## 0.2.74
507
508- Added support for refreshing dynamically generated API keys (via apiKeyHelper), with a 5 minute TTL
509- Task tool can now perform writes and run bash commands
510
511## 0.2.72
512
513- Updated spinner to indicate tokens loaded and tool usage
514
515## 0.2.70
516
517- Network commands like curl are now available for Claude to use
518- Claude can now run multiple web queries in parallel
519- Pressing ESC once immediately interrupts Claude in Auto-accept mode
520
521## 0.2.69
522
523- Fixed UI glitches with improved Select component behavior
524- Enhanced terminal output display with better text truncation logic
525
526## 0.2.67
527
528- Shared project permission rules can be saved in .claude/settings.json
529
530## 0.2.66
531
532- Print mode (-p) now supports streaming output via --output-format=stream-json
533- Fixed issue where pasting could trigger memory or bash mode unexpectedly
534
535## 0.2.63
536
537- Fixed an issue where MCP tools were loaded twice, which caused tool call errors
538
539## 0.2.61
540
541- Navigate menus with vim-style keys (j/k) or bash/emacs shortcuts (Ctrl+n/p) for faster interaction
542- Enhanced image detection for more reliable clipboard paste functionality
543- Fixed an issue where ESC key could crash the conversation history selector
544
545## 0.2.59
546
547- Copy+paste images directly into your prompt
548- Improved progress indicators for bash and fetch tools
549- Bugfixes for non-interactive mode (-p)
550
551## 0.2.54
552
553- Quickly add to Memory by starting your message with '#'
554- Press ctrl+r to see full output for long tool results
555- Added support for MCP SSE transport
556
557## 0.2.53
558
559- New web fetch tool lets Claude view URLs that you paste in
560- Fixed a bug with JPEG detection
561
562## 0.2.50
563
564- New MCP "project" scope now allows you to add MCP servers to .mcp.json files and commit them to your repository
565
566## 0.2.49
567
568- Previous MCP server scopes have been renamed: previous "project" scope is now "local" and "global" scope is now "user"
569
570## 0.2.47
571
572- Press Tab to auto-complete file and folder names
573- Press Shift + Tab to toggle auto-accept for file edits
574- Automatic conversation compaction for infinite conversation length (toggle with /config)
575
576## 0.2.44
577
578- Ask Claude to make a plan with thinking mode: just say 'think' or 'think harder' or even 'ultrathink'
579
580## 0.2.41
581
582- MCP server startup timeout can now be configured via MCP_TIMEOUT environment variable
583- MCP server startup no longer blocks the app from starting up
584
585## 0.2.37
586
587- New /release-notes command lets you view release notes at any time
588- `claude config add/remove` commands now accept multiple values separated by commas or spaces
589
590## 0.2.36
591
592- Import MCP servers from Claude Desktop with `claude mcp add-from-claude-desktop`
593- Add MCP servers as JSON strings with `claude mcp add-json <n> <json>`
594
595## 0.2.34
596
597- Vim bindings for text input - enable with /vim or /config
598
599## 0.2.32
600
601- Interactive MCP setup wizard: Run "claude mcp add" to add MCP servers with a step-by-step interface
602- Fix for some PersistentShell issues
603
604## 0.2.31
605
606- Custom slash commands: Markdown files in .claude/commands/ directories now appear as custom slash commands to insert prompts into your conversation
607- MCP debug mode: Run with --mcp-debug flag to get more information about MCP server errors
608
609## 0.2.30
610
611- Added ANSI color theme for better terminal compatibility
612- Fixed issue where slash command arguments weren't being sent properly
613- (Mac-only) API keys are now stored in macOS Keychain
614
615## 0.2.26
616
617- New /approved-tools command for managing tool permissions
618- Word-level diff display for improved code readability
619- Fuzzy matching for slash commands
620
621## 0.2.21
622
623- Fuzzy matching for /commands