跳到主內容

Theme / v5.1.61

Oh My OpenAgent

AI 代理編排系統

基礎觀念

v5.1.42~v5.1.44:模型路由、記憶效率與 Engine 更新

🟡 中階|整理 OmO v5.1.42~v5.1.44 三個 release:doctor models 與 exclude_models、worktree 記憶共用、記憶讀取與來源可靠性、Bun 專案診斷,以及 senpi engine 的快取和帳戶行為。含互動測驗與升級檢查清單。

概述

v5.1.42 與 v5.1.43 於 2026-10-22 發布,v5.1.44 於 2026-10-23 發布。這三版把模型路由診斷、記憶身分與讀取、任務 host 行為,以及 senpi engine 的上下文處理接在一起。本課只整理 release notes 有明確描述的行為;上游量測值不代表本站或讀者環境的實測結果。

v5.1.42:模型路由與 Worktree 記憶

檢查模型路由,再排除不允許的模型

omo doctor --models 顯示各 task category 與 agent 啟動時使用的模型、依序重試的 fallback chain、每一層設定來源,以及該模型未執行的原因。--json 提供相同資訊給腳本。這個診斷使用與 spawn 相同的 resolver,因此可用來核對實際路由規則。

頂層 exclude_models 可用 provider/model、純 model id 或 * pattern 排除模型。release notes 說明此設定會套用到 category、agent、memory child、主 session 的 model profile、明確 task pin,以及依記錄模型重新啟動或恢復的 task child 與其 fallback chain。

讓同一個 Git repository 的 Worktrees 共用記憶

memory.auto_identity: "git" 讓 linked worktrees 解析到主 checkout 的 memory identity,包含由 Orca 建立的 agent worktrees。主 checkout 原有記憶會沿用,已綁定的 sessions 保留既有 identity;預設值 "path" 則維持原本按路徑區分的行為。若 worktree 在主 checkout 之外建立,release notes 建議把設定放在使用者層級,例如 ~/.omo/omo.jsonc。

Memory sync 開始接上裝置登入

v5.1.42 的記憶同步可以逐筆檢查新增 keyring entry,沿用已驗證的 chain state,不必每次把整條舊 chain 再交給 receiver。裝置登入後也能開啟該帳戶的 memory sync;已登入但尚未加入帳戶記憶的裝置會明確呈現未加入狀態。這些 release notes 描述的是同步基礎能力,裝置加入與核准流程見下一版。

v5.1.43:記憶讀取、來源與任務生命週期

記憶更新採增量處理

session 恢復時,記憶 commit range 改由一次 git log 讀取。recall 會沿用先前已檢查的對話答案,只重新檢查新加入的 notes。編譯後的 memory block 與大小估計可依 commit 暫存在 memory repository 的 .git 目錄供下次啟動讀取;release notes 明確說明,Git 讀取失敗後建立的 block 只使用一次、不會被保存。

每個 prompt 的 memory HEAD、nudge 與 soul notice 共用一次 Git HEAD 讀取;resume pin 已位於 HEAD 時也略過額外存在性查詢。Linux 上的 crashed-writer recovery 改以 Git 子程序繼承的 kernel file lock 判斷 writer 是否仍存活,活躍 writer 的 lock 不會被清除。

記憶紀錄不再把 agent 建議當作使用者決定

memory write 與 extracted fact 會記錄來源 user、agent 或 inferred。只有在特定條件下,緊接提案的使用者整句明確核准才會形成 user receipt;問題、保留語氣、中間插入圖片訊息或較早以前的「ok」不會被當成核准。這讓記憶可供參考,但不能代替當下的使用者授權。

裝置配對、任務與開發工具

  • omo account 可讓 desktop app 使用 CLI 寫入的同一裝置 OS keychain 登入;omo sync enable 與 omo sync approve 以兩端顯示的相同六位數代碼確認裝置加入。
  • hosted task 從開始就記錄自己的 session id;取消、遺失或被終止的 task 在 session 關閉時也會取消其 children。一般 quit 或 reload 仍保留 children 供恢復收集。
  • task model catalog probe timeout 不再直接拒絕啟動;release notes 說明 child 若確實不能使用模型,仍會以 model_unavailable 回報。
  • Bun 專案的 TypeScript lsp_diagnostics 可使用 bun check,安裝了 linter 時也加入 bun lint diagnostics;符合條件的 formatter 使用 Bun formatter 前會先確認其行為。其他專案沿用原本 language-server 路徑。
  • task-store admission 的 durable write 移到 event loop 之外,讓慢磁碟延遲該次註冊而不阻塞同一 process 的 timer、socket 與 prompt。
隨堂測驗

`exclude_models` 的用途最符合下列哪一項?

💡 想先看個提示?

它涵蓋多條會選擇或恢復模型的路徑。

v5.1.44:Engine 上下文與帳戶選擇

v5.1.44 更新 senpi engine。1M context 長對話在縮減上下文後會保留一致的 prefix 與 cache checkpoint,後續只重寫變動部分。Anthropic subscription turn 遇到 SDK 內部重試時不再重複計算 context 百分比或提早開始 compaction。即使 session provider 健康,指定的 compaction model 仍負責摘要,包括 overflow recovery。

帳戶選擇由 subscription lane 管理,因此一個帳戶被撤銷或短暫 rate limit 時,不會阻擋其他帳戶。更新 session host、queued message、turn-end 提示等行為也在同版調整;升級時可先留意長對話縮減、訂閱帳戶切換與 overflow recovery 是否符合預期。

升級 v5.1.44:動手檢查清單

逐項勾選,確認你已完成升級必要的步驟(進度會保存在此瀏覽器)

0 / 5

延伸閱讀