lazycodex-ai 5.0.0-beta.4 → 5.0.0-beta.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ja.md +25 -21
- package/README.ko.md +25 -21
- package/README.md +38 -23
- package/README.ru.md +24 -20
- package/README.zh-cn.md +25 -21
- package/dist/cli/config-manager/parse-opencode-config-file.d.ts +2 -1
- package/dist/cli/doctor/checks/system-plugin.d.ts +4 -3
- package/dist/cli/fallback-lane-policy.d.ts +1 -0
- package/dist/cli/index.js +66932 -64746
- package/dist/cli/install-codex/install-codex-test-fixtures.d.ts +1 -1
- package/dist/cli/run/on-complete-hook.d.ts +2 -0
- package/dist/cli/runtime-commands.d.ts +1 -1
- package/dist/cli/worktree-sweep/classify.d.ts +16 -0
- package/dist/cli/worktree-sweep/format.d.ts +8 -0
- package/dist/cli/worktree-sweep/git.d.ts +19 -0
- package/dist/cli/worktree-sweep/index.d.ts +7 -0
- package/dist/cli/worktree-sweep/options.d.ts +2 -0
- package/dist/cli/worktree-sweep/parse-worktree-list.d.ts +8 -0
- package/dist/cli/worktree-sweep/sweep.d.ts +2 -0
- package/dist/cli/worktree-sweep/types.d.ts +65 -0
- package/dist/cli/worktree-sweep/worktree-sweep.d.ts +2 -0
- package/dist/cli-node/index.js +66795 -64586
- package/package.json +9 -9
- package/packages/git-bash-mcp/dist/cli.js +6 -1
- package/packages/lsp-daemon/dist/cli.js +793 -323
- package/packages/lsp-daemon/dist/client.d.ts +10 -0
- package/packages/lsp-daemon/dist/client.js +753 -280
- package/packages/lsp-daemon/dist/daemon-client.d.ts +1 -0
- package/packages/lsp-daemon/dist/daemon-client.js +3 -0
- package/packages/lsp-daemon/dist/ensure-daemon.js +1 -0
- package/packages/lsp-daemon/dist/index.js +757 -289
- package/packages/lsp-daemon/dist/proxy.js +3 -0
- package/packages/lsp-daemon/dist/version-reap.js +1 -1
- package/packages/lsp-daemon/package.json +1 -1
- package/packages/lsp-tools-mcp/dist/cli.js +712 -244
- package/packages/lsp-tools-mcp/dist/lsp/manager.js +248 -119
- package/packages/lsp-tools-mcp/dist/mcp.js +714 -246
- package/packages/lsp-tools-mcp/dist/request-context.js +12 -13
- package/packages/lsp-tools-mcp/dist/tools.js +718 -254
- package/packages/lsp-tools-mcp/package.json +1 -1
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +4 -6
- package/packages/omo-codex/plugin/.mcp.json +0 -6
- package/packages/omo-codex/plugin/AGENTS.md +47 -0
- package/packages/omo-codex/plugin/README.md +2 -2
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +45 -49
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/src/hook.ts +1 -0
- package/packages/omo-codex/plugin/components/comment-checker/AGENTS.md +9 -0
- package/packages/omo-codex/plugin/components/comment-checker/biome.json +2 -2
- package/packages/omo-codex/plugin/components/comment-checker/dist/cli.js +2 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +5 -5
- package/packages/omo-codex/plugin/components/comment-checker/src/apply-patch.ts +2 -8
- package/packages/omo-codex/plugin/components/comment-checker/src/core.ts +1 -2
- package/packages/omo-codex/plugin/components/comment-checker/src/request-extractor.ts +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/src/runner.ts +1 -0
- package/packages/omo-codex/plugin/components/git-bash/AGENTS.md +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +3 -4
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/biome.json +2 -2
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/cli.js +1 -5
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/codex-hook.js +1 -5
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +5 -5
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/codex-hook.ts +1 -5
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/codex-hook.test.ts +4 -21
- package/packages/omo-codex/plugin/components/lcx/skills/lcx-doctor/SKILL.md +1 -1
- package/packages/omo-codex/plugin/components/lsp/AGENTS.md +30 -15
- package/packages/omo-codex/plugin/components/lsp/biome.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +4 -4
- package/packages/omo-codex/plugin/components/lsp/dist/cli.js +741 -294
- package/packages/omo-codex/plugin/components/lsp/dist/daemon-cli-path.js +1 -1
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +5 -5
- package/packages/omo-codex/plugin/components/lsp/src/cli.ts +1 -1
- package/packages/omo-codex/plugin/components/lsp/src/codex-hook.ts +1 -1
- package/packages/omo-codex/plugin/components/lsp/src/daemon-cli-path.ts +1 -5
- package/packages/omo-codex/plugin/components/lsp/test/codex-hook-unavailable.test.ts +6 -7
- package/packages/omo-codex/plugin/components/lsp/test/codex-hook.test.ts +1 -2
- package/packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts +11 -1
- package/packages/omo-codex/plugin/components/rules/AGENTS.md +12 -0
- package/packages/omo-codex/plugin/components/rules/biome.json +2 -2
- package/packages/omo-codex/plugin/components/rules/dist/cli.js +60 -45
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +7 -7
- package/packages/omo-codex/plugin/components/rules/src/config.ts +1 -2
- package/packages/omo-codex/plugin/components/rules/src/persistent-cache.ts +1 -2
- package/packages/omo-codex/plugin/components/rules/src/post-compact-budget.ts +9 -5
- package/packages/omo-codex/plugin/components/rules/src/rules-engine-factory.ts +1 -4
- package/packages/omo-codex/plugin/components/rules/src/static-injection.ts +4 -9
- package/packages/omo-codex/plugin/components/rules/test/bundled-rules-priority.test.ts +11 -16
- package/packages/omo-codex/plugin/components/rules/test/bundled-rules.test.ts +17 -25
- package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-budget.test.ts +9 -7
- package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-context.test.ts +0 -6
- package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-dedup.test.ts +6 -4
- package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-directive.test.ts +12 -9
- package/packages/omo-codex/plugin/components/rules/test/codex-hook.test.ts +28 -37
- package/packages/omo-codex/plugin/components/rules/test/dynamic-target-fingerprints.test.ts +1 -2
- package/packages/omo-codex/plugin/components/rules/test/engine.test.ts +7 -4
- package/packages/omo-codex/plugin/components/rules/test/finder.test.ts +2 -3
- package/packages/omo-codex/plugin/components/rules/test/formatter.test.ts +39 -72
- package/packages/omo-codex/plugin/components/rules/test/hephaestus-model-variant.test.ts +1 -2
- package/packages/omo-codex/plugin/components/rules/test/hook-output.test.ts +2 -3
- package/packages/omo-codex/plugin/components/rules/test/matcher.test.ts +2 -3
- package/packages/omo-codex/plugin/components/rules/test/package-smoke.test.ts +1 -1
- package/packages/omo-codex/plugin/components/rules/test/parser.test.ts +1 -2
- package/packages/omo-codex/plugin/components/rules/test/post-compact-budget.test.ts +5 -6
- package/packages/omo-codex/plugin/components/rules/test/rules-engine-consumption.test.ts +3 -6
- package/packages/omo-codex/plugin/components/rules/test/scanner.test.ts +1 -2
- package/packages/omo-codex/plugin/components/rules/test/sources.test.ts +2 -5
- package/packages/omo-codex/plugin/components/rules/test/windows-git-bash-bundled-rule.test.ts +2 -17
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +5 -5
- package/packages/omo-codex/plugin/components/teammode/test/thread-title-hook.test.ts +4 -10
- package/packages/omo-codex/plugin/components/telemetry/AGENTS.md +8 -0
- package/packages/omo-codex/plugin/components/telemetry/biome.json +2 -2
- package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +2463 -437
- package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +2467 -441
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +5 -5
- package/packages/omo-codex/plugin/components/telemetry/src/codex-hook.ts +1 -4
- package/packages/omo-codex/plugin/components/telemetry/src/posthog.ts +4 -14
- package/packages/omo-codex/plugin/components/telemetry/src/product-identity.ts +1 -1
- package/packages/omo-codex/plugin/components/telemetry/test/diagnostics.test.ts +2 -5
- package/packages/omo-codex/plugin/components/ultrawork/AGENTS.md +10 -4
- package/packages/omo-codex/plugin/components/ultrawork/biome.json +2 -2
- package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +489 -4
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +5 -6
- package/packages/omo-codex/plugin/components/ultrawork/scripts/sync-directive.mjs +30 -14
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +6 -7
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +31 -7
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-clear.md +2 -1
- package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-unclear.md +5 -5
- package/packages/omo-codex/plugin/components/ultrawork/src/directive-content.ts +4 -0
- package/packages/omo-codex/plugin/components/ultrawork/src/directive.ts +5 -2
- package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook-trigger-policy.test.ts +9 -1
- package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook.test.ts +0 -136
- package/packages/omo-codex/plugin/components/ultrawork/test/directive-source.test.ts +14 -8
- package/packages/omo-codex/plugin/components/ultrawork/test/package-smoke.test.ts +12 -1
- package/packages/omo-codex/plugin/components/ultrawork/test/skill-pointer.test.ts +0 -2
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/AGENTS.md +2 -2
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/NOTICE +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/README.md +5 -5
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/biome.json +2 -2
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/directive.md +6 -6
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/dist/cli.js +12 -12
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +28 -0
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/package.json +12 -12
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/boulder-reader.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/cli.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/codex-hook.ts +3 -3
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/directive.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/index.ts +1 -1
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/boulder-reader.test.ts +3 -3
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/cli.test.ts +1 -4
- package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/codex-hook.test.ts +8 -22
- package/packages/omo-codex/plugin/components/ulw-loop/AGENTS.md +19 -0
- package/packages/omo-codex/plugin/components/ulw-loop/CHANGELOG.md +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/README.md +12 -1
- package/packages/omo-codex/plugin/components/ulw-loop/biome.json +2 -2
- package/packages/omo-codex/plugin/components/ulw-loop/directive.md +15 -3
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.d.ts +12 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.js +45 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-continuation.js +9 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.d.ts +15 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.js +15 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-template.d.ts +8 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-template.js +120 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.js +40 -39
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-commands.js +7 -2
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.d.ts +2 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.js +12 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.js +2 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +958 -342
- package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.d.ts +2 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.js +27 -6
- package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.d.ts +13 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.js +15 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/domain-types.d.ts +17 -9
- package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.js +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.js +17 -2
- package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.d.ts +13 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.js +19 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-aggregate.d.ts +7 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-aggregate.js +9 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-artifacts.d.ts +12 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-artifacts.js +104 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.d.ts +13 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.js +65 -9
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-verdicts.js +5 -1
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.d.ts +4 -2
- package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.js +69 -111
- package/packages/omo-codex/plugin/components/ulw-loop/dist/review-blockers.js +4 -2
- package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.js +185 -14
- package/packages/omo-codex/plugin/components/ulw-loop/dist/status-next-actions.d.ts +6 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/status-next-actions.js +33 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/stop-resume-hook.js +3 -3
- package/packages/omo-codex/plugin/components/ulw-loop/dist/surface.d.ts +18 -0
- package/packages/omo-codex/plugin/components/ulw-loop/dist/surface.js +65 -0
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/SKILL.md +3 -2
- package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/define-goal.md +108 -0
- package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +22 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-codex-validation.ts +81 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-continuation.ts +7 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-reconciliation.ts +31 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-template.ts +134 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint.ts +38 -71
- package/packages/omo-codex/plugin/components/ulw-loop/src/cli-commands.ts +7 -2
- package/packages/omo-codex/plugin/components/ulw-loop/src/cli-output.ts +14 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/cli-subcommands.ts +2 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/cli.ts +3 -5
- package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-instruction.ts +34 -5
- package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-snapshot.ts +26 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/codex-hook.ts +3 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/domain-types.ts +19 -9
- package/packages/omo-codex/plugin/components/ulw-loop/src/paths.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/plan-io.ts +18 -3
- package/packages/omo-codex/plugin/components/ulw-loop/src/plan-missing-recovery.ts +27 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-aggregate.ts +11 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-artifacts.ts +123 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-fields.ts +68 -15
- package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-verdicts.ts +6 -1
- package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate.ts +82 -131
- package/packages/omo-codex/plugin/components/ulw-loop/src/review-blockers.ts +4 -2
- package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-guard.ts +187 -12
- package/packages/omo-codex/plugin/components/ulw-loop/src/status-next-actions.ts +36 -0
- package/packages/omo-codex/plugin/components/ulw-loop/src/stop-resume-hook.ts +3 -3
- package/packages/omo-codex/plugin/components/ulw-loop/src/surface.ts +95 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-continuation.test.ts +0 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-final.test.ts +133 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-template.test.ts +137 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/cli-create-goals.test.ts +25 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/cli-entrypoint.test.ts +26 -2
- package/packages/omo-codex/plugin/components/ulw-loop/test/cli-status-next-actions.test.ts +183 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-instruction.test.ts +37 -2
- package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-snapshot.test.ts +18 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/codex-hook.test.ts +0 -3
- package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/quality-gate-builder.ts +7 -3
- package/packages/omo-codex/plugin/components/ulw-loop/test/guided-recovery.test.ts +105 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/package-smoke.test.ts +5 -37
- package/packages/omo-codex/plugin/components/ulw-loop/test/paths.test.ts +9 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-aggregate-basics.test.ts +258 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-cap-and-dedupe.test.ts +22 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-poisoning-cascades.test.ts +97 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-roles.test.ts +46 -2
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-senpi-surface.test.ts +131 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-single-report.test.ts +241 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate.test.ts +48 -3
- package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-guard.test.ts +318 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/steering.test.ts +8 -5
- package/packages/omo-codex/plugin/components/ulw-loop/test/stop-resume-hook.test.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/surface.test.ts +74 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/ultrawork-directive.test.ts +13 -8
- package/packages/omo-codex/plugin/components/ulw-loop/vitest.config.ts +1 -0
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +17 -0
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-checking-ulw-execute-continuation.json +17 -0
- package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/model-catalog.json +3 -3
- package/packages/omo-codex/plugin/package-lock.json +676 -524
- package/packages/omo-codex/plugin/package.json +2 -3
- package/packages/omo-codex/plugin/scripts/AGENTS.md +39 -0
- package/packages/omo-codex/plugin/scripts/auto-update-plan.mjs +1 -2
- package/packages/omo-codex/plugin/scripts/auto-update.mjs +0 -9
- package/packages/omo-codex/plugin/scripts/canonical-ultrawork-directive.mjs +17 -0
- package/packages/omo-codex/plugin/scripts/hook-status-message.mjs +0 -1
- package/packages/omo-codex/plugin/scripts/migrate-codex-config/catalog.mjs +3 -3
- package/packages/omo-codex/plugin/scripts/sync-skills.mjs +36 -13
- package/packages/omo-codex/plugin/shared/package.json +3 -4
- package/packages/omo-codex/plugin/shared/src/config-loader.ts +2 -102
- package/packages/omo-codex/plugin/shared/src/config-migration.ts +0 -1
- package/packages/omo-codex/plugin/shared/test/config-loader.test.ts +41 -130
- package/packages/omo-codex/plugin/skills/ast-grep/AGENTS.md +51 -0
- package/packages/omo-codex/plugin/skills/coding-agent-sessions/AGENTS.md +62 -0
- package/packages/omo-codex/plugin/skills/coding-agent-sessions/SKILL.md +3 -2
- package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/all-platforms.md +1 -1
- package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/senpi.md +4 -4
- package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/pi_family.py +1 -1
- package/packages/omo-codex/plugin/skills/data-scientist/SKILL.md +99 -239
- package/packages/omo-codex/plugin/skills/data-scientist/references/execution-surfaces.md +91 -0
- package/packages/omo-codex/plugin/skills/data-scientist/references/placement.md +74 -0
- package/packages/omo-codex/plugin/skills/data-scientist/references/polars-lane.md +95 -0
- package/packages/omo-codex/plugin/skills/data-scientist/references/uv-setup.md +1 -1
- package/packages/omo-codex/plugin/skills/data-scientist/references/visualization.md +64 -0
- package/packages/omo-codex/plugin/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
- package/packages/omo-codex/plugin/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
- package/packages/omo-codex/plugin/skills/debugging/SKILL.md +2 -0
- package/packages/omo-codex/plugin/skills/debugging/references/methodology/00-setup.md +12 -0
- package/packages/omo-codex/plugin/skills/debugging/references/methodology/02-investigate.md +21 -0
- package/packages/omo-codex/plugin/skills/debugging/references/runtimes/go.md +15 -1
- package/packages/omo-codex/plugin/skills/debugging/references/runtimes/native-binary.md +38 -0
- package/packages/omo-codex/plugin/skills/debugging/references/runtimes/node.md +25 -0
- package/packages/omo-codex/plugin/skills/debugging/references/runtimes/python.md +13 -0
- package/packages/omo-codex/plugin/skills/debugging/references/runtimes/rust.md +41 -0
- package/packages/omo-codex/plugin/skills/debugging/references/scripts/dap.mjs +267 -0
- package/packages/omo-codex/plugin/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
- package/packages/omo-codex/plugin/skills/debugging/references/tools/dap.md +103 -0
- package/packages/omo-codex/plugin/skills/debugging/references/tools/frida.md +193 -0
- package/packages/omo-codex/plugin/skills/frontend/SKILL.md +11 -7
- package/packages/omo-codex/plugin/skills/frontend/references/design/_INDEX.md +1 -0
- package/packages/omo-codex/plugin/skills/frontend/references/design/print-paged-media.md +76 -0
- package/packages/omo-codex/plugin/skills/frontend/references/design/stylegallery.md +80 -0
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/README.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/orchestration.md +1 -1
- package/packages/omo-codex/plugin/skills/frontend/references/designpowers/routing.md +5 -5
- package/packages/omo-codex/plugin/skills/init-deep/SKILL.md +13 -13
- package/packages/omo-codex/plugin/skills/lcx-doctor/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/review-work/SKILL.md +4 -4
- package/packages/omo-codex/plugin/skills/ultimate-browsing/ATTRIBUTION.md +37 -10
- package/packages/omo-codex/plugin/skills/ultimate-browsing/SKILL.md +2 -0
- package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/AGENTS.md +110 -0
- package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/templates/package.json +1 -1
- package/packages/omo-codex/plugin/skills/ultimate-browsing/references/chrome-stealth.md +13 -11
- package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/README.md +9 -2
- package/packages/omo-codex/plugin/skills/ultrawork/SKILL.md +15 -3
- package/packages/omo-codex/plugin/skills/{start-work → ulw-execute}/SKILL.md +19 -26
- package/packages/omo-codex/plugin/skills/ulw-execute/agents/openai.yaml +2 -0
- package/packages/omo-codex/plugin/skills/ulw-loop/SKILL.md +3 -2
- package/packages/omo-codex/plugin/skills/ulw-loop/references/define-goal.md +108 -0
- package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +22 -1
- package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +6 -7
- package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +31 -7
- package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-clear.md +2 -1
- package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-unclear.md +5 -5
- package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +4 -2
- package/packages/omo-codex/plugin/skills/visual-qa/AGENTS.md +58 -0
- package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +3 -2
- package/packages/omo-codex/plugin/test/AGENTS.md +47 -0
- package/packages/omo-codex/plugin/test/aggregate-agents.test.mjs +19 -173
- package/packages/omo-codex/plugin/test/aggregate-hooks.test.mjs +9 -48
- package/packages/omo-codex/plugin/test/aggregate-manifest.test.mjs +2 -3
- package/packages/omo-codex/plugin/test/aggregate-mcp.test.mjs +2 -7
- package/packages/omo-codex/plugin/test/aggregate-model-catalog.test.mjs +1 -1
- package/packages/omo-codex/plugin/test/aggregate-plugin-fixture.mjs +175 -13
- package/packages/omo-codex/plugin/test/aggregate.test.mjs +78 -2
- package/packages/omo-codex/plugin/test/auto-update-release-notes.test.mjs +19 -33
- package/packages/omo-codex/plugin/test/auto-update.test.mjs +2 -27
- package/packages/omo-codex/plugin/test/bootstrap-setup.test.mjs +0 -31
- package/packages/omo-codex/plugin/test/canonical-ultrawork-directive.test.mjs +53 -0
- package/packages/omo-codex/plugin/test/component-bin-names.test.mjs +2 -2
- package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +1 -51
- package/packages/omo-codex/plugin/test/component-hook-contract-cases.mjs +2 -2
- package/packages/omo-codex/plugin/test/hook-status-message.test.mjs +4 -5
- package/packages/omo-codex/plugin/test/lcx-contribute-bug-fix-template.test.mjs +21 -27
- package/packages/omo-codex/plugin/test/mcp-research-servers.test.mjs +1 -3
- package/packages/omo-codex/plugin/test/migrate-codex-config.test.mjs +8 -8
- package/packages/omo-codex/plugin/test/scaffold-plan.test.mjs +0 -36
- package/packages/omo-codex/plugin/test/sync-skills-codex-compatibility.test.mjs +101 -0
- package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +23 -13
- package/packages/omo-codex/plugin/test/sync-skills.test.mjs +14 -119
- package/packages/omo-codex/plugin/test/teammode-archive-ambiguity.test.mjs +0 -40
- package/packages/omo-codex/plugin/test/teammode-communication.test.mjs +6 -62
- package/packages/omo-codex/plugin/test/teammode-thread-links.test.mjs +3 -36
- package/packages/omo-codex/plugin/test/teammode-transport.test.mjs +0 -44
- package/packages/omo-codex/plugin/test/teammode-worktree.test.mjs +2 -6
- package/packages/omo-codex/plugin/test/ultrawork-skill-pointer.test.mjs +5 -5
- package/packages/omo-codex/plugin/test/ulw-plan-review-state-contract.test.mjs +0 -3
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +2817 -913
- package/packages/{omo-codex/plugin/components/ultrawork/skills/ultrawork/SKILL.md → prompts-core/prompts/ultrawork/codex.md} +15 -10
- package/packages/shared-skills/skills/ast-grep/AGENTS.md +51 -0
- package/packages/shared-skills/skills/coding-agent-sessions/AGENTS.md +62 -0
- package/packages/shared-skills/skills/coding-agent-sessions/SKILL.md +3 -2
- package/packages/shared-skills/skills/coding-agent-sessions/references/all-platforms.md +1 -1
- package/packages/shared-skills/skills/coding-agent-sessions/references/senpi.md +4 -4
- package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/pi_family.py +1 -1
- package/packages/shared-skills/skills/data-scientist/SKILL.md +99 -239
- package/packages/shared-skills/skills/data-scientist/references/execution-surfaces.md +91 -0
- package/packages/shared-skills/skills/data-scientist/references/placement.md +74 -0
- package/packages/shared-skills/skills/data-scientist/references/polars-lane.md +95 -0
- package/packages/shared-skills/skills/data-scientist/references/uv-setup.md +1 -1
- package/packages/shared-skills/skills/data-scientist/references/visualization.md +64 -0
- package/packages/shared-skills/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
- package/packages/shared-skills/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
- package/packages/shared-skills/skills/debugging/SKILL.md +2 -0
- package/packages/shared-skills/skills/debugging/references/methodology/00-setup.md +12 -0
- package/packages/shared-skills/skills/debugging/references/methodology/02-investigate.md +21 -0
- package/packages/shared-skills/skills/debugging/references/runtimes/go.md +15 -1
- package/packages/shared-skills/skills/debugging/references/runtimes/native-binary.md +38 -0
- package/packages/shared-skills/skills/debugging/references/runtimes/node.md +25 -0
- package/packages/shared-skills/skills/debugging/references/runtimes/python.md +13 -0
- package/packages/shared-skills/skills/debugging/references/runtimes/rust.md +41 -0
- package/packages/shared-skills/skills/debugging/references/scripts/dap.mjs +267 -0
- package/packages/shared-skills/skills/debugging/references/scripts/dap.test.ts +86 -0
- package/packages/shared-skills/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
- package/packages/shared-skills/skills/debugging/references/tools/dap.md +103 -0
- package/packages/shared-skills/skills/debugging/references/tools/frida.md +193 -0
- package/packages/shared-skills/skills/frontend/SKILL.md +11 -7
- package/packages/shared-skills/skills/frontend/references/design/_INDEX.md +1 -0
- package/packages/shared-skills/skills/frontend/references/design/print-paged-media.md +76 -0
- package/packages/shared-skills/skills/frontend/references/design/stylegallery.md +80 -0
- package/packages/shared-skills/skills/frontend/references/designpowers/README.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
- package/packages/shared-skills/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
- package/packages/shared-skills/skills/frontend/references/designpowers/orchestration.md +1 -1
- package/packages/shared-skills/skills/frontend/references/designpowers/routing.md +5 -5
- package/packages/shared-skills/skills/init-deep/SKILL.md +13 -13
- package/packages/shared-skills/skills/review-work/SKILL.md +3 -3
- package/packages/shared-skills/skills/ultimate-browsing/ATTRIBUTION.md +37 -10
- package/packages/shared-skills/skills/ultimate-browsing/SKILL.md +2 -0
- package/packages/shared-skills/skills/ultimate-browsing/engine/AGENTS.md +110 -0
- package/packages/shared-skills/skills/ultimate-browsing/engine/templates/package.json +1 -1
- package/packages/shared-skills/skills/ultimate-browsing/references/chrome-stealth.md +13 -11
- package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/README.md +9 -2
- package/packages/shared-skills/skills/{start-work → ulw-execute}/SKILL.md +17 -16
- package/packages/shared-skills/skills/ulw-plan/SKILL.md +6 -7
- package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +31 -7
- package/packages/shared-skills/skills/ulw-plan/references/intent-clear.md +2 -1
- package/packages/shared-skills/skills/ulw-plan/references/intent-unclear.md +5 -5
- package/packages/shared-skills/skills/ulw-research/SKILL.md +4 -2
- package/packages/shared-skills/skills/visual-qa/AGENTS.md +58 -0
- package/packages/shared-skills/skills/visual-qa/SKILL.md +3 -2
- package/script/qa/web-terminal-visual-qa.mjs +2 -0
- package/script/qa/xterm-live-terminal.mjs +18 -2
- package/packages/lsp-tools-mcp/dist/lsp/cleanup-errors.d.ts +0 -1
- package/packages/lsp-tools-mcp/dist/lsp/constants.d.ts +0 -1
- package/packages/lsp-tools-mcp/dist/lsp/language-mappings.d.ts +0 -1
- package/packages/lsp-tools-mcp/dist/lsp/process-signal-cleanup.d.ts +0 -1
- package/packages/lsp-tools-mcp/dist/missing-dependency-result.d.ts +0 -1
- package/packages/omo-codex/plugin/components/codegraph/AGENTS.md +0 -58
- package/packages/omo-codex/plugin/components/codegraph/NODE-RUNTIME-LICENSES.md +0 -2951
- package/packages/omo-codex/plugin/components/codegraph/NOTICE +0 -16
- package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +0 -12136
- package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +0 -9734
- package/packages/omo-codex/plugin/components/codegraph/package.json +0 -33
- package/packages/omo-codex/plugin/components/codegraph/src/cache-gc.ts +0 -29
- package/packages/omo-codex/plugin/components/codegraph/src/cli.ts +0 -79
- package/packages/omo-codex/plugin/components/codegraph/src/hook-input.ts +0 -33
- package/packages/omo-codex/plugin/components/codegraph/src/hook-sweep.ts +0 -25
- package/packages/omo-codex/plugin/components/codegraph/src/hook-types.ts +0 -131
- package/packages/omo-codex/plugin/components/codegraph/src/hook.ts +0 -258
- package/packages/omo-codex/plugin/components/codegraph/src/mcp-bridge.ts +0 -309
- package/packages/omo-codex/plugin/components/codegraph/src/mcp-unavailable.ts +0 -80
- package/packages/omo-codex/plugin/components/codegraph/src/post-tool-use-hook.ts +0 -34
- package/packages/omo-codex/plugin/components/codegraph/src/serve-invocation.ts +0 -29
- package/packages/omo-codex/plugin/components/codegraph/src/serve.ts +0 -263
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-command.ts +0 -106
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-cooldown.ts +0 -145
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-hook-runtime.ts +0 -21
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-lock.ts +0 -139
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-outcome.ts +0 -15
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-paths.ts +0 -32
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-project.ts +0 -109
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker-result.ts +0 -148
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker.ts +0 -175
- package/packages/omo-codex/plugin/components/codegraph/src/sweep-cli.ts +0 -81
- package/packages/omo-codex/plugin/components/codegraph/test/cache-gc.test.ts +0 -34
- package/packages/omo-codex/plugin/components/codegraph/test/hook-exclusion.test.ts +0 -112
- package/packages/omo-codex/plugin/components/codegraph/test/hook-registration.test.ts +0 -26
- package/packages/omo-codex/plugin/components/codegraph/test/hook-session-start-guard.test.ts +0 -160
- package/packages/omo-codex/plugin/components/codegraph/test/hook-store-upgrade.test.ts +0 -50
- package/packages/omo-codex/plugin/components/codegraph/test/hook-sweep.test.ts +0 -29
- package/packages/omo-codex/plugin/components/codegraph/test/hook.test.ts +0 -320
- package/packages/omo-codex/plugin/components/codegraph/test/mcp-bridge-fixtures.ts +0 -172
- package/packages/omo-codex/plugin/components/codegraph/test/package-runtime.test.ts +0 -91
- package/packages/omo-codex/plugin/components/codegraph/test/provisioned-node-guard.test.ts +0 -100
- package/packages/omo-codex/plugin/components/codegraph/test/serve-built-wrapper.test.ts +0 -76
- package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge-lifecycle.test.ts +0 -133
- package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge.test.ts +0 -245
- package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-facade.test.ts +0 -69
- package/packages/omo-codex/plugin/components/codegraph/test/serve-node-support.test.ts +0 -43
- package/packages/omo-codex/plugin/components/codegraph/test/serve-provision.test.ts +0 -147
- package/packages/omo-codex/plugin/components/codegraph/test/serve-unavailable.test.ts +0 -175
- package/packages/omo-codex/plugin/components/codegraph/test/serve.test.ts +0 -385
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-node-support.test.ts +0 -206
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-project.test.ts +0 -58
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-state.test.ts +0 -104
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-trust-boundary.test.ts +0 -65
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-availability.test.ts +0 -106
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-cooldown.test.ts +0 -116
- package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-flow.test.ts +0 -258
- package/packages/omo-codex/plugin/components/codegraph/test/sweep-cli.test.ts +0 -56
- package/packages/omo-codex/plugin/components/codegraph/tsconfig.build.json +0 -13
- package/packages/omo-codex/plugin/components/codegraph/tsconfig.json +0 -25
- package/packages/omo-codex/plugin/components/start-work-continuation/LICENSE +0 -21
- package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +0 -28
- package/packages/omo-codex/plugin/components/ultrawork/directive.md +0 -471
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +0 -18
- package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.json +0 -17
- package/packages/omo-codex/plugin/hooks/stop-checking-start-work-continuation.json +0 -17
- package/packages/omo-codex/plugin/hooks/subagent-stop-checking-start-work-continuation.json +0 -17
- package/packages/omo-codex/plugin/scripts/migrate-omo-sot/editor.mjs +0 -125
- package/packages/omo-codex/plugin/scripts/migrate-omo-sot/jsonc.mjs +0 -43
- package/packages/omo-codex/plugin/scripts/migrate-omo-sot/scaffold.mjs +0 -29
- package/packages/omo-codex/plugin/scripts/migrate-omo-sot.mjs +0 -121
- package/packages/omo-codex/plugin/skills/data-scientist/references/common-scenarios.md +0 -176
- package/packages/omo-codex/plugin/skills/data-scientist/references/execution-templates.md +0 -197
- package/packages/omo-codex/plugin/skills/data-scientist/references/integration-patterns.md +0 -153
- package/packages/omo-codex/plugin/skills/data-scientist/references/performance-benchmarks.md +0 -37
- package/packages/omo-codex/plugin/skills/start-work/agents/openai.yaml +0 -2
- package/packages/omo-codex/plugin/test/aggregate-skills.test.mjs +0 -92
- package/packages/omo-codex/plugin/test/component-codegraph-mcp-smoke.test.mjs +0 -76
- package/packages/omo-codex/plugin/test/migrate-omo-sot.test.mjs +0 -179
- package/packages/omo-codex/plugin/test/sync-skills-orchestration.test.mjs +0 -314
- package/packages/omo-codex/plugin/test/ulw-plan-scope-contract.test.mjs +0 -24
- package/packages/shared-skills/skills/data-scientist/references/common-scenarios.md +0 -176
- package/packages/shared-skills/skills/data-scientist/references/execution-templates.md +0 -197
- package/packages/shared-skills/skills/data-scientist/references/integration-patterns.md +0 -153
- package/packages/shared-skills/skills/data-scientist/references/performance-benchmarks.md +0 -37
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/.gitattributes +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/CHANGELOG.md +0 -0
- /package/packages/omo-codex/plugin/components/{codegraph → ulw-execute-continuation}/LICENSE +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/plan-checklist.ts +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/types.ts +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-completed.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-mixed-platforms.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-single-codex-work.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-all-done.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-scaffold.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-nested-checkboxes.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-unchecked.md +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.build.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.json +0 -0
- /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/vitest.config.ts +0 -0
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"CHANGELOG.md"
|
|
33
33
|
],
|
|
34
34
|
"scripts": {
|
|
35
|
-
"build": "node scripts/ensure-core-links.mjs &&
|
|
35
|
+
"build": "node scripts/ensure-core-links.mjs && node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.build.json --emitDeclarationOnly && bun build src/cli.ts src/mcp.ts src/tools.ts src/request-context.ts src/lsp/manager.ts --outdir dist --target node --format esm",
|
|
36
36
|
"test": "vitest --run",
|
|
37
37
|
"test:watch": "vitest",
|
|
38
38
|
"typecheck": "tsc --noEmit",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "omo",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.40",
|
|
4
4
|
"description": "One Codex plugin namespace for Yeongyu's local Codex components.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Yeongyu Kim",
|
|
@@ -24,7 +24,6 @@
|
|
|
24
24
|
"./hooks/session-start-recording-session-telemetry.json",
|
|
25
25
|
"./hooks/session-start-checking-auto-update.json",
|
|
26
26
|
"./hooks/session-start-checking-bootstrap-provisioning.json",
|
|
27
|
-
"./hooks/session-start-checking-codegraph-bootstrap.json",
|
|
28
27
|
"./hooks/user-prompt-submit-loading-project-rules.json",
|
|
29
28
|
"./hooks/user-prompt-submit-checking-ultrawork-trigger.json",
|
|
30
29
|
"./hooks/user-prompt-submit-checking-ulw-loop-steering.json",
|
|
@@ -33,22 +32,21 @@
|
|
|
33
32
|
"./hooks/pre-tool-use-guarding-ulw-loop-spawns.json",
|
|
34
33
|
"./hooks/post-tool-use-checking-comments.json",
|
|
35
34
|
"./hooks/post-tool-use-checking-lsp-diagnostics.json",
|
|
36
|
-
"./hooks/post-tool-use-checking-codegraph-init-guidance.json",
|
|
37
35
|
"./hooks/post-tool-use-matching-project-rules.json",
|
|
38
36
|
"./hooks/post-tool-use-checking-thread-title-hygiene.json",
|
|
39
37
|
"./hooks/post-compact-resetting-git-bash-mcp-reminder.json",
|
|
40
38
|
"./hooks/post-compact-resetting-project-rule-cache.json",
|
|
41
39
|
"./hooks/post-compact-resetting-lsp-diagnostics-cache.json",
|
|
42
|
-
"./hooks/stop-checking-
|
|
40
|
+
"./hooks/stop-checking-ulw-execute-continuation.json",
|
|
43
41
|
"./hooks/stop-checking-ulw-loop-resume.json",
|
|
44
|
-
"./hooks/subagent-stop-checking-
|
|
42
|
+
"./hooks/subagent-stop-checking-ulw-execute-continuation.json",
|
|
45
43
|
"./hooks/subagent-stop-verifying-lazycodex-executor-evidence.json"
|
|
46
44
|
],
|
|
47
45
|
"mcpServers": "./.mcp.json",
|
|
48
46
|
"interface": {
|
|
49
47
|
"displayName": "OMO",
|
|
50
48
|
"shortDescription": "Unified local Codex components",
|
|
51
|
-
"longDescription": "OMO exposes local Codex Rules, Comment Checker, Git Bash, LSP, Ultrawork, ulw-loop,
|
|
49
|
+
"longDescription": "OMO exposes local Codex Rules, Comment Checker, Git Bash, LSP, Ultrawork, ulw-loop, ulw-execute continuation, and telemetry components as one plugin namespace while keeping each component isolated under components/ for maintenance.",
|
|
52
50
|
"developerName": "Yeongyu Kim",
|
|
53
51
|
"category": "Developer Tools",
|
|
54
52
|
"capabilities": [
|
|
@@ -6,12 +6,6 @@
|
|
|
6
6
|
"context7": {
|
|
7
7
|
"url": "https://mcp.context7.com/mcp"
|
|
8
8
|
},
|
|
9
|
-
"codegraph": {
|
|
10
|
-
"command": "node",
|
|
11
|
-
"args": ["components/codegraph/dist/serve.js"],
|
|
12
|
-
"cwd": ".",
|
|
13
|
-
"required": false
|
|
14
|
-
},
|
|
15
9
|
"git_bash": {
|
|
16
10
|
"command": "node",
|
|
17
11
|
"args": ["../../git-bash-mcp/dist/cli.js", "mcp"],
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# plugin — vendored Codex plugin bundle (`@sisyphuslabs/omo-codex-plugin`)
|
|
2
|
+
|
|
3
|
+
**Score 13** (608 files; distinct package boundary between the adapter and 13 component dirs, each with its own AGENTS.md).
|
|
4
|
+
|
|
5
|
+
## OVERVIEW
|
|
6
|
+
|
|
7
|
+
The shipped Codex plugin namespace `omo` (marketplace `sisyphuslabs`), v5.0.0-beta.18. npm workspaces root for the 10 component packages; owns aggregate hook wiring, MCP declarations, and the build/sync pipeline. Component roster, sync-skills pipeline, and install targets are owned by the package AGENTS.md — not repeated here.
|
|
8
|
+
|
|
9
|
+
## STRUCTURE
|
|
10
|
+
|
|
11
|
+
| Path | Role |
|
|
12
|
+
|------|------|
|
|
13
|
+
| `components/` | 10 workspace components + `bootstrap` (standalone, deliberately outside workspaces), `test-support`, `lcx`. Each owns its `AGENTS.md` |
|
|
14
|
+
| `hooks/` | 21 aggregate hook JSON files, assembled from each component's `hooks/hooks.json` by the build |
|
|
15
|
+
| `scripts/` | Build/sync/migration orchestration (own AGENTS.md) |
|
|
16
|
+
| `test/` | node:test black-box contract suite (own AGENTS.md) |
|
|
17
|
+
| `shared/` | `getCodexOmoConfig()` unified-config loader + startup config migration (`src/config-loader.ts`, `src/config-migration.ts`) |
|
|
18
|
+
| `skills/` | GENERATED by `sync-skills.mjs`; gitignored except the two tracked shared copies (`init-deep`, `ulw-plan`) |
|
|
19
|
+
| `.codex-plugin/plugin.json` | Aggregate manifest Codex consumes |
|
|
20
|
+
| `.mcp.json` | 4 servers: `git_bash`, `lsp` (local stdio) + `grep_app`, `context7` (remote) |
|
|
21
|
+
|
|
22
|
+
## WHERE TO LOOK
|
|
23
|
+
|
|
24
|
+
| Task | Location |
|
|
25
|
+
|------|----------|
|
|
26
|
+
| Add/modify a component hook | Component's `hooks/hooks.json`; the build re-assembles `hooks/*.json` |
|
|
27
|
+
| Aggregate hook side | `hooks/<event>-checking-<component>.json`; only the aggregate copies carry `commandWindows` dispatch |
|
|
28
|
+
| MCP server enable/paths | `.mcp.json`; install-time rewriting in `../src/install/codex-cache-bundled-mcps.ts` |
|
|
29
|
+
| Unified `[codex]` config resolution | `shared/src/config-loader.ts` |
|
|
30
|
+
| Build pipeline internals | `scripts/AGENTS.md` |
|
|
31
|
+
|
|
32
|
+
## CONVENTIONS
|
|
33
|
+
|
|
34
|
+
- Build order is fixed: `sync-version` → `sync-hook-status-messages` → `build-bundled-mcp-runtimes` → `materialize-shared-upstreams` → `sync-skills` → `build-components` (all via `npm run build`).
|
|
35
|
+
- `(OmO <version>)` `statusMessage` stamps are generated by sync scripts; never hand-edit.
|
|
36
|
+
- `skills/` is build output: edit component skill sources, then rebuild. The two tracked shared copies are the exception — they are committed.
|
|
37
|
+
- Tests run with `node --test`, NOT bun/vitest: root `bunfig.toml` excludes `plugin/**` from the root bun suite.
|
|
38
|
+
|
|
39
|
+
## COMMANDS
|
|
40
|
+
|
|
41
|
+
From `packages/omo-codex/plugin/`:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npm run build # full sync + components pipeline
|
|
45
|
+
npm test # node --test test/*.test.mjs
|
|
46
|
+
npm run check # build && test
|
|
47
|
+
```
|
|
@@ -8,12 +8,12 @@ Internally each component remains isolated under `components/`:
|
|
|
8
8
|
- `components/rules`
|
|
9
9
|
- `components/lsp`
|
|
10
10
|
- `components/git-bash`
|
|
11
|
-
- `components/
|
|
11
|
+
- `components/ulw-execute-continuation`
|
|
12
12
|
- `components/ultrawork`
|
|
13
13
|
- `components/ulw-loop`
|
|
14
14
|
- `components/telemetry`
|
|
15
15
|
|
|
16
|
-
The root plugin manifest exports one Codex plugin named `omo`, with aggregate hooks, skills, and plugin-scoped MCP servers for `grep_app`, `context7`, `
|
|
16
|
+
The root plugin manifest exports one Codex plugin named `omo`, with aggregate hooks, skills, and plugin-scoped MCP servers for `grep_app`, `context7`, `git_bash`, and `lsp`. AST-aware search ships as the `ast-grep` skill, not as an MCP server.
|
|
17
17
|
|
|
18
18
|
## Telemetry
|
|
19
19
|
|
|
@@ -1094,6 +1094,15 @@ function replaceOrInsertRootSetting(config, key, value) {
|
|
|
1094
1094
|
|
|
1095
1095
|
${suffix.trimStart()}`;
|
|
1096
1096
|
}
|
|
1097
|
+
function removeRootSetting(config, key) {
|
|
1098
|
+
const sectionStart = findFirstTableStart(config);
|
|
1099
|
+
const root = config.slice(0, sectionStart);
|
|
1100
|
+
const suffix = config.slice(sectionStart);
|
|
1101
|
+
const linePattern = new RegExp(`^[ \\t]*${escapeRegExp(key)}[ \\t]*=.*(?:\\n|$)`, "m");
|
|
1102
|
+
if (!linePattern.test(root))
|
|
1103
|
+
return config;
|
|
1104
|
+
return root.replace(linePattern, "") + suffix;
|
|
1105
|
+
}
|
|
1097
1106
|
function replaceOrInsertRootDottedSetting(config, keyPath, value) {
|
|
1098
1107
|
const targetPath = parseTomlDottedKey(keyPath);
|
|
1099
1108
|
if (!targetPath)
|
|
@@ -2155,9 +2164,9 @@ var LEGACY_CODEX_COMPONENT_BINS = [
|
|
|
2155
2164
|
{ name: "codex-comment-checker", component: "comment-checker" },
|
|
2156
2165
|
{ name: "codex-lsp", component: "lsp" },
|
|
2157
2166
|
{ name: "codex-rules", component: "rules" },
|
|
2158
|
-
{ name: "codex-start-work-continuation", component: "start-work-continuation" },
|
|
2159
2167
|
{ name: "codex-telemetry", component: "telemetry" },
|
|
2160
|
-
{ name: "codex-ultrawork", component: "ultrawork" }
|
|
2168
|
+
{ name: "codex-ultrawork", component: "ultrawork" },
|
|
2169
|
+
{ name: "codex-ulw-execute-continuation", component: "ulw-execute-continuation" }
|
|
2161
2170
|
];
|
|
2162
2171
|
var LEGACY_CODEX_COMPONENT_BIN_NAMES = LEGACY_CODEX_COMPONENT_BINS.map((entry) => entry.name);
|
|
2163
2172
|
async function removeLegacyCodexComponentBins(binDir, platform) {
|
|
@@ -2829,7 +2838,7 @@ var AUTONOMOUS_FEATURES = ["multi_agent", "unified_exec", "goals"];
|
|
|
2829
2838
|
function ensureAutonomousPermissions(config) {
|
|
2830
2839
|
let next = replaceOrInsertRootSetting(config, "approval_policy", JSON.stringify("never"));
|
|
2831
2840
|
next = replaceOrInsertRootSetting(next, "sandbox_mode", JSON.stringify("danger-full-access"));
|
|
2832
|
-
next =
|
|
2841
|
+
next = removeRootSetting(next, "network_access");
|
|
2833
2842
|
for (const featureName of AUTONOMOUS_FEATURES) {
|
|
2834
2843
|
next = ensureFeatureEnabled(next, featureName);
|
|
2835
2844
|
}
|
|
@@ -2868,11 +2877,9 @@ enabled = true
|
|
|
2868
2877
|
function ensureOmoBuiltinMcpPolicies(config, input) {
|
|
2869
2878
|
if (input.marketplaceName !== "sisyphuslabs" || !input.pluginNames.includes("omo"))
|
|
2870
2879
|
return config;
|
|
2871
|
-
const codegraphEnabled = input.codegraphMcpEnabled ?? true;
|
|
2872
2880
|
const gitBashEnabled = (input.platform ?? process.platform) === "win32" && input.gitBashEnabled === true;
|
|
2873
2881
|
let nextConfig = removeStaleContext7PlaceholderMcp(config);
|
|
2874
2882
|
nextConfig = ensurePluginMcpEnabled(nextConfig, "omo@sisyphuslabs", "context7", true);
|
|
2875
|
-
nextConfig = ensurePluginMcpEnabled(nextConfig, "omo@sisyphuslabs", "codegraph", codegraphEnabled);
|
|
2876
2883
|
nextConfig = ensurePluginMcpEnabled(nextConfig, "omo@sisyphuslabs", "git_bash", gitBashEnabled);
|
|
2877
2884
|
return nextConfig;
|
|
2878
2885
|
}
|
|
@@ -3088,14 +3095,14 @@ import { join as join16 } from "node:path";
|
|
|
3088
3095
|
var FALLBACK_CODEX_MODEL_CATALOG = {
|
|
3089
3096
|
current: {
|
|
3090
3097
|
model: "gpt-5.6-sol",
|
|
3091
|
-
modelContextWindow:
|
|
3098
|
+
modelContextWindow: 650000,
|
|
3092
3099
|
modelReasoningEffort: "high",
|
|
3093
3100
|
planModeReasoningEffort: "xhigh"
|
|
3094
3101
|
},
|
|
3095
3102
|
managedProfiles: [
|
|
3096
3103
|
{
|
|
3097
3104
|
model: "gpt-5.5",
|
|
3098
|
-
modelContextWindow:
|
|
3105
|
+
modelContextWindow: 650000,
|
|
3099
3106
|
modelReasoningEffort: "high",
|
|
3100
3107
|
planModeReasoningEffort: "xhigh"
|
|
3101
3108
|
},
|
|
@@ -3387,7 +3394,6 @@ function isMissingFileError(error) {
|
|
|
3387
3394
|
import { readFile as readFile11, writeFile as writeFile7 } from "node:fs/promises";
|
|
3388
3395
|
import { join as join18 } from "node:path";
|
|
3389
3396
|
var GIT_BASH_ENV_KEY = "OMO_CODEX_GIT_BASH_PATH";
|
|
3390
|
-
var CODEGRAPH_RELATIVE_ARGS = new Set(["components/codegraph/dist/serve.js", "./components/codegraph/dist/serve.js"]);
|
|
3391
3397
|
async function stampGitBashMcpEnv(input) {
|
|
3392
3398
|
const manifestPath = join18(input.pluginRoot, ".mcp.json");
|
|
3393
3399
|
if (!await fileExistsStrict(manifestPath))
|
|
@@ -3395,7 +3401,7 @@ async function stampGitBashMcpEnv(input) {
|
|
|
3395
3401
|
const parsed = JSON.parse(await readFile11(manifestPath, "utf8"));
|
|
3396
3402
|
if (!isPlainRecord(parsed) || !isPlainRecord(parsed["mcpServers"]))
|
|
3397
3403
|
return false;
|
|
3398
|
-
let changed =
|
|
3404
|
+
let changed = false;
|
|
3399
3405
|
if (input.platform === "win32") {
|
|
3400
3406
|
const rawOverride = input.env?.[GIT_BASH_ENV_KEY];
|
|
3401
3407
|
const override = typeof rawOverride === "string" ? rawOverride.trim() : "";
|
|
@@ -3414,17 +3420,6 @@ async function stampGitBashMcpEnv(input) {
|
|
|
3414
3420
|
`);
|
|
3415
3421
|
return true;
|
|
3416
3422
|
}
|
|
3417
|
-
function stampCodegraphMcpPath(mcpServers, pluginRoot) {
|
|
3418
|
-
const codegraphServer = mcpServers["codegraph"];
|
|
3419
|
-
if (!isPlainRecord(codegraphServer) || !Array.isArray(codegraphServer["args"]))
|
|
3420
|
-
return false;
|
|
3421
|
-
const args = codegraphServer["args"];
|
|
3422
|
-
const entrypoint = args[0];
|
|
3423
|
-
if (typeof entrypoint !== "string" || !CODEGRAPH_RELATIVE_ARGS.has(entrypoint))
|
|
3424
|
-
return false;
|
|
3425
|
-
codegraphServer["args"] = [join18(pluginRoot, "components", "codegraph", "dist", "serve.js"), ...args.slice(1)];
|
|
3426
|
-
return true;
|
|
3427
|
-
}
|
|
3428
3423
|
|
|
3429
3424
|
// ../src/install/codex-hook-trust.ts
|
|
3430
3425
|
import { createHash as createHash3 } from "node:crypto";
|
|
@@ -4116,7 +4111,8 @@ function spawnDetachedWorker(invocation) {
|
|
|
4116
4111
|
const child = spawn(invocation.command, [...invocation.args], {
|
|
4117
4112
|
detached: true,
|
|
4118
4113
|
env: invocation.env,
|
|
4119
|
-
stdio: "ignore"
|
|
4114
|
+
stdio: "ignore",
|
|
4115
|
+
windowsHide: true
|
|
4120
4116
|
});
|
|
4121
4117
|
child.unref();
|
|
4122
4118
|
}
|
|
@@ -4222,33 +4218,33 @@ if (isProcessEntry()) {
|
|
|
4222
4218
|
});
|
|
4223
4219
|
}
|
|
4224
4220
|
export {
|
|
4225
|
-
|
|
4226
|
-
runWorkerSetup,
|
|
4227
|
-
runSgProvision,
|
|
4228
|
-
runSessionStartHook,
|
|
4229
|
-
runBootstrapWorker,
|
|
4230
|
-
resolvePluginDataRoot,
|
|
4231
|
-
resolveCodexHome,
|
|
4232
|
-
resolveBootstrapStatePath,
|
|
4233
|
-
resolveBootstrapLockPath,
|
|
4234
|
-
readPluginVersion,
|
|
4235
|
-
readBootstrapState,
|
|
4236
|
-
parseWorkerFlags,
|
|
4237
|
-
parseBootstrapState,
|
|
4238
|
-
executeSessionStartHook,
|
|
4239
|
-
detectInstallFlowFromEnvironment,
|
|
4240
|
-
detectInstallFlowForTest,
|
|
4241
|
-
detectInstallFlowDetailed,
|
|
4242
|
-
detectInstallFlow,
|
|
4243
|
-
defaultWorkerSteps,
|
|
4244
|
-
bootstrapLocks,
|
|
4245
|
-
appendBootstrapLog,
|
|
4246
|
-
SG_PROVISION_COMPONENT,
|
|
4247
|
-
SG_FORCE_PROVISION_ENV_KEY,
|
|
4248
|
-
SETUP_PLUGIN_NAME,
|
|
4249
|
-
SETUP_MARKETPLACE_NAME,
|
|
4250
|
-
INSTALL_SNAPSHOT_FILENAME,
|
|
4251
|
-
GIT_BASH_INSTALL_HINT,
|
|
4221
|
+
BOOTSTRAP_DOCTOR_HINT,
|
|
4252
4222
|
BOOTSTRAP_RESTART_NOTICE,
|
|
4253
|
-
|
|
4223
|
+
GIT_BASH_INSTALL_HINT,
|
|
4224
|
+
INSTALL_SNAPSHOT_FILENAME,
|
|
4225
|
+
SETUP_MARKETPLACE_NAME,
|
|
4226
|
+
SETUP_PLUGIN_NAME,
|
|
4227
|
+
SG_FORCE_PROVISION_ENV_KEY,
|
|
4228
|
+
SG_PROVISION_COMPONENT,
|
|
4229
|
+
appendBootstrapLog,
|
|
4230
|
+
bootstrapLocks,
|
|
4231
|
+
defaultWorkerSteps,
|
|
4232
|
+
detectInstallFlow,
|
|
4233
|
+
detectInstallFlowDetailed,
|
|
4234
|
+
detectInstallFlowForTest,
|
|
4235
|
+
detectInstallFlowFromEnvironment,
|
|
4236
|
+
executeSessionStartHook,
|
|
4237
|
+
parseBootstrapState,
|
|
4238
|
+
parseWorkerFlags,
|
|
4239
|
+
readBootstrapState,
|
|
4240
|
+
readPluginVersion,
|
|
4241
|
+
resolveBootstrapLockPath,
|
|
4242
|
+
resolveBootstrapStatePath,
|
|
4243
|
+
resolveCodexHome,
|
|
4244
|
+
resolvePluginDataRoot,
|
|
4245
|
+
runBootstrapWorker,
|
|
4246
|
+
runSessionStartHook,
|
|
4247
|
+
runSgProvision,
|
|
4248
|
+
runWorkerSetup,
|
|
4249
|
+
sgProvisionDestination
|
|
4254
4250
|
};
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
|
|
9
9
|
"commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
|
|
10
10
|
"timeout": 30,
|
|
11
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
11
|
+
"statusMessage": "(OmO 5.0.0-beta.40) Checking Bootstrap Provisioning"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sisyphuslabs/codex-bootstrap",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.40",
|
|
4
4
|
"description": "Codex SessionStart bootstrap component that provisions LazyCodex runtime dependencies from a detached worker.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": true,
|
|
@@ -10,6 +10,15 @@ Conventions for human contributors and AI agents working on this repository.
|
|
|
10
10
|
- Tabs for indentation. Double quotes for strings.
|
|
11
11
|
- Tests use vitest with `#given .. #when .. #then` descriptions or plain `// given / // when / // then` body comments.
|
|
12
12
|
|
|
13
|
+
## Layout
|
|
14
|
+
|
|
15
|
+
- `src/core.ts`: parse API — `parseApplyPatchRequests`, `extractCommentCheckRequests`, `toHookInput`, `isToolFailureOutput`, `isRecord`.
|
|
16
|
+
- `src/apply-patch.ts`: `apply_patch` extraction supporting Codex `tool_input.command`, raw patch text, and OMO-compatible metadata.
|
|
17
|
+
- `src/request-extractor.ts` / `src/hook-input.ts` / `src/core-values.ts`: request/input shaping and constants.
|
|
18
|
+
- `src/runner.ts`: spawns the checker binary — `runCommentChecker`, `resolveCommentCheckerBinary`, `spawnProcess`.
|
|
19
|
+
- `src/codex-hook.ts`: `PostToolUse` hook + CLI (`extractCodexCommentCheckRequests`, `runCommentCheckerPostToolUse`, `runCodexHookCli`).
|
|
20
|
+
- `hooks/hooks.json`: registration. Heaviest suite: `test/codex-hook.test.ts` (513 LOC).
|
|
21
|
+
|
|
13
22
|
## Commands
|
|
14
23
|
|
|
15
24
|
- `npm install` - install dependencies.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://biomejs.dev/schemas/2.
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.5.9/schema.json",
|
|
3
3
|
"linter": {
|
|
4
4
|
"enabled": true,
|
|
5
5
|
"rules": {
|
|
6
|
-
"
|
|
6
|
+
"preset": "recommended",
|
|
7
7
|
"style": {
|
|
8
8
|
"noDefaultExport": "error",
|
|
9
9
|
"noEnum": "error",
|
|
@@ -416,7 +416,8 @@ function spawnProcess(command, args, stdin, maxOutputBytes = MAX_PROCESS_OUTPUT_
|
|
|
416
416
|
return new Promise((resolve) => {
|
|
417
417
|
const outputByteLimit = Number.isFinite(maxOutputBytes) && maxOutputBytes > 0 ? Math.floor(maxOutputBytes) : 0;
|
|
418
418
|
const proc = spawn(command, args, {
|
|
419
|
-
stdio: ["pipe", "pipe", "pipe"]
|
|
419
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
420
|
+
windowsHide: true
|
|
420
421
|
});
|
|
421
422
|
const stdout = { text: "", bytes: 0, truncated: false };
|
|
422
423
|
const stderr = { text: "", bytes: 0, truncated: false };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@code-yeongyu/codex-comment-checker",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.40",
|
|
4
4
|
"description": "Codex plugin that runs comment-checker after edit-like PostToolUse hooks.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "npm@11.12.1",
|
|
@@ -47,10 +47,10 @@
|
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@oh-my-opencode/comment-checker-core": "file:../../../../comment-checker-core",
|
|
50
|
-
"@biomejs/biome": "2.
|
|
51
|
-
"@types/node": "^
|
|
52
|
-
"typescript": "^
|
|
53
|
-
"vitest": "^4.1.
|
|
50
|
+
"@biomejs/biome": "2.5.9",
|
|
51
|
+
"@types/node": "^26.2.0",
|
|
52
|
+
"typescript": "^7.0.2",
|
|
53
|
+
"vitest": "^4.1.11"
|
|
54
54
|
},
|
|
55
55
|
"engines": {
|
|
56
56
|
"node": ">=20.0.0"
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
extractApplyPatchEdits,
|
|
3
|
-
getApplyPatchMetadataFiles,
|
|
4
|
-
} from "@oh-my-opencode/comment-checker-core";
|
|
5
1
|
import type { CheckerEdit as CoreApplyPatchEdit } from "@oh-my-opencode/comment-checker-core";
|
|
2
|
+
import { extractApplyPatchEdits, getApplyPatchMetadataFiles } from "@oh-my-opencode/comment-checker-core";
|
|
6
3
|
import type { CommentCheckRequest } from "./types.js";
|
|
7
4
|
|
|
8
5
|
export function extractApplyPatchRequests(event: {
|
|
@@ -27,10 +24,7 @@ function extractApplyPatchMetadataRequests(details: unknown, sourceToolName: str
|
|
|
27
24
|
return toCommentCheckRequests(edits, sourceToolName);
|
|
28
25
|
}
|
|
29
26
|
|
|
30
|
-
function toCommentCheckRequests(
|
|
31
|
-
edits: readonly CoreApplyPatchEdit[],
|
|
32
|
-
sourceToolName: string,
|
|
33
|
-
): CommentCheckRequest[] {
|
|
27
|
+
function toCommentCheckRequests(edits: readonly CoreApplyPatchEdit[], sourceToolName: string): CommentCheckRequest[] {
|
|
34
28
|
const requests: CommentCheckRequest[] = [];
|
|
35
29
|
for (const edit of edits) {
|
|
36
30
|
if (edit.before.length === 0) {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
export { parseApplyPatchRequests } from "@oh-my-opencode/comment-checker-core";
|
|
1
|
+
export { isRecord, parseApplyPatchRequests } from "@oh-my-opencode/comment-checker-core";
|
|
2
2
|
export { toHookInput } from "./hook-input.js";
|
|
3
|
-
export { isRecord } from "@oh-my-opencode/comment-checker-core";
|
|
4
3
|
export { extractCommentCheckRequests, isToolFailureOutput } from "./request-extractor.js";
|
|
5
4
|
export type {
|
|
6
5
|
CheckerEdit,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { extractApplyPatchRequests } from "./apply-patch.js";
|
|
2
1
|
import { getString, isRecord } from "@oh-my-opencode/comment-checker-core";
|
|
2
|
+
import { extractApplyPatchRequests } from "./apply-patch.js";
|
|
3
3
|
import type { CheckerEdit, CommentCheckRequest, TextContent, ToolResultContent, ToolResultLike } from "./types.js";
|
|
4
4
|
|
|
5
5
|
export function extractCommentCheckRequests(event: ToolResultLike): CommentCheckRequest[] {
|
|
@@ -167,6 +167,7 @@ export function spawnProcess(
|
|
|
167
167
|
const outputByteLimit = Number.isFinite(maxOutputBytes) && maxOutputBytes > 0 ? Math.floor(maxOutputBytes) : 0;
|
|
168
168
|
const proc = spawn(command, args, {
|
|
169
169
|
stdio: ["pipe", "pipe", "pipe"],
|
|
170
|
+
windowsHide: true,
|
|
170
171
|
});
|
|
171
172
|
const stdout: OutputAccumulator = { text: "", bytes: 0, truncated: false };
|
|
172
173
|
const stderr: OutputAccumulator = { text: "", bytes: 0, truncated: false };
|
|
@@ -27,5 +27,5 @@ Component wrapper (`@sisyphuslabs/codex-git-bash-hook`, private, bin `omo-git-ba
|
|
|
27
27
|
- **Windows detection is env-tolerant** (`isWindowsHost`): `platform === "win32"` OR any of `OS=Windows_NT` / `ComSpec` / `SystemRoot` present, so bash-hosted shells on Windows still count.
|
|
28
28
|
- **Marker path:** `${PLUGIN_DATA:-~/.codex/omo-git-bash}/git-bash-reminder/<session_id>.seen`; session id sanitized to `[A-Za-z0-9._-]`. `PostCompact` removes it with `rmSync(force)`.
|
|
29
29
|
- **Hook must never block the user's Bash call:** the CLI swallows parse/fs errors and exits 0 on both hook paths; malformed or empty stdin yields empty output.
|
|
30
|
-
- **Runtime dep-free Node >=20 ESM.**
|
|
30
|
+
- **Runtime dep-free Node >=20 ESM.** Build `tsc -p tsconfig.build.json`; tests run via `bun test test/*.test.ts` (unlike the vitest-based `lsp` component).
|
|
31
31
|
- **Windows absolute MCP targets are valid:** `isPluginRuntimePathArg` in `packages/omo-opencode/src/cli/doctor/checks/codex-components.ts` and `script/lazycodex-marketplace-validation.ts` gained `isAbsolute(arg)` so a rewritten `C:\...` git_bash/lsp entrypoint passes validation (commit 3b1681ae8).
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
|
|
10
10
|
"timeout": 5,
|
|
11
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
11
|
+
"statusMessage": "(OmO 5.0.0-beta.40) Recommending Git Bash MCP"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"type": "command",
|
|
21
21
|
"command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
|
|
22
22
|
"timeout": 5,
|
|
23
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
23
|
+
"statusMessage": "(OmO 5.0.0-beta.40) Resetting Git Bash MCP Reminder"
|
|
24
24
|
}
|
|
25
25
|
]
|
|
26
26
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sisyphuslabs/codex-git-bash-hook",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.40",
|
|
4
4
|
"description": "Codex hook component that reminds Windows sessions to prefer the OMO git_bash MCP.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": true,
|
|
@@ -17,9 +17,8 @@
|
|
|
17
17
|
"typecheck": "tsc --noEmit"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
|
-
"@
|
|
21
|
-
"
|
|
22
|
-
"typescript": "^6.0.3"
|
|
20
|
+
"@types/node": "^26.2.0",
|
|
21
|
+
"typescript": "^7.0.2"
|
|
23
22
|
},
|
|
24
23
|
"engines": {
|
|
25
24
|
"node": ">=20.0.0"
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://biomejs.dev/schemas/2.
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.5.9/schema.json",
|
|
3
3
|
"linter": {
|
|
4
4
|
"enabled": true,
|
|
5
5
|
"rules": {
|
|
6
|
-
"
|
|
6
|
+
"preset": "recommended",
|
|
7
7
|
"style": {
|
|
8
8
|
"noDefaultExport": "error",
|
|
9
9
|
"noEnum": "error",
|
|
@@ -66,11 +66,7 @@ function isRecord(value) {
|
|
|
66
66
|
var SUBAGENT_STOP_EVENT = "SubagentStop";
|
|
67
67
|
|
|
68
68
|
// components/lazycodex-executor-verify/src/codex-hook.ts
|
|
69
|
-
var RECEIPT_ENFORCED_AGENTS = new Set([
|
|
70
|
-
"lazycodex-worker-low",
|
|
71
|
-
"lazycodex-worker-medium",
|
|
72
|
-
"lazycodex-worker-high"
|
|
73
|
-
]);
|
|
69
|
+
var RECEIPT_ENFORCED_AGENTS = new Set(["lazycodex-worker-low", "lazycodex-worker-medium", "lazycodex-worker-high"]);
|
|
74
70
|
function runSubagentStopHook(input, fs) {
|
|
75
71
|
if (!isSubagentStopInput(input))
|
|
76
72
|
return "";
|
|
@@ -3,11 +3,7 @@ import { isAbsolute, relative, resolve } from "node:path";
|
|
|
3
3
|
import { renderDirective } from "./directive.js";
|
|
4
4
|
import { clearAttemptState, MAX_ATTEMPTS, readAttemptState, writeAttemptState } from "./state.js";
|
|
5
5
|
import { SUBAGENT_STOP_EVENT } from "./types.js";
|
|
6
|
-
const RECEIPT_ENFORCED_AGENTS = new Set([
|
|
7
|
-
"lazycodex-worker-low",
|
|
8
|
-
"lazycodex-worker-medium",
|
|
9
|
-
"lazycodex-worker-high",
|
|
10
|
-
]);
|
|
6
|
+
const RECEIPT_ENFORCED_AGENTS = new Set(["lazycodex-worker-low", "lazycodex-worker-medium", "lazycodex-worker-high"]);
|
|
11
7
|
export function runSubagentStopHook(input, fs) {
|
|
12
8
|
if (!isSubagentStopInput(input))
|
|
13
9
|
return "";
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "command",
|
|
9
9
|
"command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
|
|
10
10
|
"timeout": 10,
|
|
11
|
-
"statusMessage": "(OmO 5.0.0-beta.
|
|
11
|
+
"statusMessage": "(OmO 5.0.0-beta.40) Verifying LazyCodex Executor Evidence"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@code-yeongyu/codex-lazycodex-executor-verify",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.40",
|
|
4
4
|
"description": "Codex SubagentStop evidence verifier for LazyCodex executor completions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "npm@11.12.1",
|
|
@@ -33,10 +33,10 @@
|
|
|
33
33
|
"NOTICE"
|
|
34
34
|
],
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@biomejs/biome": "2.
|
|
37
|
-
"@types/node": "^
|
|
38
|
-
"typescript": "^
|
|
39
|
-
"vitest": "^4.1.
|
|
36
|
+
"@biomejs/biome": "2.5.9",
|
|
37
|
+
"@types/node": "^26.2.0",
|
|
38
|
+
"typescript": "^7.0.2",
|
|
39
|
+
"vitest": "^4.1.11"
|
|
40
40
|
},
|
|
41
41
|
"engines": {
|
|
42
42
|
"node": ">=20.0.0"
|
|
@@ -6,11 +6,7 @@ import { clearAttemptState, MAX_ATTEMPTS, readAttemptState, writeAttemptState }
|
|
|
6
6
|
import type { HookFileSystem, StopHookOutput, SubagentStopInput } from "./types.js";
|
|
7
7
|
import { SUBAGENT_STOP_EVENT } from "./types.js";
|
|
8
8
|
|
|
9
|
-
const RECEIPT_ENFORCED_AGENTS = new Set([
|
|
10
|
-
"lazycodex-worker-low",
|
|
11
|
-
"lazycodex-worker-medium",
|
|
12
|
-
"lazycodex-worker-high",
|
|
13
|
-
]);
|
|
9
|
+
const RECEIPT_ENFORCED_AGENTS = new Set(["lazycodex-worker-low", "lazycodex-worker-medium", "lazycodex-worker-high"]);
|
|
14
10
|
|
|
15
11
|
export function runSubagentStopHook(input: unknown, fs: HookFileSystem): string {
|
|
16
12
|
if (!isSubagentStopInput(input)) return "";
|