概述
本站記錄的 v5.1.54(2026-11-01 查核)之後,上游在三天內連發五個 release:v5.1.55、v5.1.56、v5.1.57(皆 2026-11-01)、v5.1.58(2026-11-02)、v5.1.59(2026-11-03)。這五版的兩條主軸是:
- senpi runtime 三次更新:engine runtime 連續推進到 2026.10.31-2、2026.11.2-1、2026.11.2-3,Claude 訂閱登入路徑重整(改走 Claude Code CLI、修復又穩定)、瀏覽器程序清理與 session 啟動速度。
- TLS/憑證信任收緊 (trust tightening):engines 不再讀
SSL_CERT_FILE/SSL_CERT_DIR、Linux 只信任散布套件產生的憑證 bundle、CA importer 分階段導入 launcher trust stage 與omo trust ensure。
第一條主軸:senpi runtime 更新
v5.1.57:senpi 2026.10.31-2——Claude 訂閱登入改走 Claude Code CLI
senpi 2026.10.31-2 對 Claude 訂閱登入做了大幅重整(#11983):
- 登入路徑改變:Claude subscription sign-in 改經 Claude Code CLI;舊 sign-in 的帳號會被要求再登入一次(“accounts from the old sign-in are asked once to sign in again”),但保留名稱、pin 與順序。
- 用量限制解鎖:
/gpt-account unblock <id>可在 provider 端重置後清除 usage-limit block。 - OAuth token 導正:給 plain
anthropicprovider 的 Claude OAuth token 改為「拒絕並指向/login anthropic-subscription」(“is now refused with a pointer at/login anthropic-subscription”),不再被當成 Claude Code 送出——因此 omo 安裝時不再改寫 engine 的 Claude Code 版本。 - skill 載入上限取消:prompt 引用的每個 skill 都載入,不再停在五個(“every skill a prompt invokes now loads instead of stopping at five”)。
- 其他:extension 的 settle handler 緩慢時,完成的 turn 不再卡在 “Working”;startup 會在 skills root 的 ignore file 藏住 skill 資料夾時提出警告。
v5.1.58:senpi 2026.11.2-1——登入修復與瀏覽器 graceful quit
v5.1.58 的 release notes 首句即為:“Claude subscription sign-in works again.”(#12126)——v5.1.57 改走 Claude Code CLI 後出現的登入問題在此修復。
同版也處理瀏覽器程序清理(#12068):
- ultimate-browsing template 的 graceful quit:在 macOS/Linux 上,executor 為每個 Playwright template 開自己的 session;timeout 或取消(Ctrl-C)時對 template 的 process group 送 SIGTERM,最多等 5 秒再 SIGKILL,讓 Chrome 能乾淨退出並移除 macOS code-sign clone 與 temp profile,不再成為孤兒程序。
- omowright 引擎 pin 版本:bundled omowright browser engine 固定在「pipe-launched browsers 也獲得 graceful quit」的 release。
- dev-browser skill 釋放 port:builtin
dev-browserskill 的 macOS/Linux standalone command 在server.sh前先跑 release step;當 9222 沒有回應時,對占用 9223 的程序送 SIGTERM(等最多 5 秒,倖存者才 SIGKILL),讓start-server.ts接手時 port 已淨空、不再走到kill -9(#12071)。
v5.1.59:senpi 2026.11.2-3——session 啟動與程序保護
senpi 2026.11.2-3 修正兩件事(#12200):新 session 的第一則訊息不再停頓數秒;會命中受保護 process 的 agent kill/pkill/killall 指令改為拒絕。
v5.1.58 首句「Claude subscription sign-in works again」修的是哪一版的問題?
💡 想先看個提示?
看 senpi 版號時間線:2026.10.31-2 → 2026.11.2-1。
第二條主軸:TLS/憑證信任收緊
v5.1.56:engines 不再讀環境變數憑證,Linux 只信任散布套件 bundle
v5.1.56 的憑證信任變更直接影響自訂根憑證的使用方式(#11956):
- 環境變數憑證失效:desktop app 或自行啟動的 OmO server 所啟動的 engines,不再讀
SSL_CERT_FILE或SSL_CERT_DIR。自訂根憑證需裝進 OS 憑證庫,或加到 desktop app 的 Settings → Extra CA certificates;自行啟動的 server 仍認NODE_EXTRA_CA_CERTS。 - Linux 收緊:只信任散布套件 (distribution) 產生的憑證 bundle;直接放進
/etc/ssl/certs或/etc/ssl/cert.pem而未跑update-ca-certificates或update-ca-trust的根不再被信任。 - 失敗訊息:如果 OmO 無法讀取 OS 憑證,失敗的請求會說明原因與處理方式(“the failed request says why and what to do”)。
- 尚未完成的部分:v5.1.56 條目同時註明「Distrusted intermediate certificates under an allowed root are not yet blocked; tracked upstream.」——未受信任的中繼憑證在允許的根之下尚未被阻擋,上游持續追蹤。
v5.1.56 起:CA importer 的 launcher trust stage
同版(#11956,issue #10762 的一部分)加入 engine CA importer 的 launcher trust stage(發射器信任階段):
- 驗證並採用繼承的 generation(generation 指憑證庫的版本代),或取得私有 generation 並以獨立的 hop bound 執行一次。
- 匯入失敗時只保留 explicit extras,隱式預設輸入保持關閉;子環境變數恢復原值。
- release notes 明確說明這是分階段推出的第一段:“This is the launcher increment of the staged rollout, not the transport-error, background-refresh, trust CLI or desktop integration.”——後續還有 transport-error、background-refresh、trust CLI 與 desktop integration。
v5.1.59:omo trust ensure——trust stage 的 CLI 落地
v5.1.59 在信任主線上補上 CLI(#11969,issue #10762 的一部分):新增 omo trust ensure --json [--wait] [--lease-pid <pid>],由 launcher trust stage 回應;它在 launch budget 內匯入、寫入私有 generation 並租用 (lease) 它,retention sweep 不會移除執行中 process 仍在使用的 generation。
兩條主軸之外的行為改變
delegated task 不再 fallback 到 parent session 的 model(v5.1.58)
delegated task(委派任務)的模型選用規則改變(#12010,修 #12006/#11781):
- delegated task 只在其 category 或 agent 指定的 model chain(模型鏈)上執行,不再因任何失敗退回 parent session 的 model。
- 用量限制、登入缺失或被拒、content-policy 拒絕、指定模型全面過載等失敗,一律以
failure_kind: "model_chain_exhausted"結束任務,錯誤訊息列出每個嘗試過的 model 與原因(含 provider 回報的 reset time)。 - 適用於每個 category 與 workflow nodes;
categories.<name>.provider_lock留在omo.json中會被忽略。
reasoning 預設全面調高至 high(v5.1.59)
所有原本停在 medium 或 xhigh 的 builtin reasoning 預設改為 high(#12094,修 #12085):daily-normal lane 的 claude-opus-5-5 從 medium 改為 high;daily-heavy 與 Fable 5.5 launch rungs 從 xhigh 改為 high;geeky-normal、deep-low/unspecified/quick category chains、OpenCode category catalogs、builtin agent fallback chains 與 model-fallback default 一併調整。Model ids、provider 順序與 low/max/off 級別不變。
v5.1.55 的測試規則機械化與 omo remote
v5.1.55 在兩條主軸之外亦有兩組重要新增:
- 兩支 Bun scripts 讓測試規則機械化:programming skill 內建
check-test-junk.ts——以 regex 標記測試檔中看得見的 junk classes(source greps、prose pins、fixed sleeps、.only/.skip、self-comparisons、lower-bound cardinalities),附 per-line opt-out;以及mutation-proof.ts——break 一個 production owner、跑指定測試、逐位元組還原並印出 red/green,讓 “test your test” 成為一條指令(#11972)。remove-ai-slops 的分類 9 以同一張表標記 R/F/C/D、刪除前按類別規則證明,並在報告附 Tests Ledger(#11968、#12017)。 - omo remote 家族與模型分配:
omo remote status | devices | sessions | enable | disable透過 OmO device service 以表格或--json檢視帳號裝置與其上的 sessions(底層為 typed SDK@oh-my-opencode/device-service-core,#11857);omo remote attach <device>/<session>可在 attach TUI 觀察同帳號另一台裝置的 session,暫為 observe-only——輸入會以 “remote input not enabled yet” 拒絕(#11858);omo remote先檢查 OmO 登入狀態(#11864)。另:categories 與 agents 可設models_distribution: "round_robin"將新 task children 分散到設定的 model chains,預設sequential保持原順序(#11905)。
動手升級檢查清單
升級 :動手檢查清單
逐項勾選,確認你已完成升級必要的步驟(進度會保存在此瀏覽器)
小結
v5.1.55~v5.1.59 是一個「連續修復 + 分階段推出」的縮影:runtime(senpi)三天內三次更新、登入路徑重整後旋即修復、瀏覽器與 port 清理講究 graceful quit、憑證信任從環境變數走向 OS 憑證庫與分階段 trust stage。對使用者的實際影響集中在三處:自訂憑證安裝方式、delegated task 的模型失敗語義,以及 reasoning 預設調高後的成本結構。