判定发生在哪,是这周补丁的共同问题:写入按解析后的真实路径算,不按命令字符串;审批跟 resume/fork 走,不停在最初那次确认。Claude Code 补上工作目录外的写拒绝与恢复后的沙箱,Codex 把审批和 token 记账带过分叉,Goose 让 allowlist 跟随重定向并失败即关。边界是一条可达路径,不是一条命令。
边界不再按命令字符串算:写入按真实路径,审批按 resume/fork 后的状态
热度盘面 Top 6
-
2.1.314(10/30)新增 permissions.blockWritesOutsideWorkingDirectories:Write/Edit/NotebookEdit 在任何权限模式下拒绝工作目录外路径;sandbox 开始覆盖 claude -p --resume/--continue 进入的 worktree。2.1.316(10/31)修 --restricted 会话在 Read allow 规则覆盖时上传工作目录外文件。2.1.314 让 auto mode 在安全检查无判定时不再把调用记为已拦截,2.1.316 让云会话与定时任务在无安全判定时直接失败。hook 侧:2.1.312 起每会话最多 24 个 prompt/agent hook(含子代理),2.1.314 把 PreCompact 输出限到每 hook 10,000 字符,Monitor 工具启动的 shell 命令也走 Bash hook(可拦可问,不可批准或改写)。
编辑注 写边界从「看模式」改成「看路径」,恢复路径曾是沙箱的旁门,现在补上。行动:打开 blockWritesOutsideWorkingDirectories,用 --resume 进入 worktree 验证沙箱,并检查现有 PreCompact hook 是否被 10,000 字符上限截断。
-
0.166.0(10/29)在 resume/fork 后保留已确认的审批与权限设置,并把 reasoning token 记账一起带过,避免恢复后因记账归零而提前压缩;pre/post-tool 与 permission hook 开始上报工作目录。Guardian 调整审批理由长度上限、工具输出截断、消息上限与异步分类。安全侧把不可读 glob 元数据的处理改为 fail-closed,Windows 沙箱保留 SystemRoot,代理签名时掩码 AWS 凭据,MITM 请求体做密钥替换。
编辑注 resume/fork 是最容易丢状态的两条路:丢审批要么重新弹窗、要么静默放行,丢 token 记账则会让压缩提前发生。行动:把「恢复或分叉后旧审批是否仍有效」写进测试,并核对 hook 拿到的 cwd 是否就是它以为的那个。
-
v1.57.0(10/28)收紧 allowlist:强制 HTTPS、跟随并检查重定向、策略检查失败时 fail-closed。结束于错误的 turn 现在会让 session/prompt 请求失败,不再留下看似成功的会话;移除 ACP 客户端委托的 developer tools。另把 zstd 升到 0.14.3 处理 RUSTSEC 告警,并移除 jsonwebtoken。
编辑注 只匹配首个 URL 的 allowlist,一次重定向就可能换到未授权目标;出口控制应默认拒绝,而不是默认放行加告警。行动:用会 302 到非同源地址的 URL 测 egress 规则,并确认策略服务不可用时的默认值是拒绝。
-
v2.2.3(10/30)把 managed policy 的集成访问与 mcp.use、skill.use、plugin.use 拆开,分别控制 MCP 服务器、技能与插件;v2.2.5(10/30)让 bash 工具名路由到 shell 时沿用原权限,压缩缓冲改为按百分比计算,并在 LiteLLM 报上下文错误时触发压缩。v2.2.1 起提供实验性的 session idle hook。
编辑注 把「能装」与「能用」分开,是插件化 harness 迟早要补的一刀;别名路由保持权限,则堵住改个工具名就换一套规则的路子。行动:策略若还是整块 allow/deny,先按 MCP、skill、plugin 拆成三个开关,再谈最小权限。
-
pingdotgg/t3code(38.0k★,今日 +3,094,trending 当日最大涨幅)自称「agent harness control surface」:本地 t3 server 统一驱动本机已登录的 Claude Code、Codex、Cursor、OpenCode、Grok Build 等 CLI,再由 iOS/Android/Web/Electron 客户端远程操作。仓库为含 apps/packages/native/evals 的 monorepo,README 标注 early-stage、基本不接受贡献。
编辑注 harness 正在变成无头服务,前端与审批入口分离;远程客户端一旦触达审批,授权边界就从终端挪到了网络。行动:暴露本地 agent server 前先做认证与按客户端的权限范围,别把「连得上」当成「能批准」。
-
thedotmack/claude-mem(109.3k★,今日 +1,526)用 SessionStart、UserPromptSubmit、PreToolUse、PostToolUse、Stop、SessionEnd 六个生命周期 hook 采集会话,本地 Bun HTTP worker 落 SQLite,Chroma 做语义与关键词混合检索,再以 MCP 三层次 search→timeline→get_observations 按需注入。支持 Claude Code、Codex、Gemini、Copilot、OpenCode 等多家。
编辑注 它把记忆做成 harness 之外的侧车,于是 hook 覆盖面就是正确性边界:漏一个事件漏一段上下文,多采一个事件可能把密钥写进库。行动:先审 PreToolUse/PostToolUse 采到的工具输出与截图开关,定义保留期与删除路径,再谈跨会话记忆。