fix: bundle OMO component hook CLIs#46
Open
IndianMarshmello wants to merge 6 commits into
Open
Conversation
added 6 commits
June 10, 2026 06:08
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem Situation
LazyCodex issue #45 reports that OMO 4.8.1 hook commands point at components/*/dist/cli.js, but the marketplace plugin bundle omitted those built files, causing Node MODULE_NOT_FOUND before hooks can parse input.
Reproduction Logs
RED: node --test test/aggregate-hooks.test.mjs failed with missing targets including components/git-bash/dist/cli.js, components/ulw-loop/dist/cli.js, components/comment-checker/dist/cli.js, components/lsp/dist/cli.js, components/rules/dist/cli.js, components/start-work-continuation/dist/cli.js, components/telemetry/dist/cli.js, and components/ultrawork/dist/cli.js.
Approach
Commit the generated dist outputs for every component referenced by plugins/omo/hooks/hooks.json and add an aggregate packaging regression test that extracts ${PLUGIN_ROOT}/components/*/dist/cli.js hook command targets and asserts each exists in the bundle.
Why I Am Confident
The new regression test failed before the bundled outputs and passes after them. A direct invocation of the reported git-bash hook target exits without MODULE_NOT_FOUND, and a broad smoke check confirms all eight component CLI targets exist and load.
Risks
Low-to-medium: this adds generated bundle files to the marketplace repository. The risk is artifact drift if the upstream sync process is skipped again; the new test makes that failure visible in this repository.
User-Visible Behavior Changes
Fresh LazyCodex/OMO plugin cache installs include the hook CLI files referenced by hooks/hooks.json, so PreToolUse, PostToolUse, Stop, SessionStart, and related hooks no longer fail at Node module resolution.
Verification
This PR was debugged, implemented, and created with LazyCodex.
Tag: lazycodex-generated
Summary by cubic
Bundle OMO component hook CLIs and all configured MCP runtimes inside the plugin (including LSP via bundled
@code-yeongyu/lsp-tools-mcpandast-grep) so hooks resolvecomponents/*/dist/cli.jsand MCP servers run from the bundle. Fixes MODULE_NOT_FOUND on fresh installs and aligns LSP/MCP paths; addresses LazyCodex issue #45.comment-checker,git-bash,lsp, andrulesunderplugins/omo/components/*/dist/cli.jsto matchplugins/omo/hooks/hooks.json; kept theruleshook dependency-free and aligned its dist CLI mode for consistent execution.components/lsp-tools-mcpand wiredcomponents/lspto it:components/lsp/.mcp.jsonruns../lsp-tools-mcp/dist/cli.js mcp, and theomo-lspCLI delegates to the bundled runtime and exposeshook post-tool-useandhook post-compact.components/ast-grep-mcpruntime to satisfy theast_grepMCP server from the plugin manifest.git_bashMCP entry fromplugins/omo/.mcp.json; README updated to includeast-grep-mcpand reflect MCP changes.Written for commit 12be80c. Summary will update on new commits.