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
Large file, diff not shown.
| @@ -6,8 +6,214 @@ | ||
| 6 | 6 | <author><name>Anthropic</name></author> |
| 7 | 7 | <link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md"/> |
| 8 | 8 | <link rel="self" type="application/atom+xml" href="https://raw.githubusercontent.com/anthropics/claude-code/main/feed.xml"/> |
| 9 | - <updated>2026-09-09T19:58:08Z</updated> | |
| 9 | + <updated>2026-09-11T19:17:47Z</updated> | |
| 10 | 10 | <entry> |
| 11 | + <id>https://github.com/anthropics/claude-code/releases/tag/v2.1.269</id> | |
| 12 | + <title>Claude Code v2.1.269</title> | |
| 13 | + <link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.269"/> | |
| 14 | + <updated>2026-09-11T19:17:47Z</updated> | |
| 15 | + <content type="html"><p>• Added claude plugin eval: run a plugin's eval suite against Claude Code and get scored, reproducible results (JSON + HTML report); see claude plugin eval --help</p> | |
| 16 | +<p>• Added /output-style [name] to list and switch output styles, including over Remote Control and in cloud and other headless sessions</p> | |
| 17 | +<p>• Added a diff of the files a Bash command changed to the Bash tool result when the Bash tool handles file edits (setting bashEditDiffEnabled)</p> | |
| 18 | +<p>• Added OTEL_METRICS_INCLUDE_REPOSITORY to tag OpenTelemetry metrics and events with vcs.* repository attributes; commit events get vcs.ref.head.* with OTEL_LOG_TOOL_DETAILS</p> | |
| 19 | +<p>• Added CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS to extend the LLM gateway /v1/models discovery timeout (default 3s)</p> | |
| 20 | +<p>• Added a spinner tip suggesting /focus for a view with just your prompt, a one-line work summary, and the response</p> | |
| 21 | +<p>• Added CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS (1–256) to raise the Workflow tool's per-run concurrent agent limit for inference-bound fan-outs</p> | |
| 22 | +<p>• Fixed the prompt cache being partially invalidated on the turn after a response was cut off at the output-token limit and automatically resumed</p> | |
| 23 | +<p>• Fixed a case where resuming a session after interrupting Claude mid-thought could change how earlier context was re-sent, hurting prompt-cache reuse</p> | |
| 24 | +<p>• Fixed F1/F2/F4 not working in kitty-protocol terminals and Delete in st, Alt+arrows acting as Escape in rxvt-unicode, and Shift+punctuation typing the unshifted key in WezTerm (regression in 2.1.247)</p> | |
| 25 | +<p>• Fixed remote and headless sessions reporting "waiting for your input" while background agents were still running (set CLAUDE_CODE_BG_TASKS_REPORT_RUNNING=0 to restore the old behavior)</p> | |
| 26 | +<p>• Fixed the terminal's replies to capability queries (^[[?1;2c) appearing as stray text at startup in some terminals</p> | |
| 27 | +<p>• Fixed rows at the top or bottom of the transcript going blank in fullscreen after resizing the terminal</p> | |
| 28 | +<p>• Fixed a deny or ask permission rule starting with ! applying beyond the settings source that wrote it; such a rule now applies only within its own source, and a bare ! negation is ignored</p> | |
| 29 | +<p>• Fixed the git status Claude is told after a compaction: it is now the current status, not the one from the start of the session</p> | |
| 30 | +<p>• Fixed synced plugin MCP servers not connecting when a remote session resumes</p> | |
| 31 | +<p>• Fixed resumed headless sessions losing a turn's replies when the model was switched or a request was retried mid-turn</p> | |
| 32 | +<p>• Fixed terminal escape codes, line breaks and oversized text from a background task's on-disk record reaching the task list and task notifications when work is resumed</p> | |
| 33 | +<p>• Fixed CMYK JPEG images failing to attach with "cannot decode"; they are now converted and resized like other JPEGs</p> | |
| 34 | +<p>• Fixed the managed settings approval dialog not naming the collector for a gRPC telemetry endpoint set without a scheme</p> | |
| 35 | +<p>• Fixed plugin headersHelper consent prompts showing a URL path that could be misread as a different host</p> | |
| 36 | +<p>• Fixed plugin errors showing [redacted URL] in place of a relative Windows path with a folder name that starts with @</p> | |
| 37 | +<p>• Fixed missing cursor in the permission-rule, auto-mode-rule, add-directory, session-rename and feedback-review text fields when the terminal's native cursor is enabled</p> | |
| 38 | +<p>• Fixed repeated clicks on a /fork receipt, each under a second apart, never backgrounding the session right away while it waited for the current tool to finish</p> | |
| 39 | +<p>• Fixed plugin LSP servers that reject shutdown params (e.g. rust-analyzer) being left running at session end; exit is now sent even if shutdown fails</p> | |
| 40 | +<p>• Fixed the attribution reminder overriding a CLAUDE.md or memory rule against commit and pull request attribution; lines set by managed settings still apply</p> | |
| 41 | +<p>• Fixed prompt suggestions being dropped for text in Japanese, Chinese, Thai and other languages written without spaces between words</p> | |
| 42 | +<p>• Fixed synchronized output being assumed from the terminal's name in GNOME Terminal and Konsole versions that do not support it</p> | |
| 43 | +<p>• Fixed permission_denials in --output-format stream-json results omitting Read, Edit and Write calls blocked by a path-scoped deny rule</p> | |
| 44 | +<p>• Fixed sessions run through the SDK or the desktop app showing an unknown status in other sessions' agent list</p> | |
| 45 | +<p>• Fixed /insights failing on Bedrock, Vertex, Foundry, and gateway deployments whose account can't reach the default Opus model by using the session model there instead</p> | |
| 46 | +<p>• Fixed organization policy limits not loading for the session when another Claude Code process refreshed the login at the same moment</p> | |
| 47 | +<p>• Fixed Claude Desktop sessions using Bedrock, Vertex, or a gateway not getting the contextual "what Claude needs" turn-end notification text</p> | |
| 48 | +<p>• Fixed MCP servers reconnecting when an updated config only changed the order of the server URL's query parameters</p> | |
| 49 | +<p>• Fixed the prompt box's top border splitting into extra lines when viewing a background agent whose name or description has line breaks or is wider than the terminal</p> | |
| 50 | +<p>• Fixed sessions getting permanently stuck on "Prompt is too long" when auto-compaction had no complete earlier exchange to summarize (mostly Agent SDK sessions with very large prompts)</p> | |
| 51 | +<p>• Fixed /goal runs silently stalling after API errors, network drops, or token limits: the goal now retries with backoff, or pauses and says why, including until a usage limit resets</p> | |
| 52 | +<p>• Fixed prompt cache misses in cloud sessions by waiting briefly for server configuration before the first request</p> | |
| 53 | +<p>• Fixed /btw answers that contained made-up tool calls and output: the side question is now told not to write them, and any that appear are flagged as not executed</p> | |
| 54 | +<p>• Fixed CLAUDE_CODE_RESUME_INTERRUPTED_TURN re-running a turn that had failed with an API error over 6 hours earlier, or longer ago than CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS when set</p> | |
| 55 | +<p>• Fixed organization plugins enabled through managed settings not loading in headless sessions and on Claude Desktop (once Desktop bundles this CLI version); they load from the next session</p> | |
| 56 | +<p>• Fixed plugin archives extracted for a session being readable by other local users, extracted files keeping world-writable bits from the archive, and stale files surviving re-extraction</p> | |
| 57 | +<p>• Fixed Edit() deny rules and the write-path check not applying to the file a Bash tee command writes; a Bash(tee:*) allow rule no longer covers destinations outside the working directories</p> | |
| 58 | +<p>• Fixed stray characters like 22c, or a terminal's color or version reply, being typed into the prompt at startup over slow connections (ssh, browser terminals)</p> | |
| 59 | +<p>• Fixed the terminal's block cursor showing under the interface in rxvt-unicode after leaving or re-entering fullscreen</p> | |
| 60 | +<p>• Fixed the cursor block staying visible after returning from an external editor in fullscreen mode on rxvt-unicode</p> | |
| 61 | +<p>• Fixed the interface being drawn twice after returning from an external editor (Ctrl+G) outside fullscreen mode</p> | |
| 62 | +<p>• Fixed the interface being drawn twice in Konsole after returning from an external editor</p> | |
| 63 | +<p>• Windows: Fixed PowerShell tool commands sent to the background stopping when Claude Code exits</p> | |
| 64 | +<p>• Improved the /diff panel to open fully rendered in one step instead of showing a loading state first</p> | |
| 65 | +<p>• Improved prompt suggestion filtering for Japanese, Chinese and Korean text: mixed-script and single-word suggestions are kept, and meta or evaluative text is dropped as it is for English</p> | |
| 66 | +<p>• Improved the Skill tool's "Unknown skill" error to name the plugin skill's full name when a bare name matches exactly one plugin skill</p> | |
| 67 | +<p>• Improved keyboard support over SSH and in unrecognized terminals: terminals that answer the kitty keyboard query (such as foot and Alacritty 0.16+) now get Shift+Enter and Ctrl+Shift shortcuts</p> | |
| 68 | +<p>• Improved responsiveness in long sessions: transcript updates no longer re-process the whole conversation to build the collapsed tool-use summaries</p> | |
| 69 | +<p>• Improved first-party sessions with telemetry disabled: an alwaysLoad MCP server that finishes connecting mid-conversation is usable on the next turn without a tool-search round trip</p> | |
| 70 | +<p>• Changed /ultrareview --post to post the PR comment directly when the findings arrive and print the comment link, instead of starting a second cloud session to post it</p> | |
| 71 | +<p>• Changed artifact database reads that save into the session scratchpad so they no longer stop for working-folder approval</p> | |
| 72 | +<p>• Changed skills synced from claude.ai in cloud sessions to be named anthropic-skills:&lt;name&gt;, matching Claude Desktop; the bare name still works when nothing else uses it</p> | |
| 73 | +<p>• [VSCode] Added an agent map: an "N agents" footer pill opens a map of the session's sub-agents with per-agent cards, Stop agent, and read-only transcripts</p> | |
| 74 | +<p>• [VSCode] Added a Hooks dialog to the command menu for viewing hooks and adding, editing, or removing them in user, project, and local settings; managed, plugin, and session hooks stay read-only</p> | |
| 75 | +<p>• [VSCode] Added live progress rows for running subagents under the tool-call groups in Focus view</p> | |
| 76 | +<p>• [VSCode] Added a Permission rules dialog that lists permission rules and adds or removes them in user, project, and local settings; startup-option, session-only, and managed rules stay read-only</p> | |
| 77 | +<p>• [VSCode] Added a Cancel button to the Switch account screen that returns to your session as the current account</p> | |
| 78 | +<p>• [VSCode] Fixed Focus view showing a turn started by a delivered plain-text prompt, such as a scheduled task's, as part of the previous turn</p> | |
| 79 | +<p>• [VSCode] Fixed the footer's prompt cache clock hiding its minutes when the panel is narrow</p> | |
| 80 | +<p>• [VSCode] Fixed the session list keeping sessions from the default folder when CLAUDE_CONFIG_DIR is set in a settings file or the environmentVariables setting</p> | |
| 81 | +<p>• [VSCode] Fixed a plan preview that finished loading late sometimes hiding its comment box or showing an older plan</p> | |
| 82 | +<p>• [VSCode] Fixed a plan preview accepting comments that went nowhere after its Claude tab closed</p> | |
| 83 | +<p>• [VSCode] Fixed the prompt cache clock and reopen notice for a session compacted after its last reply and then closed, which now reads as cold when reopened</p> | |
| 84 | +<p>• [VSCode] Fixed a session renamed in the extension while Remote Control is on keeping its old name on claude.ai/code</p> | |
| 85 | +<p>• [VSCode] Fixed the "Enable Remote Control for all sessions" toggle keeping its last position after the setting was reset to default from a terminal</p> | |
| 86 | +<p>• [VSCode] Fixed restored Claude tabs not counting as open in the session list after a window reload until clicked, and their row opening a second tab</p> | |
| 87 | +<p>• [VSCode] Fixed Switch account making a tab forget its dismissed usage-limit warnings when you sign back in as the same account</p> | |
| 88 | +<p>• [VSCode] Fixed a session rename being replaced by the generated name after a window reload when the session was renamed during a long turn</p> | |
| 89 | +<p>• [VSCode] Fixed the sidebar usage meter keeping a stale per-model weekly limit row after the account loses that limit</p> | |
| 90 | +<p>• [VSCode] Fixed a rare case where an @-mention sent with the keyboard shortcut while a new chat view was still starting could be inserted into the input long after the keystroke</p> | |
| 91 | +<p>• [VSCode] Fixed the session list jumping down when the Account &amp; usage header appeared a moment after opening the Claude side bar</p> | |
| 92 | +<p>• [VSCode] Improved documents and messages written for someone other than the user: Claude now writes them for that audience and names it at the top of its reply</p> | |
| 93 | +<p>• [VSCode] Improved screen reader and keyboard accessibility in the slash-command menu, @-mention menu, output-style picker, Send/Stop button, permission and question cards, and onboarding checklist</p> | |
| 94 | +<p>• [VSCode] Changed the current-file chip in the message box: an X now removes it, replacing the Hide toggle</p> | |
| 95 | +<p>• [VSCode] Removed the Claude Code items from a session tab's right-click menu and the editor title bar's "..." menu; they could not act on the tab the menu was opened on</p> | |
| 96 | +<p>• [Claude Code on the web] Added taking back a queued message in a cloud session before Claude reads it: remove it from the queue, or press Esc or Up, and the text returns to the message box</p> | |
| 97 | +<p>• [Claude Code on the web] Fixed /model default in a cloud session leaving every later message failing in organizations that restrict which models Claude Code can use</p> | |
| 98 | +<p>• [Claude Code on the web] Fixed one-off scheduled routines occasionally running a second time after a transient server error</p> | |
| 99 | +<p>• [Claude Code on the web] Fixed routine runs that use subagents sometimes being treated as finished too early, which could skip the retry after a real failure or start a duplicate run</p> | |
| 100 | +<p>• [Claude Code on the web] Fixed file links in cloud session transcripts opening a GitHub 404 when Claude was working from a subfolder of the repository</p> | |
| 101 | +<p>• [Claude Code on the web] Changed the Cloud environments admin page to list every environment instead of capping each table at five rows behind a Show more control that could be unreachable</p> | |
| 102 | +<p>• [Claude Code on the web] Changed claude.ai/code for Free-plan users to open the plans page with a path to upgrade, instead of a "Disabled by org admin" page with no way forward</p> | |
| 103 | +<p>• [Claude Tag] Added a confirmation dialog before Connect all or Disconnect on a GitHub installation in admin settings, to guard against accidental organization-wide changes</p> | |
| 104 | +<p>• [Claude Tag] Fixed threads occasionally going silent after a failed turn because the failure notice was dropped when Slack briefly rate-limited it; the notice is now retried</p> | |
| 105 | +<p>• [Claude Tag] Fixed Claude accepting a switch to a model your organization hasn't enabled and then quietly answering with a fallback model; it now declines and says an admin can enable it</p> | |
| 106 | +<p>• [Claude Tag] Fixed a table posting as raw pipe text when Claude attached files to the same message; the table now posts as a normal reply and the files follow with a plain caption</p> | |
| 107 | +<p>• [Claude Tag] Fixed @Claude !restart at the top level of a channel where Claude isn't active starting an unrelated conversation; it now privately says there is nothing to restart</p> | |
| 108 | +<p>• [Claude Tag] Fixed plugin rows in Slack access settings showing an unlabeled raw ID with no way to turn the plugin off; they now show its name and link to the bundle that manages it</p> | |
| 109 | +<p>• [Claude Tag] Fixed the shared-session banner and Share dialog on sessions started from Slack claiming the whole organization could open the link; they now name the Slack channel's audience</p> | |
| 110 | +<p>• [Claude Tag] Improved load time of the admin settings page and its Slack channel picker, most noticeably for organizations with many channels or several connected workspaces</p> | |
| 111 | +<p>• [Claude Tag] Improved scheduled routines in Slack channels: a routine run can now reply in an existing thread instead of always posting a new top-level channel message</p> | |
| 112 | +<p>• [Claude Tag] Improved the timestamp on Claude's live progress checklists to show each reader's local time and how long ago it was updated, instead of a fixed UTC time</p></content> | |
| 113 | + </entry> | |
| 114 | + <entry> | |
| 115 | + <id>https://github.com/anthropics/claude-code/releases/tag/v2.1.268</id> | |
| 116 | + <title>Claude Code v2.1.268</title> | |
| 117 | + <link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.268"/> | |
| 118 | + <updated>2026-09-10T20:30:46Z</updated> | |
| 119 | + <content type="html"><p>• Added to the Claude apps gateway: with pricing: set in gateway.yaml, signed-in Claude Code clients receive the same rates through managed settings, so /cost and telemetry match the spend meter</p> | |
| 120 | +<p>• Added a startup warning for gateways when access_control.allow_cidrs is empty, and a one-time warning the first time a request arrives from a public address</p> | |
| 121 | +<p>• Added the gatewayInternalNetworks managed setting, letting administrators allow /login to a Claude apps gateway on their organization's own public IPv4 block</p> | |
| 122 | +<p>• Added claude self-hosted-runner --remove-session-state (default off): delete each session's per-session directories under &lt;base-dir&gt;/_sessions/ when the session ends</p> | |
| 123 | +<p>• Added configDirectory to the output of claude auth status --json</p> | |
| 124 | +<p>• Added --json to claude plugin install, uninstall, update, enable and disable, and errorDetails/noteDetails to each row of claude plugin list --json</p> | |
| 125 | +<p>• Added browser-tab icons for published artifacts, chosen by Claude to match each page</p> | |
| 126 | +<p>• Fixed every turn failing with HTTP 400 on third-party Anthropic-compatible endpoints (ANTHROPIC_BASE_URL) since 2.1.265: a regex in the Artifact tool's input schema that those endpoints reject</p> | |
| 127 | +<p>• Fixed WebFetch hanging indefinitely on a server that keeps the response open without finishing; a fetch now fails after 300 seconds. Set CLAUDE_CODE_WEBFETCH_DEADLINE_MS to override the deadline (0 turns it off)</p> | |
| 128 | +<p>• Fixed a respawned in-process teammate picking up tools or a system prompt from a same-named agent file in a folder you have not trusted</p> | |
| 129 | +<p>• Fixed sustained high CPU usage: a busy loop in long-running idle sessions no longer pins a CPU core, and rapid terminal focus reports during a session recap no longer keep the CPU high</p> | |
| 130 | +<p>• Fixed Claude sometimes replying "your message came through empty" after an MCP tool call</p> | |
| 131 | +<p>• Fixed deny and ask permission rules on symlinked directories (/etc, /tmp, /var on macOS; /bin on Linux) not applying when a path was given by its real location, and Bash commands ignoring deny rules written on a symlinked path spelling</p> | |
| 132 | +<p>• Fixed a case where a Read or Edit deny rule did not apply when an env -C, eval or similar command the permission checker cannot analyze was on the same line</p> | |
| 133 | +<p>• Fixed plugin and marketplace errors showing a token or password from a git source URL</p> | |
| 134 | +<p>• Fixed /mcp and /plugin server details, claude mcp list/get, and MCP login errors showing secrets resolved from ${VAR} placeholders in MCP configs</p> | |
| 135 | +<p>• Fixed prompt caching and extended thinking breaking mid-session for SDK sessions using excludeDynamicSections: the first message is no longer re-rendered each request</p> | |
| 136 | +<p>• Fixed entitled users being told a model is restricted after restart or in the Desktop Code tab when a cached model-access denial was stale</p> | |
| 137 | +<p>• Fixed a running session silently switching to the organization's default model when another Claude Code process refreshed a stale model-access entry</p> | |
| 138 | +<p>• Fixed long-context 429s on Fable models showing the usage-credits consent prompt instead of the 1M-context message on Pro and Team plans</p> | |
| 139 | +<p>• Fixed workload identity federation via a profile (as claude-code-action configures it): processes sharing the profile could fail mid-run with 401 … jti reused</p> | |
| 140 | +<p>• Fixed MCP server OAuth sign-in failing with "No available ports for OAuth redirect" when the local callback port range can't be bound</p> | |
| 141 | +<p>• Fixed the conversation summary produced by /compact and auto-compact mangling text that contained $ sequences</p> | |
| 142 | +<p>• Fixed resuming a conversation that ended with /compact: its restored-file notes now load in the same order on every resume</p> | |
| 143 | +<p>• Fixed SDK prompt suggestions, side questions and /rename sending the conversation from before a compaction</p> | |
| 144 | +<p>• Fixed @ file and / command suggestions not appearing after recalling a previous prompt with the up arrow and editing it</p> | |
| 145 | +<p>• Fixed claude agents: pressing ← again at a natural pace to go back to the agent list no longer gets ignored until you pause for over a second</p> | |
| 146 | +<p>• Fixed claude agents session delete getting stuck when a worktree can't be removed: the message names the cause and next step, and for a git worktree ctrl+x again deletes the directory anyway</p> | |
| 147 | +<p>• Fixed background agent and workflow rows in the agents panel expanding to many lines when their text contained line breaks</p> | |
| 148 | +<p>• Fixed Claude in Slack sessions losing their Slack tools when org managed settings set an MCP allowlist</p> | |
| 149 | +<p>• Fixed Claude in Chrome asking to allow the host "https" when a navigation URL had a scheme but a host that could not be parsed</p> | |
| 150 | +<p>• Fixed the spinner wrapping onto several lines when the current task's label is long; the label and the "Next:" task line now stay within one terminal row</p> | |
| 151 | +<p>• Fixed the /bug and /feedback description field showing no cursor when the terminal's native cursor is enabled</p> | |
| 152 | +<p>• Fixed Remote Control sessions served by claude remote-control showing a generated name instead of their session title in ListAgents</p> | |
| 153 | +<p>• Fixed claude plugin validate rejecting plugin paths whose directory name begins with two dots, which the plugin loader accepts</p> | |
| 154 | +<p>• Fixed plugins silently skipping a default monitors file or root SKILL.md that could not be checked</p> | |
| 155 | +<p>• Fixed WebFetch's error for localhost and other dotless hostnames to explain why the URL is refused and suggest curl</p> | |
| 156 | +<p>• Fixed PermissionRequest hooks not firing in --print mode</p> | |
| 157 | +<p>• Fixed policy-helper warnings not printing on headless (-p) runs</p> | |
| 158 | +<p>• Fixed /resume listing a /fork background session under its parent's name instead of its own ⑂ fork name</p> | |
| 159 | +<p>• Fixed /remote-control and other claude.ai-gated commands to suggest /login when signed out instead of showing a Claude for Enterprise migration message</p> | |
| 160 | +<p>• Fixed CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS not extending SessionEnd hooks that have no per-hook timeout (they were still cancelled after 1.5 seconds)</p> | |
| 161 | +<p>• Fixed /autofix-pr and other cloud-session commands saying to retry or install the Claude GitHub App when no GitHub account is connected; they now point to /web-setup or the web connect page</p> | |
| 162 | +<p>• Fixed cloud-session commands such as /teleport and /remote-env to explain when an organization policy turns them off, instead of answering "Unknown command"</p> | |
| 163 | +<p>• Fixed Bash sandbox instructions over-stating confinement: no unenforced path lists when filesystem isolation is off, and strict mode no longer claims commands can never run unsandboxed</p> | |
| 164 | +<p>• Improved fullscreen mode: adding or removing a prompt line (Shift+Enter) now repaints as fast as typing a character instead of re-rendering the visible transcript</p> | |
| 165 | +<p>• Improved --continue / --resume: the conversation appears immediately instead of waiting for SessionStart hooks, and the first message no longer re-reads the whole transcript</p> | |
| 166 | +<p>• Improved responsiveness during tool-heavy turns by no longer redrawing the transcript for a hidden per-tool-batch reminder</p> | |
| 167 | +<p>• Improved startup time in projects with .claude/workflows/ scripts: listing them no longer parses each script</p> | |
| 168 | +<p>• Improved auto mode denials: the message Claude receives now names the rule that blocked the action and asks Claude to try a safer method and finish unrelated work before stopping to ask you</p> | |
| 169 | +<p>• Improved Claude in Chrome: long page reads now stay inline instead of being saved to a file and read back</p> | |
| 170 | +<p>• Improved the MEMORY.md truncation warning to say how many lines were cut and where the cut starts</p> | |
| 171 | +<p>• Improved the terminal permission prompt for artifacts: it now leads with the ask's question</p> | |
| 172 | +<p>• Improved the prompt footer: an editor or /diff selection now shows inside the prompt input, and fullscreen mode shows Remote Control status in the header instead of the footer</p> | |
| 173 | +<p>• Improved the "Usage credits required for 1M context" message to say that usage credits turned on mid-session take effect after restarting Claude Code</p> | |
| 174 | +<p>• Improved /plugin: installing, enabling or disabling a plugin now takes effect when you close the menu; /reload-plugins is no longer needed afterwards</p> | |
| 175 | +<p>• Changed the system prompt on Bedrock, Vertex and Foundry to deliver environment, model and settings details as attachments, matching first-party sessions</p> | |
| 176 | +<p>• Changed Bedrock, Vertex and Foundry sessions to keep the tool list byte-stable across a conversation (late-connecting tools load deferred instead of rewriting it), matching first-party sessions</p> | |
| 177 | +<p>• Changed the task-tracking tools (TaskCreate/Get/Update/List, TodoWrite) to be offered only on Claude 3.x, Opus 4.0–4.7, Sonnet 4.0–4.6, Haiku 4.5; set CLAUDE_CODE_ENABLE_TODO_TOOLS=1 elsewhere</p> | |
| 178 | +<p>• Changed the artifact data-edit permission prompt in the terminal to a card that shows the document count and who can open the artifact</p> | |
| 179 | +<p>• Changed local Cowork sessions set to skip all approvals: the Artifact tool now refuses a local file outside the session's folders, or behind a symlink, instead of reading it without asking</p> | |
| 180 | +<p>• Changed plain WebFetch deny and ask rules to no longer apply to Artifact tool reads and updates; use an Artifact rule (or WebFetch(domain:claude.ai)) to block or gate them</p> | |
| 181 | +<p>• Changed the "N MCP servers need authentication" startup notice to announce each server once instead of at every launch</p> | |
| 182 | +<p>• [VSCode] Fixed the session list, settings toggles, and chat tabs when CLAUDE_CONFIG_DIR is set in a settings file or the environmentVariables setting</p> | |
| 183 | +<p>• [VSCode] Fixed the model pill, model picker and command menu going blank in open tabs for a few seconds after a login, logout or account switch</p> | |
| 184 | +<p>• [VSCode] Fixed Auto disappearing from the mode picker in new-tab or just-reloaded conversations when a project or local setting overrides the model named in ~/.claude/settings.json</p> | |
| 185 | +<p>• [VSCode] Fixed session names reverting to the last prompt after a window reload when a SessionStart hook is configured</p> | |
| 186 | +<p>• [VSCode] Fixed the footer's model pill and Remote Control pill waiting for the new tab's Claude process to start when another tab in the window is already up</p> | |
| 187 | +<p>• [VSCode] Fixed a second Claude process running through its full startup when a session tab's launch arrived more than half a second after its config read</p> | |
| 188 | +<p>• [VSCode] Fixed resuming a session from the session list ignoring claudeCode.preferredLocation: "sidebar" (it always opened a panel), and programmatic opens resetting that setting to "panel"</p> | |
| 189 | +<p>• [VSCode] Fixed Windows issues: the WSL install prompt no longer appears on machines without WSL installed, and IDE diagnostics are now returned correctly for Windows files when WSL is installed</p> | |
| 190 | +<p>• [VSCode] Fixed the custom style builder saving a User level style in a folder the CLI does not read when CLAUDE_CONFIG_DIR is set through settings</p> | |
| 191 | +<p>• [VSCode] Added Left and Right arrow keys to change where an always-allow permission rule is saved, for keyboard and screen reader users</p> | |
| 192 | +<p>• [VSCode] Added a "Claude Code: Focus last message" command that moves keyboard focus to the newest message in the conversation, for keyboard and screen reader users</p> | |
| 193 | +<p>• [VSCode] Changed the Manage plugins dialog to apply installs, enables, disables and uninstalls to open sessions without a restart</p> | |
| 194 | +<p>• [VSCode] Changed some artifact permission prompts to omit the "don't ask again" choice, matching the terminal</p> | |
| 195 | +<p>• [Claude Code on the web] Fixed cloud sessions running longer than about six hours silently losing files saved to persisted session folders; saves now persist for up to a day</p> | |
| 196 | +<p>• [Claude Code on the web] Fixed "Invalid effort level" errors when a routine resumes a session, or a session starts with no set effort, in orgs where an admin caps a model's effort</p> | |
| 197 | +<p>• [Claude Code on the web] Improved routine creation from a conversation: when the new routine has no connectors, Claude now says so and how to add them instead of only confirming it</p> | |
| 198 | +<p>• [Claude Tag] Fixed the admin settings page hanging on a loading skeleton or going blank after a transient load failure; a section that fails to load now shows a Retry button</p> | |
| 199 | +<p>• [Claude Tag] Added a link from a Slack channel's configure page back to the organization's Claude in Slack admin settings</p> | |
| 200 | +<p>• [Claude Tag] Fixed a Slack Enterprise Grid channel losing its Claude settings (repository, environment, access) after a Slack admin moved it to another workspace</p> | |
| 201 | +<p>• [Claude Tag] Improved how Claude explains a blocked action: it now says whether a permission check, its own decision to confirm first, or missing access stopped it</p> | |
| 202 | +<p>• [Claude Tag] Improved reply speed: Claude now runs several read-only lookups (searching Slack, reading a thread, finding people) at once instead of one after another</p> | |
| 203 | +<p>• [Claude Tag] Improved formatting of comparisons: sentence-length comparisons now come as lists instead of wide tables that scroll sideways, and long table cells wrap</p> | |
| 204 | +<p>• [Claude Tag] Fixed @Claude !restart in a thread with its own session sometimes also posting a contradictory "this thread is handled by the channel session" notice</p> | |
| 205 | +<p>• [Claude Tag] Improved the message shown when your Claude account is in a different organization than the Slack workspace: it now explains how to connect the workspace to your org</p> | |
| 206 | +<p>• [Claude Tag] Fixed Markdown links whose URL is wrapped in angle brackets showing as literal bracket text in Slack instead of a clickable link</p> | |
| 207 | +<p>• [Claude Tag] Fixed a workspace guest's top-level @mention in a channel where guests may use Claude sometimes getting a "your Slack account isn't connected" reply instead of an answer</p> | |
| 208 | +<p>• [Claude Tag] Fixed a channel's long-running session being replaced with a fresh one mid-conversation; the scheduled refresh now waits until the channel and its threads are quiet</p> | |
| 209 | +<p>• [Claude Tag] Fixed channel-settings cards clicked more than once telling the proposing session the change was refused after it had already applied; the outcome is now sent once</p> | |
| 210 | +<p>• [Claude Tag] Changed memory in public channels: each channel now keeps its own notes, and Claude no longer recalls notes it saved in other public channels; workspace notes stay shared</p> | |
| 211 | +<p>• [Code Review] Added a note under the still-open findings list in follow-up reviews: resolving a finding's thread, not just replying to it, stops later reviews from counting it as open</p> | |
| 212 | +<p>• [Code Review] Fixed reviews sometimes ending as incomplete when one of the agents verifying a finding failed midway; the review now replaces that agent and reaches a verdict</p> | |
| 213 | +<p>• [Code Review] Fixed a push-triggered review that was queued behind a running review still posting after the pull request had been converted to draft</p> | |
| 214 | +<p>• [Code Review] Fixed reviews ignoring a directory's CLAUDE.md conventions when the PR edited a root file (e.g. README.md) that only shares a name with a file that CLAUDE.md lists</p></content> | |
| 215 | + </entry> | |
| 216 | + <entry> | |
| 11 | 217 | <id>https://github.com/anthropics/claude-code/releases/tag/v2.1.267</id> |
| 12 | 218 | <title>Claude Code v2.1.267</title> |
| 13 | 219 | <link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.267"/> |
| @@ -777,76 +983,4 @@ | ||
| 777 | 983 | <updated>2026-08-23T00:52:10Z</updated> |
| 778 | 984 | <content type="html"><p>• Bug fixes and reliability improvements</p></content> |
| 779 | 985 | </entry> |
| 780 | - <entry> | |
| 781 | - <id>https://github.com/anthropics/claude-code/releases/tag/v2.1.240</id> | |
| 782 | - <title>Claude Code v2.1.240</title> | |
| 783 | - <link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.240"/> | |
| 784 | - <updated>2026-08-22T14:45:21Z</updated> | |
| 785 | - <content type="html"><p>• Bug fixes and reliability improvements</p></content> | |
| 786 | - </entry> | |
| 787 | - <entry> | |
| 788 | - <id>https://github.com/anthropics/claude-code/releases/tag/v2.1.239</id> | |
| 789 | - <title>Claude Code v2.1.239</title> | |
| 790 | - <link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.239"/> | |
| 791 | - <updated>2026-08-21T19:54:16Z</updated> | |
| 792 | - <content type="html"><p>• Cost estimates (/cost, status line, --max-budget-usd) now include the 1.1× US-only-inference premium for data-residency workspaces</p> | |
| 793 | -<p>• Added the one-time fullscreen renderer offer on Bedrock, Vertex, Foundry and other previously excluded setups; new installs there now start in fullscreen</p> | |
| 794 | -<p>• Added /claude-api upgrade to migrate Python projects from anthropic 0.x to 1.x, and updated the skill's Python reference for 1.x (timeouts use anthropic.Timeout, not httpx.Timeout)</p> | |
| 795 | -<p>• Cloud sessions: plugins synced from claude.ai now show as name@synced, work with claude plugin enable/disable &lt;name&gt;@synced, and never override a same-named plugin you installed</p> | |
| 796 | -<p>• Alpine/musl builds: native image paste, clipboard, and audio-capture add-ons now load (musl-built binaries instead of glibc ones refused by the runtime)</p> | |
| 797 | -<p>• The usage-limit message shown when your monthly spend limit is already used up now also says when your session or weekly limit resets</p> | |
| 798 | -<p>• Fixed Bedrock streaming behind proxies that strip the response Content-Type header, which silently doubled billed API calls by re-running every turn non-streaming</p> | |
| 799 | -<p>• Fixed Claude Code hanging at startup behind an HTTPS proxy when using Bedrock with an SSO profile and awsAuthRefresh — the credential pre-check now honors HTTPS_PROXY</p> | |
| 800 | -<p>• Fixed a raw crash dump when starting Claude Code from a directory that no longer exists; it now prints a clear message</p> | |
| 801 | -<p>• Fixed Edit and Write calls pausing for about 5 seconds in JetBrains IDE terminals when the Claude Code plugin is connected</p> | |
| 802 | -<p>• Fixed a race where pressing Esc with a prompt queued could let the next turn finish early, leaving the session idle while Claude was still working and letting a later resubmit repeat actions</p> | |
| 803 | -<p>• Fixed WebFetch retaining expired page content in memory for the whole session instead of the intended 15 minutes</p> | |
| 804 | -<p>• Fixed cloud sessions (Claude Code on the web, desktop and mobile apps) resuming out of plan mode after an idle worker restart</p> | |
| 805 | -<p>• Fixed MCP elicitation forms taller than the terminal being clipped in fullscreen mode: the form now fits the window, with hidden fields reachable by scrolling and Accept/Decline always visible</p> | |
| 806 | -<p>• Fixed remote MCP servers staying failed after a transient 5xx on a mid-session reconnect in cloud sessions or via SDK setMcpServers()</p> | |
| 807 | -<p>• Fixed custom session titles disappearing from /resume after more than ~64 KB of conversation was written following the rename</p> | |
| 808 | -<p>• Fixed claude -c/resume picking up sessions from a different directory whose path differed only by characters like _, -, or .</p> | |
| 809 | -<p>• Fixed /resume and the agents view showing a session as recently changed (and reordering it) when only its file was touched or it was merely reopened</p> | |
| 810 | -<p>• Fixed /resume in all-projects mode telling you to cd into a deleted directory (e.g. a removed worktree); such sessions now resume in the current directory</p> | |
| 811 | -<p>• Fixed the dark-ansi theme rendering expanded tool results in fullscreen mode with text the same color as the background</p> | |
| 812 | -<p>• Fixed the fullscreen renderer prompt reappearing on every launch when it could never be answered; it now stops after being shown on three launches</p> | |
| 813 | -<p>• Fixed .worktreeinclude patterns starting with **/ silently matching nothing when the target lived in a gitignored directory</p> | |
| 814 | -<p>• Fixed agents, skills, and commands whose .md file starts with a UTF-8 BOM being silently ignored</p> | |
| 815 | -<p>• Fixed /insights echoing literal &lt;message&gt; tags in its response on some models</p> | |
| 816 | -<p>• Fixed marketplace metadata.pluginRoot having no effect: bare plugin source names now resolve under it as the docs describe</p> | |
| 817 | -<p>• Fixed mouse movement in browser-based terminals inserting text like "35;150;7M" into the prompt when a mouse report arrived split across writes</p> | |
| 818 | -<p>• Fixed custom theme overrides for the effort/ultracode status badge colors being ignored</p> | |
| 819 | -<p>• Fixed OpenTelemetry trace fragmentation: tool executions deferred by a PreToolUse hook now resume in the original turn's trace instead of starting a new trace</p> | |
| 820 | -<p>• Fixed vim mode in the agent view: Escape now switches to NORMAL mode and keeps your text instead of clearing the prompt</p> | |
| 821 | -<p>• Fixed the selection:copy keybinding silently dropping a text selection that had been extended with Shift+Arrow keys</p> | |
| 822 | -<p>• Fixed the /voice startup tip still appearing after voice dictation was enabled via the voice.enabled setting</p> | |
| 823 | -<p>• Fixed shell-mode (!) Tab completion dropping the ./ from a ./script path, which left a command the shell couldn't run</p> | |
| 824 | -<p>• Fixed fullscreen mode answering a permission prompt or pressing a button when you clicked the terminal window only to bring it back into focus</p> | |
| 825 | -<p>• Fixed slash-command panels (e.g. /config, /model) in fullscreen mode covering the latest messages; the conversation now stays pinned above the panel</p> | |
| 826 | -<p>• Fixed the /workflows detail dialog overflowing the terminal and losing its header off-screen when opened while Claude is still responding</p> | |
| 827 | -<p>• Fixed the Linux sandbox making a nonexistent .git/config.worktree unreadable, which broke every sandboxed git command in repos with extensions.worktreeConfig set</p> | |
| 828 | -<p>• Fixed hooks failing with "posix_spawn ENOENT" after the session's working directory was deleted; they now run from the project root or home directory instead</p> | |
| 829 | -<p>• Fixed claudeMdExcludes not excluding a symlinked .claude/rules file when the pattern names the rules directory or the symlink rather than its target</p> | |
| 830 | -<p>• Fixed runaway session-title syncing to Remote Control when two Claude Code processes shared one background job's state (2.1.232 regression); title updates are now deduplicated and rate-limited</p> | |
| 831 | -<p>• Fixed sessions whose title starts with / being unaddressable by SendMessage and shown as "(untitled)" in ListAgents</p> | |
| 832 | -<p>• Fixed Ctrl+W, Ctrl+U, Ctrl+K, Option+Backspace, Option+D and vim df/dt leaving a broken [Pasted text #N] placeholder when the cursor was inside it</p> | |
| 833 | -<p>• Fixed masked (password-style) inputs such as the login code field letting their text be pasted back with Ctrl+Y elsewhere or saved to prompt history when cleared with double Esc</p> | |
| 834 | -<p>• Fixed Ctrl+Backspace deleting one character instead of a word in search boxes</p> | |
| 835 | -<p>• Fixed a request rejected by an organization policy check being re-sent before the rejection was shown</p> | |
| 836 | -<p>• Improved the reminder shown after compaction so a skill's original arguments are not re-run as a new request</p> | |
| 837 | -<p>• Long file paths on tool-use rows now truncate in the middle to stay on one line</p> | |
| 838 | -<p>• Remote sessions keep sending keep-alives while a long SessionStart or Setup hook runs, so the container is not idle-reaped mid-hook</p> | |
| 839 | -<p>• /goal: repeat check-ins on long-running background work now back off (30 min, then 1 h, then every 2 h) instead of repeating every 30 minutes</p> | |
| 840 | -<p>• /goal: resuming a session from the claude --resume picker now restores its active goal</p> | |
| 841 | -<p>• ListAgents now tells a session its own name (the one peers use to message it), and SendMessage to your own name says so instead of "no agent named …"</p> | |
| 842 | -<p>• ListAgents and /list-agents now list your live teammates (previously only subagents and other sessions appeared, so a reachable teammate looked absent)</p> | |
| 843 | -<p>• keybindingFlavor: "readline" now also matches Bash for word keys: Alt+F and Ctrl/Option+→ stop at the end of the word, Alt+D deletes to it (Ctrl+Y pastes it back), and punctuation separates words</p> | |
| 844 | -<p>• Persistent retry mode (CLAUDE_CODE_RETRY_WATCHDOG) now fails immediately on organization spend-limit and out-of-credits errors instead of waiting indefinitely for a reset</p> | |
| 845 | -<p>• Claude in Chrome: /clear now closes the session's Chrome tab group, and empty groups are closed on /resume and when Claude Code exits</p> | |
| 846 | -<p>• Remote sessions: images uploaded from mobile now include their saved file path, so Claude can copy them into files it creates</p> | |
| 847 | -<p>• Claude Code on the web: requests from Bash and other tools to non-API anthropic.com hosts (e.g. www, docs) now go through the session's network proxy, so your environment's allowed domains apply</p> | |
| 848 | -<p>• Remote Control: clearer message and claude doctor wording when Remote Control isn't enabled for your account</p> | |
| 849 | -<p>• Windows: cross-session messaging is now available, so Claude Code sessions across your machines can message each other with SendMessage and find each other with ListAgents, as on macOS and Linux</p> | |
| 850 | -<p>• [VSCode] "View usage" in the usage-limit banner now sits inline with the warning text instead of floating mid-banner</p></content> | |
| 851 | - </entry> | |
| 852 | 986 | </feed> |