2026 2026年10月2日 34 min · 9.2k chars by yxc023

GitHub 调研周报 2026-10-02

扫描窗口:2026-09-08T09:23:29Z → 2026-10-02T00:30:51Z(约 23.6 天)| 基准来源:上次报告 2026-10-01

2026-10-02 GitHub 调研周报

扫描窗口:2026-09-08T09:23:29Z → 2026-10-02T00:30:51Z(约 23.6 天)| 基准来源:上次报告 2026-10-01

仓库范围:config/repos.yaml 中 6 个项目。本期最大事件是 earendil-works/pi v1.0.0 正式 stable(2026-10-01),从 0.85.x 一路迭代到 1.0.0,durable / codemode + image model / Radius / Anthropic 鉴权扩面 一并落地。其余围绕这条主线收敛:hindsight 与 Hermes 解耦成独立 plugin(代码从 Hermes core 移到 Hindsight 仓库),ACP v1.10.x 把 subagent / MCP-over-ACP request-scoped / available_commands 收口(schema-v2.0.0-alpha.7),pi-web 在 pi v0.99.x 的 MCP / codemode 之上把 web 侧 host 重构为 per-session MCP host,opencode 1.18.34 集中在 macOS 27+ 签名与 session identity headers。

本期速览

  • earendil-works/pi:v1.0.0 stable(2026-10-01)—— TUI 改为 fullscreen 默认;codemode prompt 缩减约 40%(GPT-5.6 从 ~5,300 → ~3,800 token),错误信息直接提示恢复动作;models.generateImages() 进 codemode(OpenRouter 等图像模型走 session 凭据);/login 新增 Radius(同时配 MCP server 一条龙)与 Anthropic copy-code login(无头浏览器);MCP OAuth 加 RFC 9207 iss 校验、per-server 凭据、step-up 保留 granted scopes;quietStartup: "header"。durable 实验线落”vacation planner demo”、pi-durable 端口、async SQLite(#10232)、实验 harness 从 pi-agent-core 移除。
  • vectorize-io/hindsight:v0.10.2(2026-09-29)bank alias + 改名 + 跨实例 clone 让 bank 不再是 one-way door;per-scope consolidation strategies 同一 bank 内 user / team / company 各自独立合并规则;mental model 各自独立的 refresh budget;reflect 看得到文档 metadata 做来源排序;CUDA for ONNX embeddings;streamed export 让大 bank 不再 OOM。Hindsight 从 Hermes core 拆出成为独立 plugin(PR #4879 博客 “What Changes Now That Hindsight Is a Hermes Plugin”,迁移自动,pin bump 节奏接管)。
  • agentclientprotocol/agent-client-protocol:v1.10.0 + schema-v1.24.0 + schema-v2.0.0-alpha.7(2026-09-30)+ v1.10.2(2026-10-01)—— unstable-v2 首次把 available_commands 写入 session 响应(#2259);unstable 首次给出 subagents 的 RFD + schema(PR #1992 by @Brigitov Vadim);MCP-over-ACP 改为 request-scoped(#2223);v1.10.1 / alpha.7 修 MCP response extensions;NES RFD 挪到 “To be removed”;文档新增 ACP TCK、preview session updates draft 展开、TermFold(bundled env 改 Debian)、Reemoat / OctoShell / Hjarni 等客户端提案。
  • agegr/pi-web:9 月 30–10 月 1 日 连续 11 个 MCP / codemode 相关 commit(@Alex Yang 集中提交)—— feat(mcp): connect mcp.json servers through a per-session MCP host、feat(mcp): block MCP tools without readOnlyHint in read-only sessions、feat(mcp): load the codemode, tool-search and mcp built-ins in normal sessions、feat(chat): show a codemode call as its script and the tool calls it made、feat(chat): label MCP calls server/tool;并行把上游 pi 依赖升到 v0.99.1。ADR 0006 P1 落地。
  • anomalyco/opencode:v1.18.34(2026-09-30)小版本——给 model 请求加 namespaced session + parent-session identity headers(#52370),macOS 本地编译产物 ad-hoc 重签以兼容 macOS 27+,CLI 用 Developer ID 签名。Console 持续把 Go / Go Plus 套餐整合到一起。feat(app): show last turn changes in review panel(#51640,@nexxeln,2026-10-01 合)—— review panel 现在显示上一轮的 diff。
  • 跨项目共有信号:① “stable 1.0” 节点:earendil-works/pi v1.0.0 与 ACP schema-v2 alpha 双双达到分水岭,但 pi 的 v1.0 是真 stable,ACP 的 v2 仍是 alpha;② “agent runtime 持久化” 一致收敛:pi-durable(async SQLite + vacation planner demo)、hindsight(bank alias / clone / rename)、opencode(namespaced session identity headers)三方各自往”agent 可挂起 / 可重建”方向走;③ Radius 模型路由 / MCP 一体化 已进入 v1.0:pi v1.0.0 /login 顶部直接显示 Sign in with Radius 并一键配 MCP server;④ durable 范式 与 system theme + quiet startup 一起被认为是 v1.0 用户的”开箱即用”体验;⑤ macOS 27+ 公证链条从 opencode 蔓延到所有 agent CLI 二进制(pi 也在 Apple Terminal 修 logo 渲染)。

各仓库详情

anomalyco/opencode

开源 AI 编程 agent,CLI / TUI / Desktop / Web 四种形态,model-agnostic(75+ provider)。| stars: 211,337 | open issues: 6,138 | 默认分支: dev | 最近 push: 2026-10-02 | 主页: https://opencode.ai

近 N 周 release 重点:

  • v1.18.34(2026-09-30)— macOS 27+ 签名 / session headers 同步修

    • 给 model 请求附 namespaced session + parent-session identity headers(#52370)。
    • macOS 本地编译产物 ad-hoc 重新签名,以兼容 macOS 27+(#52183 by @ryangamerdev)。
    • macOS CLI 发布版用 Developer ID 签名,缓解 Gatekeeper / 公证链条(f66b86c)。
    • 完整 release notes: https://github.com/anomalyco/opencode/releases/tag/v1.18.34
  • v1.18.33(2026-09-28)— provider / Gemini / Cloudflare Gateway / debug 修复集

    • Cloudflare AI Gateway 模型遵循 provider 超时(#51549 by @danlapid);MCP browser 启动失败立即回报;debug 输出脱敏凭证与敏感 header;Gemini thinking 默认与 effort 对齐(#50841 by @markmcd);GPT 6.1 Sol cache pricing 文档修正(#52176 by @dc85)。
    • 完整 release notes: https://github.com/anomalyco/opencode/releases/tag/v1.18.33
  • v1.18.32(2026-09-21)— Bedrock / Zen 模型支持

  • v1.18.31(2026-09-14)— ACP 会话边界恢复

  • v1.18.30(2026-09-09)— GPT-6 / Azure / OpenAI SDK 兼容性

    • GPT-6 模型新增 Astra system prompt;Azure / OpenAI provider SDK 升到兼容版本;Bedrock DeepSeek 保留 ARN 形态 model id;GitLab GPT / Claude 模型支持 reasoning effort variants(#47306 by @far-ouq)。
    • 完整 release notes: https://github.com/anomalyco/opencode/releases/tag/v1.18.30

其他重要 commits / PRs(窗口期内节选):

  • a79ecfe Stats — feat(stats): add canonical redirects and agent-readable data formats (@Adam, 2026-10-01)
  • dc31828 Stats — chore(stats): remove s3 lake ingestion (#52572) (@Adam, 2026-10-01)
  • aa481b8 Stats — fix(stats): fix data page canonicals, 404s, and sitemap coverage (#52525) (@Adam, 2026-10-01)
  • 8bb2ccf Stats — chore(stats): retire the S3 data lake (#52514) (@Adam, 2026-10-01)
  • 28e13d9 CI — fix(ci): extend issue and PR compliance grace to 72 hours (#52415) (@opencode-agent[bot], 2026-10-01)
  • 0112a92 Triage — chore(triage): add vimtor to inference issue owners (#52425) (@vprdev, 2026-10-01)
  • 82ea3a3 Releases — sync release versions for v1.18.34 (@opencode, 2026-09-30)
  • e9f8a21 Core — fix(opencode): add namespaced session identity headers (#52370) (@Aiden Cline, 2026-09-30)
  • 9b4882d 构建 — fix(opencode): ad-hoc re-sign darwin binaries after local compile (#52183) (@Ryan, 2026-09-30)
  • 97a86b7 TUI — fix(tui): use path.sep for plugin name extraction in /status dialog (#52328) (@Metal Heart, 2026-09-30)
  • 2fa3363 Docs — docs(web): correct GPT 6.1 Sol cache pricing (#52176) (@Daniel Chen, 2026-09-29)
  • f66b86c CI — fix(ci): sign macOS CLI with Developer ID (@Dax Raad, 2026-09-29)
  • #52598 Core — fix(ai): isolate Groq and Vertex metadata keys (@rekram1-node, merged 2026-10-02)
  • #51640 App — feat(app): show last turn changes in review panel (@nexxeln, merged 2026-10-01)
  • #50841 AI — fix(gemini): switch thinking default logic (@markmcd, merged)
  • #51549 Core — fix(opencode): apply provider timeouts to Cloudflare AI Gateway models (@danlapid, merged)
  • #48225 ACP — fix(acp): restore session options and reasoning boundaries (@JacobNWolf, merged)

社区讨论 / 行业方向:

信号观察:

  • macOS 签名链条从 CI 单点(Developer ID 签名)扩展到”本地编译也 ad-hoc 重签”,说明 macOS 27+ 的签名 / 公证政策对所有二进制产物都开始收口——同期 pi v1.0.0 也修”Apple Terminal logo 留缝”,印证这条边界对所有 TUI CLI 都开始生效。
  • Stats 模块在做一次结构性退役:retire the S3 data lake + add canonical redirects and agent-readable data formats 同时发生,统计数据的承载形式从 S3 数据湖迁到 canonical URL + sitemap,是为”agent-readable web” 做的底盘。
  • Session identity headers 把”session 与 parent-session”两个身份写进 model 请求头(#52370),这对 multi-agent / sub-agent 场景下计费 / 路由归属越来越关键;ACP 同期把 subagent 写进 unstable schema,两侧都把”session 父子关系”放在关键位置。
  • review panel 上”上一轮 diff”(#51640)是一个易被忽视但影响日常使用的改动:之前需要切回 message history 才能看到上一轮文件变更,现在常驻可见——把 review 流程从”对话流”外拉回到”diff 视图”内。

earendil-works/pi

AI agent toolkit:统一 LLM API、agent loop、TUI、coding agent CLI(13+ 包)。| stars: 111,215 | open issues: 249 | 默认分支: main | 最近 push: 2026-10-01 | 主页: (无)

近 N 周 release 重点:

  • v1.0.0(2026-10-01)— 首个 stable 版本

    • TUI 改为 fullscreen 默认(tuiMode: "regular" 切回普通滚动;fullscreen 修了颜色溢出 / 选区边界、/login logo 用 Pi 字标 + 颜色)。
    • codemode prompt 缩减约 40%:默认工具 + codemode 激活时,GPT-5.6 单请求从约 5,300 token 降到约 3,800 token;declared tools 不再重复整段声明,改成”一句话 + 调用方式 + 返回”。
    • codemode 错误可恢复:读不存在的 tool / models 成员会给出近邻名(tools.Bash → tools.bash);models.classify() / generateImages() 拒绝畸形参数并告知期望 shape;未知模型指向 models.getAvailableOfType();过大 store() 解释用途;生成图片但不显示会给出 note。
    • models.generateImages() 进 codemode:走 session 凭据,OpenRouter 等图像模型;返回 base64 image blocks,image() 接到结果;消耗计入 session 成本(同 models.classify())。
    • /login 新增 Radius:顶部直接显示 “Sign in with Radius” 与状态;登录成功后 /login 用 "auth": { "provider": "radius" } 把 Radius MCP server 写进全局 mcp.json 并 reload。
    • Anthropic copy code login(#10194 by @lucasmeijer):浏览器跑在另一台机器时用 copy code 完成登录。
    • MCP OAuth 加固:oauth.authServerMetadataUrl 覆盖错误 / 缺失的 metadata 文档;RFC 9207 iss 校验(拒绝其他授权服务器的 code);MCP OAuth 凭据 per-server now(同一 URL 不同 server 可用不同账号);step-up sign-in 保留 granted scopes(insufficient_scope 不再”循环登录丢权限”)。
    • quietStartup: "header":保留版本 + 快捷键提示,隐藏模型范围 + 资源加载列表。
    • 修复(多项):scope: "" 与空 / null OAuth 字段不再导致 token 交换失败;/mcp login 输出 URL 在换行处可点击;--provider 无 --model 不再被静默忽略;MCP tool_search 加载的工具在 resume / /reload 不再被丢弃;system theme 不再让 Catppuccin Frappe 等桃色 palette 变浓(#10293 by @dgtlntv);slash command 自动补全支持前导空白(#10218 by @haoqixu);transcript 中用户消息不再保留两倍宽度副本;长 assistant 消息内存占用降到 ~1/5。
    • 完整 release notes: https://github.com/earendil-works/pi/releases/tag/v1.0.0
  • v0.99.2(2026-09-30)— MCP 全面重构 + 鉴权扩面

    • MCP 命名空间独立:默认 codemode exposure 的 MCP 服务器从 model 列表与 codemode 描述里消失;codemode 描述不再包含 server 指令或工具计数;首条 prompt 不再等待 MCP 服务器(后台连接、按需才加载);脚本用 searchTools() / describeNamespace() 按需取。
    • 新鉴权面:oauth.clientName(已知 OAuth client 名);auth: { provider: "<provider>" } 把 provider 的 /login token 当 bearer 透传给 HTTP MCP 服务器(每次请求读最新,token 刷新自动生效);Anthropic workload identity federation 通过 ANTHROPIC_FEDERATION_RULE_ID / ANTHROPIC_ORGANIZATION_ID / ANTHROPIC_IDENTITY_TOKEN_FILE 三个环境变量启用(#10242 by @philfreo)。
    • /reload 行为升级:加载 defaultTools 设置里新加的工具(已有但关闭的不重开,本次手动关闭也不重开)。
    • 完整 release notes: https://github.com/earendil-works/pi/releases/tag/v0.99.2
  • v0.99.0 / v0.99.1(2026-09-29)— 上一份报告已展开

  • v0.87.0 / v0.87.1(2026-09-21–22)— 上一份报告已展开

其他重要 commits / PRs(窗口期内节选,重点为上次报告后):

  • 7fbbd5f Coding-Agent — feat(coding-agent): play a 3D Armin on /arminsayshi in fullscreen mode (@Mario Zechner, 2026-10-01)
  • a13d35a Releases — Release v1.0.0 (@Armin Ronacher, 2026-10-01)
  • bc2d8dc AI — fix(ai): drop mismatched item ids when replaying grammar tool calls (@Armin Ronacher, 2026-10-01)
  • eaa8b0d Durable — fix(durable): publish README and changelog, link the spec, add default export condition (@Mario Zechner, 2026-10-01)
  • 395315f Coding-Agent — feat(coding-agent): experimental durable vacation planner demo (@Mario Zechner, 2026-10-01)
  • 6f1072c Coding-Agent — feat(coding-agent): shrink codemode prompt and guide scripts back from errors (@Armin Ronacher, 2026-10-01)
  • 88ff80b Coding-Agent — feat(coding-agent): make fullscreen the default TUI mode (@Armin Ronacher, 2026-10-01)
  • c2f65d8 Docs — docs(coding-agent): add Radius to providers page, rename provider docs sections (@Armin Ronacher, 2026-10-01)
  • ca9c925 Coding-Agent — fix(coding-agent): show text wordmark instead of logo in Apple Terminal (@Armin Ronacher, 2026-10-01)
  • aab34df Coding-Agent — feat(coding-agent): add models.generateImages() to codemode (@Armin Ronacher, 2026-10-01)
  • ed8b3bc Coding-Agent — feat(coding-agent): offer Radius sign-in and MCP setup in /login (@Armin Ronacher, 2026-10-01)
  • 233f174 AI — fix(ai): use color Pi logo on OAuth pages (@Vegard Stikbakke, 2026-10-01)
  • 48dd1e2 Coding-Agent — feat(coding-agent): port the experimental client/server to pi-durable (@Mario Zechner, 2026-10-01)
  • 7fd478a Agent — feat(agent): remove the experimental harness from pi-agent-core (@Mario Zechner, 2026-10-01)
  • f29ea3d Coding-Agent — feat(coding-agent): add header-only quietStartup mode (@Armin Ronacher, 2026-10-01)
  • 409e808 Coding-Agent — fix(coding-agent): keep pastel palettes pastel in the system theme (#10293) (@Maximilian Blazek, 2026-10-01)
  • c662ec7 Coding-Agent — fix(coding-agent): restore MCP tools loaded by tool_search on resume and reload (@Armin Ronacher, 2026-10-01)
  • #10295 Coding-Agent — feat(coding-agent): animate Sign in with Radius and add Radius intro (@colindaymond, merged)
  • #10293 Coding-Agent — fix(coding-agent): keep pastel palettes pastel in the system theme (@dgtlntv, merged)
  • #10232 Durable — feat(durable): make SQLite storage asynchronous (@christianklotz, merged)
  • #10242 AI — Anthropic provider: use the SDK's workload identity federation env vars (@philfreo, merged)
  • #10194 AI — feat(ai): add copy code login method to Anthropic OAuth (@lucasmeijer, merged)
  • #10218 TUI — fix(tui): complete slash commands after leading whitespace (@haoqixu, merged)

社区讨论 / 行业方向:

信号观察:

  • v1.0.0 把”鉴权扩展 + 模型路由 + 持久化”打包成 stable:RFC 9207 iss 校验、per-server OAuth、Anthropic workload identity federation、Radius 一体化登录、copy-code OAuth 一起进 stable;同时把实验 harness 从 pi-agent-core 拆出去、把 experimental client/server 端口迁到 pi-durable,这是一个”主仓变干净”的稳定化动作。
  • codemode 现在能生成图像:models.generateImages() 与 models.classify()(v0.99.0)走同一形态(凭据、计费、错误语义),说明 codemode 正在被定型为”脚本化的多模型调用 API”——既包含 chat、classify,也包含图像生成。后续 predict / embed 的 API 也极可能沿用同一形态。
  • prompt token 减少 40%(codemode + 默认工具)是个容易被忽视的成本优化:同一会话在 GPT-5.6 上每轮少了约 1,500 input token,对长会话的累计成本影响明显。
  • /arminsayshi 3D Armin 是 fullscreen 模式下的复活节彩蛋——fullscreen 升级带来”少行 prompt 时画布更大”的副作用,社区彩蛋也跟着上线,说明作者对 fullscreen UX 的态度是”默认体验 + 视觉奖励”。
  • pi-durable 把 vacation planner demo 跑通(#395315f):durable 不再是”spec + async SQLite”,而是有一个能跑的应用做最小可用验证——这条线可能成为 v1.x 的下一个 stable 子项目。

agegr/pi-web

Web UI for the pi coding agent(@agegr/pi-web):本地 / 远程浏览器操作 pi CLI agent。| stars: 6,998 | open issues: 56 | 默认分支: main | 最近 push: 2026-10-01 | 主页: (无)

近 N 周 release 重点:

  • v0.9.3(2026-09-23)— 升级上游 pi 至 0.87.1

  • v0.9.2(2026-09-22)— 模型管理 + 长会话性能 + 多标签页 + 子代理可靠性

    • 重要安全修复:升级到 Next.js 16.3.5 并关闭不必要图片处理入口(公开修复版本是 16.3.6,本版仅必要不充分,留意后续版本)。
    • 模型管理直观化:设置 → 模型 中启用 / 停用单个模型或按 provider 批量操作(#930);新增”刷新模型列表”按钮(#938);扩展添加的 provider 也出现在模型设置与登录页(#833);新增 OpenCode Go 用量 / 额度展示(#844)。
    • 长会话更快:会话列表先显示已有信息,后台补全(#940);自动命名不再发整段历史 + 全部工具输出(120 轮会话从 ~74k token / 3.8s 降到 ~1.7k token / 1.3s,#807);加载长会话按用户可见消息分页(#810)。
    • 多标签页正确:每个 tab 独立记会话;刷新不被其他 tab 抢走(#887)。
    • 子代理可靠:并发队列、持久化恢复、worktree 隔离、profile 支持、扩展工具选择器(f106531, b77a25f, a31d5c5, bbe2f7d, 2661247, e3fbbf6)。
    • 完整 release notes: https://github.com/agegr/pi-web/releases/tag/v0.9.2
  • v0.9.1(2026-09-11)— subagent 工作流 + provider 配额 + Safari/iOS 兼容

其他重要 commits / PRs(窗口期内节选,重点为上次报告后):

  • d733d43 MCP — fix(mcp): connect a trusted project's servers as the pi CLI does (@Alex Yang, 2026-10-01)
  • 82d1f54 Worktrees — fix(worktrees): find the worktree to remove by its real path (@Alex Yang, 2026-10-01)
  • a87758e Chat — fix(chat): label MCP calls server/tool only from their result's details (@Alex Yang, 2026-10-01)
  • 3dc123b MCP — fix(mcp): idle out servers registered for a prompt that starts no run (@Alex Yang, 2026-10-01)
  • 2b93cbc Docs — docs(adr): record that ADR 0006 P1 is in place (@Alex Yang, 2026-10-01)
  • cc697e6 Chat — feat(chat): label MCP calls server/tool and indent their JSON results (@Alex Yang, 2026-10-01)
  • 30fe218 MCP — feat(mcp): connect mcp.json servers through a per-session MCP host (@Alex Yang, 2026-10-01)
  • e299ab9 MCP — feat(mcp): block MCP tools without readOnlyHint in read-only sessions (@Alex Yang, 2026-10-01)
  • 1c387b4 Tools — feat(tools): write the Code mode choice through /api/tools/settings (@Alex Yang, 2026-10-01)
  • 9dc822e Chat — feat(chat): show a codemode call as its script and the tool calls it made (@Alex Yang, 2026-10-01)
  • ba044f9 MCP — feat(mcp): load the codemode, tool-search and mcp built-ins in normal sessions (@Alex Yang, 2026-10-01)
  • e17d2cc Chat — fix(chat): drop extension UI requests the server closed while the stream was down (@Alex Yang, 2026-10-01)
  • 34c8fdf Sessions — fix(sessions): wait for a closing wrapper before reopening its session (@Alex Yang, 2026-10-01)
  • 18758b7 Tools — fix(tools): carry only active tools and keep session tools across navigation (@Alex Yang, 2026-10-01)
  • 197a3e5 Settings — refactor(settings): share settings panel blocks and localize Plugins and Skills (@Alex Yang, 2026-10-01)
  • #1023 Chat — feat(chat): fork a session while it is running (@agegr, merged)
  • #1022 Chat — feat(chat): change the reasoning level while a run streams (@agegr, merged)
  • #1021 Settings — refactor(settings): switch skill and plugin groups from their headings (@agegr, merged)
  • #1019 Compat — fix(compat): load on Safari and iOS 16.2 (@agegr, merged)
  • #1018 Files — fix(files): let the operator open symlinked folders outside the project (@agegr, merged)
  • #1015 Chat — fix(chat): keep typed line breaks in user messages (@agegr, merged)
  • #1014 Files — fix(files): let Git decide what the file tree hides (@agegr, merged)
  • #1011 Chat — fix(chat): collapse process details once a turn's answer appears (@agegr, merged)
  • #1010 — Review follow-ups for #907, #946 and #968 (@agegr, merged)
  • #1009 Chat — fix(chat): branch a history edit only when it is sent (@agegr, merged)
  • #1008 Chat — fix(chat): report compaction instead of "waiting for model" during auto-compaction (@agegr, merged)
  • #1007 — fix: confirm force removal for submodule worktrees (@agegr, merged)
  • #948 Deps — chore(deps): trim the production install and bump next, semver, undici (@agegr, merged)
  • #934 Subagents — feat(subagents): switch individual built-in sub-agents off (#874) (@agegr, merged)
  • #930 Models — feat(models): enabledModels switches in Settings → Models, as minimal edits (@agegr, merged)

社区讨论 / 行业方向:

信号观察:

  • 9 月 30 日–10 月 1 日连续 11 个 MCP / codemode 提交集中爆发:per-session MCP host、readOnlyHint 强制、codemode UI 展示、JSON 缩进、built-in 加载到普通 session——pi-web 把”pi v0.99.x 的 MCP 命名空间独立”这层抽象完整搬到了 web 侧,让用户在 chat 内能区分”我的工具” vs “MCP server 工具”,并能直接看到 codemode 的脚本与它发起的工具调用。
  • ADR 0006 P1 落地(2b93cbc)—— 把”per-session MCP host + readOnlyHint 强制 + 工具名冲突”等用架构决策记录形式沉淀下来,开始从”快速实现”过渡到”架构稳定”。
  • fork a session while it is running(#1023)与 change the reasoning level while a run streams(#1022)是两个明显”web-only / 实时控制”的特性:CLI 不能中途改 reasoning level,web 可以——pi-web 的产品力已经不只”挂个 UI”,而是开始做 CLI 做不到的事。
  • Safari / iOS 16.2 兼容(#1019)与 symlink / submodule worktree(#1018、#1007)等横向兼容性修补密集,说明 pi-web 的部署场景从”开发者自托管”扩展到了”被集成到 iOS 端 / 嵌套 git 仓库里”。

vectorize-io/hindsight

Hindsight: Agent Memory That Learns(Vectorize.io),MIT 协议 agent 记忆框架,含 retain / recall / reflect + coding-agents plugin。| stars: 44,313 | open issues: 220 | 默认分支: main | 最近 push: 2026-10-01 | 主页: https://hindsight.vectorize.io/

近 N 周 release 重点:

  • v0.10.2(2026-09-29)— bank alias / per-scope consolidation / refresh budget / streaming export

    • Bank aliases:bank 可以挂第二个 id,调用方按自己节奏切;后台运行;不触发 LLM。
    • Per-scope consolidation strategies:user / team / company 等不同 observation scope 各自一套 consolidation 规则;新设 consolidation_strategies;4 个 setting 按策略覆盖,其余保持 bank-wide;first-match wins;后置策略不补前一个的 gap。
    • Refresh budget per mental model:默认中等预算,不再继承 reflect 默认;mental model 可独立配置 refresh 强度。
    • Test extraction on screenshots & files:Extraction Tester 接受图像与文件;attachments 到达 observations 与 reflect。
    • Reflect 区分来源:document metadata 进入 reflect,按来源排序。
    • Operations:streamed exports 让大 bank 不再 OOM;CUDA for ONNX embeddings;curation hooks for extensions。
    • 可靠性:无 hung workers;安全 consolidation;Oracle parity。
    • 完整 release notes: https://github.com/vectorize-io/hindsight/releases/tag/v0.10.2
  • v0.10.1(2026-09-21)— bank 可搬移 + Jev reranker + Meta Muse 集成

    • Bank portable:克隆(无 LLM,后台任务)、导出 / 导入为 ZIP 归档(data + bank config + history)、就地改名(hindsight-admin);embeddings / DB id / entity graph 在到达端重建。
    • Jev as reranker:listwise Choice + Score cut;recall@1 0.800→0.950;0.12s→0.027s/query。
    • Meta Muse integration:通过 paste connect prompt + OAuth 完成;Muse 可访问全部 bank;Hindsight Cloud 已对接 OAuth flow。
    • Concurrency / scale:streamed exports 把 256 MiB bank 导出从 545 MiB 内存降到 25 MiB。
    • Coding-agents 改进:Codex user turns 从 UserMessage 事件取;transcript 一次读完让 append 跨越 32 MB;Concise extraction 默认开启、可配置、与 docs 同步;cache append 支持。
    • 完整 release notes: https://github.com/vectorize-io/hindsight/releases/tag/v0.10.1
  • v0.10.0(2026-09-14)— retain / tokenizer / business templates / MCP

    • retain 批量文档 chunk embeddings 取代”每个 chunk 一次请求”;quicktok 替换 tiktoken 默认 o200k_base;retain_memory benchmark 修复;retain 处理超大 item 子批次从原 span 重建。
    • Per-bank enable_text_search toggle 实现纯向量 recall 模式。
    • Business Executive bank template。
    • Knowledge view 的 page / mental model id 按当前 bank scope。
    • MCP:Your Agent Can Now Manage Its Own Knowledge Base Over MCP。
    • 4 MB → 90 MB:Retain Peak Memory Flatten(4 MB → 90 MB 文档不再掉内存)。
    • 完整 release notes: https://github.com/vectorize-io/hindsight/releases/tag/v0.10.0

其他重要 commits / PRs(窗口期内节选,重点为上次报告后):

  • 0be6c02 Docs — Add blog post: What Changes Now That Hindsight Is a Hermes Plugin (#4879) (@Ben, 2026-10-01)
  • d863f78 Retain — fix(retain): tell a store-owned bank which entity names to take literally (#5053) (@Nicolò Boschi, 2026-10-01)
  • 128c9c3 Retain — fix(retain): abort the store session when a single-batch retain fails (#5055) (@Nicolò Boschi, 2026-10-01)
  • c8a1f56 Docs — docs(observations): document the untagged-scope limit, env-var validation and migration semantics (#5007) (@Ben, 2026-10-01)
  • 09e5dc2 Extensions — feat(extensions): per-caller tag scopes for reading and writing a shared bank (#5032) (#5048) (@Nicolò Boschi, 2026-10-01)
  • edead03 Tests — fix(system-tests): the TypeSafe server runs no worker (#5056) (@Nicolò Boschi, 2026-10-01)
  • 1c45054 Memories — fix(memories): four gaps a store-owned bank hits in the system tests (#5042) (@Nicolò Boschi, 2026-10-01)
  • b0219df Entities — feat(entities): tag filter on entity list, detail and graph (#5031) (#5038) (@Nicolò Boschi, 2026-10-01)
  • c71cd04 Recall/Reflect — fix(recall,reflect): source text follows its document's tags (#5030) (#5036) (@Nicolò Boschi, 2026-10-01)
  • bc2af4c Knowledge-Base — feat(knowledge-base): tag filter on the tree and search (#5034) (@Nicolò Boschi, 2026-10-01)
  • 0cc0f39 Docs — fix(docs): show the live GitHub star count, not the 10k fallback (#5033) (@Nicolò Boschi, 2026-10-01)
  • ec39e10 Docs — docs(blog): contents list + Cloud CTA on the left, Back to top on the right (#5020) (@Nicolò Boschi, 2026-10-01)
  • f2c33cc Blog — Add blog post: One Bank, Two Audiences, Two Briefs (#5001) (@Ben, 2026-09-30)
  • #4879 Blog — Add blog post: What Changes Now That Hindsight Is a Hermes Plugin (@benfrank241, merged)
  • #4760 Coding-Agents — feat(coding-agents): defaultBankConfig — your own bank-config baseline for the banks the plugin creates (#4725) (@mvanhorn, merged)
  • #5053 / #5055 / #5048 / #5042 / #5045 / #5044 / #5038 / #5036 / #5034 / #5033 — 已合为主线修订
  • #5007 Docs — docs(observations): document the untagged-scope limit, env-var validation and migration semantics (@benfrank241, merged)
  • #5020 Docs — docs(blog): contents list + Cloud CTA on the left, Back to top on the right (@nicoloboschi, merged)
  • #5001 Blog — Add blog post: One Bank, Two Audiences, Two Briefs (@benfrank241, merged)
  • #5005 Docs — docs(integrations): a card per coding agent, so searching "Codex" finds it (@nicoloboschi, merged)
  • #4979 Memories — refactor(memories): only the memories store may touch its tables (#4969) (@nicoloboschi, merged)

社区讨论 / 行业方向:

信号观察:

  • Hindsight 与 Hermes 解耦成独立 plugin 是本期最大的生态动作:plugin 仓库从 Hermes core 迁到 Hindsight,更新节奏由 Hindsight 团队决定,bug 由 Hindsight 修——这是”infra 项目让上游决定命运”的成熟体现,也意味着 Hindsight 现在作为独立的 agent memory 协议层存在,可以独立被其他 agent runtime 集成。
  • bank alias / 跨实例克隆 / 改名组合把”bank id”从 one-way door 变成”零停机可移动资源”——之前选 support 而不是 support-prod 的代价从”重新 ingest + 烧 LLM 钱”降到”挂一个 alias”。这是一个面向平台团队的资产语义升级。
  • per-scope consolidation strategies 是”用 mission 控制合并语料”哲学的下一站:观察 scope 现在可以定义自己的 brief,让一个 bank 同时支持”用户私人记忆”与”团队共享记忆”且不互相污染。
  • 博客节奏明显加快:9 月 22–10 月 1 共 9 篇深度博客(含 v0.10.2、r.cover、bank 可搬、Jev and Jev、facts vs beliefs、hermes plugin、hermes what-changed、meta muse、40k stars),每篇 7–13 分钟阅读长度——团队把”透明工程叙事”作为产品的一部分输出,外部社区能跟上每个设计决策的来龙去脉。
  • Jev 既是 reranker(hindsight)又是虚拟模型路由器(pi):TypeSafe 的”System One 模型 + typed probability” 在两个项目里被采用为”轻量次选调用”原语,这种跨项目流通是新出现的生态现象。

agentclientprotocol/agent-client-protocol

A protocol for connecting any editor to any agent(LSP-like,标准编辑器 ↔ agent 通信)。| stars: 4,360 | open issues: 41 | 默认分支: main | 最近 push: 2026-10-01 | 主页: https://agentclientprotocol.com

近 N 周 release 重点:

其他重要 commits / PRs(窗口期内节选):

  • 9e03215 Schema — chore(agent-client-protocol-schema): release v1.10.2 (#2274) (@acp-release-bot[bot], 2026-10-01)
  • 326840d Rust — fix(rust): remove skipped-entry deserialization logging (#2273) (@Ben Brandt, 2026-10-01)
  • e0ad1a2 Docs — Update TermFold entry: bundled environment is now Debian (#2272) (@Bibarud, 2026-10-01)
  • 7394ce2 Docs — docs: update registry agents (#2271) (@acp-release-bot[bot], 2026-10-01)
  • aa6bfbd Docs — docs: update registry agents (#2270) (@acp-release-bot[bot], 2026-09-30)
  • 1761180 Releases — chore: release (#2268) (@acp-release-bot[bot], 2026-09-30)
  • 8362663 Unstable — fix(unstable): allow MCP response extensions (#2265) (@Ben Brandt, 2026-09-30)
  • 50b1e7d Docs — docs(rfd): move NES RFD to "To be removed" (#2264) (@Ben Brandt, 2026-09-30)
  • 7d794e0 Docs — docs: mention ACP TCK (#2263) (@Andrey Bragin, 2026-09-30)
  • c81fae7 Docs — docs: update registry agents (#2262) (@acp-release-bot[bot], 2026-09-30)
  • cb50aba Releases — chore: release (#2247) (@acp-release-bot[bot], 2026-09-30)
  • 1b6cfe6 Docs — docs: expand draft guides for preview session updates (#2260) (@Ben Brandt, 2026-09-30)
  • fec0b12 Unstable — feat(unstable-v2): return available commands in session responses (#2259) (@Ben Brandt, 2026-09-30)
  • d2631c6 Unstable — feat(unstable): Intial RFD and schema for subagents (#1992) (@Briliantov Vadim, 2026-09-30)
  • #2273 Rust — fix(rust): remove skipped-entry deserialization logging (@benbrandt, merged)
  • #1992 Unstable — feat(unstable): Intial RFD and schema for subagents (@Ololoshechkin, merged)
  • #2272 Docs — Update TermFold entry: bundled environment is now Debian (@Bibarud, merged)
  • #2265 Unstable — fix(unstable): allow MCP response extensions (@benbrandt, merged)
  • #2267 Docs — docs: propose Hjarni as a related MCP knowledge tool (@Evertvandenbruel, merged)
  • #2264 Docs — docs(rfd): move NES RFD to "To be removed" (@benbrandt, merged)
  • #2263 Docs — docs: mention ACP TCK (@EugeneTheDev, merged)
  • #2260 Docs — docs: expand draft guides for preview session updates (@benbrandt, merged)
  • #2259 Unstable-v2 — feat(unstable-v2): return available commands in session responses (@benbrandt, merged)
  • #2251 Docs — docs(clients): add Reemoat to Desktop and Mobile (@rends-east, merged)
  • #2252 Docs — docs(clients): add OctoShell to Desktop and Web (@savvasioakeim, merged)

社区讨论 / 行业方向:

  • agentclientprotocol.com Introduction: “ACP 标准编辑器 ↔ agent 通信”,与 LSP 类比——“Agents that implement ACP work with any compatible editor. Editors that support ACP gain access to the entire ecosystem of ACP-compatible agents.”
  • ACP v2 Migration guide: v1 → v2 breaking changes + 新功能 + 实施步骤;协议同时维护 v1 + v2 draft,v1 仍是稳定主版本,v2 还在 alpha 阶段(schema-v2.0.0-alpha.7)。
  • ACP TCK: 新增 Test Compatibility Kit(#2263)—— 协议一致性测试套件,确保不同 agent / client 实现之间互操作。
  • llbbl.blog “Your Coding Agent Should Not Own Your Editor”: 行业期刊讨论,ACP 的设计动机与该文中”agent 不要接管编辑器”的论点高度一致。
  • DeepWiki ACP Protocol & Agent Communication: ACP 协议在 DeepSeek Harness 中的实施记录(精简到 automation-only protocol)。
  • DeepSeek Agent Note: ACP subagent backend (out-of-process delegation): 第三方 agent harness 通过 ACP 实现 subagent backend 的实践记录,与 ACP unstable subagent schema 同期对齐。
  • ml4devs “ACP: Agent Communication Protocol Explained”: 第三方解读,把 ACP 类比 LSP;与 BeeAI / IBM Research 的 ACP 不同(这是同名术语,需要甄别)。
  • 仓库 Discussions 的历史主要是 2025 年 8–9 月的协议建议帖(slash command / model selection / _meta extensibility / AGENTS.md / unsaved file sync / Ollama feature parity 等),本期未观察到新讨论。

信号观察:

  • v1.10.0 把 subagent / available_commands / request-scoped MCP 同时写进 unstable schema,三件事一起发布意味着 ACP 把”agent 可以派生子 agent” + “session 能感知当前可用命令” + “MCP 请求绑定到具体 request” 作为下一代协议的三个核心能力一起提交。
  • v1 仍是 stable 主版本,v2 仍是 alpha——schema-v1.24.x 与 schema-v2.0.0-alpha.7 双轨并行,所有新能力先在 v2 alpha 验证再 backport 到 v1,避免大版本迁移风险。
  • NES RFD 被挪到 “To be removed”(#2264)—— RFD 流程已经走过”提出 → 评估 → 弃用”的完整生命周期;说明 RFD 不只是”画饼”,而是带弃用流程的协议治理。
  • Registry 自动更新 bot 节奏密集:9 月 30 日–10 月 1 日连续 7 次 “update registry agents” commit,反映 ACP 兼容 agent 数量增长明显,每个 release 都要刷。
  • ACP TCK 出现(#2263)—— protocol 不光靠文档与 RFD,开始靠机器可跑的兼容性测试套件做保证,这是从”协议”升级到”标准”的关键一步。

yxc023/yxc023.github.io

个人 GitHub Pages 博客(@yxc023),自动同步 daily-research 报告。| stars: 1 | open issues: 27 | 默认分支: master | 最近 push: 2026-10-01 | 主页: (无)

近 N 周 release 重点: 窗口期内无 release。

其他重要 commits / PRs:

  • 44d48be auto(reports): 同步 daily-research 2026-10-01 (@yxc023, 2026-10-01)
  • be8b82a auto(reports): 同步 daily-research 2026-09-30 (@yxc023, 2026-09-30)
  • 70599c7 feat: 新增调研周报板块 + 协议相对化 (@yxc023, 2026-09-29)
  • 440cb63 post: 新增商场儿童乐园引流案例与英文科普视频调研两篇 (@yxc023, 2026-09-29)

社区讨论 / 行业方向: 窗口期内未观察到 Discussions 动态。

信号观察:

  • 仓库主要承载 daily-research 报告与 posts/* 调研文章。44d48be 与 be8b82a 连续两天的 auto(reports): commit 说明自动同步流程正常工作。
  • 调研周报板块于 9 月 29 日正式上线(70599c7),与 daily-research 报告生成节奏对齐。

跨项目观察

  • “stable 1.0” 节点对比:earendil-works/pi v1.0.0 与 ACP schema-v2.0.0-alpha.7 都打”协议级稳定 / v2 alpha”,但pi 的 v1 是主版本 stable,ACP 的 v2 仍是 alpha——同一个生态对”ready for production” 有截然不同的判断:纯 agent 项目(pi)可以稳定到 v1.0;协议项目(ACP)因为生态绑定者多,必须维持 alpha 状态以保留调整空间。
  • “agent runtime 持久化” 一致收敛:pi-durable(async SQLite + vacation planner demo)、hindsight(bank alias / clone / rename)、orange 数据(namespaced session identity headers)三方各自往”agent 可挂起 / 可重建”方向走;本期没有看到颠覆性新方法,全部是细节加固。
  • Radius 模型路由 / MCP 一体化 已进入 v1.0:pi v1.0.0 /login 顶部直接显示 Sign in with Radius 并一键配 MCP server(auth: { provider: "radius" }),让 Radius 既是一个 provider 也是一个 MCP server host——这是一种”模型路由 + MCP 入口”在工具链上的合并方向。
  • durable + system theme + quiet startup 三件套共同成为 v1.0 “开箱即用”体验:fullscreen 默认 + 安静启动 + 持久化 harness,这三个能力的合并是 pi 的”v1.0 UX 哲学”——少操作、可恢复、视觉简洁。
  • macOS 27+ 公证链条从 opencode 蔓延到所有 agent CLI 二进制(pi v1.0.0 修 Apple Terminal logo 渲染、CLI 走 Apple Developer 签名),这是平台级边界对所有 agent CLI 的同步收口。
  • codemode 现在是 “chat + classify + generate images” 三 API 的稳定形态(pi v1.0.0):预测 / embed 极可能沿用同一形态,codemode 正成为 pi 的”脚本化多模型调用平台”。
  • Jev(TypeSafe System One 模型)成为跨项目流通的”轻量打分原语”:hindsight 把 Jev 当 reranker,pi 把 Jev 当 virtual model 路由,“typed answer + calibrated probability” 这个新原语正在被两个项目采纳。
  • subagent 在三个项目同步进入 schema:ACP v1.10.0 unstable subagent schema + pi-web 的 subagent 一致性收紧 + pi 的 go() / owner / child tasks;三方对齐到同一抽象,subagent 即将从”项目特性”升级为”协议级原语”。
  • Hindsight 与 Hermes 解耦(PR #4879):plugin 仓库从 Hermes core 移到 Hindsight 仓库,由 Hindsight 团队维护;Hindsight 现在是独立的 agent memory 协议层,可被多 agent runtime 集成,不再依赖 Hermes core 节奏。
  • ACP TCK 出现(#2263):协议不只靠文档与 RFD,开始靠机器可跑的兼容性测试套件做保证,是从”协议”升级到”标准”的关键一步。

元信息

  • 报告生成时间: 2026-10-02T08:38:47+08:00
  • 基准时间: 2026-09-08T09:23:29Z(按 spec 读取自上次报告 reports/latest.md 的 基准时间: 字段)
  • 扫描窗口: 2026-09-08T09:23:29Z → 2026-10-02T00:30:51Z(约 23.6 天)
  • 数据源: GitHub API(gh CLI 认证,6 仓库 × 4 endpoint,共 28 次 API 调用;opencode 的 discussions endpoint 返回 HTTP 410 “Discussions are disabled for this repo”),mmx web search(5 次 query)+ 官方博客直抓(hindsight 9 篇、ACP llms.txt、opencode changelog)
  • API rate limit 剩余: 5000

评论