黄奕彬

外部精选

Claude Code · v2.1.293

本文来自外部来源,不是黄奕彬的原创文章。本站提供原文入口,并在采集端生成 AI 结构化摘要、解读与中文翻译(如有),一切以原文为准。

阅读原文(github.com)
来源
Claude Code releases ↗
作者 / 署名
ashwin-ant
来源更新时间
本站收录时间
原文域名
github.com

以上时间均为北京时间;来源更新时间由来源提供,不代表首次发布时间。

结构化摘要 AI 生成

背景与问题

背景与问题:这是 Claude Code v2.1.293 的官方发布说明(GitHub Releases,提交 79babc3,发布为不可变,其后 main 分支又有 3 个提交)。

面向 Claude Code 用户及其各集成场景(CLI/TUI、subagents、MCP、mods 插件、Remote Control 与云会话、Claude in Chrome、Claude in Slack / Claude Tag、Code Review、自托管 runner、Windows / Linux / Mac)。

要解决的问题是:汇总本版本的新增能力、修复的大量已知缺陷,以及回退此前被证明有问题的两处改动。

方法或内容

方法或内容:以变更日志形式组织:1)新增项:Claude Haiku 5.5(claude-haiku-5-5)成为 Anthropic API 上默认 Haiku 模型;subagentStatusLine 载荷新增 agentType;$.tool.register 为 mods 新增 isDeferred。

2)数十项按功能区域分类的缺陷修复(上下文压缩、内存泄漏、后台化丢消息、权限与工具列表、claude 命令族、/ultrareview、vim 模式、Windows 进程误杀等)。3)两项回退(2.1.281 的 auto mode 拒绝消息改动;2.1.290 的云会话唤醒修复)。

4)若干改进与行为变更(启动时序、技能同步间隔、排序、遥测上限、轮询随机化、Claude Tag 与 Code Review 相关条目)。

关键发现 / 结果

关键发现或结果:新增 Claude Haiku 5.5 为 API 默认 Haiku 模型:1M 上下文,$0.10/$0.50 每 Mtok(提示超 100K 时 $0.50/$2.50)。

典型修复:HTTP MCP 连接不再保留全部已发请求(修复内存泄漏);← 后台化时未发送消息不再丢失,无法移动时会原地提示;上下文压缩前已完成的动作不再被撤销或重做;claude purge 删除失败时继续删除其余项、列出未删项并以 exit 1 退出;claude plugin eval 不再拒绝带 ~/.docker/bin 链接的 Mac Docker Desktop 运行;Windows 上停止状态行/hook/shell 命令不再误杀复用同一 PID 的无关进程。

行为变更:claude.ai 技能同步在无会话使用时由每 10 分钟改为约每 40 分钟;代理与 MCP 服务器列表改为非 ASCII 名排在 ASCII 之后;Claude Tag 渠道规则上限由 20 提至 50;自托管 orchestrator 轮询间隔由固定 5 秒改为 4–6 秒随机;artifacts 将库锁定为两周及更早的精确版本;OpenTelemetry at_mention 每次读取提示最多记录 100 条代理与 100 条 MCP 资源事件。

结论与意义

结论与意义:原文未给出显式结论(变更日志体裁,无总结段落)。整体意义在于:一次性修复覆盖 CLI、子代理、MCP、插件、远程控制、Slack 集成等多面的缺陷,提升稳定性,并正式将 Haiku 5.5 设为默认 Haiku 模型。

适用边界:所有条目仅描述 v2.1.293 的行为;两处回退条目同时说明 2.1.281 与 2.1.290 中对应行为已还原,对照旧版本时需注意。

AI 解读 AI 生成

方法:按「时空变量」分析(时间 / 空间 / 变量,严格区分包含、相关与因果),对象包括原文作者、署名人员与关键技术及其实际原理;结论用「元反空」(元思考、反思考、空思考、综合)整理。

时间:何时发生,现在是否仍成立

时间:按来源日期,发布于 2026年10月8日 02:10(北京时间);正文注明该发布不可变(仅标题与说明可修改),且此后 main 分支已有 3 个提交,说明版本仍在快速迭代。

是否仍可能成立:对仍在使用 v2.1.293 的用户,条目描述应成立;但由于本版自身就回退了 2.1.290 的修复,说明任何'已修复'状态都可能被后续版本再次更改,模型默认与定价也可能随 Anthropic API 政策变化,不宜假设长期有效。

空间:谁的环境 / 场景

空间:适用于 Claude Code(Anthropic 的编码代理工具)v2.1.293 的使用环境,具体覆盖:CLI 与 TUI(/model、/tui、/feedback、/ultrareview、vim 模式、keybindings.)、subagents 与 --agent 会话、MCP 服务器(含 HTTP 连接)、mods/插件开发与测试、Remote Control 与云会话、Claude in Chrome(含 --chrome/--no-chrome)、Windows(进程终止)、Linux(/ultrareview 上传)、Mac(Docker Desktop)、Team 与 Enterprise 组织(策略与托管设置)、自托管 runner、Claude Tag(Claude in Slack 及管理设置,含 Enterprise Grid)、Code Review(Add a repository 对话框)。

变量:实际改变了什么

变量:相对此前的实际改变——默认 Haiku 模型变为 claude-haiku-5-5(新定价:$0.10/$0.50 每 Mtok,超 100K 提示 $0.50/$2.50,1M 上下文);subagentStatusLine 载荷新增 agentType 字段;$.tool.register 新增 isDeferred 参数;技能同步间隔 10→约 40 分钟(无会话使用时);Claude Tag 渠道规则上限 20→50(每工作区及组织级 Slack 页);代理/MCP 列表排序规则改为非 ASCII 名靠后;OTel at_mention 日志加上限;orchestrator 轮询由固定 5 秒改为 4–6 秒随机;artifacts 库版本锁定策略改为'两周及更早的精确版本';两处旧改动被回退;另有数十项缺陷行为被修正(内存泄漏、消息丢失、误杀进程、退出码、排序、界面显示等)。

区分:包含 ≠ 相关 ≠ 因果

区分:多数修复条目含明确因果陈述,如'HTTP MCP 连接保留每个已发请求直到关闭'(内存泄漏的原因)、'停滞的请求 3 秒后重试'(启动改进的机制)、'删除失败导致 claude purge 静默停止'(修复后列出未删项并 exit 1)。这些因果由发布方直接断言,属于原文给出的因果证据。

仅属相关或计数性、无因果断言的包括:'3 commits to main since this release'(时间上的伴随计数);'Improved Claude in Chrome: 浏览器报告标签页慢时更少页面动作被拒绝'(条件相关而非严格因果链)。定价与默认模型为直接事实声明,不属因果。回退条目说明的是时间先后与决策,非新缺陷的因果证明。

对象:作者/署名与关键技术原理

对象:作者/署名仅来自结构化字段:ashwin-ant;正文未提及其他人员。关键技术及原文所述原理:

  1. Claude Code CLI 与 subagents(自定义代理类型、--agent 会话、SendMessage 工具)。
  2. MCP:HTTP 连接此前会保留所有已发请求直至关闭(即泄漏源),已修复。
  3. mods 插件 API:$.tool.register 的 isDeferred=false 使工具 schema 从一开始就列在提示中而非藏在工具搜索之后;新增 mock.session 让 claude plugin test 能读回 $.session.append 追加的行;hooks 挂在 classic.* 事件上。
  4. 上下文压缩:修复模型把压缩前自己的动作误当作已完成于压缩之后的问题。
  5. Remote Control 与云会话(流式输出、凭据恢复、/loop 唤醒与计划任务)。
  6. 自托管 orchestrator:随机化轮询间隔以避免同一环境的多个副本同刻轮询。
  7. Claude Tag(Claude in Slack 与管理设置)、Code Review、OpenTelemetry、vim 模式、CLAUDE.md 路径作用域规则与 keybindings。

元反空综合结论

元反空综合——元:这份发布说明本质在回答'v2.1.293 相对之前改了什么、用户为何要关注/升级',是维护性沟通,把散布在数十个功能面的缺陷修复与少量参数变更压缩为清单。

反:最可能失效或有边界的主张——本版自己回退了 2.1.281 与 2.1.290 的改动,证明近期的'修复'可能本身引入问题,本版修复同样可能被再回退;默认模型与每 Mtok 定价绑定发布时点的 Anthropic API,可能随时调整;Claude in Chrome、Claude in Slack 等集成行为依赖第三方(浏览器、Slack 管理员设置)状态,边界条件多;'约每 40 分钟'、'4–6 秒'等均为近似值而非保证。

空:去掉叙事后剩下的必要事实是——版本号 v2.1.293、不可变发布、提交 79babc3、新增 claude-haiku-5-5 为默认 Haiku 模型及其定价、两个新 API 字段/参数(agentType、isDeferred)、若干可量化参数变更(同步间隔、规则上限、排序规则、轮询随机化、遥露上限)以及一长串具体缺陷的修复与两项回退。

综合结论:这是一次以缺陷修复为主的常规维护版本,唯一的重大功能面变化是 Haiku 5.5 上位为默认 Haiku 模型;对命中所述缺陷的用户有直接价值,但各项主张仅在 v2.1.293 与发布时点的环境中成立,需以官方后续发布为准。

中文译文 AI 生成

· 3 次提交到 main自本次发布以来

不可变发布。仅发布标题和说明可被修改。

79babc3

更新内容

新增 Claude Haiku 5.5(claude-haiku-5-5),现为 Anthropic API 上的默认 Haiku 模型——1M 上下文,每 Mtok $0.10/$0.50(超过 100K 的 prompt 为 $0.50/$2.50)

在 subagentStatusLine 负载中新增 agentType,使脚本能够区分不同的自定义 subagent 类型

为 mod 的 $.tool.register 新增 isDeferred:设为 false 时,工具的 schema 会从一开始就列在 prompt 中,而不是置于 tool search 之后

修复 Claude 有时会把上下文压缩(context compaction)之前自己最后的操作当作是在压缩之后完成的,从而撤销或重做已完成工作的问题

修复一个内存泄漏:某个 HTTP MCP 连接会保留它发送过的每一个请求,直到其关闭

修复当 ← 将会话移至后台时,Claude 工作期间发送的消息丢失的问题;如果排队的消息无法随之移动,← 现在会保持不动并说明情况

修复 /model effort 的 ←/→ 在超过最高或最低级别时循环绕回的问题,该问题可能意外地将 Low 保存为模型的默认 effort

修复 /tui 在以 --chrome 启动的会话中使 Claude 在 Chrome 中断开连接、以及忽略 --no-chrome 的问题

修复在会话(包括恢复的会话)中,当宿主、权限规则或 --tools 列表移除了该工具时,Claude 仍被告知可以用 SendMessage 继续或向 subagent 发送消息的问题

修复 subagent 和 --agent 会话被告知某个内置工具在整个会话中被禁用,而实际上只是它们自身的工具列表未包含该工具的问题

修复与 claude.ai 同步的 skill 的已编辑描述有时直到新对话或 /clear 之后才会传到模型的问题

修复 claude logs、stop、kill、rm 以及 claude daemon status、stop、uninstall 有时会在你的登录已过期或即将过期时将你登出的问题

修复读取 sessions 文件夹短暂失败(例如,打开的文件过多)后,页脚的 agents 计数消失的问题

修复名为 worker 的自定义 agent 在启动时显示为“Agent”,以及 agent 完成后 agent 详情对话框标题丢失 agent 类型的问题

修复 Artifact 工具的 transcript 行在一次 publish 调用仍在流式传入时短暂显示 Artifact(“(unprintable path)”) 的问题

修复 Linux 上 /ultrareview 上传因某个在沙箱命令运行期间“无法解析”的设置文件而错误拒绝某些仓库的问题,例如位于另一个 checkout 内的仓库

修复 /ultrareview 上传因 split-index 文件而拒绝时所建议的 git 命令可能使 git 无法读取其 index 的问题

修复非常长的 Remote Control 和云端会话中的回复仍可能一次一块地出现而非流式传入的问题

修复 Remote Control 在每次凭据恢复后重新上传会话起始历史的问题

修复以 claude remote-control 启动的会话中 PushNotification 报告“Remote Control inactive”的问题

修复 mod 在 classic.* 事件上的 hooks 在 plugin hooks worker 重启期间被跳过的问题,这导致 settings hooks 只能在没有这些 hooks 的情况下应答

修复调用 $.session.append 的 mod 导致 claude plugin test 失败的问题;测试现在可以通过新的 mock.session 读回被追加的行

修复 claude plugin eval 在装有 Docker Desktop 的 Mac 上(链接位于 ~/.docker/bin 之下)拒绝所有授予 Bash 的运行的问题;现在拒绝时会指明凭据存储的哪一部分持有该链接

修复当桌面策略设置了 Claude Desktop 的内置浏览器键(例如 builtinBrowserEnabled)时,Claude apps gateway 拒绝启动的问题

修复当同意仅保存在 .claude/settings.local.json 或 --settings 文件中时,claude agents 提供的 bypass permissions 会被后台会话忽略的问题;现在它会先请求同意,且忽略 bypass 的会话会显示一条会保留的简短提示

修复当 prompt 中有未发送文本(现在会取消该移动)或有问题正等待你回答时,← 仍会在 10 秒后将该会话移至后台的问题

修复在刚按下 ← 将会话移至后台后,在权限提示上按 Esc 或选择不附反馈的 No 时无法停止当前回合的问题

修复当 sessions 文件夹无法读取(例如,打开的文件过多)时,agents 视图短暂地用占位行替换会话列表的问题

修复当 Claude 在 Bash 工具中用单文件的 cat、head、tail、sed -n 或 grep 命令而非 Read 工具查看文件时,路径作用域规则和嵌套的 CLAUDE.md 文件不加载的问题

修复开头和结尾是相同词语的粘贴文本有时被当作键入文本发送给 Claude 的问题

修复当粘贴之后立即键入或粘贴的重音符号并入粘贴文本中 skill 名称的最后一个字母时,该 skill 名称被当作键入内容的问题

修复 /feedback 在报告发送期间按 Ctrl+O 或 Ctrl+Z 后返回草稿列表,导致发送无法取消的问题

修复 claude purge 在无法删除某个文件或文件夹时静默停止(exit 0,或在终端中挂起)的问题;现在它会删除其余内容、列出无法删除的内容,并以 exit 1 退出

修复 keybindings.json 检查:单独的 " "(空格键)不再被报告为错误,而类似 "ctrl+ k" 的键现在会收到警告

修复 vim 模式下在仅含空格的行上执行 >> 和 << 会使光标停在行尾之后,导致随后的 x 什么都删不掉的问题

修复 vim 模式:在 Visual 模式(先 V 再 d)删除整行后,光标落在第一个非空白字符处,且随后的 . 作用于光标所在行

Windows:修复停止 status line、hook 或 shell 命令时有时会终止某个被分配了相同进程 ID 的无关进程的问题

回退了 2.1.281 中对 auto 模式拒绝消息的更改,该更改曾告知 Claude 拒绝覆盖的是结果,而不仅是确切的命令

回退了 2.1.290 的修复,该修复针对的是容器重启丢失了待处理的 /loop 唤醒或计划任务后云端会话持续休眠的问题;现在不再告知 Claude,会话保持休眠

改进了 Team 和 Enterprise 组织的启动:策略和托管设置会更早获取,停滞的请求会在 3 秒后重试

改进了 Claude in Chrome:当浏览器报告其标签页较慢时,被拒绝的页面操作更少了改进了云端会话中无法连接到浏览器时的 Claude in Chrome 消息:如果你属于多个组织,该消息现在会说明扩展必须登录到同一个组织,以及如何更改改进了 Bash 编辑差异(diff)提示,改为说明所列文件在命令运行期间发生了变化,其中可能包括其他进程的写入改进了 artifacts:Claude 现在会将库固定到已满两周或更早的精确版本更改了 claude.ai skill 同步:在没有会话使用时,改为约每 40 分钟检查一次变更,而不是每 10 分钟更改了 agent 列表以及向模型公布的 MCP 服务器的排序:包含非 ASCII 字符的名称现在排在 ASCII 名称之后更改了 OpenTelemetry 的 claude_code.at_mention 日志记录:每次读取提示词时最多发出 100 个 agent 事件和 100 个 MCP 资源事件Self-hosted runner:将 orchestrator 更改为在两次轮询之间休眠 4 到 6 秒,而不是固定 5 秒,从而使同一环境的多个副本不再在同一时刻轮询[Claude Tag] 修复了以下问题:当 Slack 为某条消息标注了一个未连接的工作区时,Claude in Slack 会在 Enterprise Grid 中跨工作区共享的频道里表示该工作区未设置[Claude Tag] 修复了以下问题:当管理员更改频道的 connectors、plugins、skills 或 rules 时,Claude in Slack 在频道中会在任务中途停止;现在该更改会在 Claude 完成任务后再生效[Claude Tag] 修复了以下问题:让 Claude in Slack 立即运行某个 thread 的 routine 并附带额外备注时,会启动一个无法回帖的单独运行;现在该运行会在该 thread 中继续[Claude Tag] 修复了 Claude Tag 管理设置中 access bundle 的 Add a connector 对话框在一次 Google 登录后将每个 Google connector 都显示为已连接的问题[Claude Tag] 改进了 Claude Tag 管理设置:现在会列出尚未连接的 Enterprise Grid,并附带 Connect 按钮[Claude Tag] 更改了 Claude in Slack:加入只有管理员可以发帖的 announcement channels 时,不再发布其介绍[Claude Tag] 将 Claude Tag 管理设置中频道规则的上限从 20 改为 50,适用于每个工作区以及组织范围的 Slack 页面[Code Review] 改进了 Code Review 的 Add a repository 对话框:现在会列出每个无法添加的仓库及其原因,例如缺少 GitHub 写入权限

展开原文提取正文(采集端自动提取,可能有缺失)

·

3 commits

to main since this release

Immutable release. Only release title and notes can be modified.

79babc3

What's changed

Added Claude Haiku 5.5 (claude-haiku-5-5), now the default Haiku model on the Anthropic API — 1M context, $0.10/$0.50 per Mtok ($0.50/$2.50 for prompts over 100K) Added agentType to the subagentStatusLine payload, so scripts can tell custom subagent types apart Added isDeferred to $.tool.register for mods: false lists the tool's schema in the prompt from the start instead of behind tool search Fixed Claude sometimes treating its own last actions before a context compaction as done after it, and retracting or redoing finished work Fixed a memory leak where an HTTP MCP connection kept every request it had sent until it closed Fixed a message sent while Claude was working being lost when ← moved the session to the background; if a queued message can't move, ← now stays put and says so Fixed /model effort ←/→ wrapping past the highest or lowest level, which could accidentally save Low as a model's default effort Fixed /tui disconnecting Claude in Chrome in a session started with --chrome, and ignoring --no-chrome Fixed Claude being told to continue or message subagents with SendMessage in sessions, including resumed ones, where a host, a permission rule or a --tools list removed that tool Fixed subagents and --agent sessions being told a built-in tool was disabled for the whole session when only their own tool list left it out Fixed a claude.ai-synced skill's edited description sometimes not reaching the model until a new conversation or /clear Fixed claude logs, stop, kill, rm and claude daemon status, stop, uninstall sometimes signing you out when your login had expired or was about to Fixed the footer's agents count disappearing after a momentary failure to read the sessions folder (for example, too many open files) Fixed a custom agent named worker being shown as "Agent" when it starts, and the agent detail dialog's title losing the agent type once the agent finishes Fixed the Artifact tool's transcript row briefly reading Artifact("(unprintable path)") while a publish call was still streaming in Fixed the /ultrareview upload on Linux wrongly refusing some repositories, such as one inside another checkout, over a settings file that "could not be parsed" while a sandboxed command was running Fixed the /ultrareview upload's refusal over split-index files advising a git command that could leave git unable to read its index Fixed replies in very long Remote Control and cloud sessions that could still appear a block at a time instead of streaming in Fixed Remote Control uploading a session's starting history again after every credential recovery Fixed PushNotification reporting "Remote Control inactive" in sessions started with claude remote-control Fixed a mod's hooks on classic.* events being skipped while the plugin hooks worker restarts, which left settings hooks to answer without them Fixed claude plugin test failing for mods that call $.session.append; tests can read the appended rows back with the new mock.session Fixed claude plugin eval refusing every Bash-granting run on Macs with Docker Desktop (links under ~/.docker/bin); the refusal now names which part of a credential store held the link Fixed the Claude apps gateway refusing to start when a desktop policy sets Claude Desktop's built-in browser keys, such as builtinBrowserEnabled Fixed claude agents offering bypass permissions that background sessions then ignored when consent was saved only in .claude/settings.local.json or a --settings file; it now asks for consent first, and a session that ignores bypass shows a short notice that stays Fixed ← backgrounding a session after 10 seconds while the prompt held unsent text (it now cancels the move) or a question was waiting for your answer Fixed Esc, or No without feedback, on a permission prompt not stopping the turn when ← had just been pressed to move the session to the background Fixed the agents view briefly replacing the session list with placeholder rows when the sessions folder could not be read (for example, too many open files) Fixed path-scoped rules and nested CLAUDE.md files not loading when Claude views a file with a single-file cat, head, tail, sed -n or grep command in the Bash tool instead of the Read tool Fixed pasted text that begins and ends with the same words sometimes being sent to Claude as if it had been typed Fixed a skill name in pasted text being treated as typed when an accent typed or pasted right after the paste merged into its last letter Fixed /feedback returning to the drafts list after Ctrl+O or Ctrl+Z while a report was sending, leaving the send impossible to cancel Fixed claude purge stopping silently (exit 0, or a hang in a terminal) when a file or folder could not be deleted; it now deletes the rest, lists what it could not delete, and exits 1 Fixed keybindings.json checks: a lone " " (space key) is no longer reported as an error, and keys like "ctrl+ k" now get a warning Fixed vim mode >> and << on a line of only spaces leaving the cursor past the end of the line, where a following x deleted nothing Fixed vim mode: after deleting whole lines in Visual mode (V then d) the cursor lands on the first non-blank, and . after it acts on the cursor's line Windows: Fixed stopping a status line, hook, or shell command sometimes terminating an unrelated process that had been given the same process ID Reverted the auto mode denial message change from 2.1.281 that told Claude a denial covers the outcome, not only the exact command Reverted the 2.1.290 fix for cloud sessions staying asleep after a container restart lost a pending /loop wakeup or scheduled task; Claude is no longer told, and the session stays asleep Improved startup for Team and Enterprise organizations: policy and managed settings are fetched earlier, and a stalled request is retried after 3 seconds Improved Claude in Chrome: fewer page actions are refused when the browser is slow to report its tabs Improved the Claude in Chrome message in cloud sessions when the browser can't be reached: if you belong to more than one organization, it now says the extension must be signed in to the same one, and how to change that Improved the Bash edit diff note to say the listed files changed while the command ran, which can include writes by other processes Improved artifacts: Claude pins libraries to exact versions two weeks old or older Changed claude.ai skill syncing to check for changes about every 40 minutes, instead of every 10, while no session is in use Changed the order of agent lists and of MCP servers announced to the model: names with non-ASCII characters now sort after ASCII names Changed OpenTelemetry claude_code.at_mention logging to emit at most 100 agent and 100 MCP-resource events each time a prompt is read Self-hosted runner: Changed the orchestrator to sleep 4 to 6 seconds between polls instead of a constant 5, so several replicas for one environment stop polling at the same moment [Claude Tag] Fixed Claude in Slack saying a workspace isn't set up in Enterprise Grid channels shared across workspaces when Slack labels a message with a workspace that isn't connected [Claude Tag] Fixed Claude in Slack stopping mid-task in a channel when an admin changed the channel's connectors, plugins, skills or rules; the change now applies once Claude finishes [Claude Tag] Fixed asking Claude in Slack to run a thread's routine now with extra notes starting a separate run that couldn't post back; the run now continues in that thread [Claude Tag] Fixed an access bundle's Add a connector dialog in Claude Tag admin settings showing every Google connector as connected after one Google sign-in [Claude Tag] Improved Claude Tag admin settings to list an Enterprise Grid that isn't connected yet, with a Connect button [Claude Tag] Changed Claude in Slack to join announcement channels, where only admins can post, without posting its intro [Claude Tag] Changed the limit on channel rules in Claude Tag admin settings from 20 to 50 for each workspace and for the organization-wide Slack page [Code Review] Improved Code Review's Add a repository dialog to list each repository that couldn't be added and why, such as missing GitHub write access

原文入口

阅读原文(github.com)

原文将在新窗口打开。收录时间不是内容更新时间;正文、译文与解读的版权归原作者/来源所有,本站仅作个人阅读辅助并保留原文入口;页面时间均为北京时间。

作者/署名来自原文结构化字段(Atom/RSS/HTML meta/JSON-LD;GitHub release 显示的是发布者账号),未经模型补充。

了解来源批准与收录规则