Claude Code 学习站

插件支持 .zip/URL 加载,历史搜索恢复跨项目范围

本周 Claude Code 新增插件从 .zip 压缩包与 URL 加载、Ctrl+R 历史搜索默认跨项目、worktree 分支来源可配置,以及 auto mode 的硬性拒绝规则等改进。

AI 摘要 · 已核查2026 年第 19 周(起于 2026-05-04原文:Week 19 · May 4–8, 2026
本周要点
  • `--plugin-dir` 现在支持直接指定 `.zip` 插件压缩包,新增 `--plugin-url` 可从 URL 临时加载插件,适合试用插件或从内部制品库分发
  • `Ctrl+R` 历史反向搜索恢复为默认跨所有项目搜索(与 v2.1.124 之前行为一致),搜索时按 `Ctrl+S` 可收窄回当前项目/会话
  • 新增 `worktree.baseRef` 设置项(可选 `fresh` 或 `head`),控制 `--worktree`、`EnterWorktree` 工具及 agent 隔离 worktree 是从远程默认分支还是本地 `HEAD` 创建新分支,默认 `fresh` 可避免未推送的提交混入新 worktree
  • 新增 `settings.autoMode.hard_deny` 规则,可在 auto mode 下无条件阻止匹配的操作,即使存在更宽泛的 allow 规则也不例外,适用于任何情况下都不应自动执行的操作
  • Hooks 现在可通过 JSON 输入字段 `effort.level` 和环境变量 `$CLAUDE_EFFORT` 获取当前生效的 effort 级别,Bash 工具命令内也可读取 `$CLAUDE_EFFORT`
  • 子代理(sub-agent)进度摘要现已命中 prompt 缓存,使 `cache_creation` token 成本降低约 3 倍;多项 OAuth/凭证并发问题也已修复

版本范围

本周更新覆盖 v2.1.128 → v2.1.136,共 2 项主要新功能,发布时间为 5 月 4 日至 8 日。

插件加载:支持 .zip 压缩包与 URL

--plugin-dir 参数现在除了目录外,也接受一个 .zip 格式的插件压缩包。同时新增 --plugin-url flag,可以在当前会话中直接从 URL 拉取插件压缩包并加载。

对开发者而言,这意味着在把插件正式加入 marketplace 之前,可以先用一个 .zip 或链接快速试用;团队内部也可以直接把插件放在制品仓库(artifact store)里分发,无需额外搭建 marketplace。

用法示例:

claude --plugin-url https://example.com/my-plugin.zip

历史搜索恢复跨项目范围(v2.1.129)

Ctrl+R 反向搜索命令历史,默认行为改回搜索所有项目下的全部 prompt 记录,恢复到 v2.1.124 之前的行为。如果只想搜索当前项目或当前会话,搜索时按 Ctrl+S 即可收窄范围。

这对经常在多个仓库间切换、想不起某条命令是在哪个项目里执行过的用户比较实用,不用再手动去别的项目里翻找。

其他改进

  • 新增 worktree.baseRef 设置项,可选值为 freshhead,用于控制 --worktreeEnterWorktree 工具以及 agent 隔离场景创建的 worktree,究竟是从远程默认分支还是本地 HEAD 分支出来。默认值 fresh 会让新 worktree 不包含尚未推送的本地提交。
  • 新增 settings.autoMode.hard_deny 规则,可以在 auto mode 下无条件阻止某些操作——即便存在更宽泛的 allow 规则也不受影响,适合那些任何情况下都不该被自动执行的高风险操作。
  • Hooks 现在能读取当前生效的 effort 级别:JSON 输入里新增 effort.level 字段,同时提供环境变量 $CLAUDE_EFFORT;Bash 工具执行的命令内部也能读取到 $CLAUDE_EFFORT
  • CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1 可以关闭全屏的 alternate-screen 渲染模式,让对话内容保留在终端原生的滚动缓冲区(scrollback)里。
  • CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE 让通过 Homebrew 或 WinGet 安装的用户,可以在后台执行升级并提示重启。
  • CLAUDE_CODE_SESSION_ID 现在会被注入 Bash 工具的子进程环境变量,与传给 hooks 的 session_id 保持一致。
  • /mcp 命令现在会显示已连接服务器的工具数量,并标记出连接成功但工具数为 0 的服务器。
  • --channels 现在也支持配合控制台(API key)认证方式使用。
  • Bash、hooks、MCP、LSP 等子进程不再继承 OTEL_* 环境变量,这样通过 Bash 工具运行的、自带 OTEL 埋点的应用不会再意外接入 CLI 自身的 OTLP 端点。
  • 子代理(sub-agent)的进度摘要现在能命中 prompt 缓存,使 cache_creation 的 token 成本降低约 3 倍。
  • 修复了多项 OAuth 与凭证相关的可靠性问题:并行会话不会再因 refresh-token 竞争而卡在 401 状态;多个 MCP 服务器同时刷新 token 时不会再丢失 refresh token;一个由并发写入凭证导致的偶发登录死循环也已修复。
  • 新增管理员配置项 parentSettingsBehavior,允许管理员让 SDK 的 managedSettings 参与策略合并。