长 PowerShell 不再条条都要审批

Claude Code 2.1.296 在 Windows 上修复:长于大约 1 KB 的 PowerShell 命令以前每次都要审批。允许规则和只读判断现在应用到 32 KB。说明没有写超过 32 KB 会怎样,也没有写 Bash。1 KB 带有「大约」。

长 PowerShell 不再条条都要审批

Windows 上一条稍长的 PowerShell,以前会无视你已经写好的允许规则。powershell 超过 1kb 总是审批 描述的是修复前:命令长于大约 1 KB 时,每次都要求批准。Claude Code 2.1.296 起,允许规则和只读检测应用到 32 KB。

作者:CodePass 技术编辑

大约 1 KB,以及 32 KB 没有写清是字节还是字符

发行说明用了 “about 1 KB”。刚好卡在边界上的命令,旧版是否询问,这句没有精确到字节。32 KB 是新的适用范围,不是「超过就禁止执行」。长于 32 KB 时会不会退回每次询问,说明没有写。

只读检测和允许规则一起恢复。一条长命令若本来就该询问,升级后仍会询问。变化是:短命令能自动通过的那类规则,不再因为命令变长到大约 1 KB 就失效,直到 32 KB。

Bash、Git Bash 不在这句主语里。后台命令的 30 分钟默认超时是 2.1.285 的另一条,见 后台命令超时。超时和「要不要弹出审批」不是同一个旋钮。

只在 Windows 的 PowerShell 上

macOS 和 Linux 的 shell 没有这条 1 KB 门槛。把同一条长命令放到那些系统上仍频繁弹审批,原因不在 2.1.296 的这句。Windows 上若走的不是 PowerShell,同样不要用 32 KB 去解释。

写作日没有在 Windows 上量过一条命令的长度。升级后若允许规则里的命令仍被询问,量一下它是否超过 32 KB,并核对规则是否匹配整条命令。匹配写法不在这句修复里。

只读检测恢复之后,一条很长的查询仍可能被判成需要询问,只要它不是只读。长度不再是「大约 1 KB 就一刀切」的唯一理由。允许规则写的是短命令、模型却拼出长参数时,32 KB 以内会重新走规则,而不是一律弹卡。超过之后的行为说明留白。把命令拆成几条更短的调用,是使用上的办法,不是这句要求的修复步骤。PowerShell 以外的 Windows shell 仍不要套这个数字。

参考资料