github code-yeongyu/oh-my-openagent v5.1.17

3 hours ago

An idle engine host now exits after its idle window once its sessions are done. 5.1.17 runs on senpi 2026.10.8. Before, a host counted a session busy on every agent_start but cleared it only once per run, so any run that retried, continued after compaction or took a follow-up left the host busy forever and it never exited; a session closed mid-run did the same. The host now tracks runs and drops a session when it closes. Thanks to @DevNewbie1826 for the report. (senpi#2713, senpi#2717)

Fixed

A workpool create that reuses a pool name no longer inherits that pool's tools. A second workpool create with the same name from the same session got the first pool, and the tools it was granted, even when it asked for different tools or none. Now a pool is reused only when the tools asked for match its grant; any other grant is refused as a name conflict. (#9548)

Replies no longer come back formatted as a quote. Several bundled prompts showed their reply-format examples (handoff templates, the routing line) as markdown quote lines, and the model copied the > into its answer, so whole replies rendered as blockquotes. The examples are now plain lines; the wording is unchanged. (#9538, #9550)

A cold Python start on a busy machine no longer fails as a hang. The Python kernel counts CPU use and output during startup as progress, with an absolute ceiling, instead of failing after a fixed silent window. (senpi#2718, #9495)

On Windows, memory reflection works again instead of parking itself. A failed reflection on Windows was recorded as "refused by its provider", so automatic reflection parked after a few runs and stopped saving facts. A build with this fix un-parks on its next successful reflection; run /reflect to trigger one now, and use /facts retry for facts that were parked while it was stuck. (#9553, #9554)

Changed

omo runs on senpi 2026.10.8. The bundled Claude Agent SDK moves to 0.3.289 (Claude Code 2.1.289); continue_from_leaf acknowledges when the continued turn starts, so a long desktop continuation no longer times out; code mode gets Python kernel tools beside a parked cell. Full list: senpi 2026.10.8.

omo can now inject a chat gateway scope's operating rules into bound sessions as one block in the system prompt; it takes effect once the gateway connector that pushes them ships. Every other session's prompt is unchanged. (#9540)

  • 091728d Merge pull request #9574 from code-yeongyu/release/v5.1.17-source-state
  • 94658a9 Merge pull request #9567 from code-yeongyu/fix/gitignore-gateway-rules-extension
  • 90fb876 Merge pull request #9549 from code-yeongyu/fix/workpool-reuse-grant
  • 32527b8 Merge origin/dev into fix/workpool-reuse-grant
  • 36bb52c Merge pull request #9554 from code-yeongyu/fix/9553-reflection-advisory-not-provider-outage
  • ecd4c67 Merge origin/dev into fix/workpool-reuse-grant
  • 86808a5 docs(changelog): note the Windows reflection fix for 5.1.17 (#9553)
  • 25b9f71 Merge remote-tracking branch 'origin/dev' into fix/9553-reflection-advisory-not-provider-outage
  • 5722f24 Merge pull request #9537 from code-yeongyu/feat/web-manifesto-reveal-window-20261004
  • 4b260af fix(memory): keep the provider's first line deciding; advisories are skipped, not outranked (#9553)
  • edbb18a fix(memory): pick a reflection child's failure line by shape, not position (#9553)
  • 4437f40 docs(changelog): say the gateway rules injection takes effect once its connector ships
  • c5e1b3a Merge pull request #9552 from code-yeongyu/fix/9543-question-closed-marker-wait
  • 5df7717 test(web): guard the floor contrast; launch chromium with a mock keychain
  • 78c4350 test(thread): read the outbox marker after the write instead of waiting for a watch event (#9543)
  • 9c70611 Merge origin/dev into fix/workpool-reuse-grant
  • ce9250f fix(web): keep the floor at full contrast; light everything for reduced motion
  • 10fcaac Merge pull request #9550 from code-yeongyu/fix/9538-format-examples-not-quoted
  • da95b61 Merge pull request #9540 from code-yeongyu/feat/gateway-rules-block
  • 22fa8e4 fix(web): reveal each word whole, in reading order
  • 1c2822b Merge origin/dev into fix/workpool-reuse-grant
  • 65f159d fix(prompts): show format examples as plain lines, not quotes (#9538)
  • cf2da71 Merge remote-tracking branch 'origin/dev' into feat/gateway-rules-block
  • 4cf2651 Merge pull request #9547 from code-yeongyu/test/9546-fake-child-no-real-pid
  • dffcb65 fix(web): reveal the manifesto word by word, lit before JavaScript
  • e5931cd Merge remote-tracking branch 'origin/dev' into test/9546-fake-child-no-real-pid
  • 8770093 docs(gateway): note sessionsWithRules and the escaping invariant
  • 9be459f chore(gateway): regenerate plugin bundles on the rebased base
  • d4b66ce fix(gateway): escape untrusted rule text, add sessionsWithRules
  • fb2440f chore(gateway): changelog entry and regenerated plugin bundles
  • d622bf7 test(gateway): satisfy strict optional access in the rules prompt tests
  • ecffe0d feat(gateway): build the gateway_rules ops module beside the extension
  • d78009b feat(gateway): inject operating rules into gateway sessions
  • 682dcb8 fix(web): drive the manifesto reveal per word, observer-only, crisp floor
  • 1dec81f fix(web): reveal the manifesto by word position, crisp unlit floor
  • b12e757 feat(web): reveal the manifesto a screenful at a time
bun add -g omo-ai

Don't miss a new oh-my-openagent release

NewReleases is sending notifications on new releases.