2026 2026年10月23日 28 min · 8.1k chars by yxc023
GitHub 调研周报 2026-10-23
扫描窗口:2026-09-08T09:23:29Z → 2026-10-23T00:30:05Z(共 44.6 天)| 基准来源:上次报告 2026-10-20
2026-10-23 GitHub 调研周报
扫描窗口:2026-09-08T09:23:29Z → 2026-10-23T00:30:05Z(共 44.6 天)| 基准来源:上次报告 2026-10-20
注:
基准时间字段自 2026-09-08 起连续 12 期未变(按 spec 读取自reports/latest.md)。本期新增内容全部落在 2026-10-20T00:30:19Z 之后的约 3 天,下文「窗口期内」均指这一增量段。
本期速览
- anomalyco/opencode: v2.1 是一次「重写契约」的发布,不是小版本——
providerState/providerResultState/state三套名字统一为native,session.compacted事件被移除,Credential.Key.configuration迁到metadata,provider compaction 窗口从providerContext移到native.messages;官方声明「不需要数据库迁移,旧会话/凭证仍可读」;v2.1.0(#57260)同时带来 Windows x64/ARM64 持久 PTY、TUItodowrite任务列表、以及突破 Bun 5 分钟 fetch 死线的长时 TUI 命令。 - earendil-works/pi: v1.4.0 的主线是「摘要不再有固定输出上限」——compaction 与 branch summary 改用模型自身的 output limit,
generateSummary()的reserveTokens参数被忽略;同时新增 classifier 的图像输入(Jev / Clef / Clef Omni / Jev 1.14)、从models.jsonschema 生成的 Models Configuration 参考页、以及 codemode worker 排队而非直接失败。 - vectorize-io/hindsight: v1.1.0 把「谁调了哪个模型」变成可审计对象——
ModelCallExtension(#5936)把每次模型调用的输入与输出都交给扩展,decision model 开始参与 recall 排序(#5284);上一期报告标记的「embedding / rerank 从不计量」问题,本期由feat(llm-trace)(#5835)直接回应。 - 跨仓库的同一件事:模型目录生命周期被三家同时当作一等公民维护——opencode 隐藏 ChatGPT 账号不可用的 Codex 模型(#58180)、pi 移除上游下架模型与 ChatGPT 账号被拒的 Codex 模型(#11173)、ACP 在 v1.12.0 里「只把已公告下架的模型列为仍不可用」(
530015d)。 - 跨仓库的同一件事:compaction 的输出上限在同一天被两个 harness 改掉——pi v1.4.0「summaries without a fixed output cap」与 opencode #57564「compaction summaries use the same model output limit」,两者相隔不到 24 小时落地;上期报告把 compaction 列为三个仓库共同故障面,本期是第一次有实质修复。
- 成本可见性连续第二期被推动——pi 新增
totalFromProvider标志并改用 OpenRouter 上报的总成本(#11178 / #10286);hindsight 把 embedding、rerank、decision-model 调用写入请求历史(#5835)。 - opencode 的仓库活动强度首次明显高于其它仓库:3 天内 158 个 commit、97 个 PR 关闭;其中 10-21~10-22 出现一波由单一作者(rekram1-node)主导的 ~30 个
refactor(*)commit,集中清理重复类型转换与重复解码。同时 open issues 从 4491 掉到 3639(−852),新 issue(含 PR)流入 100。 - ACP 本期 23 个 commit 全部是 registry agent 列表更新,协议本体自 v1.12.0(2026-10-16)以来未发新 release;spec 侧唯一新增的实质讨论是 RFD 文档「Subagent Discovery, Delegation and Child Sessions」(#855,未合并)。
- pi-web 连续第 3 天无 release(最新 v0.12.2 / 10-15),本期 14 个 commit、18 个 PR 全部是修 bug 与移动端布局,open issues 从 28 涨到 45(+17)——界面侧仍在掉队。
各仓库详情
anomalyco/opencode
通用开源编码 agent,MIT,提供 TUI、桌面端、Web 与共享后台服务;2.x 走 npm
@opencode/cli,1.x 走opencode-ai| stars: 220209(上期 217795,+2414)| open issues: 3639(上期 4491,−852)| 默认分支: dev | 最近 push: 2026-10-23T00:28:41Z | 主页: https://opencode.ai
近 44.6 天 release 重点:
-
v2.1.0(2026-10-20,V2 CHANGELOG)— 破坏性 minor 版本,重写 SDK / HTTP 消息事件 / 插件契约
- Breaking:provider replay 数据统一读写
native(原state/providerState/resultState);tool part 合并为tool.native+tool.state;Credential.Key.configuration移除,setup 答案改放metadata;summary compaction 改用metadata.keepID引用被保留消息而非复制recent文本;provider compaction 窗口迁到native.messages;session.compacted事件从公共事件面移除 - 新增 Windows x64 / ARM64 持久 PTY(#56245)、
experimental.todo开关下的todowrite工具与 TUI 任务列表(#56947)、会话归档恢复与已保存权限可编辑(#53759 / #56659)、插件分页ctx.session.list(#56264) - TUI 的 plugin 命令 / shell 调用突破 Bun 5 分钟 fetch 死线(#55149)
- 完整 release notes: https://github.com/anomalyco/opencode/blob/dev/CHANGELOG.md
- Breaking:provider replay 数据统一读写
-
v2.1.2(2026-10-21)— 免费额度用尽时的可恢复体验
- TUI 与 Desktop 显示免费额度重置时间、恢复已提交的 prompt、提供升级或换模型入口(#57466 / #57467 / #57471)
- 新增
OPENCODE_DISABLE_FREE_MODELS隐藏零成本模型(#57478);新增experimental.location_idle_timeout控制空闲 location 卸载(#57476) - 安装器在缺
~/.zshrc/config.fish时自动创建并写入 PATH(#57348)
-
v2.1.3(2026-10-22)
- 升级内置 Bun 到 1.4.4(含 Brotli / TLS / HTTP/2 / HTTP/3 / WebSocket /
fetch安全修复,根证书更新到 NSS 3.131.1)(#58087) - Desktop 代码高亮从 Shiki 换成
@pierre/highlights,大文件与 diff 的高亮耗时与内存下降(#57937) - SDK 新增
client.voice.models()列出实验性语音模型与可用传输;已连接的 OpenCode Console workspace 可托管 GPT-Live 会话(#57194 / #57735)
- 升级内置 Bun 到 1.4.4(含 Brotli / TLS / HTTP/2 / HTTP/3 / WebSocket /
-
v1.19.4(GitHub Release,2026-10-22)— 1.x 线同步升级 Bun 到 1.4.4 与根证书更新
- 完整 release notes: https://github.com/anomalyco/opencode/releases/tag/v1.19.4
其他重要 commits / PRs(按重要性挑选 5–10 条):
acdcdb8破坏性重构(中文:v2.1 契约重写落地) —refactor: v2.1 minor breaking changes (#57260)(@rekram1-node, 2026-10-20)6a5973d压缩(中文:后台生成压缩摘要) —feat(core): add experimental background compaction summaries (#57444)(@Filip, 2026-10-22)889abb4修复(中文:MCP elicitation 表单从不出现) —fix(core): fix MCP elicitation forms never appearing (#58184)(@rekram1-node, 2026-10-22)4535146/0030a70/0b93f0b客户端 MCP(中文:新增 client-hosted MCP 工具的connectClientMcphelper、来自入站 client socket 的 MCP transport、并把open_terminal暴露给 client MCP,均标记 experimental) —feat(client): add connectClientMcp helper for client-hosted MCP tools (#57504)(@James Long, 2026-10-22)c41c3a0修复(中文:MCP 工具的 output schema 不是根对象时被拒) —fix(core): accept MCP tools whose output schema is not a root object (#58224)(@rekram1-node, 2026-10-22)cdf1c20修复(中文:隐藏 ChatGPT 账号会被拒绝的 Codex 模型) —fix(core): hide Codex models ChatGPT accounts reject (#58180)(@rekram1-node, 2026-10-22)09a1db3修复(中文:识别更多 context overflow 错误) —fix(ai): recognize more context overflow errors (#57982)(@rekram1-node, 2026-10-22)6709f56修复(中文:压缩摘要使用与普通轮次相同的输出上限) —fix(core): give compaction summaries the same output limit as normal turns (#57564)(@rekram1-node, 2026-10-21)80b8762修复(中文:跨 provider session 错误转发retryAfterMs) —fix(core): forward retryAfterMs across provider session errors (#57589)(@rekram1-node, 2026-10-21)3b593dd修复(中文:Code Mode 异步 job 逐个跑完,不再在语句中间交错丢写) —fix(codemode): run each job to completion (#54276)(@Rhys Sullivan, 2026-10-20)870ab9d修复(中文:配置的 providerbaseURL覆盖目录模型端点) —fix(core): let configured provider baseURL override catalog model endpoints (#57810)(@opencode-agent[bot], 2026-10-21)6102079/199ad46桌面诊断(中文:新增opencode debug heap-dump子命令,并把 app 与 server 的 heap snapshot 收进同一目录) —feat(cli): add debug heap-dump command (#58252)(@Luke Parker, 2026-10-22)5a36ee7目录刷新(中文:models.dev 目录刷新改为 server-wide 广播) —fix(core): broadcast models.dev catalog refreshes server-wide (#57148)(@Dax, 2026-10-20)
社区讨论 / 行业方向:
- OpenCode 2.1: One coding agent, many models(heise online,德文原版 + 英译): 主流科技媒体把 2.1 定性为「接口变更型发布」——整合方需要改字段,普通用户能感知的是 Windows 持久终端和 TUI 任务列表;文中同时把 OpenCode 与 Pi 1.0 并列比较。
- OpenCode v2.1 Just Broke Its Own SDK: 逐条拆解
native字段合并,并给出「你实际会感觉到的四件事」清单;结论与官方 changelog 一致。 - OpenCode 2.1 Breaking Changes (Oct 2026): SDK & Plugins(QCode): 强调四类改动(
native、session.compacted移除、configuration→metadata、Windows PTY)以及「无需 DB 迁移、旧会话与凭证仍可读」。 - OpenCode 2.1: Windows PTYs and No 5-Minute Cap(TL Dev Tech): 把 2.1 的价值归结为两个数字——214,000 stars 与 5 分钟硬上限被移除;并指出后台化运行时配前台超时本身是矛盾。
- OpenCode 2.1 恢复会话归档(SpringForAll 中文社区): 实测结论——归档确实可用,但
session.list默认仍包含已归档会话,需要显式带archived参数;并提示 2.x 走@opencode/cli、1.x 不会自动升级。 - OpenCode 2 Version Tracker(TurboAI): 逐版本整理 2.x 的环境变量与特性,并指出 2.x 的 git tag 不带 release notes,只能从 changelog 反推归属版本。
信号观察:
- 3 天 158 个 commit、97 个 PR 关闭,是本清单中强度最高的一周;其中约 30 个
refactor(*)由同一作者在 48 小时内完成,主题是「消除重复类型转换与重复解码」,是典型的类型系统收紧型重构而非功能开发。 - open issues −852 而新流入(含 PR)100 条以上,说明 10 月下旬存在一次大规模 issue 关闭/整理;同期 PR 里出现
closed(未合并)的删除性条目(内置 scout subagent 被移除、Claude Code 兼容相关文档清理)。 - 仓库的 GitHub Release(v1.19.x)与 V2 发布线(v2.1.x,npm
@opencode/cli)并行存在且版本号互不对应,V2 的 release notes 只在CHANGELOG.md;外部跟踪站普遍提到这一点。 - 商业化动作进入 SDK:
client.voice.models()/client.voice.session()与 OpenCode Console 托管 GPT-Live,是首个把「语音」写进公开 SDK 契约的版本。 - 模型目录同步从「定时刷新文件」升级为「server-wide 广播 + 按 provider 包归一化后构建变体」,配合
OPENCODE_DISABLE_FREE_MODELS一起说明目录正在变成运行时一等状态。
earendil-works/pi
AI agent 工具包:统一 LLM API、agent loop、TUI、编码 agent CLI;MIT,Pi 生态的核心 harness;本期新增 durable 存储与 Chord(SQLite 复制)子系统| stars: 117215(上期 116420,+795)| open issues: 369(上期 349,+20)| 默认分支: main | 最近 push: 2026-10-22T21:33:53Z | 主页: (仓库未填 homepage)
近 44.6 天 release 重点:
-
v1.4.0(2026-10-21)— 摘要不再有固定输出上限 + classifier 图像输入
- New Features:codemode
models.classify()支持images(TypeSafe Jev、Cloudflare Clef,覆盖typesafe/cloudflare-workers-ai/ OpenRouter);新增由models.jsonschema 生成的 Models Configuration 参考页;compaction 与 branch summary 改用模型自身的 output limit(generateSummary()不再使用reserveTokens);codemode 并行脚本与进程内 subagent 改为排队等待空闲 worker(PI_CODEMODE_MAX_WORKERS可调);新增 Rex 终端支持(OSC 8 超链接、truecolor、内联图片) - Changed:provider attribution header 改由 pi-ai 的 client identity 统一发出(扩展的
before_provider_headers不再看到 OpenRouter / NVIDIA NIM / OpenCode attribution header);GitHub Copilot 默认模型因gpt-5.4下架改为gpt-6.1-sol;NVIDIA 默认改为nvidia/nemotron-3.5-super-vl-120b-a12b;Xiaomi 默认改为mimo-v2.6-pro;Grok 4.3 / 4.5 开放xhighthinking level;ChatGPT Business 工作区用量上限错误不再重试,改为提示联系管理员 - Fixed:compaction / branch summary 因 reasoning 吃掉固定输出上限而报 “generation hit the token cap”(#9512 / #9075);
mcp.json与managed-install.json带 UTF-8 BOM 时解析失败;恢复会话时截断的 tool call 被丢弃但 tool result 保留,导致后续请求全被 provider 拒绝(#11227);grep工具因RIPGREP_CONFIG_PATH把正则搜索静默变成字面量匹配(#11203);whitespace-only tool output 让 OpenAI / Google 请求 400;自动重试因请求 ID 或字节数里的数字而误判为可重试(#10920);OpenAI Responses 在延迟加载工具后丢失 prompt cache(#10940);Cloudflare Workers AI classifier 定价纠正——Clef Flash $0.038 / Jev $0.042 每百万输入 token,Jev 并非免费 - 完整 release notes: https://github.com/earendil-works/pi/releases/tag/v1.4.0
- New Features:codemode
-
[Unreleased] —
pi update不再向npm ci传--min-release-age=0(锁文件已 pin 版本,该标志无效且会被安全扫描器拦截)(#11262)
其他重要 commits / PRs(按重要性挑选 5–10 条):
48c8f32Chord(中文:SQLite 独占操作与可复制连接包装器) —feat(chord): exclusive SQLite operations and a replicated connection wrapper(@Armin Ronacher, 2026-10-20)4759f09Chord(中文:SQLite 复制的 WAL reader、page 校验和与 segment 容器) —feat(chord): WAL reader, page checksums and segment container for SQLite replication(@Armin Ronacher, 2026-10-21)92ab536Durable(中文:commit 内的 adopt 回调、Chord 中的 watch 类型、显式 watch 退役) —feat: Durable storage adopt callback inside the commit, watch types in Chord, explicit watch retirement(@Mario Zechner, 2026-10-22)be14d97Durable(中文:以只读方式打开一个 Harness) —feat(durable): open a Harness read-only(@Armin Ronacher, 2026-10-22)16f5f0aDurable(中文:新增基于 IndexedDB 的浏览器存储IndexedDbStorage) —feat(durable): IndexedDbStorage, a browser storage backed by IndexedDB(@Mario Zechner, 2026-10-21)4c25119→cae9fd2Durable(中文:把存储复制为 commit log 的实现先合入后被回滚) —feat(durable): replicate storages as a commit log/Revert "feat(durable): replicate storages as a commit log"(@Armin Ronacher, 2026-10-21)adc5fa9契约(中文:把 client identity 与 provider attribution 下沉进 pi-ai) —feat(ai,agent,coding-agent): move client identity and provider attribution into pi-ai(@Mario Zechner, 2026-10-21)7c22a93/cae8d69成本(中文:usage cost 新增totalFromProvider标志,并改用 OpenRouter 上报的总成本) —feat(ai): add totalFromProvider flag to usage cost (#11178)/fix(ai): use OpenRouter-reported total cost (#10286)(@Vegard Stikbakke, 2026-10-22)e5fe977目录(中文:移除上游已下架的模型) —fix(ai): drop models retired upstream(@David Brailovsky, 2026-10-21)530015d目录(中文:只把已公告下架的模型列为仍不可用) —fix(ai): only list announced removals as still unavailable(@Armin Ronacher, 2026-10-20)fdce48e目录(中文:移除 ChatGPT 账号被拒的 Codex 模型) —fix(ai): drop Codex models rejected for ChatGPT accounts (#11173)(@Lucas Meijer, 2026-10-20)0272608恢复(中文:recovery 不再漏掉带截断 tool call 的 tool result) —fix(coding-agent): recovery omits tool results with the truncated tool call(@Petr Houška, 2026-10-21)3884756交互(中文:并发扩展对话框改为堆叠而不是互相替换) —fix(coding-agent): stack concurrent extension dialogs instead of replacing them(@Mario Zechner, 2026-10-20)bdd9f03扩展(中文:分支记录 loadout 之后才注册的扩展工具也能激活) —fix(coding-agent): activate extension tools registered after the branch recorded its loadout(@David Brailovsky, 2026-10-21)
社区讨论 / 行业方向:
- pi v1.4.0 adds classifier image input, sizes summaries to the model’s output limit(Piagent.fyi): 第三方把 v1.4.0 的五条 New Features 逐条复述,重点仍是「摘要按模型 output limit 定尺」这一条。
- Pi Coding Agent — Releases(pi.dev/news/releases): 官方 release 索引页,10-21 发布 1.4.0。
- AI CLI 工具社区动态日报 2026-10-22(中文): 记录 pi 生态的三条 P0 关注点——Anthropic 订阅卡死、Windows 终端异常、压缩逻辑失败,并指出子代理在 ask 权限下被拒写入时静默处理、无用户提示。
- Pi Agent Studio(VS Code 扩展)CHANGELOG: 生态侧扩展在 1.4.0 同一时间窗内改为「走 pi 内置 MCP,移除自带 pi-mcp 扩展与
mcp_tool_search/mcp_tool_call代理工具」——即扩展层跟随 harness 的 MCP 归属调整。 - agentboards.org/agent/pi: 第三方对比结论倾向「想要自持、可读的 harness 就选 pi;需要现成 MCP 生态就选 OpenCode」。
信号观察:
- 本期最大的结构性动作不在 release 里,而在 commit 里:Armin Ronacher 与 Mario Zechner 同时在推 durable 存储 + Chord(SQLite 复制)——含 WAL reader、page 校验和、segment 容器、只读 Harness、IndexedDB 浏览器存储。这是把「会话状态」从进程内文件推向可复制、可校验、可跨端的持久层,方向上与 ACP v2 的 replay ID 语义、opencode 的
native重放数据是同一类问题。 - 其中「把存储复制为 commit log」的实现合入当天即被 revert,说明复制语义尚未收敛——这是一个方向已确定、API 未定的子系统。
- 修复清单继续围绕同一批结构性问题:截断 tool call 与 tool result 不配对、空白 tool output 导致 provider 400、请求 ID 里的数字被误判为可重试码、延迟加载工具后 prompt cache 丢失——四者都属于「上游契约变化后本地路径未同步」,与上期报告归纳的「静默降级」形状一致,只是这次都有显式报错。
- 本期 61 个 commit 中约 1/3 与模型目录、归属 header、定价、usage 成本相关,pi 已把「模型目录 + 计费口径」当成需要自己维护的契约层,而不是上游 provider 目录的被动消费者。
- 第三方扩展(Pi Agent Studio)在同期跟随 harness 改 MCP 归属,说明 harness 侧的破坏性调整外溢成本由生态承担,而 Pi 的破坏性变更至今仍主要落在 patch 版本(v1.x)内。
agegr/pi-web
pi coding agent 的 Web UI| stars: 7694(上期 7516,+178)| open issues: 45(上期 28,+17)| 默认分支: main | 最近 push: 2026-10-20T16:53:57Z | 主页: (仓库未填 homepage)
近 44.6 天 release 重点:
窗口期内无 release。(最新为 v0.12.2,2026-10-15;此后连续 8 天未发版。)
其他重要 commits / PRs(按重要性挑选 5–10 条):
70b2947会话(中文:隐藏的页面释放 idle event stream) —fix(sessions): let hidden pages release idle event streams (#1328)(@Alex Yang, 2026-10-20)7c0778a搜索(中文:修复改名与自动生成标题后的会话搜索) —Fix session search for renamed and generated titles (#1318)(@Eric(Mingdong) Tan, 2026-10-20)0fcc497worktree(中文:把临时性的 git 失败排除出项目缓存) —fix(worktrees): keep transient git failures out of the project cache (#1339)(@dingxiaobo, 2026-10-20)3edded3模型(中文:删除自定义 provider 时忘记重命名追踪) —fix(models): forget rename tracking when a custom provider is deleted (#1342)(@Popcornnnnnnnn, 2026-10-20)f7f8f45模型(中文:保存时保持符号链接的models.json仍是链接) —fix(models): keep a symlinked models.json a link when saving (#1336)(@Porawit Poboonma, 2026-10-20)083fd11聊天(中文:工具调用的扁平参数以行形式展示) —feat(chat): show a tool call's flat arguments as rows (#1324)(@Brynne Taylor, 2026-10-20)408230c/628d6ac移动端(中文:手机上补丁单列显示,steer 与 follow-up 按钮独占一行) —fix(chat): show a patch in one column on a phone (#1325)/fix(chat): put the steer and follow-up buttons on their own row on a phone (#1330)(@Brynne Taylor / 沈青川, 2026-10-20)bc762a3聊天(中文:Ask here 引用时把光标保持在引用末尾) —fix(chat): keep the caret at the quote's end in Ask here (#1319) (#1320)(@jianzhangg, 2026-10-20)2cefb72Markdown(中文:页内锚点链接落到 sanitizer 前缀之后) —fix(markdown): land in-page fragment links after the sanitizer's prefix (#1323)(@Brynne Taylor, 2026-10-20)e533d9b快捷键(中文:Ctrl+Alt+N 按键码匹配,macOS 上可触发) —fix(shortcuts): match Ctrl+Alt+N by code so it fires on macOS (#1337)(@jianzhangg, 2026-10-20)
社区讨论 / 行业方向:
- pi-web Discussions(Q&A,2026-10-20): 最新一条讨论是「Comments on PRs/Issues in git awakening agents?」——社区在问 git 上的 PR / issue 评论能否唤醒 agent,目前没有答复。
- agegr/pi-web — GitHub stats & insights(GStars.dev): 记录 2026-03-28 的 3 stars 增长到 2026-10-22 的 7,601 stars,5.0K 里程碑在 08-23 达成。
- Pi.dev 包目录中的多个 pi-web 衍生实现: 同名的第三方 Web UI(
@jmfederico/pi-web10K/月、pi-web-ui22.1K/月、@gang-of-beads/pi-web5,981/月、@larose/pi-web929/月)说明 pi-web 已成为 pi 生态 Web 层的参考实现,但同时存在多个功能重叠的替代品。 - Pi Usage:在 pi-web 中查看模型余额和配额(Show and tell,2026-08-29): 社区自建的用量/配额展示是这类 UI 的高频需求点。
信号观察:
- 本期 14 个 commit、18 个 PR 全部集中在修 bug 与移动端适配,没有功能级提交;上一个 release(v0.12.2)之后 8 天未发版。
- open issues 从 28 增至 45(+17),是本清单中增幅最大的 issue 侧指标;同期新流入(含 PR)40 条——报告/需求在涨,发布节奏没跟上。
- 提交者结构变了:本期 14 个 commit 来自 9 个不同作者(此前高度集中于单一维护者),贡献面在扩散,但合入节奏由外部 PR 主导。
- 生态侧数据显示 pi-web 的角色正在被复制:npm 上至少 5 个不同作者的 pi-web 衍生包合计月下载量在 4 万量级,而本仓库 stars 增速(+178/期)低于 opencode(+2414)与 hindsight(+1085)。
vectorize-io/hindsight
Agent 长期记忆系统(Agent Memory That Learns),MIT,四类隔离记忆网络 + retain/recall/reflect/consolidate 循环;本期把「每次模型调用」变成可插拔、可审计的扩展点| stars: 52748(上期 51663,+1085)| open issues: 150(上期 157,−7)| 默认分支: main | 最近 push: 2026-10-22T22:06:13Z | 主页: https://hindsight.vectorize.io/
近 44.6 天 release 重点:
- v1.1.0(2026-10-21)— 可见性、可控性与一轮可靠性修复
- 可见性:逐文档的变更历史(per-document change history);observation scope 支持 tag glob 与 bank 默认值;知识页(knowledge page)可下载
- 可插拔:新增 LLM request extension —— 每次调用的 LLM 与凭证由服务端指定(#5578);新增
ModelCallExtension(#5936),把每次模型调用的输入与输出都交给扩展 - 新 provider:decision-model 支持 Cloudflare Clef 与 OpenAI Decisions API(#5613);LLM / embedding / reranker 新增 provider;决策模型配置统一为「一套默认 + 按操作覆盖」(#5607)
- 排序:recall 默认优先返回 observations(#5617);配置了 decision model 时由其参与排序(#5284);refactor 把 decision-model 排序压成单次 pass,并告知其问题日期(#5632)
- 可靠性:reflect 的「answer once」修复——free turn 用
answer_ready信号而不是写入被丢弃的答案(#5832);对拒绝 forcedtool_choice的模型也能工作(#5917);Anthropic 遇 refusal stop_reason 时快速失败而不是当 JSON 错误重试(#5616);retain 遇到非 JSON 回复(哪怕是 “no facts” 散文)即失败(#5615);LiteLLM 按 HTTP 状态码而非消息关键字重试(#5604);同一响应删除该 observation 时保留 UPDATE(#2550);“nothing found” 答案需要先 recall(#4567) - 其他:control plane 用自己的 User-Agent 标识 dataplane 请求(#5536);MCP call log 始终记录破坏性操作并写明工具名;OpenClaw 集成让 operator 可让 cron / heartbeat / subagent 会话使用记忆(#5915),并把 Hermes 的 Hindsight 工具挂到 agent 自己的 bank 上(#5635)
- 完整 release notes: https://github.com/vectorize-io/hindsight/releases/tag/v1.1.0
其他重要 commits / PRs(按重要性挑选 5–10 条):
d5e64ca扩展(中文:新增ModelCallExtension,每次模型调用都带其输入与输出) —feat(extensions): ModelCallExtension, every model call with its input and output (#5936)(@Nicolò Boschi, 2026-10-22)e05b39f可观测性(中文:embedding、rerank 与 decision-model 调用被记入请求历史) —feat(llm-trace): record embedding, rerank and decision-model calls in the request history (#5835)(@Nicolò Boschi, 2026-10-20)10f2783调度(中文:实时请求可以插队到后台任务之前占用 LLM slot) —feat(llm): let live requests jump ahead of background jobs for LLM slots (#5928)(@Nicolò Boschi, 2026-10-21)4db437ereflect(中文:answer once——free turn 发出answer_ready而不是写入被丢弃的答案) —fix(reflect): answer once — free turns signal answer_ready instead of writing a discarded answer (#5832) (#5916)(@Nicolò Boschi, 2026-10-21)3fe138f记忆列表(中文:默认排序改为全序,offset 分页不再重叠) —fix(memories): make the memory list's default order total so offset pages don't overlap (#5934)(@Chris Bartholomew, 2026-10-21)c8c7b99/b194c79OpenClaw(中文:把 Hermes 的 Hindsight 工具挂到 agent 自己的 bank;让 cron / heartbeat / subagent 会话可选使用记忆) —feat(openclaw): offer Hermes's Hindsight tools on the agent's own bank (#5635) (#5965)/feat(openclaw): let operators opt cron, heartbeat and subagent sessions into memory (#5915) (#5963)(@Nicolò Boschi, 2026-10-22)3488382分页(中文:整集读取翻页到末尾;子集导出只读其文档) —fix(memories): page whole-set reads to the end; subset export reads only its documents (#5918)(@Nicolò Boschi, 2026-10-21)6572446审计(中文:始终记录破坏性操作并在 MCP call log 中写明工具名) —fix(audit): always log destructive operations and name the tool in MCP call logs (#5961)(@Nicolò Boschi, 2026-10-22)517192d/1d5de32生命周期(中文:删除 bank 时一并删除其维护队列行与 LLM 请求历史) —fix(banks): delete a bank's maintenance queue rows with it/fix(banks): delete a bank's LLM request history with the bank(@Nicolò Boschi, 2026-10-22)626cdbe/1dc21fb子包(中文:Obsidian 插件 v0.4.0、OpenClaw 插件 v1.1.0) —release(obsidian): v0.4.0/release(openclaw): v1.1.0(@Nicolò Boschi, 2026-10-22)b8b7261性能(中文:cohere reranker 限制在途请求数) —feat(reranker): cap in-flight requests for the cohere reranker (#5831)(@Nicolò Boschi, 2026-10-20)87a305e时间(中文:9999-12-31这类年份 1 的日期不再破坏时序 recall 与 consolidation) —fix(recall): a year-1/9999 date no longer breaks temporal recall and consolidation (#5820) (#5828)(@Nicolò Boschi, 2026-10-20)
社区讨论 / 行业方向:
- What’s new in Hindsight 1.1.0(官方博客,2026-10-21): 官方把 1.1.0 概括为「逐文档变更历史 + observation scope 的 tag glob 与 bank 默认 + 新 LLM / embedding / reranker provider + 知识页下载 + 一长串可靠性修复」,并说明「1.1.0 的大部分是 retain、consolidation、reflect 与 worker 上的可靠性工作」。
- Announcements & Releases 标签页(Hindsight 博客): 10-21 的 1.1.0 条目是当前发布线主条目;同栏还有 10-13 的 Memlake 发布(对象存储原生引擎,宣称 100M memories / <100ms p99)。
- Introducing Hindsight Memlake: serving 100M Memories at <100ms p99 on object storage: 官方博客中定位为「对象存储原生引擎」,强调高吞吐写入与低单位成本——与 v1.1.0 的「可靠性一轮」一起,构成「规模化 + 稳定化」两条并行主线。
- Mem0 vs Hindsight: Agent Memory Layers Compared: 第三方对比认为 Hindsight「每次记忆做更多事」(链接实体与时间、把事实合并成 observations),成本也更高。
- vectorize-io/hindsight — 3.8 · Steady(gitnova.dev): 记录 52,559 stars,并复述其 LongMemEval 的 SOTA 声明与「服务端或可嵌入」两种部署形态。
- Hindsight 記憶驗收怎麼做(阿爾法實驗室,繁中): 中文侧的验收方法论,把「查得到旧资料」与「新资料可靠写入」拆成四张表分别验收;其中一条批评是「每次整合都要重新计费」。
信号观察:
- 本期 123 个 commit、96 个 PR 合并,且几乎全部由 Nicolò Boschi 提交;约 60 个 commit 是各集成目录的
chore(deps): bump certifi / pillow / vite / uv批量依赖升级——功能性开发被依赖维护噪声掩盖,这是延续上期的结构。 - 上期报告标记的「embedding / rerank 从不计量,hosted 花费在 API 里不可见」(issue #5771),本期由
feat(llm-trace)(#5835)直接补上:embedding、rerank 与 decision-model 调用现在都进请求历史。这是本期唯一一条对上期结论的正面回应。 - 决策模型(decision model)在本期从「可选配置」升级为「排序主路径之一」:recall 排序、consolidation 心智模型刷新、reflect 反思都受其影响,同时新增
ModelCallExtension让调用方能逐次介入。记忆系统的可调节性在从「换模型」转向「按调用拦截」。 - 插件面扩张最快:本期发出 Obsidian 插件 v0.4.0 与 OpenClaw 插件 v1.1.0,加上 OpenClaw 让 cron / heartbeat / subagent 会话可选接入记忆——「记忆的入口」正从对话扩展到调度与子代理。
- star 增速回到 +1085(上期 +432),与上期「1.0 GA 后负载回流」的判断方向一致;open issues 反而下降 7 条。
- 外部叙事仍在两极:官方博客主打 100M memories 的规模叙事,第三方文章则继续质疑 benchmark 自证与每次整合的重复计费——规模叙事与成本叙事同时在扩散。
agentclientprotocol/agent-client-protocol
连接任意编辑器与任意 agent 的协议(LSP 之于编辑器之于编程 agent)| stars: 4484(上期 4468,+16)| open issues: 35(上期 40,−5)| 默认分支: main | 最近 push: 2026-10-22T22:23:51Z | 主页: https://agentclientprotocol.com
近 44.6 天 release 重点:
- v1.12.0(Rust Crate,2026-10-16)+ Schema v1.26.0 + Schema v2.0.0-alpha.9(同批发布)
- (unstable-v2) 按顶层 key 幂等 upsert
_meta(#2372);定义 foreground 状态转换(#2411);澄清 replay ID 与不支持的 cursor(#2398);对齐 prompt 取消语义(#2390 / #2385);澄清 prompt 插入契约(#2392);澄清 fork 出来的会话是 active 的(#2359) - (unstable) 新增 client system prompt schema(#2361);移除 next edit suggestions(#2266)
- (schema) 对齐 v2 实验特性兼容性(#2397);列出 v2 在
AgentCapabilities.session上的完整 session baseline(#2358);v2 foreground work 可在无 prompt 时启动(#2357);规范git_patch如何写路径(#2362) - (rust) content block 实现
Eq(#2352) - 完整 release notes: https://github.com/agentclientprotocol/agent-client-protocol/releases/tag/v1.12.0
- (unstable-v2) 按顶层 key 幂等 upsert
(本期窗口内未发布新 release;v1.12.0 / Schema v1.26.0 / v2.0.0-alpha.9 均在 2026-10-16 之后无后续。)
其他重要 commits / PRs(按重要性挑选 5–10 条):
87da85c/f00b64e/6f29ef9等 15 个 commit 全部为 registry 同步 —docs: update registry agents (#2461 / #2460 / #2459 …)(@acp-release-bot[bot], 2026-10-20 ~ 10-22)6a2ca32文档(中文:agents 列表新增 Octomind) —docs: add Octomind to the agents list (#2420)(@Don Karter, 2026-10-22)f97dcc9文档(中文:新增 AHP-ACP Gateway 连接器) —docs: add AHP-ACP Gateway connector (#2415)(@Jun Han, 2026-10-22)589fc2a文档(中文:clients 列表新增 Eleven) —docs: add Eleven to the clients list (#2423)(@Chiziaruhoma Ogbon, 2026-10-22)90dfcc1文档(中文:acpantenna 加入 mobile clients 与 messaging) —docs: add acpantenna to mobile clients and messaging (#2440)(@Filipe Boldo, 2026-10-22)ee9e70c/2fa002a/65f0ae4文档(中文:agents 列表新增 Volt、ZenCODE、Inferpal) —docs: add Volt to Editors and IDEs (#2455)/docs: add ZenCODE to the agents list (#2451)/docs: add Inferpal to the agents list (#2442)(@arialus / Gerardo Grisolini / Damien Houssard, 2026-10-22)d971c3a依赖(中文:minor 组 9 个依赖升级) —chore(deps): bump the minor group with 9 updates (#2437)(@dependabot[bot], 2026-10-22)#855RFD(中文:子代理发现、委派与子会话) —docs(RFD): Subagent Discovery, Delegation and Child Sesssions(@egor-baranov, 已关闭未合并,2026-10-22)
社区讨论 / 行业方向:
- ACP vs MCP(Maksim Danilchenko): 把 ACP 定位为「AI 编码 agent 的 LSP」——一套 JSON-RPC 2.0 标准让任何合规 agent 跑在任何合规编辑器里;文中记录官方 registry 截至 2026 年 10 月列出 42 个 agent。
- Which Coding Agents Support ACP?(AgentRQ): 逐个列出 registry id 与启动命令——Claude Code、Codex CLI、Gemini CLI、Cursor、OpenCode、GitHub Copilot CLI 等的接入方式,其中 OpenCode 为原生
opencode acp。 - agentclientprotocol/registry(registry 仓库): registry 以 JSON 索引维护实现 ACP 的 agent,由每小时 cron 刷新——这解释了本期 23 个 commit 全是 registry 更新的原因。
- agentclientprotocol/registry 镜像页: 逐条记录 agent 版本更新(如 cline 3.0.73、codex-acp preview 2.2.3-preview.23,10-21),与本期 registry bot 提交一一对应。
信号观察:
- 本期 23 个 commit 中 23 个都是 registry agent 列表同步,协议本体(schema / Rust crate / 规范文本)零改动——spec 与生态采用度正在分离:registry 以小时级节奏刷新,而协议两周才动一次。
- 新增 registry 条目以「网关 / 代理」为主(AHP-ACP Gateway connector)与移动端为主(acpantenna 进入 mobile clients),说明 ACP 的推广路径正从「官方 agent 接入编辑器」转向「第三方桥接」。
- 协议层面唯一有实质设计的开放项是 RFD「Subagent Discovery, Delegation and Child Sessions」(#855),但它以关闭未合并的状态停留在窗口内——子代理委派尚未进入规范,这与 pi 本期大举推进 durable / Chord 的方向形成对照。
- 增长曲线明显平缓:stars +16/期、open issues −5、新流入(含 PR)仅 5 条,是本清单中增速最低、生态最稳定的仓库。
yxc023/yxc023.github.io
个人博客站(Astro),同时是本报告的发布目标仓库| stars: 1 | open issues: 27 | 默认分支: master | 最近 push: 2026-10-20T00:33:16Z | 主页: (仓库未填 homepage)
近 44.6 天 release 重点:
窗口期内无 release。
其他重要 commits / PRs:
- 本仓库的提交来自报告同步脚本,非人工内容。
信号观察:
- stars: 1 | open issues: 27 —— 27 个 issue 是历次自动同步留下的,不是待办信号。
跨项目观察
-
「把 provider 私有的东西收进一个统一字段」在本周成为三个仓库的主线动作。 opencode v2.1 把散落在
state/providerState/providerResultState的重放数据统一成native,并把 compaction 窗口挪到native.messages、保留消息引用挪到metadata.keepID;ACP v1.12.0 同时在澄清「replay IDs 和不支持的 cursor」;pi 本期把 client identity 与 provider attribution 一起下沉进 pi-ai。三个仓库都在解决同一件事:跨 provider / 跨实现的状态形状不一致,但选择了三种不同的收敛方式(字段合并 / 规范澄清 / 模块下沉)。 -
compaction 从「共同故障面」第一次变成「共同修复面」。 上期报告把 compaction 列为三个仓库的共同故障面;本期 pi v1.4.0 让 summary 使用模型自身的 output limit(
reserveTokens只决定何时触发压缩),opencode #57564 让压缩摘要与普通轮次共享输出上限,两者在 24 小时内落地。根因是同一个:上游把 reasoning 吃掉的预算算进固定上限,而本地又自己加了一层固定上限。 -
模型目录的生命周期正式从「配置项」升级为「每个 harness 都要自己维护的契约层」。 opencode 隐藏 ChatGPT 账号会被拒的 Codex 模型(#58180)并把 models.dev 刷新做成 server-wide 广播;pi 移除上游下架模型(
e5fe977)、只把已公告下架的模型列为不可用(530015d)、移除 ChatGPT 账号被拒的 Codex 模型(#11173);ACP 不涉及模型但把 spec 与 registry 解耦。三个仓库在同一周内各自处理了「某个模型突然不可用」这一类问题,方式都是本地维护目录而不是依赖上游声明。 -
成本与用量可见性连续第二期被推动,且方向从「计费」转向「按调用审计」。 pi 新增
totalFromProvider并采用 OpenRouter 上报的总成本(#11178 / #10286);hindsight 把 embedding、rerank、decision-model 调用写入请求历史(#5835),直接回应上期报告标记的 issue #5771。共同形态:不再满足于「模型调用有日志」,而是要让每一次非主链路的调用(embedding / rerank / decision)都能被追到账上。 -
「harness 做深、界面掉队」的分化继续,但本期出现了反向的例外。 opencode 同期在做 Windows 持久 PTY、桌面端高亮引擎替换(Shiki →
@pierre/highlights)、GPT-Live 语音托管;pi-web 连续 8 天无 release、open issues +17、新流入 40 条全是 bug 与移动端布局,18 个 PR 里 15 个来自外部贡献者。资源仍集中在 harness 与桌面端,Web 界面侧靠社区 PR 维持。 -
协议层与实现层的节奏差被拉大。 ACP 本期 23 个 commit 全部是 registry 条目更新,协议本体零改动,唯一有实质设计的子代理委派 RFD 以关闭未合并状态停留在窗口内;而 pi 本期在仓库内部长出了 durable 存储与 Chord(SQLite 复制,含 WAL reader、page 校验和、segment 容器、只读 Harness、IndexedDB 后端),其中「存储复制为 commit log」合入当天即被 revert。规范层在等共识,实现层在抢跑——这会让下一轮协议对齐的成本继续上升。
元信息
- 报告生成时间: 2026-10-23T00:30:05Z
- 基准时间: 2026-09-08T09:23:29Z(按 spec 读取自上次报告
reports/latest.md的基准时间:字段,自 2026-09-08 起连续 12 期未变) - 扫描窗口: 2026-09-08T09:23:29Z → 2026-10-23T00:30:05Z(约 44.6 天);本期新增内容全部落在 2026-10-20T00:30:19Z 之后的约 3 天
- 数据源: GitHub API(gh CLI)+ mmx web search
- API rate limit 剩余: 4975 / 5000(core,抓取完成后查询)
- 抓取结果: 6 / 6 仓库 × 4 endpoint 全部成功;opencode / hindsight / pi 的 commits 列表接口单页 100 条为截断,窗口增量按分页统计(opencode 158、hindsight 123、pi 61、ACP 23、pi-web 14);opencode V2 release notes 取自默认分支
CHANGELOG.md(v2.1.3,2026-10-22),其 GitHub Release 仍为 v1.19.x,两条发布线并存;hindsight 仓库无根级 CHANGELOG.md,release notes 取自 GitHub Release v1.1.0 正文与官方博客;ACP 的 Schema v1.26.0 / v2.0.0-alpha.9 为同批发布;coding-agents v0.8.2、Obsidian 插件 v0.4.0、OpenClaw 插件 v1.1.0 为 hindsight 仓库内子包 release,非 GitHub Release 对象
评论