新功能
Agent OS 的变更历史。新版本每周发布一次。
2026 年 10 月 12–18 日
其他
- sc: universal shell tool for sc-fix-agent (
d479388e) - sc: capacity guard (max_running) + keep issue open when no changes (
a43b9550) - sc: poll SourceCraft queue every minute (was 5) (
e8b93583) - sc: register sc_mr_merge/sc_worktree_diff/sc_deploy_server in toolbox (
030ac66d) - sc: risk judge + operator-approved merge and self-deploy (
239d706e) - delegated sub-agents carry their own template (
1f3e5c75) - machines + kernels engines (SSH inventory, remote Agent OS control) (
bb979d6a) - one loop per shared transport (generic) + YM front router agent (
db1530be) - run notifications to channels (universal) with event filter (
7ea06289) - build: builder 从目录构建 agent 通过 builder 进行(在 builder 上构建)
- sc: commit artifact uses pushed.head (publish step output_key is pushed) (
7cf96804) - capture diff against the branch base; publish returns data (
402299cc)
2026 年 10 月 05–11 日
新功能
- tools: add image_gen_tool (text-to-image) engine; use in image/egidia; docs (
976aaab2) - android: attention stream status + battery-optimization prompt (
fade7def) - notify: attention tools, push sink and background notifications (Android + web) (
8ffaf549) - yandex: env-overridable OAuth redirect_uri (dev loopback vs prod URL) (
1ab612d3) - site: weekly changelog page generated from git history (
f1f206b9) - yandex: unified Disk/Calendar agent, Disk change-monitor, compact tool output (
49ebcf62) - server: public_url so agent links use the public origin (
93b2c4f8) - index: per-user document index module (server folders + Yandex Disk) (
40d3ee58) - blogger: content assistant + declarative duckdb operations (
4ad5d6fd) - approvals: relay sub-agent approvals to the delegating agent's chat (
fbba7e26) - chat: hide intermediate tool visuals, add widget.tool_visuals (
78a6f46e)
修复
- duckdb: share one connection per file across hot-reloaded hooks/caches (
73d7ba76) - widget: keep tool cards flex when expanded so labels ellipsize (
3e5eada8) - widget: stop tool-card/status payloads spilling outside their boxes (
334fdeb4) - android: send x-user-token when registering push endpoint (
da4927ea) - android: fetch x-user-token ticket for attention stream + session identity (
645d02fa) - agent: keep answer on disconnect, bound code search, reap orphan browsers (
69544f95) - widget: render inline markdown and clamp tool-card/status labels (
01093321) - android: request notification permission (Compose) + self-test button (
23526803) - widget: Stop clears the thinking status pill (
b86dd96f) - index-demo: require Yandex login so the per-user Disk token is shared (
b6188100) - index-demo: env-overridable Yandex redirect_uri for prod (
07b1e0ef) - plugins: put the dot before {ext} (agent_os_index.{ext}) (
7a5ceb88) - plugins: resolve native module path by platform/profile (
e586e5ec) - admin: cut tool_call warnings, add inline tool base_dir, triage bench (
3dfbebf0) - widget: linkify bolded bare URLs (
a9ebe752) - admin: rewrite loopback links in the engineer's answers (
53f6f5b3) - widget: readable code blocks on the light theme (
25ab68bb) - chat: keep links clickable outside demo; render markdown blocks in text blocks (
c0f4ec0e) - tools: distinguish/override transport timeouts; browser partial progress (
9dd9024b)
其他
- sc: skip retry when the source ticket no longer exists (
e0ecdc68) - input/output artifacts (sources/results/materials) + UI links (
0de2118d) - sc: tolerate missing SourceCraft issue in comment/close (
f288388f) - parse JSON tool output into output_key (fixes step.field refs) (
efc28acf) - sc: pass ingest flags as strings (template drops input booleans) (
cbed790e) - sc: MR-link race fix, failed-item auto-retry, timeline order (
0fd2f744) - ui: tabs (overview/queue/runs) + work-item queue actions and retry (
ae3808b8) - run agent-os as realityfaker (not root) (
470ad703) - sc: sharpen sc-fix-agent testing instructions (
e0731500) - implement /v1/harness/overview (store aggregate + dashboard UI) (
e627fbc8) - sc: sourcecraft bugfix harness - ingest, fix agent, MR publishing, issue close (
da404180) - supervise agent-os with systemd (restart, memory cap, OOM guard) (
a5939676) - 莉莎的肖像仅在欢迎消息中,不在入口卡片上重复 (
a66ac4d5) - 在欢迎页渲染图片;egidia 在问候中显示莉莎的肖像 (
8ffe92ac) - 莉莎的肖像在欢迎页面上,关键场景中的艺术图 (
7e1e989c) - 启动时显示莉莎的肖像,并定期展示插图 (
65b51223) - pregenerated art + egidia_art tool, widget page theme/layout; shared generate_image + docs (
9a030775)
2026 年 9 月 28 日 – 10 月 04 日
新功能
- admin: shared assistant dock and theme fixes (
7fa63b1d) - code: show command + args in the run_command approval card (
c87a7812) - admin: light theme toggle and unify the admin UI to Russian (
1827b8fb) - harness: registry, workspace-scoped code tools and operator tools (
e8412f8f) - widget: show gated tool arguments in the approval card (
3a220632) - agent_tools: ask_user forms, widget form/approval cards, admin-only coder (
2368dbdd) - harness: observability — cost, timeline, metrics and summary (
d82d23bc) - harness: work items with lifecycle, claim and run linkage (
3e9347d2) - supervisor: ship the observer agent bundle (
c422288a) - agents: code agent module, supervisor subscriptions, dual-transport tooling (
123f1703) - workflow: run-level deadline (timeout_secs) (
0ec89e56) - workflow: resume for_each from unfinished items (
1c35b1bc) - workflow,harness: replay-safe tool keys and workspace artifacts (
4e9345c3) - harness: isolated workspaces, run read-model and cancellation (
45894f8c) - workflow: durable runs, loop/verify steps and run budget (
fac82d00) - admin: embed the user-inspector widget on the users page (
9fb920ff) - agents: user-inspector read-only agent + widget ?q= deep-link (
5691f08a) - admin: richer users page (alias, activity, budget, memory, teams, traces) (
638e8369) - config: triz agent (board + TRIZ tools, design doc) (
6c604775) - platform: chat-first /console with admin tool visuals (
ac408671) - admin: users page and teams member autocomplete (
e00d361f) - events: native agent_events hook + GET /v1/events; migrate sc off scripts (
4b5d804f) - admin: teams page and fix nav active-state on child paths (
579c2c52) - teams: team scope, membership registry, grants and access control (
f01003db) - versioning: highlight active version; make restore truly switch versions (
0a16fc84) - versioning: git-backed config versioning, history UI and sealed secrets (
cd3c0ef8) - agents: add sc-agent for SourceCraft issue management (
ea87a901) - control: operator state tools, agent-scoped tool calls, restart-race fix (
0e8b6502) - tools: tool-load diagnostics and universal state() template context (
1ae23dd8) - admin: tool-registry meta-tools, toolbox library, and reasoning control (
e4940830) - kernel: reconstruct tool exchanges on session resume (
4a0dc677) - yandex: add ym_tool for Yandex Messenger Bot API (
b49a0e1f) - settings: show only settings of modules that agents actually use (
5d05d63f) - admin: enable builder/env by default; add run, env and web tools (
b9453eb1) - trace: expose a read-only trace API and the agent-os trace CLI (
18f1e648) - searchers: 支持多个搜索提供商(
ca465cf1) - searchers: 通过模块配置包发布演示代理(
d0cf0c96) - settings: 通过传输无关的声明接入搜索器 API 密钥(
efa5d4da) - modules: 稳定的 ToolEngine 接口 + 工具类型的注册表桥接(
37524545) - settings: 作用域设置与待定配置(
0f1d4050) - searchers: 添加提供商感知的 web_search 模块(FireCrawl,双传输)(
58369f08)
变更
- admin: 将收件箱合并到访问菜单中;重新平衡菜单(
8ae37722) - events: 为仪表板序列预聚合 300 秒桶汇总(
7908e54f)
修复
- control: 对路径参数进行百分号解码(
e5b60a8e) - caddy: 不压缩 SSE 端点;立即刷新(
cc47864c) - interaction: 在 POST /v1/input-response 中转发 payload/granted(
e41014ac) - teams: merge_users 中的可重入锁死锁(
dd7592bc) - admin: 为用户列表提供独立的滚动条(
d940658d) - kernel: 引导结构化输出代理通过 job_done 完成(
f83041e0) - config: 修正 toolbox tool_files 缩进;记录版本管理(
d5508da6) - admin: 工具 UX 提示,恢复 server_url,缺少必需参数时失败(
fdb54d71) - kernel: 发送超时后传入的脚本 HTTP 头(
152a8cdf) - kernel: 按字符边界而非字节截断 data_label(
bbc8a448) - kernel: 不区分大小写地剥离答案标记(
2aaa4dad) - platform: 将稳定的 ToolEngine 类型归属到其模块(
39148f03) - settings: 声明 agent_os.RequestContext 能力(
f9352d8f) - searchers: FireCrawl v1 拒绝 'sources';添加 web_search 测试(
286aa183) - settings: 通过 BatchModule 传递 DLL 描述符设置(
2c4beee9) - events: 暴露丢弃的事件和读取错误;仪表板加载指示器(
eccbaf5a)
2026 年 9 月 21–27 日
新增
- widget: 可配置的对话持久化(widget.persist、widget.history_limit)(
9ef08ee0) - kernel: max_output_tokens 作为权威输出上限(全局 + 每代理)(
6b08e283) - wait_tool: 流式实时倒计时(ToolProgress)+ UI 模板(
a8ccc9bf) - bench: 通用运行覆盖(A/B)、紧凑运行列表、管理追踪工具、钩子信号(
7cffe803) - bench 重复+紧凑、wait_tool、会话记录恢复、events.db 加固(
f66ac2e3) - lexicon: 自学习查询规范化器,带槽位驱动的自动工具调用(
be78b161) - env: 运行时环境变量覆盖 + 管理页面(
13ad9731) - surfaces: 首次运行引导覆盖层 + 管理设置(
04a96a4e) - analytics: 词汇主题、基准排除、主从 UI、代理过滤器(
d5537957) - widget: 可选横幅关闭按钮,内联嵌入时隐藏(
0d793471) - scripts: 向 JS 引擎添加 env_var;管理代理 server_url 工具(
2bbd6fc3) - analytics: 可选加入的业务分析模块 + 分析代理(
b4df2cb6) - tools: 会话暂存模块(scratch_tool)(
9cb51423) - builder: 分层代理配置读取与细粒度编辑(
ad890063) - bench: 从运行卡片将运行发送给工程师代理(
85156b47) - admin: 统一的主从基准测试页面与共享基准 UI(
967445dc) - admin: 可导航的内省、文档 API 与自配置服务代理传输(
094b69ef) - bench: 评判失败/出错的轮次、建议与运行摘要(
1fe778f2) - platform: 代理构建器 API 与管理 UI 中的工程师/管理代理(
d2dc16ef) - admin-ui: 功能模块拥有页面/导航;平台重启 + 模块开关(
10e68a2a) - bench: 共享基准核心,添加 LLM 评判器与并行运行(
b1c93f74) - platform: 双语文档模块、逐项文档与自有注册表(
4c755799) - platform: 跨选择保留打开的标签页(
8e453c60) - platform: 必需的逐主题文档(ru)、分组类型、服务端 markdown(
8d474906) - platform: 将 CLI 命令暴露为引擎支持的注册表(
72020993) - admin: 共享外壳、平台控制台、模块控制、引擎内省(
76a35ab1) - personal: 单聊天个人代理原型(文档 + 演示 + 配置骨架)(
dc99b9af) - cli: 统一的模块可扩展 agent-os 二进制文件(
7343adc4) - distrib: 可恢复下载 + 移植的下载页面(
c43f46c3)
变更
- events: 将轮次 token 计数存储为列以供仪表板序列使用(
7e0e5a04) - control: 将 /v1/sessions 默认分页降至 200 + UI“加载更多”(
14f38da7) - events: 将物化的 session_history 汇总移出写入热路径(
8698818e) - load: 准入控制 + 批量存储写入器;修复 JSONL/访问日志(
62f61506) - admin: 为工程师代理提供完整模型上下文与效率规则(
550f2d31) - build: 使发布使用 fat LTO(已在生产 VM 上验证安全);部署 -j4(
3bbb7227) - build: 大小优化配置文件、精简功能门控、更快的开发构建(
22e09679) - personal: 将 Бадди 重命名为 Персональный Агент(
a703adff) - repo: 将 crates/features 拆分为 channels/tools/hooks/platform(
4549eebf) - repo: 将 crates/modules 拆分为 surfaces/engines/fixtures/builtin(
28b4aa8e) - repo: 将 crates/module-system 拆分为 abi/runtime/plugin/support(
e9250c52) - repo: 将顶层 crates 移至 crates/ 下(
29939304) - modules: 将剩余主机路由移入模块;限制模块路由请求体(
543cb2cc) - modules: 将交互路由(上传/响应)提取为模块(
bace0642) - modules: 将控制平面路由提取为模块(
454c61e0)
修复
- control: /v1/sessions 忽略了 limit/offset(以字符串形式传递)(
9fd3c5d2) - kernel: 将规划叙述排除在答案、实时流和 FAQ 缓存之外(
60655128) - memory: 回收进程树、限制主机缓存、添加泄漏浸泡测试(
2308c075) - site: 在将 CTA href 设为绝对路径之前替换 https://vectorres.ru(
cdf63962) - distrib: 在下载页面显示真实归档大小(
97942c9b) - state: 匿名会话解析出每会话用户作用域(
e2feba73) - site: 绝对解析页头 CTA/导航 href,使其在 /docs 页面下也能工作(
64565aaa) - web: 对查询参数进行百分号解码(
6adaac3f) - bench: 在存储打开时恢复孤立的运行中运行(
777f4c3c) - admin: 为工程师代理提供无限预算组(
4424a2e6) - host: 访问日志模块与插件路由(
512b22d7) - platform: 将文档附加到服务类型(types/ 回退到 services/)(
31ddbe31) - distrib: 下载页面上可读的代码块(
02a3c0bf) - hot-reload: 实时提供 config/web,清理已移除的工具/钩子,加固重载(
8bfe44bc) - workflow: 在服务器运行时上运行 HTTP 触发的工作流(
009d7157) - rmasla,ngu: 覆盖 Berdsk 分支并启用 NGU 组计划(
81222327) - drom: 仅推荐完全匹配的房源;添加驱动/里程过滤器(
fa2fc9ac) - personal-demo: 使用正确的俄语星期缩写(пн вт ср чт пт сб вс)(
00714a8a) - tests: 修复遗漏的 KernelServices 调用点和 Identity::merge 伪造(
3f1e0ed0) - chat: 排空流接收器、UTF-8 安全的 SSE 解码、项感知截断(
68f1f255)
其他
- kernel: 使 标记规则明确说明显示什么以及其后可以跟随什么(
f7c22519) - 构建计时分析器、磁盘回收器、工作树目标辅助工具(
202cb7b0)
2026 年 9 月 14–20 日
新增
- reactions: 将反应移至模块事件总线(
a67573d6) - ports: 添加反应动作端口(Agents v3 + Workflow)(
72ea0463) - events: 添加模块事件总线(B2 步骤 1)(
89f36319) - hooks: 将 memory 钩子移入 agent_os_memory(B2)(
d15749b7) - hooks: 将 model_router 钩子移入 agent_os_model_router(B2 试点)(
d901f8ce) - channels: 将 storage 通道移入 agent_os_channel_storage(
94b42f6f) - channels: 通过 ChannelSink 进行通用出站分发(P3)(
c8fa80a6) - channels: 关闭文件输入、状态和预算复制的端口缺口(
ceafdd93) - channels: 将 yandex messenger 移入 agent_os_channel_yandex_messenger(P2)(
cd2409ae) - channels: 将 vk 移入 agent_os_channel_vk(P2)(
1c4e75d4) - channels: 完整的 telegram 对等(视觉效果、分页、工具事件、欢迎)(
2ce0c4b2) - channels: 将 telegram 移入 agent_os_channel_telegram(P2 核心)(
ec5fb207) - channels: 在 agent_os.Turns 结果中暴露 pid(
2e77361c) - channels: 将 email 源移入 agent_os_channel_email(P1b)(
30e513e9) - channels: 添加 agent_os.Tasks/Job 抽象(宿主拥有的运行时)(
9c19dc6f) - channels: 在 agent_os.Turns 中接受入站附件(P1 前置条件)(
d728a20e) - channels: 为出站扇出添加 agent_os.Sinks 端口(P1 前置条件)(
b22bbd35) - channels: 添加 agent_os.Allowlist 端口(P1 前置条件)(
cb77586d) - channels: 将 agent.yaml 中的激活项接入 supervisor(
81ae7267) - channels: 添加 ChannelSource 契约 + supervisor(P0.3)(
a5b22e03) - channels: 添加 agent_os_channels 核心(ChannelSink 契约 + sink 总线)(
59eb7a92) - channels: 添加 agent_os.Turns 端口 + 流式 sink + 宿主适配器(
5d3dcbda) - auth: 通过 agent_os.Oidc 端口将 OIDC 登录路由移入 agent_os_auth(
c12ec23e) - dashboard: 将系统健康快照提取到 agent_os_dashboard 模块(
68339c03) - feedback: 将点赞/点踩界面提取到 agent_os_feedback 模块(
3220c6ef) - model_router: 将管理界面提取到 agent_os_model_router 模块(
da4de7e1) - memory: 将内存检查提取到 agent_os_memory 模块(
83bdb428) - connectors: 将 OAuth 回调界面提取到 agent_os_connectors 模块(
622593e4) - bench: 将基准管理界面提取到 agent_os_bench 模块(
db041e7e) - modules: 提取 ops/proxy/approvals/cron/auth 界面 + 后期宿主服务(
a74227b2) - distrib: 从分发模块提供下载页面(
7762d8d0) - admin-nav: 从 /v1/system/ui 动态生成 shell 导航(B7 v3)(
608bb461) - admin-nav: admin_ui 拥有的导航注册表 + 内核 /v1/system/ui(B7)(
56a6f324) - workflow: 功能拥有自己的管理页面(B7 v1)(
76eb33d9) - workflow: 移动 run-events 路由;为 agent_os.Events 添加 run_id 过滤器(
4dc92916) - workflow: 将管理 API 路由移入模块(
8a316d76) - routes: agent_os.RequestContext 服务(每请求的主体/作用域)(
6654d78c) - workflow: 将 webhook 路由作为模块 Route 贡献(
88f77cfb) - host: agent_os.Identity + Approvals 端口(
1c0210f1) - host: agent_os.Outbox + DeadLetter 端口(
37da67d9) - host: agent_os.Checkpoints 端口(
6d1d0a3d) - host: agent_os.Sessions 端口(
71df35d6) - host: agent_os.Events 端口(
3172bbe8) - host: agent_os.Messages 端口(
2e75e52e) - modules: 宿主服务、能力、模块脚本、llm_cache(
8430ca14) - modules: 通过 abi_registry ObjectList 连接 docs/widget 稳定对象(
f578a305) - abi: 为 abi_trait 添加专有名称属性(
0147acf9) - abi: 添加开放的、事件驱动的服务注册表 + ObjectList 加载(
620ad724) - modules: 双传输模块(链接 + DLL)通过共享 SDK(
b31dc84a) - modules: 将 distrib 和 demo 界面提取到模块(
30292fea) - modules: 将管理 UI 提取到 agent_os_admin_ui 模块(
3f6cfd44) - modules: 分层文档引擎 + 自包含站点(嵌入式 web、目录驱动的文档)(
aee5a37f) - site: 将 markdown 网站提取到内部 agent_os_site 模块(
fd2d42dc) - web: 为稳定 Route 接口添加请求/响应头(
85a860c0) - docs: 内部文档模块(嵌入式 agent-os-docs、运行时 markdown 渲染)(
061a6f6d) - widget: 内部 widget 模块(将资产嵌入为稳定路由),服务器挂载模块路由(
72fdd881) - modules: 统一的 ModulePackage(内部 Rust / DLL)+ 包实体化(
5a3d5238)
变更
- modules: 将可观测性路由提取到模块(
3a4e40b9) - modules: 将原生核心钩子移到钩子总线上(
1a7aa7c2) - modules: 将剩余工具引擎并入所属模块(
e6c4ad37) - modules: 提取 web、agent 和 mcp 工具模块(
d0668a0d) - modules: 提取 documents、duckdb、sql 和 state 工具模块(
ed49e85b) - modules: 将 google 和 yandex 工具引擎提取到模块(
b9a418e7) - modules: 将 vk/email 工具引擎并入其渠道模块(
d889b5c4) - kernel: 将 hook-services 和 onnx 句柄并入 KernelServices(
582d8f31) - kernel: 将共享存储并入 KernelServices(
30ea8e3e) - kernel: 将身份、允许列表和审批角色并入 KernelServices(
326d2f69) - kernel: 用 KernelServices 接缝替换类型化功能字段(
da7ba8c0) - kernel: 将成本核算和审计日志提取到 kernel/audit(
30ba40e4) - kernel: 将 provider/store/service 接线提取到 kernel/wiring(
18340c1c) - kernel: 将用户输入、事件和审批流程提取到 kernel/interaction(
5352abbc) - kernel: 将系统调用分发、调度和轮次循环提取到 kernel/runtime(
b9b4a442) - kernel: 将工具执行和发件箱提取到 kernel/tool_exec(
da0dd3f8) - kernel: 将钩子管道提取到 kernel/hooks(
6578366f) - kernel: 将内联内核测试移入 kernel/tests.rs(
73d104d2) - kernel: 将进程生命周期系统调用提取到 kernel/process_lifecycle(
f01a01e0) - kernel: 提取 agent 模板和预算门控(
5506b5ff) - kernel: 将会话生命周期提取到 kernel/sessions(
7ef751de) - kernel: 将每进程 setter 和 builder 提取到 kernel/process_config(
ffcb4981) - kernel: 将监督和隔离提取到 kernel/supervision(
926b728e) - kernel: 将事件发射提取到 kernel/events(
0bcb6742) - kernel: 将预算组管理提取到 kernel/budget(
543360c8) - kernel: 将进程树和并发辅助工具提取到 kernel/process(
ba7651e1) - kernel: 将工具/钩子管理提取到 kernel/tools(
a46aea5b) - kernel: 将安全膜和 Default 实现移出 kernel.rs(
3988bad6) - kernel: 将 LlmService 实现移入 kernel/services(
b0a96543) - kernel: 将 hook/escalation/tool/subagent 服务实现移入 kernel/services(
48aeda66) - kernel: 将 IpcService 实现移入 kernel/services(
9e56809d) - kernel: 将进程树和运行循环类型移入 kernel/types(
8fd5d0aa) - kernel: 将状态无关的辅助工具提取到 kernel/helpers(
21e03f30) - connectors: 将 OAuth 引擎 + OIDC 提供者注册表移入 crates(
7d1f950e) - connectors: 将加密令牌存储移入 agent_os_connectors(
183d6e47) - oidc: 提取共享的 agent_os_oidc 协议原语(
45351e47) - workflow: 将配置发现移入模块(
2cdd58b4) - workflow: 将 workflow_tool 移入 workflow 模块(
56126e14) - workflow: 将引擎 + 存储移入 agent_os_workflow(
556ea388) - workflow: 将契约提取到 agent_os_workflow_api + 中立持久化 api(
25e55e49) - abi: 使 abi_registry 成为可重入工厂(
8a5b2445) - plugin-api: 合并稳定对象注册(移除 interface/destroy)(
5ceda882) - module-api: 用 OwnedObject/#[abi_trait] 替换 StableObject/#[ao_interface](
eb8ed6ca) - 将 crates 归组到 crates/module-system + crates/modules 下;添加 agent_os_builtin 门面(
a1703ec4) - docs: 将 agent-os-docs 内容与 agent_os_docs 放在一起(
e827bc8b) - widget: 从文件扩展名推导 dist 内容类型(
a266eb05) - widget: 在 build.rs 中生成 dist 资产表(
45155e9e) - widget: 将 widget npm 项目与 agent_os_widget 放在一起(
f374d3bb)
修复
- chat: 将缓冲的答案投递到流式 sink,UTF-8 安全的 SSE 解码,感知条目的工具结果截断(
6f5a64af) - modules: 将链接的传输连接到 abi_objects 贡献 (
3dc7f523) - sdk: 仅在 DLL(no-default-features)构建中发出 ao_plugin_init (
313c9df0) - widget: 当 npm 不可用时保留现有的真实 dist(不覆盖占位符)(
bfc5d650) - runtime: 即使状态为 active,也在激活时重新应用模块贡献 (
021e435c)
其他
- module-api: 添加 agent_os_data arena 实验 + 工作区成员资格 (
e16aa03c)
2026年9月7日–13日
新增
- server: 在启动时启动模块运行时(kernel + web)(
ec745820) - modules: 实时 Registry 中的延迟项(在 provider 之前应用)(
a17d21fe) - modules: 常驻内核模块,带 /v1/system/* 内省 (
4a581748) - web: DLL 路由端到端(register_registry_stable + foreign_route)(
ef2ac13c) - web: 稳定的 Route 接口、路由注册表和 RouteTable (
549966fe) - modules: 按插件归属插件注册并将数据桥接到 Batch (
3a3ecb75) - modules: 运行时将活动模块镜像到实时 Registry (
3b76f85a) - modules: 带贡献者、整批应用和事件的实时 Registry (
085ae8c0) - modules: 类型化 Data|Stable 注册表 + 稳定接口/结构体宏 (
cdaa3831) - modules: wire() 阶段和可选依赖 (
5925e9c4) - modules: semver 模块版本和统一依赖要求 (
fc5d241c) - modules: 运行时驱动(图激活、生命周期状态、内置清单)(
58d0e2c6) - modules: 制品安装、归档解压、捆绑物物化 (
7879db37) - plugin-abi: 自描述单 DLL 模块(描述符 + 嵌入式捆绑物)(
276730b9) - plugin-abi: 模块生命周期宿主适配器端到端 (
61815f5c) - plugin-abi: 收集槽位提供者和贡献 (
5a690a8d) - plugin-abi: 脚本函数宿主适配器(JSON 桥接)(
a2a76cf3) - plugin-abi: 通过 create_hook 进行钩子引擎解析 (
9d91da4b) - plugin-abi: 工具引擎宿主适配器端到端 (
05fbe5a5) - plugin-abi: ABI v5 — 引擎类型、脚本函数、槽位、生命周期、下载 (
aceb2189) - modules: 增量模块系统骨架(图、槽位、服务、访问)(
fd519dee) - hooks: context_summary 和 schema_guard (
faf410d5) - hooks: 带端口和自动排序的每轮 bag 组合 (
900f9074) - onnx: 在服务器和 Windows 发行版中启用 ONNX 推理 (
dbccbed3) - hooks: 添加原生 llm_cache 用于无工具推理 (
64eebd00) - onnx: 运行时状态端点 + 服务路径 e2e;协调消费者 (
18fe2c2f) - intent-router: 基于分类器的分诊钩子 (
3d0ecb7f) - onnx: 在运行时注册 GPU 执行提供程序库(阶段 2)(
5dce4cd7) - onnx: 动态加载 ONNX Runtime(load-dynamic + 运行时解析器)(
99f91081) - onnx: 可配置执行提供程序(cuda/tensorrt/directml/rocm),带 CPU 回退 (
c92034f6) - model-router: 持久化统计、复用探测、收紧缓存 (
8d36a534) - onnx: 按代理的 NER 模型选择(模板 + ner_model)(
9455211f) - safety,onnx: vault 加密+导出、SentencePiece/tokenizer_config、内核 e2e (
252ce3eb) - model-router: 基于分类器的模型路由 + 管理页面 (
9bfd32eb) - hooks: language_guard 钩子 + 自动下载 langid 模型 (
729b3baa) - safety: 对脚本 llm() 应用 guard/pseudonymize(可选择退出 safety:false)(
43e8f2fe) - onnx: 急切预加载 + HF sha256 固定 (
2e5a0ec7) - onnx: 管理端点 + 运行时指标;在发行版中附带 onnxruntime (
b9930911) - safety: LLM 辅助检测器(detector: llm)+ WordPiece/BPE 分词器 (
e7df7d26) - hooks: circuit_breaker 钩子以配置原生断路器 (
f4b3a2aa) - hooks: 带工具结果证据的 groundedness v2 (
af32eacc) - provider: 带故障转移路由的原生断路器 (
909e6b7f) - hooks: groundedness 输出护栏(归档证据、通知)(
3b8696ad) - safety: guard + pseudonymize 钩子、本地 ONNX 服务、脚本模型 API (
36c7f2c2) - approval: 条件门控(when)和自定义卡片文本(action)(
d678ccda) - hooks: loop_guard 以打破重复的工具调用循环 (
3f17c796) - hooks: 为组/用户预算层触发 on_budget_threshold (
10c5df33) - escalation: webhook 操作员接收器 + 记录操作员通道设置 (
3ebf5589) - escalation: 实时操作员交接(钩子、工具、投递)(
3cdad7cd) - sandbox: 网络出口隔离(allow_net)+ 违规指标 (
9251ef7e) - hooks: 护栏重做循环(在输出无效时继续轮次)(
9feee3b6) - sandbox: linux landlock 文件系统限制 + cgroup v2 限制(2b WIP)(
9dec1343) - sandbox: 文件系统限制 + 按代理策略 (
1799d827) - sandbox: 宿主生成进程的无根资源限制 (
f37860b7) - hooks: 更智能的 compact_results 和流式 format_guard (
2bb01318) - supervision: 毒轮隔离 + 持久死信 + 重置 (
503b55d0) - streaming: 用于护栏答案重写的显式替换信号 (
5029c2f2) - supervision: 代理的重启策略 (
d821bf90) - hooks: 查询浓缩钩子(kind: condense)(
fd919184) - hooks: link_check 输出护栏(接地 + 实时 HTTP)(
c85f197d) - reactions: 声明式事件触发器 + 消息事件 (
dbb28c39) - hooks: 工具结果缓存钩子(kind: tool_cache)(
c10c535b) - steering: 实时代理的暂停/恢复/中断/终止控制平面 (
733535a2) - outbox: 向工具暴露幂等键 + 声明式 saga 工作流步骤 (
34d47a67) - hooks: 环境 RAG 钩子(kind: rag)复用 BM25 归档 (
d213cdeb) - outbox: 持久至少一次副作用 + saga 补偿 (
641a000c) - pending: 持久用户输入/await_event 等待,重启后恢复 (
4b0a6842) - pending: 用于外部决定的待处理请求的协调钩子 (
955ec87e) - pending: 持久待处理请求(审批),带幂等解析 + 恢复 (
7e26415e) - durable: 可选持久会话(自动检查点 + 启动恢复)(
576f30b7) - scheduler: PriorityPreemptive 的抢占式 time_slice (
f7fbb878) - hooks: 完整拦截面、指标、组合、插件 ABI v4 (
2c95df9f) - idempotency: 按工具自动策略、脚本/工作流键传递、server.yaml 接线 (
120966e7) - idempotency: 为有副作用的工具提供可选幂等键 (
80c62ba0) - metrics: 进程内 Prometheus 指标 + /metrics 端点 (
db88b334) - hooks: 运行时授予/撤销 + 工作流工具步骤覆盖(审查项 3、4)(
f192e5ed) - android: 按代理登录门控(OIDC WebView + 密码)(
60b04c8a) - async-actions: async_action + show_link 工具、跨渠道 URL 按钮 (
3687628d) - hooks: 输出护栏 + 工具允许列表门控(审查项 1、2)(
f135e1d2) - hooks: panic 隔离 + 按钩子墙钟超时 (
854d5252) - plugins: 钩子拦截 ABI 对等(ABI v2)(
74edef16) - hooks: 工具/推理/生命周期拦截点 + 审计日志 (
0d3e1d5d) - await_event: 通用异步操作工具 + /v1/events/callback (
b1b48f1e) - auth: 按代理登录要求 + 动态允许发送者允许列表 (
e8492a14) - approvals: 法定人数 + 逻辑/物理审批人 + Yandex 操作员通知 (
a273e040) - site_tool: rest_tool 别名 + base64 过滤器 (
a90eb823) - approvals: LLM 摘要 + MiniJinja 上下文模板 (
a1389545) - approvals: 将对话上下文附加到审批请求 (
9a455571) - approvals: 向即时通讯工具发送操作员通知 (
5488b5b9) - approvals: VK + Yandex Messenger 批准/拒绝回复 (
4c951064) - approvals: 操作员收件箱(审批队列)(
386b41e6) - rasp_tool — 交通时刻表(Яндекс.Расписания,免费密钥)(
be40c24f) - approvals: 人在环审批门控 (
60f1335c) - mcp_tool: 向代理暴露外部 MCP 服务器工具(stdio + 可流式 HTTP)(
a8daee07) - yandex_tool: 以用户身份使用 Яндекс.Диск (REST) 和 Яндекс.Календарь (CalDAV)(
2ac8de92) - yandex_messenger: 默认禁用工具调用回显,修复 ThematicBreak 渲染,文档(
46537059) - map_tool — 带标记的地图(web Leaflet,TG/VK 中的静态地图,Android 地理链接)(
455bd347) - Yandex Messenger 入站/出站通道(轮询机器人 + 接收器)(
c15d20b7) - OIDC 登录(Google/Yandex/Tinkoff),小部件登录,通用 OAuth 连接器(
e29a63be) - Telegram/VK/Android 中的图片预览 + 当设置输出时 image_tool 发送默认仅限暂存区(
6c82434f) - image_tool(裁剪/缩放/灰度/旋转/翻转/调整/格式)+ 小部件中的内联图片渲染(
e61d7f51) - telegram/vk 上的 request_attachment + 修复 Android 拍照崩溃(
1988be1f) - 来自 email/telegram/vk 的入站附件(受 agent attachments.enabled 控制)(
7b34d612) - android: 附件(文件/相机上传)+ request_attachment 输入提示(
ac7f798e) - google_tool: 文档样式中的字体族、字重和背景色(
dfb543a9) - request_attachment 工具(代理发起的文件/截图/相机输入)+ 小部件输入请求提示(
e4a312ea) - google_tool: 富文档/幻灯片/表格 - 导入/导出、结构化构建、图表(
896fc7ea) - 小部件附件(文件/截图/相机)+ 上传端点 + 按代理能力(
8a903dfd) - Google Calendar + Drive/Sheets/Docs/Slides 工具(服务账号 + 用户 OAuth)(
8a8c1cc0) - 视觉工具(OCR/多图)+ 多模态图片输入(
8a7a63d1) - 检查点/恢复 + 墙钟时间限制 + 生成上下文 + LLM 故障转移(
130ca7d7) - 系统调用能力 + 提供商故障转移链(
f0cfecbc) - 脚本 IPC(send/recv/try_recv/wait/reap)+ 调度器优先级/截止时间 + VK 接收器(
5b53fbfa)
变更
- plugin: 将宿主拆分为轻量 plugin_core + 重型 host(
9b00690f) - modules: 使内核的 web 依赖变为可选(连接能力,可选加入 WebModule)(
9326ca1b) - web: WebModule 拥有路由;内核提供内省(延迟)(
62256699) - modules: 统一注册表(Data | Object),路由作为注册表(
b42ca8c9) - scripts: 移除 Rhai,使脚本仅支持 JavaScript(
55d69bbe) - map_tool: 通过 Photon 而非 Nominatim 进行地理编码(生产环境 0.8 秒而非 20 秒以上)(
eb9814d9)
修复
- tools: 在 compose 测试中设置 ToolContext.onnx(
ddee0752) - deploy: 从 build_distrib.sh shebang 中去除 UTF-8 BOM(
dc01dff2) - deploy: 从 build_distrib.sh shebang 中去除 UTF-8 BOM(
69b4e356) - tests: 在集成测试中添加缺失的 ToolContext.onnx 字段(
892ae362) - onnx: 将输入截断到模型最大长度(避免位置嵌入广播失败)(
7016ce52) - onnx: 下载 ORT 运行时允许 github 主机(
7935a8fb) - onnx: 当执行提供程序初始化失败时回退到 cpu(
4977100d) - vision: 设置 LlmRequest.apply_safety(安全 llm() 变更后的构建中断)(
a02e7ae9) - tests: 注册 job_done 桩以使完成守卫测试终止(
55b8249b) - sandbox: 仅启用所通告的 cgroup 控制器;放宽 cpu 测试(
bfad44b1) - sandbox: 在子进程中使用 getpid() 进行 cgroup.procs 放置(
006165d3) - sandbox: 保留 cgroup 放置 errno 以便诊断(
463884cb) - deploy: 通过 SSH 分离服务;加固 ssh/scp 和健康检查(
e2f70f3e) - scheduler: 从配置映射所有策略并在并发限制下保留策略(
3d5f0fd5) - hooks: 脚本钩子的会话暂存区、生命周期审计事件、hook_tool 对等性(
3a8cc5b7) - oidc: 从请求派生重定向源(Host + X-Forwarded-Proto)(
e296236f) - widget: 停止时关闭悬空的工具卡片;文档:审批角色端点(
d27e8c8e) - approvals: 通过 self.emit 发出,取消时清理待处理项,移除冗余的操作员确认(
b83b9f18) - yandex_messenger: 将地图块渲染为静态 PNG(合并 map-tool)(
c7593936) - widget: 在会话重置和模型切换时重置成本/token 计数器(
49578039) - sql_tool: 通过 BigDecimal 解码 numeric/decimal/money(
52db4e42) - sql_tool: 使用原生 Postgres/MySQL 驱动以便 numeric/decimal 和模式内省解码(
5c058f60) - tools: shell_tool cwd 从工具文件解析,duckdb 池键稳定,sql_tool 安装任意驱动;db-demo 使用 {session} + 自动 id(
ac79c30e) - 将 office 文件发布到会话暂存区 + 移除冗余的 send_file(
ecd63c64) - office_tool 会话模式临时路径重复(绝对临时基路径)(
84ae8abf)
其他
- output-guard: 阶段 A/C + 阶段 B(未验证)+ 计划 37(
1a8f78d6) - 将 approvals/async 文档(23-25)添加到文档侧边栏 + 文档索引(
7a1f870a) - S3/WebDAV/FTP 工具 + 源通道 + CronSink::Storage 接收器(
6f7d8ed7) - 池化 Chromium 进程,通过隔离的 CDP 标签页(浏览器上下文)复用(
12f3964e)
2026 年 8 月 31 日 – 9 月 6 日
新增
- scripts — get_tool_result、run_subagent、llm_json(结构化输出)、二进制 fs + base64;fs 写入限制在会话临时目录(
66c0f204) - scripts — temp_dir + fs_write/fs_list、caller()、list_tools()(
19493b5a) - scripts 可通过 call_tool(name, args) 调用其他工具(
7150b3d4) - Android 文件块打开/保存(FileProvider + SAF)(
6bd787bc) - Android 文件块打开/保存(FileProvider + SAF)(
fa40a9f6) - VK 社区机器人通道(Long Poll)+ vk_tool(通用 VK API 网关)(
feb82fb0) - 离线工具测试 + cron 立即运行/时区 + duckdb 模式内省(
9395a0ce) - 可折叠文档侧边栏(手风琴)+ 添加第 20/21 章(
ef1cedff) - 按会话暂存存储 + file_tool 临时源 + shell_tool temp_dir(
1cb8aa02) - 文件投递工具 + 文件可视化块(web/telegram/android)(
0c05bf80) - 脚本化和静态 HTTP 路由(http_route/static_route)+ route_tool(
06dea50b) - 通用 DuckDB 工具、脚本 db/shell 辅助函数、shell_tool(
c00a460a) - 原生插件(Rust DLL,稳定 C ABI)— 工具、钩子、接收器、源、通道、路由、DuckDB(
af33c08e) - 文档侧边栏导航(分组 + 上一页/下一页)+ 小部件和通道参考(
60d56688) - 命名模型配置(server.yaml models:)及按模型的提供商和定价(
7298496d) - 记忆取代 + /v1/memory + 反馈循环;小部件默认模型、会话持久化、HMAC 身份(
7c654b07) - 持久记忆召回 + 用户范围追踪搜索(
78fae320) - UI 内基准测试运行器,带持久化 DuckDB 运行历史(
5f46a7ac) - 变更监视器(拉取触发器),带可插拔源(
e56a1d18) - 入站 webhook + 电子邮件通道 + 统一出站接收器(
8653e371) - 通过 git 仓库对代理配置进行版本控制(启动时克隆/固定 + 轮询重载)(
42b398d8) - 规范用户身份 + FAQ 缓存质量门(
2c4aae5a) - 共享 TurnRunner + HMAC 签名的 web 用户身份(
7b404536) - 工作流运行作为一等进程 + 有状态代理会话(
24b8b566) - 在小部件中延迟加载 chart.js(代码分割包)(
c9625c75) - 工作流访问控制(模板范围)+ 代理步骤预算(
ecb64a85) - workflow_tool CLI 运行器 + 文档可发现性(
c287ba2e) - 结构化代理输出 + 声明式工作流(
52beffab)
修复
- office 工具在启动时挂起服务器(替换 build_router 中的 block_on)(
c08f5259) - 在渲染页面之前构建完整的跨文档链接映射(
010338d3) - 将跨文档 markdown 链接重写为映射的 href(doc-*.html)(
2f4c908a) - 脚本沙箱和路由 — exec/fs_read/config 参数,精确优先于通配符路由,site_tool --db-readonly,route_tool --args-file(
4ec5263a) - 在硬杀死后持久化 DuckDB 存储(避免 WAL 中的 DDL+UPDATE)(
2fbebea3) - 解析多指令 logging.filter 而不会在启动时 panic(
414b9cae) - 记忆钩子从损坏的 DuckDB WAL 恢复(
257f160f) - 报告所有 LLM 轮次的回合 token 总数(而不仅仅是最后一轮)(
211c629f) - 可靠地捕获每回合 Cost 事件(基准成本间歇性为 0)(
ff921853) - 基准模式,预算无限制 + 恢复 faq short_circuit(
25b0c4a2)
其他
- 限制并发 Chromium 实例数(AGENT_OS_MAX_BROWSERS,默认 4)(
211b63dd) - 缓存已下载的 chrome-headless-shell(跳过重复下载)(
95eafe8d) - 修复 pdf chrome icudtl.dat + 相对路径 + 文档导航/完整性(
d4e8c259) - android apk — 文件块打开/保存(
23557d46) - 命名模型示例 + 在日志过滤器中显示 agent_web_bot 警告(
e4443d79)
2026年8月24–30日
其他
- 在发布构建前添加 swapfile(3.6 GB 虚拟机上的链接 OOM)(
6ef72e77) - 使用 -j 1 构建以避免 3.6 GB 虚拟机上的 OOM(
81ea1d02) - 添加 email_tool 和 cron email sink(通过 lettre 使用 SMTP)(
450272af) - 添加 subagent_tool(将任务委派给子代理)(
7ca288cc) - 添加 visualize_tool 和工具结果组合(源)(
2256904e) - 从 cron 页面创建和取消 cron 任务(
58329e9e) - cron 任务页面(计划任务 + 运行历史,感知作用域)(
3f0870d3) - 对非可视化工具结果跳过 result_blocks 流(
ee488f4a) - 自动缩放折线图/面积图/散点图的 y 轴(仅柱状图保留零基线)(
75951605) - 抽稀/截断 x 轴标签以避免重叠(
1f065ae6) - 自动缩放图表 y 轴(美观刻度,柱状图保留零基线)(
4d6d5c54) - 合并 cron-support — 带运行历史的计划任务(
d3f3bc12) - 优化图表/表格渲染 + 懒加载分页(
d9140b9c) - 持久化的每次安装用户 ID(x-user-id)+ 完成时声音开关(
be4745ea) - 示例、文档和端到端测试(
5d1f8649) - 计划任务(配置 + 脚本 API)及运行历史(
4d54824c) - 按创建日期排序,最新在前(
9502c9be) - 提取推理辅助函数,重试瞬时推理错误(
5d07c6cd) - 新消息时重置已展开的工具卡片(
811bbe79) - 每条消息重置工具调用展开状态(
43a8bd0b) - 流式传输期间也自动滚动(
ff27b258) - 图标发送按钮;工具阶段隐藏空气泡(
314a45c4) - 同步渲染 markdown 以停止闪烁(
89f506f3) - 流式传输时使用纯文本,滚动到答案末尾(
bfea24b4) - 仅在响应结束时自动滚动(
36dfc1f9) - 减少流式传输卡顿(节流 markdown,禁用尺寸动画)(
5ee4da03) - 修复自动滚动、反馈点击、折叠工具卡片(
7fff7e41) - 实时渲染最终答案 token(
d5cdbf7e) - 添加 Agent OS 聊天客户端应用(
9842970e) - 提供 android apk + 下载页面链接(
8de19701) - sleep_ms 辅助函数;site_tool:重试/退避 + 带默认值的大小写不敏感过滤器(
1ee6011d)