帖子说了什么
@sysrootix 把 Claude Code 2.1.309 称为一次「安全版本」,列了几条修复,其中一条是:分屏模式的 agent teammate(队友)现在会继承主会话的工具禁用规则。 他也提醒,这些都是修复,意味着在此之前每一条都是实际存在的漏洞。他自己在服务器上无人值守地跑 Agent,所以这比新模型更重要。
官方怎么说
2.1.309 的更新日志写的是:修复了分屏 agent teammate 没有继承主会话命令行上 --disallowedTools 和 --tools 规则的问题。也就是说,旧版本里你在主会话命令行上禁掉的工具,分屏开出来的队友可能照样能用。
官方 agent teams 文档的权限部分把规则写得更细:
- 进程内队友(默认显示模式)跟随主会话实时的 allow/deny 规则,三个参数都生效。
- 分屏队友(tmux 或 iTerm2):
--disallowedTools和--tools需要 2.1.309 及以上才会继承;--allowedTools不会传给分屏队友,只靠它放行的操作在队友那边仍会弹确认。需要提前放行的,文档建议写进启动主会话时的--settings里的permissions.allow。 - 队友沿用主会话的权限模式(
dontAsk除外);主会话用了--dangerously-skip-permissions,所有队友也一样。 - 队友的权限确认会出现在主会话里,由你来批。
落地做法
- 跑 agent teams 的机器先升级。
claude --version确认在 2.1.309 以上,再开分屏模式。 - 关键禁用规则别只写在命令行参数里。 删库、推生产、读密钥目录这类规则,放进项目或用户的 settings 文件,或者启动时的
--settings,让每个会话都能读到。 - 别给主会话开跳过权限。 它会扩散到全体队友,等于一次放开整个团队。
- 升级后实测。 在测试仓库里让分屏队友尝试一个被禁的工具,确认真的被拦。
- 确认弹窗留在主会话处理。 无人值守时没人批,就该让任务停下,而不是放宽规则。
小结
多开一个队友,就多一个要守的口子。升级版本、把规则写进设置文件、实测一次,三步做完再放心交给团队跑。
