# oh-my-openagent v5.0.0-beta.42 - Product: oh-my-openagent (https://whatsnew.fyi/product/oh-my-openagent) - Vendor: oh-my-openagent - Date: 2026-09-04 - Version: v5.0.0-beta.42 - Original notes: https://github.com/code-yeongyu/oh-my-openagent/releases/tag/v5.0.0-beta.42 - Permalink: https://whatsnew.fyi/product/oh-my-openagent/releases/v5.0.0-beta.42 - Labels: Pre-release What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **fixed** — Anthropic native tool search no longer returns 400 errors by fixing the tool_reference field name and gating BM25 server tool injection to supported models - **fixed** — Korean and non-ASCII characters in memory slugs, git paths, and recall query planning are now preserved with compatibility for directories written by older builds - **fixed** — GitHub releases are created as full releases and the Latest badge is determined from the highest published semver rather than tag order - **fixed** — Windows SQLite handle leak no longer stalls the harness by replacing prepare() calls with exec() in credential readers - **fixed** — Conditional x-search skill ships without startup logging - **fixed** — Bun skill guidance in ultrawork directive is gated instead of unconditional - **fixed** — Senpi hooks-state lock is granted to every memory sandbox - **fixed** — Unsupported isolation traversal fails closed instead of appearing complete - **fixed** — Diagnostic pull timeout now awaits cancellation write to prevent losing $/cancelRequest on Windows - **fixed** — PATH senpi executables that do not match the running engine are rejected - **fixed** — Lead tasklist tools are deferred to tool_search - **fixed** — Hoisted bin directory resolution for scoped engine packages - **fixed** — Architect blockers closed in omob pipeline - **fixed** — Skill-source filter, cache locking, and provenance mirrors root-fixed - **fixed** — Dev binary built from the latest commits with build provenance - **fixed** — Page work routes to a real browser before the CLI - **fixed** — Browser QA and research browsing go through the eval kernel - **fixed** — CloakBrowser's venv interpreter is used in the launch step - **changed** — Terminal monitors and background Bash sessions are recorded per session with a single startup notification - **changed** — @code-yeongyu/senpi updated to 2026.9.4-3 #### omo 5.0.0-beta.42 > beta.41 was never published: its first release attempt failed the CI gate and the retry re-selected the stale stamp commit, so the number was skipped rather than shipping a tree that lacked the engine bump. This release carries everything intended for beta.41. Engine: **@code-yeongyu/senpi 2026.9.4-3** (beta.40 shipped 2026.9.3-2 — this beta moves the engine across 2026.9.4, 2026.9.4-2 and 2026.9.4-3). ##### Highlights ###### Anthropic native tool search no longer 400s The headline engine fix. Native tool search sent `tool_reference` blocks under a `name` field instead of the API's `tool_name`, and the BM25 server tool was injected on **every** `anthropic-messages` endpoint — including gateways, proxies and Kimi-coding hosts that reject it. Either one returned `400 tools.N.tool_search_tool_bm25_20251119.name: Input should be 'tool_search_tool_bm25'` (or an opaque invalid-request error), after which the adapter disabled native search for the rest of the session. Injection is now gated to models that actually support tool search (Opus/Sonnet 4.5+ and the Fable line), and the reference field matches the wire contract. (senpi #1354) ###### Korean and non-ASCII memory finally round-trips Memory slugs, git paths and recall query planning keep Korean/non-Latin letters instead of mangling them, with compatibility for directories written by older builds. (#7739, #7741) ###### Release plumbing corrected Every GitHub release is created as a full release, and the Latest badge is decided from the highest **published** semver rather than tag order. (#7743, #7761) ###### Windows: a leaked SQLite handle no longer stalls the harness `node:sqlite`'s `DatabaseSync.close()` does not finalize outstanding statements on Bun 1.4, so one `prepare()` left the store's file handle open until GC. POSIX hides this (unlink ignores open handles) but Windows keeps the file locked, and the next open of the same store blocks — sibling-harness detection could stall for tens of seconds. Every `prepare()` in the credential readers and their tests is gone, replaced by `exec()` with a row-sink function, and a contract test now asserts that no file handle survives `close()`. (#7775) ##### Fixed - `omo-senpi`: the conditional x-search skill ships and no longer logs at startup (#7745); Bun skill guidance in the ultrawork directive is gated instead of unconditional (#7754); the senpi hooks-state lock is granted to every memory sandbox (#7756); unsupported isolation traversal fails closed instead of looking complete (#7769) - `lsp-core`: a diagnostic pull that times out now awaits its cancellation write, so `$/cancelRequest` is not lost on Windows (#7773) - `senpi-task`: PATH senpi executables that do not match the running engine are rejected (#7758); lead tasklist tools are deferred to tool_search (#7737) - `omo-native`/`omob`: hoisted bin dir resolution for scoped engine packages (#7755), architect blockers closed in the omob pipeline (#7747), skill-source filter + cache locking + provenance mirrors root-fixed (#7763), dev binary built from the latest commits with build provenance (#7740) - `shared-skills`: page work routes to a real browser before the CLI (#7751), browser QA and research browsing go through the eval kernel (#7750), CloakBrowser's venv interpreter is used in the launch step too (#7757) - Dependencies: `@code-yeongyu/senpi` pin moved to 2026.9.4-2 then 2026.9.4-3 (#7749, #7772) - Isolation QA snapshots assert the real per-platform contract instead of POSIX-only outcomes, so Windows reports capability failures explicitly (#7770, #7775) ##### Engine changes (senpi 2026.9.4 → 2026.9.4-3) - Terminal monitors and background Bash sessions are recorded per session, with a single startup notification for carried-over/lost/expired state, and monitors expose a stable `mon_` id while `bash_output`/`bash_input`/`bash_resize`/`kill_bash` accept either id - A spawned RPC host that never answers `get_protocol_info` reports why inste _[Truncated at 4000 characters — full notes: https://github.com/code-yeongyu/oh-my-openagent/releases/tag/v5.0.0-beta.42]_