Agent 工程对照
← 返回周报

2026-W36

openJiuwen 让图谱从执行证据里长出来——但只认强证据

本周落点

本周判断

openJiuwen 这周的 symphony 是四家里最大的单笔改动:在 harness/rails/evolution/ 下新增了一整套图谱演化机制,仅新文件就超过 4300 行,配套测试同步落地。它要解决的问题是自我改进领域里最容易做砸的那个——让系统从自己的运行结果里学到东西,同时不让噪声把已有的正确知识污染掉。

展开完整综述

它的做法有两点值得记下来。第一,静态图谱仍然是能力的事实源,运行观测以独立版本叠加给 Planner,不改写 graph.json;证据存储是 append-only,observation 与 merged revision 都不可变。也就是说「学到的东西」和「已知的事实」被放在两层,随时可以把上层摘掉。第二,也是更少见的一点:它对证据分级——只有强验证成功、或能明确归因到 orchestration 的边级失败,才允许参与 runtime_adjustment;弱证据、外部错误和被截断的 Trace 一律只留审计,不改变行为。多数自我改进机制只区分「成功/失败」,openJiuwen 在此之上多问了一句「这次失败能不能归因到我自己」,答不上来就不学。

位置同样是信息:这套东西挂在 Rails 扩展层而非内核,dynamic_graph_enabled=false 时退化为纯静态规划,动态图出异常时未固定版本的规划自动回退静态图。openJiuwen 一贯的「稳定内核 + Rails 挂载点」路线在这里是自洽的——自我演化能力被造成了一个可以整体关掉的 Rail。

Pi 这周做了一件小而明确的事:内置工具的严格采样(strict sampling)从实验开关转为默认。bash / edit / read / write 四个工具各自去掉了实验位,experimental.ts 相应减行,对应的实验测试被替换为内置测试。约束解码用在工具调用上,在 Pi 这里已经过了实验期。

Codex 本周发了 18 个版本,主线是把托管 worktree 变成日常工具:/worktree 加上可搜索的浏览界面,能列出仓库配置池里的检出、显示归属元数据、恢复对应线程或复制工作目录;同时把 worktree 切换拆成多个阶段、各自在新的事件循环轮次上跑,避免整个切换卡在一次同步构造里。另一条是 MCP 的用户验证:协议侧的请求校验、证明材料的长度与编码检查、取消竞态与容量上限全部实现了,但在 Codex 里刻意保持未启用——收到验证请求直接取消、不打扰用户,等类型化的 app-server 与 UI 路径就绪再开。先把协议吃下、UI 留白,是个值得注意的节奏。

DeepSeek Harness 这周值得说的是一个反常现象:六条显著提交全是 CI 与测试隔离——按 runner 隔离 Playwright 缓存与安装锁、隔离 pnpm 索引、把沙箱快照挪出临时授权目录、隔离录制的 spill 与沙箱夹具。与此同时它发了 5 个版本,从 0.1.2-alpha.3 一路到 rc.1,又立刻开出 0.1.3-alpha.1。产品面几乎没有可见改动,力气全花在让测试在并行 runner 上不互相踩踏。这通常意味着项目规模到了单机测试假设开始失效的阶段。

影响到的格子(5 条说明)
采集到的提交与发布
openJiuwen94 提交 · 0 release · 428 ★

值得注意的提交

  • 3a53e0cfeat(symphony): add graph experience accumulation
  • 08b7795[mirror] openJiuwen-ai/agent-core#1130: fix(context_evolver): add level 3 (team collaboration) in l3.py
  • 9294c2cfeat(symphony): 支持基于执行证据的动态图谱更新
  • 93e9ddffix(trace): Fix OTel trace breakage, missing component.name and the issue where memory variable inputs is None
  • 7824332[mirror] openJiuwen-ai/agent-core#28: fix(async): eliminate event‑loop blocking caused by time.sleep and synchronou...
  • 5930a8cfix(harness): route 202/499 and JS-shell pages through jina reader
Codex100+ 提交 · 18 release · 123,110 ★

值得注意的提交

  • a51da75Isolate Bazel build commit metadata from Rust compilation inputs (#43304)
  • 52e12e0Defer managed worktree transitions to fresh TUI loop iterations (#43298)
  • 3cd6004Add capability-gated MCP user-verification handling (#43289)
  • b053ef9Add a managed worktree browser to the TUI (#43286)
  • 8d7cc24Make Bazel binary stamping opt-in (#43282)
  • 8283bc5Move npm package staging into a separate release workflow job (#43281)
DeepSeek Harness100+ 提交 · 5 release · 219,173 ★

值得注意的提交

  • cc69d5ffix(ci): isolate Playwright cache and installation locks per runner
  • 4158a81test(snapshot): cover cleanup when spill allocation fails
  • 362ee79fix(test): isolate recorded spill and sandbox fixture storage
  • f50dce3fix(ci): isolate persistent pnpm indexes on runner data volumes
  • 350dcadfix(test): allocate sandbox snapshot outside temp grants on runner volume
  • e61d9fcfix(ci): isolate npm caches and synchronize ACP snapshot completion
Pi100+ 提交 · 2 release · 103,836 ★

当周 release

值得注意的提交

  • 9767ba2fix(coding-agent): select Radius models after catalog discovery
  • fcff255feat(coding-agent): prefer strict sampling for built-in tools by default
  • caf6dfefeat(tui): Simplify clipboard handling (#9163)
  • da840b6Add [Unreleased] section for next cycle
  • d981de1Release v0.85.1
  • fbc87d2feat(ai): refresh generated image model catalog

每家最多列 6 条代表性提交,已去掉合并、版本号与纯文档提交。

观察名单

观察名单

这几个项目出现在周报里,但还不在对照矩阵中。

Claude Agent SDKAnthropic
15 提交 · 8,076 ★

Anthropic 把 Claude Code 的 Harness 能力下放为可编程 SDK,是「Harness 作为库」这条路线的参照系。

最近一次 release(不限当周):v0.2.152(2026-09-02)

同族的 anthropics/claude-agent-sdk-typescript 只有 examples/scripts/CHANGELOG,属发布仓,不单独采集。