| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | < 12 hours ago | 13.2 kB | |
| v4.5.0 source code.tar.gz | < 12 hours ago | 31.5 MB | |
| v4.5.0 source code.zip | < 12 hours ago | 33.0 MB | |
| Totals: 3 Items | 64.5 MB | 0 | |
v4.5.0 β Publish Safety & Internal Refactor
This release hardens runtime safety (fallback loops, parent-wake stalls, publish payload) and lands the long-running prompts-core refactor that splits every agent/mode prompt into versioned markdown.
π‘οΈ Publish Safety Hardening
Three guard rails that close production-impact pre-publish gaps:
- runtime-fallback no longer trusts
isRetryable: trueon 4xx errors. If a provider mis-tagged a 401/403/404 as retryable, every configured fallback model would burn in an infinite loop. The signal is now gated to absent status codes, 5xx, the configuredretry_on_errorslist, and{408, 425, 429}. - parent-wake escapes a second stuck state. When the assistant's text stream died mid-message with no pending tool call, parent-wake deferred forever and background-agent completions never reached the parent. A bounded escape path now dispatches after
toolCallDeferMaxMs. - npm payload blocks internal-only assets. Nested
.npmignoreper published dot-directory + a newscript/package-layout-exclusion.test.tspermanent guard. Drop a__draft-foo/SKILL.mdinto.opencode/skills/and CI fails before it ships to npm.
π Ralph-Loop Liveness
Three independent stuck-state escapes for ralph-loop:
- Oracle dispatch wait is now time-bounded (30-minute hard ceiling); previously a crashed/OOM-killed oracle session would freeze the loop forever.
- Loop auto-stops when the latest assistant turn made zero model progress (both token counts at zero AND no assistant content).
- The double-fire race fix no longer ignores in-flight oracle dispatches that never complete.
π Background-Agent Delivery
Four fixes converge on one outcome β completion alerts get through:
- Debounced active parent wake flushes (no more thundering herd on burst completion).
- Completion wakes deliver during active parent turns instead of being silently dropped.
- Dispatched parent wake failures are isolated so one failure does not cascade.
- Atlas subagents retry on provider usage-limit errors (no more dead-end runs).
π₯ Team-Mode UX
- Leaders now wake on unread mailbox messages (#4464). Idle leads no longer sleep through worker pings.
- Model overrides preserved across team-mode boundaries.
- Lead closes teams on its own initiative β no more lingering teams burning session / mailbox / member-turn budget.
π§ Prompts-Core Migration (50+ commits, zero user-facing API change)
Every agent and mode prompt now lives in versioned markdown under packages/prompts-core/:
- Atlas: 5 variants (default / GPT / Gemini / Kimi / Opus-4.7)
- Prometheus: full prompt + variant table
- Ultrawork: 4 variants (default / GPT / Gemini / planner)
- Mode prompts: search / analyze / team / hyperplan
Companion dist-bundle test scans the built bundle for unique prompt signatures; a future Bun upgrade that silently regresses markdown inlining will fail CI loudly instead of breaking installs at first agent load.
π§ Continuation + Validators
fix(continuation): resolves registered agent names before dispatching prompts (#4417) β fixes the empty-string bug when display names like"Atlas - Plan Executor"were used.fix(prompt-async-gate): retry object-form path on runtime type errors (#4417).fix(thinking-block-validator): avoid duplicate thinking prepends (#4374) β kills the dual-thinking-streams race.
π©Ί Doctor + Help JSON Schemas
oh-my-opencode doctor, sandbox, status, and acp now expose JSON schemas for their help output β enables shell completion, structured CLI introspection, and --help consistency.
ποΈ Internal Package Layering
Workspace split into 9 published packages: utils / model-core / prompts-core / rules-engine / agents-md-core / ast-grep-core / comment-checker-core / hashline-core / boulder-state. Internal cleanup β no breaking changes to the plugin API.
π Web
- Marketing site canonical domain migrated to omo.dev.
- README translations refreshed for ja / ko / ru / zh-cn.
π Reviewer Note
This release was gated by a publish-debate-vortex hyperultradebate β 6 hostile category-member agents (quick / unspecified-low / unspecified-high / deep / ultrabrain / artistry) cross-attacked the 103-commit changeset across 3 rounds. The 3 must-fix blockers it identified β runtime-fallback boolean guard, parent-wake stuck escape, npm payload exclusion β all landed in this release.
Minor Compatibility and Stability Release
This release carries compatibility-facing behavior changes and operational hardening. Read the summary below before upgrading or publishing.
- Rename transition updates across package detection, plugin/config compatibility, and install surfaces.
- Task-system default behavior alignment so omitted configuration behaves consistently across runtime paths.
- Install and publish workflow hardening, including safer release sequencing and package/install fixes.
Commit Summary
- 52ba1257 Merge branch 'fix/pre-publish-blockers-v4.5.0'
- 8e28e29c fix(package): block internal-only assets from publish payload
- 5c0cc0de @Hungdoan565 has signed the CLA in code-yeongyu/oh-my-openagent#4492
- ec552bcf fix(ralph-loop): stop loop when latest assistant turn made no model progress
- 9810bad3 docs(publish-skill): pin Jobdori bot ID in Discord release commands
- 91aa9154 @fcmfcm01 has signed the CLA in code-yeongyu/oh-my-openagent#4482
- be2ed2b2 Merge pull request [#4479] from code-yeongyu/fix-4470-momus-cancels-main
- 3b421c6e fix(background-agent): isolate dispatched parent wake failures
- b03e08b4 Merge pull request [#4478] from code-yeongyu/fix-4164-bg-reminder-timing
- e1fde719 Merge pull request [#4477] from code-yeongyu/fix-4374-dual-thinking-streams
- ec7ce51e fix(background-agent): debounce active parent wake flushes
- 6a561446 fix(background-agent): deliver completion wakes during active parent turns
- e443e86d fix(thinking-block-validator): avoid duplicate thinking prepends
- 037d017a Merge pull request [#4476] from code-yeongyu/fix-4464-team-leader-wake
- 3e099108 @2wndrhs has signed the CLA in code-yeongyu/oh-my-openagent#4475
- 58025f9b fix(team-mode): wake leaders on unread mailbox messages (#4464)
- 759b5668 Merge pull request [#4474] from code-yeongyu/fix-4441-omo-evidence-ignore
- 3e115948 chore(repo): untrack .omo/evidence and .omo/notepads per .gitignore
- dc050745 @hanakokoizumi has signed the CLA in code-yeongyu/oh-my-openagent#4467
- 939f2b8b @SoShymKing has signed the CLA in code-yeongyu/oh-my-openagent#4469
- 03eb9fff Merge pull request [#4465] from code-yeongyu/fix-4417-atlas-path-and-start-work
- 28efc4e8 fix(continuation): resolve registered agent name before dispatching prompt (#4417)
- a5cee769 fix(prompt-async-gate): retry object-form path on runtime type error (#4417)
- c25c3383 Merge pull request [#4454] from code-yeongyu/fix-4448-npm-pack-dot-dirs
- 94d9d932 Merge pull request [#4453] from code-yeongyu/fix-4419-atlas-subagent-fallback
- 0d0be435 Merge pull request [#4452] from code-yeongyu/fix-4449-tool-execute-after-stall
- 9c56bf22 test(script): typecheck package layout regression
- 72119b3a fix(package): ship dot-directory command assets
- f57532cb fix(tool-execute-after): narrow metadata warning tools
- dc845a88 chore(web): migrate canonical domain to omo.dev
- 6551f389 fix(background-agent): retry Atlas subagents on usage limits
- 767f5a61 fix(model-core): retry OpenAI usage_limit_reached fallbacks
- 6343feb6 Merge pull request [#4450] from code-yeongyu/fix-4447-subagent-task-deny
- 4a68db02 fix(tool-execute-after): gate metadata recovery warnings
- 75d1ff4c fix(plugin-handlers): deny task for read-only subagents
- 9be97de6 Merge pull request [#4435] from code-yeongyu/fix/issue-4429-team-mode-model-override
- 9fd52cb6 feat(help): [#689] acp help JSON schema
- eed88e41 feat(help): [#689] acp help JSON schema
- bab9caa6 feat(help): [#688] sandbox help JSON schema
- 1fdb88a3 feat(help): [#688] sandbox help JSON schema
- 2c6c42f8 feat(help): [#687] status help JSON schema
- 36e394a5 feat(help): [#687] status help JSON schema
- a73e4db1 feat(help): [#686] doctor help JSON schema
- 21713dcd fix(agents): preserve model overrides with team mode
- 776da68e feat(help): [#686] doctor help JSON schema
- ce4b11b0 fix(cli): add explicit helpOption configuration for consistent help-flag ordering
- 3e0a975d test(dist-bundle): assert inlined prompt content survives bundling
- 14b3523a fix(ralph-loop): time-bound oracle dispatch wait to prevent stall
- 69c955f6 fix(parent-wake): bound assistant-text defer to escape stuck sessions
- f05e0cbe fix(runtime-fallback): gate retryable signal on status-code allowlist
- 222adeb6 fix(runtime-fallback): honor retryable signal
- de7f1d88 Merge pull request [#4400] from code-yeongyu/refactor/prompts-core-oracle-cleanup
- 8f09c02c docs: scrub remaining references to migrated files
- d18cadb1 test(ultrawork): add byte-exact characterization test
- e0b37b46 test(prometheus): add byte-exact characterization test
- 9d204250 docs(keyword-detector): rewrite AGENTS.md for prompts-core migration
- 87e28d26 docs(prometheus): rewrite AGENTS.md for thin-loader structure
- 640d7f7b Merge pull request [#4396] from code-yeongyu/fix/session-scoped-internal-wake
- 3d0b4c4a fix(parent-wake): block unfinished assistant wakes
- 2ea7c492 Merge pull request [#4390] from code-yeongyu/refactor/prometheus-to-prompts-core
- 1f32b885 refactor(prometheus): remove migrated section TypeScript files
- 8fc429a5 refactor(prometheus): load prompt variants from prompts-core
- 3806d93d feat(prompts-core): wire Prometheus variant table
- fa0500e9 feat(prompts-core): add Prometheus prompt markdown variants
- 4749eab2 Merge pull request [#4389] from code-yeongyu/refactor/mode-prompts-to-prompts-core
- 803f030b Merge remote-tracking branch 'origin/dev' into refactor/mode-prompts-to-prompts-core
- 528f083f Merge pull request [#4388] from code-yeongyu/refactor/atlas-to-prompts-core
- 63ef72d1 docs(agents): document prompts-core mode prompts
- 80361c05 chore(prompts-core): wire markdown prompt packaging
- 2c8e2dac refactor(mode-prompts): migrate hyperplan prompt
- e79baf59 refactor(mode-prompts): migrate team prompt
- 3b7f51d5 refactor(mode-prompts): migrate analyze prompt
- 5cefbdbb refactor(mode-prompts): migrate search prompt
- c187dba5 test(keyword-detector): capture mode prompt baselines
- 8451ecd1 docs(atlas): document prompts-core prompt ownership
- 582c768b refactor(atlas): remove migrated TypeScript prompts
- 4975c354 refactor(atlas): load prompt variants from prompts-core
- 96a93650 build(prompts-core): bundle markdown prompt variants
- 91351d73 feat(prompts-core): support bundled prompt sources
- b77fed28 feat(prompts-core): add Atlas Opus 4.7 prompt markdown
- 2adcec8f feat(prompts-core): add Atlas Kimi prompt markdown
- d5995b38 feat(prompts-core): add Atlas Gemini prompt markdown
- 19237611 feat(prompts-core): add Atlas GPT prompt markdown
- 565d0994 feat(prompts-core): add Atlas default prompt markdown
- a92e25a1 test(atlas): add prompt byte preservation baselines
- 66445241 Merge pull request [#4386] from code-yeongyu/refactor/ultrawork-to-prompts-core
- 79beeeee docs: document ultrawork prompt markdown location
- d217efc1 build(prompts): inline markdown prompt imports
- e772c468 refactor(ultrawork): move planner prompt to prompts-core
- e51acd0a refactor(ultrawork): move gemini prompt to prompts-core
- a818bbd9 refactor(ultrawork): move gpt prompt to prompts-core
- 9c366cce refactor(ultrawork): move default prompt to prompts-core
- 39b3cbcb chore(ultrawork): capture prompt baseline hashes
- 46ad6bfd Merge pull request [#4385] from code-yeongyu/refactor/prompts-core-foundation
- 436c6187 fix(prompts-core): block prompt path traversal
- 74d5f701 chore(prompts-core): wire package typecheck
- da0fa83f test(prompts-core): audit opencode coupling
- c44a6bdb feat(prompts-core): add prompt loader
- 6301bcf0 feat(prompts-core): add variant resolver
- 4338ddb8 feat(prompts-core): add package skeleton
- 87de0563 refactor(model-core): move model family detectors
- e1e9f348 Merge pull request [#4382] from code-yeongyu/feat/ultrawork-prompt-tdd-evidence-tightening
- d073bf1b feat(ultrawork): enforce TDD, scenario contract, durable notepad, reviewer gate
- 39a549a3 Merge pull request [#4381] from code-yeongyu/fix/team-mode-closure-prompts
- 5f1fb0c5 fix(team-mode): make lead close teams on its own initiative
- a4dcbb6b docs(publish): use Jobdori bot for releases
- 1473f93f Merge pull request [#4380] from code-yeongyu/fix/ralph-loop-oracle-double-fire-race
- 9a1dd756 fix(ralph-loop): skip handleFailedVerification when oracle dispatch is in flight (#4256)
- 3523dab0 @niStee has signed the CLA in code-yeongyu/oh-my-openagent#4378