Patch Release: Codex-Only LazyCodex and Skill Loading Fixes
This patch keeps LazyCodex inside the Codex product boundary after the reverted multi-target install experiment. LazyCodex installs remain Codex-only. This release does not ship the reverted multi-target LazyCodex install behavior.
OpenCode skill loading is also fixed: OMO now resolves runtime and plugin-registered skills first, then falls back to OpenCode native skills such as customize-opencode only after the base registry misses.
Release and installer hardening in this patch improves Windows/Codex compatibility, package publication sequencing, and published LazyCodex smoke coverage.
OpenCode Skill Loading Credits
This release includes the consolidated OpenCode skill-loading fix from #5774: OMO now resolves runtime/plugin-registered skills first and falls back to OpenCode native skills such as customize-opencode only after the base registry misses.
Community credit:
- @cpt-sd76vg reported the
customize-opencodenative-skill failure in #5559 and authored the unmerged native-skill fallback PR #5652. - @DevNewbie1826 authored the unmerged runtime/plugin-registered skill resolver PR #5576.
- The shipped fix was the maintainer consolidation in #5774, combining those two lanes with direct and delegated resolver coverage.
Additional context came from #2015, opened by @Luodian, and the concrete customize-opencode manifestation documented there by @AgentSMLA.
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 and tool behavior updates, including delegate-task contract and runtime registration behavior.
- Install and publish workflow hardening, including safer release sequencing and package/install fixes.
Commit Summary
- 4d260cf Merge pull request #5780 from code-yeongyu/release/v4.14.1-source-state
- 2b0bd44 Merge pull request #5779 from code-yeongyu/code-yeongyu/revert-lazycodex-pr75-multitarget
- 08608dd Merge pull request #5770 from code-yeongyu/code-yeongyu/fix-pr5767-evidence-hygiene-v2
- 7f786ba Merge pull request #5775 from code-yeongyu/code-yeongyu/lazycodex-80-doctor-residuals
- 4636537 Merge pull request #5774 from code-yeongyu/code-yeongyu/opencode-skill-loading-consolidation
- 3b1681a fix(codex): handle windows absolute mcp targets
- a3c8d92 fix(opencode): preserve lazy skill command discovery
- fd9a952 Merge remote-tracking branch 'origin/dev' into code-yeongyu/lazycodex-80-doctor-residuals
- 8cee9e4 Merge pull request #5773 from code-yeongyu/code-yeongyu/lazycodex-76-windows-install-command
- 47752e7 fix(codex): cover lazycodex doctor residuals
- 296589f fix(opencode): consolidate skill loading
- 6dd9537 Merge pull request #5756 from code-yeongyu/code-yeongyu/fix-lazycodex-81-mcp-compaction
- 228cce2 Merge pull request #5768 from code-yeongyu/code-yeongyu/fix-lazycodex-root-ulw-cli
- 8157f60 test(opencode): trim stray install evidence
- d788b7e test(opencode): sanitize PR 5767 evidence path
- 3b4b7b8 test(opencode): remove PR 5767 access metadata
- e6e1df9 test(opencode): clean PR 5767 evidence hygiene
- 55f5040 test(codex): keep installer qa scoped to codex
- 5ee794e Merge pull request #5764 from code-yeongyu/code-yeongyu/lazycodex-80-doctor-cache-reliability
- 19330bf Merge pull request #5762 from code-yeongyu/code-yeongyu/fix-lazycodex-85-companion-warning
- e48b34d Merge pull request #5758 from code-yeongyu/code-yeongyu/fix-teammode-add-member-race
- b4f9361 Merge pull request #5759 from code-yeongyu/code-yeongyu/fix-lazycodex-87-codegraph-include-code
- 4cf383c fix(codex): clarify codegraph includeCode contract
- c32d00a Merge pull request #5760 from code-yeongyu/code-yeongyu/fix-lazycodex-ulw-loop-help
- 0101933 fix(codex): preserve ulw-loop wrapper command
- 576c1a0 Merge pull request #5765 from code-yeongyu/code-yeongyu/fix-lazycodex-90-lsp-daemon
- afc515b Merge pull request #5767 from code-yeongyu/code-yeongyu/fix-discord-1521265774658977943
- 5abbf72 test(opencode): trim doctor trust evidence
- a043ccd docs(codex): document ulw cli aliases
- 5b08f89 test(codex): cover ulw bin link repair
- 89f255c fix(codex): expose ulw cli aliases
- d3dd506 test(task): isolate task update storage
- 48f00c5 test(codex): make lsp hook regression cross-platform
- 903c0c2 test(codex): cover bundled lsp hook daemon target
- b8f4bdc fix(codex-lsp): resolve bundled daemon runtime
- f0b77ae fix(lsp-daemon): support packaged daemon overrides
- 47a0457 Merge pull request #5763 from code-yeongyu/code-yeongyu/fix-visual-qa-node-runtime
- 4dcd99b test(opencode): record doctor trust guidance evidence
- 1a42088 fix(opencode): add doctor postinstall trust guidance
- 6e8d0e1 Merge pull request #5761 from code-yeongyu/code-yeongyu/fix-ulw-loop-quality-gate-fixture
- ad626df Merge pull request #5757 from code-yeongyu/code-yeongyu/fix-lazycodex-82-archive-ambiguity
- 88b6399 fix: harden lazycodex doctor source caches
- 0b66355 fix visual-qa node runtime path
- af87aaf fix(codex): warn about companion lifecycle hooks
- 1a02a31 fix(ulw-loop): make quality gate fixture paths portable
- 8ef44bd fix(codex): serialize teammode state mutations
- 5d3d1f4 fix(codex): preserve team archive evidence on ambiguous thread ids
- 87cb194 fix(git-bash-mcp): keep stdio transport alive
- 995051a Merge pull request #5754 from code-yeongyu/chore/remove-sparkshell
- b5b2638 style(web): satisfy landing format check
- bc63d96 test(release): retarget lazycodex smoke command
- be734e2 fix(codex): update omo runtime guidance
- 7af0a15 docs(prompts): remove sparkshell guidance
- be63cc1 fix(codex): remove sparkshell runtime awareness
- 8ce97ac fix(opencode): remove sparkshell runtime surface
- 63b0faf Merge pull request #5745 from code-yeongyu/code-yeongyu/remove-codex-workflow-selector
- 0b07332 test(codex): record selector removal review
- 00eea45 fix(codex): remove workflow selector
- 0fff622 fix(ulw-plan): require requested high-accuracy review
- dc861c2 Merge pull request #5744 from code-yeongyu/code-yeongyu/fix-codex-ulw-research-drift
- 3952d0c Merge pull request #5743 from code-yeongyu/feat/website-codex-light-section
- 6f4655b test(codex): pin generated skill guidance
- 7318396 fix(codex): preserve generated skill guidance
- f71ec60 feat(web): add Codex Light edition section and expand agent coverage
- de05cf8 Merge pull request #5741 from code-yeongyu/code-yeongyu/fix-windows-timeout-evidence-whitespace
- 8a26efd test(release): clean PR 5740 evidence whitespace
- 583a420 Merge pull request #5740 from code-yeongyu/code-yeongyu/fix-windows-async-test-timeouts
- d488c55 test(opencode): commit Windows timeout evidence
- 29be5fc fix(opencode): stabilize async hook tests on Windows
- 57dfee8 Merge pull request #5737 from code-yeongyu/docs/changelog-backfill-v4.11-v4.14
- a632977 Merge pull request #5736 from code-yeongyu/code-yeongyu/fix-codex-windows-hook-trust
- 730259b Merge pull request #5735 from code-yeongyu/code-yeongyu/fix-test-hygiene-release-blockers
- 8309fea Merge pull request #5734 from code-yeongyu/code-yeongyu/fix-packaged-qa-guidance-docs
- 22f0738 Merge pull request #5733 from code-yeongyu/code-yeongyu/fix-web-terminal-empty-capture
- 86614e6 Merge pull request #5732 from code-yeongyu/code-yeongyu/fix-stats-pagination-parse
- b569959 docs(changelog): add release sections for v4.11.0–v4.14.0
- ebbfb46 test(release): clean evidence diff whitespace
- 68b4007 test(codex): record third hook trust verification
- 677196e test(codex): record second hook trust verification
- 4280b72 test(codex): record hook trust verification
- 0d1eb81 fix(codex): trust Windows hook commands
- 3b816c3 test(release): split hygiene blocker coverage
- d30f64c fix(qa): reject empty web terminal captures
- 64bf2ad test(release): record packaged guidance diff check
- 49de91d fix(stats): handle paginated release output
- bdcf33e Merge pull request #5731 from code-yeongyu/fix/model-capability-alias-collision
- a834164 fix(release): ship packaged QA guidance docs
- 8bfead4 Merge pull request #5730 from code-yeongyu/fix/website-stale-constants
- e452685 Merge pull request #5729 from code-yeongyu/fix/docs-features-stale-content
- 35064fe Merge pull request #5728 from code-yeongyu/fix/docs-prefer-openagent-cli
- 61c6e4b Merge pull request #5726 from code-yeongyu/fix/docs-stale-path-references
- d6de023 fix(model-core): remove stale claude-opus-4.7 alias + regenerate capabilities cache
- 757b13a Merge pull request #5727 from code-yeongyu/fix/agents-md-header-v4.14
- 767e14f fix(web): update stale model names, version badge, hook counts
- dd3753e fix(docs): correct stale module/tool counts in features.md
- bea9984 fix(docs): prefer oh-my-openagent CLI invocation in guides
- 5688a75 fix(docs): correct bare src/ paths to packages/omo-opencode/src/
- 59b8618 fix: update AGENTS.md header to v4.14.0
- ba02087 Merge pull request #5725 from code-yeongyu/code-yeongyu/add-workflow-selector-evidence
- 02b2a8a test(codex): add workflow final gate evidence
- 3fbc15e test(codex): add workflow selector evidence
- c4336cc Merge pull request #5722 from code-yeongyu/code-yeongyu/release-v4.14.0-source-state-manual