Files
claude-code/CHANGELOG.md
2026-01-07 16:14:39 -08:00

60 KiB

Changelog

2.1.0

  • Added automatic skill hot-reload - skills created or modified in ~/.claude/skills or .claude/skills are now immediately available without restarting the session
  • Added support for running skills and slash commands in a forked sub-agent context using context: fork in skill frontmatter
  • Added support for agent field in skills to specify agent type for execution
  • Added language setting to configure Claude's response language (e.g., language: "japanese")
  • Changed Shift+Enter to work out of the box in iTerm2, WezTerm, Ghostty, and Kitty without modifying terminal configs
  • Added respectGitignore support in settings.json for per-project control over @-mention file picker behavior
  • Added IS_DEMO environment variable to hide email and organization from the UI, useful for streaming or recording sessions
  • Fixed security issue where sensitive data (OAuth tokens, API keys, passwords) could be exposed in debug logs
  • Fixed files and skills not being properly discovered when resuming sessions with -c or --resume
  • Fixed pasted content being lost when replaying prompts from history using up arrow or Ctrl+R search
  • Fixed Esc key with queued prompts to only move them to input without canceling the running task
  • Reduced permission prompts for complex bash commands
  • Fixed command search to prioritize exact and prefix matches on command names over fuzzy matches in descriptions
  • Fixed PreToolUse hooks to allow updatedInput when returning ask permission decision, enabling hooks to act as middleware while still requesting user consent
  • Fixed plugin path resolution for file-based marketplace sources
  • Fixed LSP tool being incorrectly enabled when no LSP servers were configured
  • Fixed background tasks failing with "git repository not found" error for repositories with dots in their names
  • Fixed Claude in Chrome support for WSL environments
  • Fixed Windows native installer silently failing when executable creation fails
  • Improved CLI help output to display options and subcommands in alphabetical order for easier navigation
  • Added wildcard pattern matching for Bash tool permissions using * at any position in rules (e.g., Bash(npm *), Bash(* install), Bash(git * main))
  • Added unified Ctrl+B backgrounding for both bash commands and agents - pressing Ctrl+B now backgrounds all running foreground tasks simultaneously
  • Added support for MCP list_changed notifications, allowing MCP servers to dynamically update their available tools, prompts, and resources without requiring reconnection
  • Added /teleport and /remote-env slash commands for claude.ai subscribers, allowing them to resume and configure remote sessions
  • Added support for disabling specific agents using Task(AgentName) syntax in settings.json permissions or the --disallowedTools CLI flag
  • Added hooks support to agent frontmatter, allowing agents to define PreToolUse, PostToolUse, and Stop hooks scoped to the agent's lifecycle
  • Added hooks support for skill and slash command frontmatter
  • Added new Vim motions: ; and , to repeat f/F/t/T motions, y operator for yank with yy/Y, p/P for paste, text objects (iw, aw, iW, aW, i", a", i', a', i(, a(, i[, a[, i{, a{), >> and << for indent/dedent, and J to join lines
  • Added /plan command shortcut to enable plan mode directly from the prompt
  • Added slash command autocomplete support when / appears anywhere in input, not just at the beginning
  • Added --tools flag support in interactive mode to restrict which built-in tools Claude can use during interactive sessions
  • Added CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS environment variable to override the default file read token limit
  • Added support for once: true config for hooks
  • Added support for YAML-style lists in frontmatter allowed-tools field for cleaner skill declarations
  • Added support for prompt and agent hook types from plugins (previously only command hooks were supported)
  • Added Cmd+V support for image paste in iTerm2 (maps to Ctrl+V)
  • Added left/right arrow key navigation for cycling through tabs in dialogs
  • Added real-time thinking block display in Ctrl+O transcript mode
  • Added filepath to full output in background bash task details dialog
  • Added Skills as a separate category in the context visualization
  • Fixed OAuth token refresh not triggering when server reports token expired but local expiration check disagrees
  • Fixed session persistence getting stuck after transient server errors by recovering from 409 conflicts when the entry was actually stored
  • Fixed session resume failures caused by orphaned tool results during concurrent tool execution
  • Fixed a race condition where stale OAuth tokens could be read from the keychain cache during concurrent token refresh attempts
  • Fixed AWS Bedrock subagents not inheriting EU/APAC cross-region inference model configuration, causing 403 errors when IAM permissions are scoped to specific regions
  • Fixed API context overflow when background tasks produce large output by truncating to 30K chars with file path reference
  • Fixed a hang when reading FIFO files by skipping symlink resolution for special file types
  • Fixed terminal keyboard mode not being reset on exit in Ghostty, iTerm2, Kitty, and WezTerm
  • Fixed Alt+B and Alt+F (word navigation) not working in iTerm2, Ghostty, Kitty, and WezTerm
  • Fixed ${CLAUDE_PLUGIN_ROOT} not being substituted in plugin allowed-tools frontmatter, which caused tools to incorrectly require approval
  • Fixed files created by the Write tool using hardcoded 0o600 permissions instead of respecting the system umask
  • Fixed commands with $() command substitution failing with parse errors
  • Fixed multi-line bash commands with backslash continuations being incorrectly split and flagged for permissions
  • Fixed bash command prefix extraction to correctly identify subcommands after global options (e.g., git -C /path log now correctly matches Bash(git log:*) rules)
  • Fixed slash commands passed as CLI arguments (e.g., claude /context) not being executed properly
  • Fixed pressing Enter after Tab-completing a slash command selecting a different command instead of submitting the completed one
  • Fixed slash command argument hint flickering and inconsistent display when typing commands with arguments
  • Fixed Claude sometimes redundantly invoking the Skill tool when running slash commands directly
  • Fixed skill token estimates in /context to accurately reflect frontmatter-only loading
  • Fixed subagents sometimes not inheriting the parent's model by default
  • Fixed model picker showing incorrect selection for Bedrock/Vertex users using --model haiku
  • Fixed duplicate Bash commands appearing in permission request option labels
  • Fixed noisy output when background tasks complete - now shows clean completion message instead of raw output
  • Fixed background task completion notifications to appear proactively with bullet point
  • Fixed forked slash commands showing "AbortError" instead of "Interrupted" message when cancelled
  • Fixed cursor disappearing after dismissing permission dialogs
  • Fixed /hooks menu selecting wrong hook type when scrolling to a different option
  • Fixed images in queued prompts showing as "[object Object]" when pressing Esc to cancel
  • Fixed images being silently dropped when queueing messages while backgrounding a task
  • Fixed large pasted images failing with "Image was too large" error
  • Fixed extra blank lines in multiline prompts containing CJK characters (Japanese, Chinese, Korean)
  • Fixed ultrathink keyword highlighting being applied to wrong characters when user prompt text wraps to multiple lines
  • Fixed collapsed "Reading X files…" indicator incorrectly switching to past tense when thinking blocks appear mid-stream
  • Fixed Bash read commands (like ls and cat) not being counted in collapsed read/search groups, causing groups to incorrectly show "Read 0 files"
  • Fixed spinner token counter to properly accumulate tokens from subagents during execution
  • Fixed memory leak in git diff parsing where sliced strings retained large parent strings
  • Fixed race condition where LSP tool could return "no server available" during startup
  • Fixed feedback submission hanging indefinitely when network requests timeout
  • Fixed search mode in plugin discovery and log selector views exiting when pressing up arrow
  • Fixed hook success message showing trailing colon when hook has no output
  • Multiple optimizations to improve startup performance
  • Improved terminal rendering performance when using native installer or Bun, especially for text with emoji, ANSI codes, and Unicode characters
  • Improved performance when reading Jupyter notebooks with many cells
  • Improved reliability for piped input like cat refactor.md | claude
  • Improved reliability for AskQuestion tool
  • Improved sed in-place edit commands to render as file edits with diff preview
  • Improved Claude to automatically continue when response is cut off due to output token limit, instead of showing an error message
  • Improved compaction reliability
  • Improved subagents (Task tool) to continue working after permission denial, allowing them to try alternative approaches
  • Improved skills to show progress while executing, displaying tool uses as they happen
  • Improved skills from /skills/ directories to be visible in the slash command menu by default (opt-out with user-invocable: false in frontmatter)
  • Improved skill suggestions to prioritize recently and frequently used skills
  • Improved spinner feedback when waiting for the first response token
  • Improved token count display in spinner to include tokens from background agents
  • Improved incremental output for async agents to give the main thread more control and visibility
  • Improved permission prompt UX with Tab hint moved to footer, cleaner Yes/No input labels with contextual placeholders
  • Improved the Claude in Chrome notification with shortened help text and persistent display until dismissed
  • Improved macOS screenshot paste reliability with TIFF format support
  • Improved /stats output
  • Updated Atlassian MCP integration to use a more reliable default configuration (streamable HTTP)
  • Changed "Interrupted" message color from red to grey for a less alarming appearance
  • Removed permission prompt when entering plan mode - users can now enter plan mode without approval
  • Removed underline styling from image reference links
  • [SDK] Changed minimum zod peer dependency to ^4.0.0
  • [VSCode] Added currently selected model name to the context menu
  • [VSCode] Added descriptive labels on auto-accept permission button (e.g., "Yes, allow npm for this project" instead of "Yes, and don't ask again")
  • [VSCode] Fixed paragraph breaks not rendering in markdown content
  • [VSCode] Fixed scrolling in the extension inadvertently scrolling the parent iframe
  • [Windows] Fixed issue with improper rendering

2.0.76

  • Fixed issue with macOS code-sign warning when using Claude in Chrome integration

2.0.75

  • Minor bugfixes

2.0.74

  • Added LSP (Language Server Protocol) tool for code intelligence features like go-to-definition, find references, and hover documentation
  • Added /terminal-setup support for Kitty, Alacritty, Zed, and Warp terminals
  • Added ctrl+t shortcut in /theme to toggle syntax highlighting on/off
  • Added syntax highlighting info to theme picker
  • Added guidance for macOS users when Alt shortcuts fail due to terminal configuration
  • Fixed skill allowed-tools not being applied to tools invoked by the skill
  • Fixed Opus 4.5 tip incorrectly showing when user was already using Opus
  • Fixed a potential crash when syntax highlighting isn't initialized correctly
  • Fixed visual bug in /plugins discover where list selection indicator showed while search box was focused
  • Fixed macOS keyboard shortcuts to display 'opt' instead of 'alt'
  • Improved /context command visualization with grouped skills and agents by source, slash commands, and sorted token count
  • [Windows] Fixed issue with improper rendering
  • [VSCode] Added gift tag pictogram for year-end promotion message

2.0.73

  • Added clickable [Image #N] links that open attached images in the default viewer
  • Added alt-y yank-pop to cycle through kill ring history after ctrl-y yank
  • Added search filtering to the plugin discover screen (type to filter by name, description, or marketplace)
  • Added support for custom session IDs when forking sessions with --session-id combined with --resume or --continue and --fork-session
  • Fixed slow input history cycling and race condition that could overwrite text after message submission
  • Improved /theme command to open theme picker directly
  • Improved theme picker UI
  • Improved search UX across resume session, permissions, and plugins screens with a unified SearchBox component
  • [VSCode] Added tab icon badges showing pending permissions (blue) and unread completions (orange)

2.0.72

  • Added Claude in Chrome (Beta) feature that works with the Chrome extension (https://claude.ai/chrome) to let you control your browser directly from Claude Code
  • Reduced terminal flickering
  • Added scannable QR code to mobile app tip for quick app downloads
  • Added loading indicator when resuming conversations for better feedback
  • Fixed /context command not respecting custom system prompts in non-interactive mode
  • Fixed order of consecutive Ctrl+K lines when pasting with Ctrl+Y
  • Improved @ mention file suggestion speed (~3x faster in git repositories)
  • Improved file suggestion performance in repos with .ignore or .rgignore files
  • Improved settings validation errors to be more prominent
  • Changed thinking toggle from Tab to Alt+T to avoid accidental triggers

2.0.71

  • Added /config toggle to enable/disable prompt suggestions
  • Added /settings as an alias for the /config command
  • Fixed @ file reference suggestions incorrectly triggering when cursor is in the middle of a path
  • Fixed MCP servers from .mcp.json not loading when using --dangerously-skip-permissions
  • Fixed permission rules incorrectly rejecting valid bash commands containing shell glob patterns (e.g., ls *.txt, for f in *.png)
  • Bedrock: Environment variable ANTHROPIC_BEDROCK_BASE_URL is now respected for token counting and inference profile listing
  • New syntax highlighting engine for native build

2.0.70

  • Added Enter key to accept and submit prompt suggestions immediately (tab still accepts for editing)
  • Added wildcard syntax mcp__server__* for MCP tool permissions to allow or deny all tools from a server
  • Added auto-update toggle for plugin marketplaces, allowing per-marketplace control over automatic updates
  • Added current_usage field to status line input, enabling accurate context window percentage calculations
  • Fixed input being cleared when processing queued commands while the user was typing
  • Fixed prompt suggestions replacing typed input when pressing Tab
  • Fixed diff view not updating when terminal is resized
  • Improved memory usage by 3x for large conversations
  • Improved resolution of stats screenshots copied to clipboard (Ctrl+S) for crisper images
  • Removed # shortcut for quick memory entry (tell Claude to edit your CLAUDE.md instead)
  • Fix thinking mode toggle in /config not persisting correctly
  • Improve UI for file creation permission dialog

2.0.69

  • Minor bugfixes

2.0.68

  • Fixed IME (Input Method Editor) support for languages like Chinese, Japanese, and Korean by correctly positioning the composition window at the cursor
  • Fixed a bug where disallowed MCP tools were visible to the model
  • Fixed an issue where steering messages could be lost while a subagent is working
  • Fixed Option+Arrow word navigation treating entire CJK (Chinese, Japanese, Korean) text sequences as a single word instead of navigating by word boundaries
  • Improved plan mode exit UX: show simplified yes/no dialog when exiting with empty or missing plan instead of throwing an error
  • Add support for enterprise managed settings. Contact your Anthropic account team to enable this feature.

2.0.67

  • Thinking mode is now enabled by default for Opus 4.5
  • Thinking mode configuration has moved to /config
  • Added search functionality to /permissions command with / keyboard shortcut for filtering rules by tool name
  • Show reason why autoupdater is disabled in /doctor
  • Fixed false "Another process is currently updating Claude" error when running claude update while another instance is already on the latest version
  • Fixed MCP servers from .mcp.json being stuck in pending state when running in non-interactive mode (-p flag or piped input)
  • Fixed scroll position resetting after deleting a permission rule in /permissions
  • Fixed word deletion (opt+delete) and word navigation (opt+arrow) not working correctly with non-Latin text such as Cyrillic, Greek, Arabic, Hebrew, Thai, and Chinese
  • Fixed claude install --force not bypassing stale lock files
  • Fixed consecutive @~/ file references in CLAUDE.md being incorrectly parsed due to markdown strikethrough interference
  • Windows: Fixed plugin MCP servers failing due to colons in log directory paths

2.0.65

  • Added ability to switch models while writing a prompt using alt+p (linux, windows), option+p (macos).
  • Added context window information to status line input
  • Added fileSuggestion setting for custom @ file search commands
  • Added CLAUDE_CODE_SHELL environment variable to override automatic shell detection (useful when login shell differs from actual working shell)
  • Fixed prompt not being saved to history when aborting a query with Escape
  • Fixed Read tool image handling to identify format from bytes instead of file extension

2.0.64

  • Made auto-compacting instant
  • Agents and bash commands can run asynchronously and send messages to wake up the main agent
  • /stats now provides users with interesting CC stats, such as favorite model, usage graph, usage streak
  • Added named session support: use /rename to name sessions, /resume <name> in REPL or claude --resume <name> from the terminal to resume them
  • Added support for .claude/rules/`. See https://code.claude.com/docs/en/memory for details.
  • Added image dimension metadata when images are resized, enabling accurate coordinate mappings for large images
  • Fixed auto-loading .env when using native installer
  • Fixed --system-prompt being ignored when using --continue or --resume flags
  • Improved /resume screen with grouped forked sessions and keyboard shortcuts for preview (P) and rename (R)
  • VSCode: Added copy-to-clipboard button on code blocks and bash tool inputs
  • VSCode: Fixed extension not working on Windows ARM64 by falling back to x64 binary via emulation
  • Bedrock: Improve efficiency of token counting
  • Bedrock: Add support for aws login AWS Management Console credentials
  • Unshipped AgentOutputTool and BashOutputTool, in favor of a new unified TaskOutputTool

2.0.62

  • Added "(Recommended)" indicator for multiple-choice questions, with the recommended option moved to the top of the list
  • Added attribution setting to customize commit and PR bylines (deprecates includeCoAuthoredBy)
  • Fixed duplicate slash commands appearing when ~/.claude is symlinked to a project directory
  • Fixed slash command selection not working when multiple commands share the same name
  • Fixed an issue where skill files inside symlinked skill directories could become circular symlinks
  • Fixed running versions getting removed because lock file incorrectly going stale
  • Fixed IDE diff tab not closing when rejecting file changes

2.0.61

  • Reverted VSCode support for multiple terminal clients due to responsiveness issues.

2.0.60

  • Added background agent support. Agents run in the background while you work
  • Added --disable-slash-commands CLI flag to disable all slash commands
  • Added model name to "Co-Authored-By" commit messages
  • Enabled "/mcp enable [server-name]" or "/mcp disable [server-name]" to quickly toggle all servers
  • Updated Fetch to skip summarization for pre-approved websites
  • VSCode: Added support for multiple terminal clients connecting to the IDE server simultaneously

2.0.59

  • Added --agent CLI flag to override the agent setting for the current session
  • Added agent setting to configure main thread with a specific agent's system prompt, tool restrictions, and model
  • VS Code: Fixed .claude.json config file being read from incorrect location

2.0.58

  • Pro users now have access to Opus 4.5 as part of their subscription!
  • Fixed timer duration showing "11m 60s" instead of "12m 0s"
  • Windows: Managed settings now prefer C:\Program Files\ClaudeCode if it exists. Support for C:\ProgramData\ClaudeCode will be removed in a future version.

2.0.57

  • Added feedback input when rejecting plans, allowing users to tell Claude what to change
  • VSCode: Added streaming message support for real-time response display

2.0.56

  • Added setting to enable/disable terminal progress bar (OSC 9;4)
  • 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.

2.0.55

  • Fixed proxy DNS resolution being forced on by default. Now opt-in via CLAUDE_CODE_PROXY_RESOLVES_HOSTS=true environment variable
  • Fixed keyboard navigation becoming unresponsive when holding down arrow keys in memory location selector
  • Improved AskUserQuestion tool to auto-submit single-select questions on the last question, eliminating the extra review screen for simple question flows
  • Improved fuzzy matching for @ file suggestions with faster, more accurate results

2.0.54

  • Hooks: Enable PermissionRequest hooks to process 'always allow' suggestions and apply permission updates
  • Fix issue with excessive iTerm notifications

2.0.52

  • Fixed duplicate message display when starting Claude with a command line argument
  • Fixed /usage command progress bars to fill up as usage increases (instead of showing remaining percentage)
  • Fixed image pasting not working on Linux systems running Wayland (now falls back to wl-paste when xclip is unavailable)
  • Permit some uses of $! in bash commands

2.0.51

  • Added Opus 4.5! https://www.anthropic.com/news/claude-opus-4-5
  • Introducing Claude Code for Desktop: https://claude.com/download
  • 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
  • Pro users can now purchase extra usage for access to Opus 4.5 in Claude Code
  • Plan Mode now builds more precise plans and executes more thoroughly
  • Usage limit notifications now easier to understand
  • Switched /usage back to "% used"
  • Fixed handling of thinking errors
  • Fixed performance regression

2.0.50

  • Fixed bug preventing calling MCP tools that have nested references in their input schemas
  • Silenced a noisy but harmless error during upgrades
  • Improved ultrathink text display
  • Improved clarity of 5-hour session limit warning message

2.0.49

  • Added readline-style ctrl-y for pasting deleted text
  • Improved clarity of usage limit warning message
  • Fixed handling of subagent permissions

2.0.47

  • Improved error messages and validation for claude --teleport
  • Improved error handling in /usage
  • Fixed race condition with history entry not getting logged at exit
  • Fixed Vertex AI configuration not being applied from settings.json

2.0.46

  • Fixed image files being reported with incorrect media type when format cannot be detected from metadata

2.0.45

  • Added support for Microsoft Foundry! See https://code.claude.com/docs/en/azure-ai-foundry
  • Added PermissionRequest hook to automatically approve or deny tool permission requests with custom logic
  • Send background tasks to Claude Code on the web by starting a message with &

2.0.43

  • Added permissionMode field for custom agents
  • Added tool_use_id field to PreToolUseHookInput and PostToolUseHookInput types
  • Added skills frontmatter field to declare skills to auto-load for subagents
  • Added the SubagentStart hook event
  • Fixed nested CLAUDE.md files not loading when @-mentioning files
  • Fixed duplicate rendering of some messages in the UI
  • Fixed some visual flickers
  • Fixed NotebookEdit tool inserting cells at incorrect positions when cell IDs matched the pattern cell-N

2.0.42

  • Added agent_id and agent_transcript_path fields to SubagentStop hooks.

2.0.41

  • Added model parameter to prompt-based stop hooks, allowing users to specify a custom model for hook evaluation
  • Fixed slash commands from user settings being loaded twice, which could cause rendering issues
  • Fixed incorrect labeling of user settings vs project settings in command descriptions
  • Fixed crash when plugin command hooks timeout during execution
  • Fixed: Bedrock users no longer see duplicate Opus entries in the /model picker when using --model haiku
  • Fixed broken security documentation links in trust dialogs and onboarding
  • Fixed issue where pressing ESC to close the diff modal would also interrupt the model
  • ctrl-r history search landing on a slash command no longer cancels the search
  • SDK: Support custom timeouts for hooks
  • Allow more safe git commands to run without approval
  • Plugins: Added support for sharing and installing output styles
  • Teleporting a session from web will automatically set the upstream branch

2.0.37

  • Fixed how idleness is computed for notifications
  • Hooks: Added matcher values for Notification hook events
  • Output Styles: Added keep-coding-instructions option to frontmatter

2.0.36

  • Fixed: DISABLE_AUTOUPDATER environment variable now properly disables package manager update notifications
  • Fixed queued messages being incorrectly executed as bash commands
  • Fixed input being lost when typing while a queued message is processed

2.0.35

  • Improve fuzzy search results when searching commands
  • Improved VS Code extension to respect chat.fontSize and chat.fontFamily settings throughout the entire UI, and apply font changes immediately without requiring reload
  • 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
  • Migrated ignorePatterns from project config to deny permissions in the localSettings.
  • Fixed menu navigation getting stuck on items with empty string or other falsy values (e.g., in the /hooks menu)

2.0.34

  • VSCode Extension: Added setting to configure the initial permission mode for new conversations
  • Improved file path suggestion performance with native Rust-based fuzzy finder
  • Fixed infinite token refresh loop that caused MCP servers with OAuth (e.g., Slack) to hang during connection
  • Fixed memory crash when reading or writing large files (especially base64-encoded images)

2.0.33

  • Native binary installs now launch quicker.
  • Fixed claude doctor incorrectly detecting Homebrew vs npm-global installations by properly resolving symlinks
  • Fixed claude mcp serve exposing tools with incompatible outputSchemas

2.0.32

  • Un-deprecate output styles based on community feedback
  • Added companyAnnouncements setting for displaying announcements on startup
  • Fixed hook progress messages not updating correctly during PostToolUse hook execution

2.0.31

  • Windows: native installation uses shift+tab as shortcut for mode switching, instead of alt+m
  • Vertex: add support for Web Search on supported models
  • VSCode: Adding the respectGitIgnore configuration to include .gitignored files in file searches (defaults to true)
  • Fixed a bug with subagents and MCP servers related to "Tool names must be unique" error
  • Fixed issue causing /compact to fail with prompt_too_long by making it respect existing compact boundaries
  • Fixed plugin uninstall not removing plugins

2.0.30

  • Added helpful hint to run security unlock-keychain when encountering API key errors on macOS with locked keychain
  • Added allowUnsandboxedCommands sandbox setting to disable the dangerouslyDisableSandbox escape hatch at policy level
  • Added disallowedTools field to custom agent definitions for explicit tool blocking
  • Added prompt-based stop hooks
  • VSCode: Added respectGitIgnore configuration to include .gitignored files in file searches (defaults to true)
  • Enabled SSE MCP servers on native build
  • Deprecated output styles. Review options in /output-style and use --system-prompt-file, --system-prompt, --append-system-prompt, CLAUDE.md, or plugins instead
  • Removed support for custom ripgrep configuration, resolving an issue where Search returns no results and config discovery fails
  • Fixed Explore agent creating unwanted .md investigation files during codebase exploration
  • Fixed a bug where /context would sometimes fail with "max_tokens must be greater than thinking.budget_tokens" error message
  • Fixed --mcp-config flag to correctly override file-based MCP configurations
  • Fixed bug that saved session permissions to local settings
  • Fixed MCP tools not being available to sub-agents
  • Fixed hooks and plugins not executing when using --dangerously-skip-permissions flag
  • Fixed delay when navigating through typeahead suggestions with arrow keys
  • VSCode: Restored selection indicator in input footer showing current file or code selection status

2.0.28

  • Plan mode: introduced new Plan subagent
  • Subagents: claude can now choose to resume subagents
  • Subagents: claude can dynamically choose the model used by its subagents
  • SDK: added --max-budget-usd flag
  • Discovery of custom slash commands, subagents, and output styles no longer respects .gitignore
  • Stop /terminal-setup from adding backslash to Shift + Enter in VS Code
  • Add branch and tag support for git-based plugins and marketplaces using fragment syntax (e.g., owner/repo#branch)
  • Fixed a bug where macOS permission prompts would show up upon initial launch when launching from home directory
  • Various other bug fixes

2.0.27

  • New UI for permission prompts
  • Added current branch filtering and search to session resume screen for easier navigation
  • Fixed directory @-mention causing "No assistant message found" error
  • VSCode Extension: Add config setting to include .gitignored files in file searches
  • VSCode Extension: Bug fixes for unrelated 'Warmup' conversations, and configuration/settings occasionally being reset to defaults

2.0.25

2.0.24

  • Fixed a bug where project-level skills were not loading when --setting-sources 'project' was specified
  • Claude Code Web: Support for Web -> CLI teleport
  • Sandbox: Releasing a sandbox mode for the BashTool on Linux & Mac
  • Bedrock: Display awsAuthRefresh output when auth is required

2.0.22

  • Fixed content layout shift when scrolling through slash commands
  • IDE: Add toggle to enable/disable thinking.
  • Fix bug causing duplicate permission prompts with parallel tool calls
  • Add support for enterprise managed MCP allowlist and denylist

2.0.21

  • Support MCP structuredContent field in tool responses
  • Added an interactive question tool
  • Claude will now ask you questions more often in plan mode
  • Added Haiku 4.5 as a model option for Pro users
  • Fixed an issue where queued commands don't have access to previous messages' output

2.0.20

  • Added support for Claude Skills

2.0.19

  • Auto-background long-running bash commands instead of killing them. Customize with BASH_DEFAULT_TIMEOUT_MS
  • Fixed a bug where Haiku was unnecessarily called in print mode

2.0.17

  • Added Haiku 4.5 to model selector!
  • Haiku 4.5 automatically uses Sonnet in plan mode, and Haiku for execution (i.e. SonnetPlan by default)
  • 3P (Bedrock and Vertex) are not automatically upgraded yet. Manual upgrading can be done through setting ANTHROPIC_DEFAULT_HAIKU_MODEL
  • Introducing the Explore subagent. Powered by Haiku it'll search through your codebase efficiently to save context!
  • OTEL: support HTTP_PROXY and HTTPS_PROXY
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC now disables release notes fetching

2.0.15

  • Fixed bug with resuming where previously created files needed to be read again before writing
  • Fixed bug with -p mode where @-mentioned files needed to be read again before writing

2.0.14

  • Fix @-mentioning MCP servers to toggle them on/off
  • Improve permission checks for bash with inline env vars
  • Fix ultrathink + thinking toggle
  • Reduce unnecessary logins
  • Document --system-prompt
  • Several improvements to rendering
  • Plugins UI polish

2.0.13

  • Fixed /plugin not working on native build

2.0.12

  • Plugin System Released: Extend Claude Code with custom commands, agents, hooks, and MCP servers from marketplaces
  • /plugin install, /plugin enable/disable, /plugin marketplace commands for plugin management
  • Repository-level plugin configuration via extraKnownMarketplaces for team collaboration
  • /plugin validate command for validating plugin structure and configuration
  • Plugin announcement blog post at https://www.anthropic.com/news/claude-code-plugins
  • Plugin documentation available at https://code.claude.com/docs/en/plugins
  • Comprehensive error messages and diagnostics via /doctor command
  • Avoid flickering in /model selector
  • Improvements to /help
  • Avoid mentioning hooks in /resume summaries
  • Changes to the "verbose" setting in /config now persist across sessions

2.0.11

  • Reduced system prompt size by 1.4k tokens
  • IDE: Fixed keyboard shortcuts and focus issues for smoother interaction
  • Fixed Opus fallback rate limit errors appearing incorrectly
  • Fixed /add-dir command selecting wrong default tab

2.0.10

  • Rewrote terminal renderer for buttery smooth UI
  • Enable/disable MCP servers by @mentioning, or in /mcp
  • Added tab completion for shell commands in bash mode
  • PreToolUse hooks can now modify tool inputs
  • Press Ctrl-G to edit your prompt in your system's configured text editor
  • Fixes for bash permission checks with environment variables in the command

2.0.9

  • Fix regression where bash backgrounding stopped working

2.0.8

  • Update Bedrock default Sonnet model to global.anthropic.claude-sonnet-4-5-20250929-v1:0
  • IDE: Add drag-and-drop support for files and folders in chat
  • /context: Fix counting for thinking blocks
  • Improve message rendering for users with light themes on dark terminals
  • Remove deprecated .claude.json allowedTools, ignorePatterns, env, and todoFeatureEnabled config options (instead, configure these in your settings.json)

2.0.5

  • IDE: Fix IME unintended message submission with Enter and Tab
  • IDE: Add "Open in Terminal" link in login screen
  • Fix unhandled OAuth expiration 401 API errors
  • SDK: Added SDKUserMessageReplay.isReplay to prevent duplicate messages

2.0.1

  • Skip Sonnet 4.5 default model setting change for Bedrock and Vertex
  • Various bug fixes and presentation improvements

2.0.0

  • New native VS Code extension
  • Fresh coat of paint throughout the whole app
  • /rewind a conversation to undo code changes
  • /usage command to see plan limits
  • Tab to toggle thinking (sticky across sessions)
  • Ctrl-R to search history
  • Unshipped claude config command
  • Hooks: Reduced PostToolUse 'tool_use' ids were found without 'tool_result' blocks errors
  • SDK: The Claude Code SDK is now the Claude Agent SDK
  • Add subagents dynamically with --agents flag

1.0.126

  • Enable /context command for Bedrock and Vertex
  • Add mTLS support for HTTP-based OpenTelemetry exporters

1.0.124

  • Set CLAUDE_BASH_NO_LOGIN environment variable to 1 or true to to skip login shell for BashTool
  • Fix Bedrock and Vertex environment variables evaluating all strings as truthy
  • No longer inform Claude of the list of allowed tools when permission is denied
  • Fixed security vulnerability in Bash tool permission checks
  • Improved VSCode extension performance for large files

1.0.123

  • Bash permission rules now support output redirections when matching (e.g., Bash(python:*) matches python script.py > output.txt)
  • Fixed thinking mode triggering on negation phrases like "don't think"
  • Fixed rendering performance degradation during token streaming
  • Added SlashCommand tool, which enables Claude to invoke your slash commands. https://code.claude.com/docs/en/slash-commands#SlashCommand-tool
  • Enhanced BashTool environment snapshot logging
  • Fixed a bug where resuming a conversation in headless mode would sometimes enable thinking unnecessarily
  • Migrated --debug logging to a file, to enable easy tailing & filtering

1.0.120

  • Fix input lag during typing, especially noticeable with large prompts
  • Improved VSCode extension command registry and sessions dialog user experience
  • Enhanced sessions dialog responsiveness and visual feedback
  • Fixed IDE compatibility issue by removing worktree support check
  • Fixed security vulnerability where Bash tool permission checks could be bypassed using prefix matching

1.0.119

  • Fix Windows issue where process visually freezes on entering interactive mode
  • Support dynamic headers for MCP servers via headersHelper configuration
  • Fix thinking mode not working in headless sessions
  • Fix slash commands now properly update allowed tools instead of replacing them

1.0.117

  • Add Ctrl-R history search to recall previous commands like bash/zsh
  • Fix input lag while typing, especially on Windows
  • Add sed command to auto-allowed commands in acceptEdits mode
  • Fix Windows PATH comparison to be case-insensitive for drive letters
  • Add permissions management hint to /add-dir output

1.0.115

  • Improve thinking mode display with enhanced visual effects
  • Type /t to temporarily disable thinking mode in your prompt
  • Improve path validation for glob and grep tools
  • Show condensed output for post-tool hooks to reduce visual clutter
  • Fix visual feedback when loading state completes
  • Improve UI consistency for permission request dialogs

1.0.113

  • Deprecated piped input in interactive mode
  • Move Ctrl+R keybinding for toggling transcript to Ctrl+O

1.0.112

  • Transcript mode (Ctrl+R): Added the model used to generate each assistant message
  • Addressed issue where some Claude Max users were incorrectly recognized as Claude Pro users
  • Hooks: Added systemMessage support for SessionEnd hooks
  • Added spinnerTipsEnabled setting to disable spinner tips
  • IDE: Various improvements and bug fixes

1.0.111

  • /model now validates provided model names
  • Fixed Bash tool crashes caused by malformed shell syntax parsing

1.0.110

  • /terminal-setup command now supports WezTerm
  • MCP: OAuth tokens now proactively refresh before expiration
  • Fixed reliability issues with background Bash processes

1.0.109

  • SDK: Added partial message streaming support via --include-partial-messages CLI flag

1.0.106

  • Windows: Fixed path permission matching to consistently use POSIX format (e.g., Read(//c/Users/...))

1.0.97

  • Settings: /doctor now validates permission rule syntax and suggests corrections

1.0.94

  • Vertex: add support for global endpoints for supported models
  • /memory command now allows direct editing of all imported memory files
  • SDK: Add custom tools as callbacks
  • Added /todos command to list current todo items

1.0.93

  • Windows: Add alt + v shortcut for pasting images from clipboard
  • Support NO_PROXY environment variable to bypass proxy for specified hostnames and IPs

1.0.90

  • Settings file changes take effect immediately - no restart required

1.0.88

  • Fixed issue causing "OAuth authentication is currently not supported"
  • Status line input now includes exceeds_200k_tokens
  • Fixed incorrect usage tracking in /cost.
  • Introduced ANTHROPIC_DEFAULT_SONNET_MODEL and ANTHROPIC_DEFAULT_OPUS_MODEL for controlling model aliases opusplan, opus, and sonnet.
  • Bedrock: Updated default Sonnet model to Sonnet 4

1.0.86

  • Added /context to help users self-serve debug context issues
  • SDK: Added UUID support for all SDK messages
  • SDK: Added --replay-user-messages to replay user messages back to stdout

1.0.85

  • Status line input now includes session cost info
  • Hooks: Introduced SessionEnd hook

1.0.84

  • Fix tool_use/tool_result id mismatch error when network is unstable
  • Fix Claude sometimes ignoring real-time steering when wrapping up a task
  • @-mention: Add ~/.claude/* files to suggestions for easier agent, output style, and slash command editing
  • Use built-in ripgrep by default; to opt out of this behavior, set USE_BUILTIN_RIPGREP=0

1.0.83

  • @-mention: Support files with spaces in path
  • New shimmering spinner

1.0.82

  • SDK: Add request cancellation support
  • SDK: New additionalDirectories option to search custom paths, improved slash command processing
  • Settings: Validation prevents invalid fields in .claude/settings.json files
  • MCP: Improve tool name consistency
  • Bash: Fix crash when Claude tries to automatically read large files

1.0.81

1.0.80

  • UI improvements: Fix text contrast for custom subagent colors and spinner rendering issues

1.0.77

  • Bash tool: Fix heredoc and multiline string escaping, improve stderr redirection handling
  • SDK: Add session support and permission denial tracking
  • Fix token limit errors in conversation summarization
  • Opus Plan Mode: New setting in /model to run Opus only in plan mode, Sonnet otherwise

1.0.73

  • MCP: Support multiple config files with --mcp-config file1.json file2.json
  • MCP: Press Esc to cancel OAuth authentication flows
  • Bash: Improved command validation and reduced false security warnings
  • UI: Enhanced spinner animations and status line visual hierarchy
  • Linux: Added support for Alpine and musl-based distributions (requires separate ripgrep installation)

1.0.72

  • Ask permissions: have Claude Code always ask for confirmation to use specific tools with /permissions

1.0.71

  • Background commands: (Ctrl-b) to run any Bash command in the background so Claude can keep working (great for dev servers, tailing logs, etc.)
  • Customizable status line: add your terminal prompt to Claude Code with /statusline

1.0.70

  • Performance: Optimized message rendering for better performance with large contexts
  • Windows: Fixed native file search, ripgrep, and subagent functionality
  • Added support for @-mentions in slash command arguments

1.0.69

  • Upgraded Opus to version 4.1

1.0.68

  • Fix incorrect model names being used for certain commands like /pr-comments
  • 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.
  • Windows: improve sub-process spawning to eliminate "No such file or directory" when running commands like pnpm
  • Enhanced /doctor command with CLAUDE.md and MCP tool context for self-serve debugging
  • SDK: Added canUseTool callback support for tool confirmation
  • Added disableAllHooks setting
  • Improved file suggestions performance in large repos

1.0.65

  • IDE: Fixed connection stability issues and error handling for diagnostics
  • Windows: Fixed shell environment setup for users without .bashrc files

1.0.64

  • Agents: Added model customization support - you can now specify which model an agent should use
  • Agents: Fixed unintended access to the recursive agent tool
  • Hooks: Added systemMessage field to hook JSON output for displaying warnings and context
  • SDK: Fixed user input tracking across multi-turn conversations
  • Added hidden files to file search and @-mention suggestions

1.0.63

  • Windows: Fixed file search, @agent mentions, and custom slash commands functionality

1.0.62

  • Added @-mention support with typeahead for custom agents. @ to invoke it
  • Hooks: Added SessionStart hook for new session initialization
  • /add-dir command now supports typeahead for directory paths
  • Improved network connectivity check reliability

1.0.61

  • Transcript mode (Ctrl+R): Changed Esc to exit transcript mode rather than interrupt
  • Settings: Added --settings flag to load settings from a JSON file
  • Settings: Fixed resolution of settings files paths that are symlinks
  • OTEL: Fixed reporting of wrong organization after authentication changes
  • Slash commands: Fixed permissions checking for allowed-tools with Bash
  • IDE: Added support for pasting images in VSCode MacOS using ⌘+V
  • IDE: Added CLAUDE_CODE_AUTO_CONNECT_IDE=false for disabling IDE auto-connection
  • Added CLAUDE_CODE_SHELL_PREFIX for wrapping Claude and user-provided shell commands run by Claude Code

1.0.60

  • You can now create custom subagents for specialized tasks! Run /agents to get started

1.0.59

  • SDK: Added tool confirmation support with canUseTool callback
  • SDK: Allow specifying env for spawned process
  • Hooks: Exposed PermissionDecision to hooks (including "ask")
  • Hooks: UserPromptSubmit now supports additionalContext in advanced JSON output
  • Fixed issue where some Max users that specified Opus would still see fallback to Sonnet

1.0.58

  • Added support for reading PDFs
  • MCP: Improved server health status display in 'claude mcp list'
  • Hooks: Added CLAUDE_PROJECT_DIR env var for hook commands

1.0.57

  • Added support for specifying a model in slash commands
  • Improved permission messages to help Claude understand allowed tools
  • Fix: Remove trailing newlines from bash output in terminal wrapping

1.0.56

  • Windows: Enabled shift+tab for mode switching on versions of Node.js that support terminal VT mode
  • Fixes for WSL IDE detection
  • Fix an issue causing awsRefreshHelper changes to .aws directory not to be picked up

1.0.55

  • Clarified knowledge cutoff for Opus 4 and Sonnet 4 models
  • Windows: fixed Ctrl+Z crash
  • SDK: Added ability to capture error logging
  • Add --system-prompt-file option to override system prompt in print mode

1.0.54

  • Hooks: Added UserPromptSubmit hook and the current working directory to hook inputs
  • Custom slash commands: Added argument-hint to frontmatter
  • Windows: OAuth uses port 45454 and properly constructs browser URL
  • Windows: mode switching now uses alt + m, and plan mode renders properly
  • Shell: Switch to in-memory shell snapshot to fix file-related errors

1.0.53

  • Updated @-mention file truncation from 100 lines to 2000 lines
  • 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).

1.0.52

  • Added support for MCP server instructions

1.0.51

  • Added support for native Windows (requires Git for Windows)
  • Added support for Bedrock API keys through environment variable AWS_BEARER_TOKEN_BEDROCK
  • Settings: /doctor can now help you identify and fix invalid setting files
  • --append-system-prompt can now be used in interactive mode, not just --print/-p.
  • Increased auto-compact warning threshold from 60% to 80%
  • Fixed an issue with handling user directories with spaces for shell snapshots
  • OTEL resource now includes os.type, os.version, host.arch, and wsl.version (if running on Windows Subsystem for Linux)
  • Custom slash commands: Fixed user-level commands in subdirectories
  • Plan mode: Fixed issue where rejected plan from sub-task would get discarded

1.0.48

  • Fixed a bug in v1.0.45 where the app would sometimes freeze on launch
  • Added progress messages to Bash tool based on the last 5 lines of command output
  • Added expanding variables support for MCP server configuration
  • Moved shell snapshots from /tmp to ~/.claude for more reliable Bash tool calls
  • Improved IDE extension path handling when Claude Code runs in WSL
  • Hooks: Added a PreCompact hook
  • Vim mode: Added c, f/F, t/T

1.0.45

  • Redesigned Search (Grep) tool with new tool input parameters and features
  • Disabled IDE diffs for notebook files, fixing "Timeout waiting after 1000ms" error
  • Fixed config file corruption issue by enforcing atomic writes
  • Updated prompt input undo to Ctrl+_ to avoid breaking existing Ctrl+U behavior, matching zsh's undo shortcut
  • Stop Hooks: Fixed transcript path after /clear and fixed triggering when loop ends with tool call
  • Custom slash commands: Restored namespacing in command names based on subdirectories. For example, .claude/commands/frontend/component.md is now /frontend:component, not /component.

1.0.44

  • New /export command lets you quickly export a conversation for sharing
  • MCP: resource_link tool results are now supported
  • MCP: tool annotations and tool titles now display in /mcp view
  • Changed Ctrl+Z to suspend Claude Code. Resume by running fg. Prompt input undo is now Ctrl+U.

1.0.43

  • Fixed a bug where the theme selector was saving excessively
  • Hooks: Added EPIPE system error handling

1.0.42

  • Added tilde (~) expansion support to /add-dir command

1.0.41

  • Hooks: Split Stop hook triggering into Stop and SubagentStop
  • Hooks: Enabled optional timeout configuration for each command
  • Hooks: Added "hook_event_name" to hook input
  • Fixed a bug where MCP tools would display twice in tool list
  • New tool parameters JSON for Bash tool in tool_decision event

1.0.40

  • Fixed a bug causing API connection errors with UNABLE_TO_GET_ISSUER_CERT_LOCALLY if NODE_EXTRA_CA_CERTS was set

1.0.39

  • New Active Time metric in OpenTelemetry logging

1.0.38

1.0.37

  • Remove ability to set Proxy-Authorization header via ANTHROPIC_AUTH_TOKEN or apiKeyHelper

1.0.36

  • Web search now takes today's date into context
  • Fixed a bug where stdio MCP servers were not terminating properly on exit

1.0.35

  • Added support for MCP OAuth Authorization Server discovery

1.0.34

  • Fixed a memory leak causing a MaxListenersExceededWarning message to appear

1.0.33

  • Improved logging functionality with session ID support
  • Added prompt input undo functionality (Ctrl+Z and vim 'u' command)
  • Improvements to plan mode

1.0.32

  • Updated loopback config for litellm
  • Added forceLoginMethod setting to bypass login selection screen

1.0.31

  • Fixed a bug where ~/.claude.json would get reset when file contained invalid JSON

1.0.30

  • Custom slash commands: Run bash output, @-mention files, enable thinking with thinking keywords
  • Improved file path autocomplete with filename matching
  • Added timestamps in Ctrl-r mode and fixed Ctrl-c handling
  • Enhanced jq regex support for complex filters with pipes and select

1.0.29

  • Improved CJK character support in cursor navigation and rendering

1.0.28

  • Slash commands: Fix selector display during history navigation
  • Resizes images before upload to prevent API size limit errors
  • Added XDG_CONFIG_HOME support to configuration directory
  • Performance optimizations for memory usage
  • New attributes (terminal.type, language) in OpenTelemetry logging

1.0.27

  • Streamable HTTP MCP servers are now supported
  • Remote MCP servers (SSE and HTTP) now support OAuth
  • MCP resources can now be @-mentioned
  • /resume slash command to switch conversations within Claude Code

1.0.25

  • Slash commands: moved "project" and "user" prefixes to descriptions
  • Slash commands: improved reliability for command discovery
  • Improved support for Ghostty
  • Improved web search reliability

1.0.24

  • Improved /mcp output
  • Fixed a bug where settings arrays got overwritten instead of merged

1.0.23

  • Released TypeScript SDK: import @anthropic-ai/claude-code to get started
  • Released Python SDK: pip install claude-code-sdk to get started

1.0.22

  • SDK: Renamed total_cost to total_cost_usd

1.0.21

  • Improved editing of files with tab-based indentation
  • Fix for tool_use without matching tool_result errors
  • Fixed a bug where stdio MCP server processes would linger after quitting Claude Code

1.0.18

  • Added --add-dir CLI argument for specifying additional working directories
  • Added streaming input support without require -p flag
  • Improved startup performance and session storage performance
  • Added CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR environment variable to freeze working directory for bash commands
  • Added detailed MCP server tools display (/mcp)
  • MCP authentication and permission improvements
  • Added auto-reconnection for MCP SSE connections on disconnect
  • Fixed issue where pasted content was lost when dialogs appeared

1.0.17

  • We now emit messages from sub-tasks in -p mode (look for the parent_tool_use_id property)
  • Fixed crashes when the VS Code diff tool is invoked multiple times quickly
  • MCP server list UI improvements
  • Update Claude Code process title to display "claude" instead of "node"

1.0.11

  • Claude Code can now also be used with a Claude Pro subscription
  • Added /upgrade for smoother switching to Claude Max plans
  • Improved UI for authentication from API keys and Bedrock/Vertex/external auth tokens
  • Improved shell configuration error handling
  • Improved todo list handling during compaction

1.0.10

  • Added markdown table support
  • Improved streaming performance

1.0.8

  • Fixed Vertex AI region fallback when using CLOUD_ML_REGION
  • Increased default otel interval from 1s -> 5s
  • Fixed edge cases where MCP_TIMEOUT and MCP_TOOL_TIMEOUT weren't being respected
  • Fixed a regression where search tools unnecessarily asked for permissions
  • Added support for triggering thinking non-English languages
  • Improved compacting UI

1.0.7

  • Renamed /allowed-tools -> /permissions
  • Migrated allowedTools and ignorePatterns from .claude.json -> settings.json
  • Deprecated claude config commands in favor of editing settings.json
  • Fixed a bug where --dangerously-skip-permissions sometimes didn't work in --print mode
  • Improved error handling for /install-github-app
  • Bugfixes, UI polish, and tool reliability improvements

1.0.6

  • Improved edit reliability for tab-indented files
  • Respect CLAUDE_CONFIG_DIR everywhere
  • Reduced unnecessary tool permission prompts
  • Added support for symlinks in @file typeahead
  • Bugfixes, UI polish, and tool reliability improvements

1.0.4

  • Fixed a bug where MCP tool errors weren't being parsed correctly

1.0.1

  • Added DISABLE_INTERLEAVED_THINKING to give users the option to opt out of interleaved thinking.
  • Improved model references to show provider-specific names (Sonnet 3.7 for Bedrock, Sonnet 4 for Console)
  • Updated documentation links and OAuth process descriptions

1.0.0

  • Claude Code is now generally available
  • Introducing Sonnet 4 and Opus 4 models

0.2.125

  • Breaking change: Bedrock ARN passed to ANTHROPIC_MODEL or ANTHROPIC_SMALL_FAST_MODEL should no longer contain an escaped slash (specify / instead of %2F)
  • Removed DEBUG=true in favor of ANTHROPIC_LOG=debug, to log all requests

0.2.117

  • Breaking change: --print JSON output now returns nested message objects, for forwards-compatibility as we introduce new metadata fields
  • Introduced settings.cleanupPeriodDays
  • Introduced CLAUDE_CODE_API_KEY_HELPER_TTL_MS env var
  • Introduced --debug mode

0.2.108

  • You can now send messages to Claude while it works to steer Claude in real-time
  • Introduced BASH_DEFAULT_TIMEOUT_MS and BASH_MAX_TIMEOUT_MS env vars
  • Fixed a bug where thinking was not working in -p mode
  • Fixed a regression in /cost reporting
  • Deprecated MCP wizard interface in favor of other MCP commands
  • Lots of other bugfixes and improvements

0.2.107

  • CLAUDE.md files can now import other files. Add @path/to/file.md to ./CLAUDE.md to load additional files on launch

0.2.106

  • MCP SSE server configs can now specify custom headers
  • Fixed a bug where MCP permission prompt didn't always show correctly

0.2.105

  • Claude can now search the web
  • Moved system & account status to /status
  • Added word movement keybindings for Vim
  • Improved latency for startup, todo tool, and file edits

0.2.102

  • Improved thinking triggering reliability
  • Improved @mention reliability for images and folders
  • You can now paste multiple large chunks into one prompt

0.2.100

  • Fixed a crash caused by a stack overflow error
  • Made db storage optional; missing db support disables --continue and --resume

0.2.98

  • Fixed an issue where auto-compact was running twice

0.2.96

0.2.93

  • Resume conversations from where you left off from with "claude --continue" and "claude --resume"
  • Claude now has access to a Todo list that helps it stay on track and be more organized

0.2.82

  • Added support for --disallowedTools
  • Renamed tools for consistency: LSTool -> LS, View -> Read, etc.

0.2.75

  • Hit Enter to queue up additional messages while Claude is working
  • Drag in or copy/paste image files directly into the prompt
  • @-mention files to directly add them to context
  • Run one-off MCP servers with claude --mcp-config <path-to-file>
  • Improved performance for filename auto-complete

0.2.74

  • Added support for refreshing dynamically generated API keys (via apiKeyHelper), with a 5 minute TTL
  • Task tool can now perform writes and run bash commands

0.2.72

  • Updated spinner to indicate tokens loaded and tool usage

0.2.70

  • Network commands like curl are now available for Claude to use
  • Claude can now run multiple web queries in parallel
  • Pressing ESC once immediately interrupts Claude in Auto-accept mode

0.2.69

  • Fixed UI glitches with improved Select component behavior
  • Enhanced terminal output display with better text truncation logic

0.2.67

  • Shared project permission rules can be saved in .claude/settings.json

0.2.66

  • Print mode (-p) now supports streaming output via --output-format=stream-json
  • Fixed issue where pasting could trigger memory or bash mode unexpectedly

0.2.63

  • Fixed an issue where MCP tools were loaded twice, which caused tool call errors

0.2.61

  • Navigate menus with vim-style keys (j/k) or bash/emacs shortcuts (Ctrl+n/p) for faster interaction
  • Enhanced image detection for more reliable clipboard paste functionality
  • Fixed an issue where ESC key could crash the conversation history selector

0.2.59

  • Copy+paste images directly into your prompt
  • Improved progress indicators for bash and fetch tools
  • Bugfixes for non-interactive mode (-p)

0.2.54

  • Quickly add to Memory by starting your message with '#'
  • Press ctrl+r to see full output for long tool results
  • Added support for MCP SSE transport

0.2.53

  • New web fetch tool lets Claude view URLs that you paste in
  • Fixed a bug with JPEG detection

0.2.50

  • New MCP "project" scope now allows you to add MCP servers to .mcp.json files and commit them to your repository

0.2.49

  • Previous MCP server scopes have been renamed: previous "project" scope is now "local" and "global" scope is now "user"

0.2.47

  • Press Tab to auto-complete file and folder names
  • Press Shift + Tab to toggle auto-accept for file edits
  • Automatic conversation compaction for infinite conversation length (toggle with /config)

0.2.44

  • Ask Claude to make a plan with thinking mode: just say 'think' or 'think harder' or even 'ultrathink'

0.2.41

  • MCP server startup timeout can now be configured via MCP_TIMEOUT environment variable
  • MCP server startup no longer blocks the app from starting up

0.2.37

  • New /release-notes command lets you view release notes at any time
  • claude config add/remove commands now accept multiple values separated by commas or spaces

0.2.36

  • Import MCP servers from Claude Desktop with claude mcp add-from-claude-desktop
  • Add MCP servers as JSON strings with claude mcp add-json <n> <json>

0.2.34

  • Vim bindings for text input - enable with /vim or /config

0.2.32

  • Interactive MCP setup wizard: Run "claude mcp add" to add MCP servers with a step-by-step interface
  • Fix for some PersistentShell issues

0.2.31

  • Custom slash commands: Markdown files in .claude/commands/ directories now appear as custom slash commands to insert prompts into your conversation
  • MCP debug mode: Run with --mcp-debug flag to get more information about MCP server errors

0.2.30

  • Added ANSI color theme for better terminal compatibility
  • Fixed issue where slash command arguments weren't being sent properly
  • (Mac-only) API keys are now stored in macOS Keychain

0.2.26

  • New /approved-tools command for managing tool permissions
  • Word-level diff display for improved code readability
  • Fuzzy matching for slash commands

0.2.21

  • Fuzzy matching for /commands