harness 的扩展面这周搬进了进程内:Claude Code Mods 能在工具调用执行前改写与放行,且不沙箱、同用户权限——执法点和扩展点成了同一个进程。managed 靠 sec-default 与 allowManagedModsOnly 兜底,自托管没有。同期 Codex harness 开源、Pi 给出唯一的失败即拦 hook、一份综述把 Safety Controller 列为七子系统之一:护栏只能自己长。先钉谁能装 mod,再谈模型闸。
扩展面第一次搬进进程内:Claude Code Mods 能在工具调用执行前改写与放行,且不沙箱——harness 的信任边界这周往里收了一层,执法点与扩展点变成同一个进程
热度盘面 Top 5
-
Claude Code 2.1.287(10/1,默认开启)上线 Mods:插件以跑在同进程内的 JS/TS 事件处理器改写行为,挂到工具调用、提示提交、界面渲染等事件上,可拦/改参数/重试工具调用、批准权限请求、脱敏工具输出。关键在边界:官方文档明说不沙箱、以用户权限运行——可读写文件、起进程、发网络请求,并读环境变量与设置文件(含你存在其中的 API key);Claude Code 的沙箱只隔离它自己跑的 Bash 命令,mod 起的进程在沙箱外。一个批准动作能放行本该被 ask 规则或你的 PreToolUse hook 拦下的调用;Team/Enterprise/managed 上内置 sec-default 会先加载,并可配 allowManagedModsOnly 挡掉用户 mod。第三方夜间跑 claude plugin validate 盘点 359 个公开 mod(10/2):127 起宿主进程、95 写文件、75 触网、111 能看到每条提示,21 个在 2.1.287 上校验失败(静态清单,非运行时保证)。控制项:claude plugin validate、--safe-mode、disableAllHooks。
编辑注 这周的真实位移是扩展层从进程外(声明式 hook/MCP/skill)搬进进程内。执法点与扩展点合并成一个进程,『谁能装 mod』就是新的权限边界——managed 靠 sec-default 与 allowManagedModsOnly 兜底,自托管/个人配置没有。先给你的 harness 加一道 mod 准入闸,再谈模型闸;把 mod 当成『能用你的 API key 运行的任意代码』。
-
OpenAI 在 DevDay(9/29)把 Codex 的 harness 开源(Apache-2.0,github.com/openai/codex,约 12.8 万★):含 CLI/SDK/app-server 与 Rust 核心 codex-rs,曝光的正是 agent loop——组织上下文与历史、调模型、执行工具调用、把结果写回、直到模型不再调工具。harness 覆盖上下文状态、工具路由、沙箱策略、审批流、重试、压缩与流式输出;未开源的是模型权重、Codex Cloud 与完整 IDE 扩展。Agents API 给三种沙箱(OpenAI 托管 / 自托管 codex exec-server,出站 WebSocket / 9 家合作方:E2B、Modal、Cloudflare、Daytona、Vercel 等);approval 是一等件,另有 Auto-review 评估『跨沙箱边界』的请求,但 OpenAI 明说它不是确定性的安全保证。Agents API 仍 beta,仅美国数据驻留。
编辑注 loop 第一次能被逐行读到,选型该看它怎么接工具、怎么放行,而不是看口号。但两张纸要一起读:approval 是 harness 的结构件、不等于安全边界,Auto-review 自认非确定性——把它当降噪,硬边界仍放沙箱与出网。
-
极简 harness Pi 发布 1.0(10/1,MIT,TS monorepo;起于 Mario Zechner/badlogic 的个人项目,现属 Earendil):四个内建工具(read/write/edit/bash)、系统提示不到 1k token。工具拦截靠 beforeToolCall(对外暴露为 before_tool);据源码走读,它是约 41 个事件里唯一『失败即拦截』的点——其余事件报错即放行;默认并行执行下,参数校验与 beforeToolCall 顺序跑完,才并发执行获准的工具。Pi 不给每调用默认权限策略,官方安全指引直言不会每次工具调用都提问,建议放进容器/VM/沙箱。
编辑注 Pi 把『要不要批』整个推给使用者:极简的另一面是没有默认授权闸,一个失败即拦的 hook 就是全部护栏。选它=接受自己写授权与审计;把它当库,不当安全边界。
-
Harness Engineering: Anatomy, Architecture, and Evolution of Coding Agents(Paul Barbaste 等,arXiv:2609.00006,7/15 提交、9 月扩版,83 页)对 11 个生产 coding harness(Claude Code、Codex CLI、Gemini CLI、Mistral Vibe、OpenHands、Aider、Mini-SWE-Agent、Hermes、Pi、OpenCode、OpenClaw)做源码研究,外加 Omnigent 作首个 meta-harness 对照,划出七个规范子系统,其中 Safety Controller 明确为『权限边界与有害行为拦截』。跨约 400 万行 Python/TS/Rust 的观察:没有任何 runtime 引入通用 agentic 框架,也没有一个用向量检索(全走 grep/glob/AST);SKILL.md 采纳率超过 MCP(9/11 对 8/11);ACP 见于 6 个系统并新增『harness hosting』角色。附 29 个反复出现的模式、18 条建议与一份 90 行的最小可用 harness 骨架。
编辑注 拿它当自查表用,尤其 Safety Controller 那一格——它给的现实是 harness 都靠手搓 async loop,没有通用框架可导入,治理能力只能自己长。90 行骨架适合用来核对你的 loop 缺了七层里的哪一层。
-
10/2 公开的 best-of-Agent-Harnesses:给 167 个 agent harness 打分、每周重算,附 harnesses.json/llms.txt 与一个 MCP server(recommend/pick_harness/compare),并标注弃坑项目与疑似刷星。它引用的关键数据来自一份 10 harness × 2 模型、同一批 250 个 SWE-bench Pro 留出任务各跑一次的评测:GLM-5.2 的 pass@1 随 harness 从 23.2%(goose)到 52.4%(mini_swe_agent);而 harness 排名跨模型几乎不迁移(秩相关约 −0.05)——厂商内置 harness 在小模型上掉位(Codex 2→9、Claude Code 3→7),模型无关的 harness 上位(crush 7→1、opencode 8→2、pi 9→4)。
编辑注 它把本周的位移量化了:同一模型换 harness 分数能翻倍,且排名不跨模型迁移——所以评测必须把 harness 与模型当一对钉版本,单报模型分没有意义。单作者榜单,当索引与线索读,不当结论;250 任务单次 rollout 的置信区间约 ±6pp,相邻名次区分不开。