oh-my-codex 0.15.2 → 0.16.0
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/Cargo.lock +10 -7
- package/Cargo.toml +1 -1
- package/README.md +3 -0
- package/crates/omx-explore/Cargo.toml +3 -0
- package/crates/omx-explore/src/main.rs +517 -16
- package/dist/agents/__tests__/native-config.test.js +33 -0
- package/dist/agents/__tests__/native-config.test.js.map +1 -1
- package/dist/autoresearch/goal.d.ts +90 -0
- package/dist/autoresearch/goal.d.ts.map +1 -0
- package/dist/autoresearch/goal.js +237 -0
- package/dist/autoresearch/goal.js.map +1 -0
- package/dist/autoresearch/skill-validation.d.ts +1 -0
- package/dist/autoresearch/skill-validation.d.ts.map +1 -1
- package/dist/autoresearch/skill-validation.js +10 -3
- package/dist/autoresearch/skill-validation.js.map +1 -1
- package/dist/catalog/__tests__/generator.test.js +9 -4
- package/dist/catalog/__tests__/generator.test.js.map +1 -1
- package/dist/catalog/__tests__/plugin-bundle-ssot.test.js +29 -2
- package/dist/catalog/__tests__/plugin-bundle-ssot.test.js.map +1 -1
- package/dist/catalog/__tests__/schema.test.js +14 -3
- package/dist/catalog/__tests__/schema.test.js.map +1 -1
- package/dist/catalog/schema.js +1 -1
- package/dist/catalog/schema.js.map +1 -1
- package/dist/cli/__tests__/autoresearch-goal.test.d.ts +2 -0
- package/dist/cli/__tests__/autoresearch-goal.test.d.ts.map +1 -0
- package/dist/cli/__tests__/autoresearch-goal.test.js +194 -0
- package/dist/cli/__tests__/autoresearch-goal.test.js.map +1 -0
- package/dist/cli/__tests__/cleanup.test.js +82 -1
- package/dist/cli/__tests__/cleanup.test.js.map +1 -1
- package/dist/cli/__tests__/codex-plugin-layout.test.js +7 -4
- package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-context-window-warning.test.d.ts +2 -0
- package/dist/cli/__tests__/doctor-context-window-warning.test.d.ts.map +1 -0
- package/dist/cli/__tests__/doctor-context-window-warning.test.js +122 -0
- package/dist/cli/__tests__/doctor-context-window-warning.test.js.map +1 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.js +25 -2
- package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
- package/dist/cli/__tests__/exec.test.js +1 -0
- package/dist/cli/__tests__/exec.test.js.map +1 -1
- package/dist/cli/__tests__/explore.test.js +48 -18
- package/dist/cli/__tests__/explore.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +222 -10
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/launch-fallback.test.js +58 -0
- package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
- package/dist/cli/__tests__/mcp-serve.test.js +27 -1
- package/dist/cli/__tests__/mcp-serve.test.js.map +1 -1
- package/dist/cli/__tests__/native-assets.test.js +26 -1
- package/dist/cli/__tests__/native-assets.test.js.map +1 -1
- package/dist/cli/__tests__/package-bin-contract.test.js +2 -2
- package/dist/cli/__tests__/package-bin-contract.test.js.map +1 -1
- package/dist/cli/__tests__/performance-goal.test.d.ts +2 -0
- package/dist/cli/__tests__/performance-goal.test.d.ts.map +1 -0
- package/dist/cli/__tests__/performance-goal.test.js +144 -0
- package/dist/cli/__tests__/performance-goal.test.js.map +1 -0
- package/dist/cli/__tests__/question.test.js +8 -0
- package/dist/cli/__tests__/question.test.js.map +1 -1
- package/dist/cli/__tests__/ralph-goal-mode-contract.test.d.ts +2 -0
- package/dist/cli/__tests__/ralph-goal-mode-contract.test.d.ts.map +1 -0
- package/dist/cli/__tests__/ralph-goal-mode-contract.test.js +31 -0
- package/dist/cli/__tests__/ralph-goal-mode-contract.test.js.map +1 -0
- package/dist/cli/__tests__/ralph-prd-deep-interview.test.js +5 -4
- package/dist/cli/__tests__/ralph-prd-deep-interview.test.js.map +1 -1
- package/dist/cli/__tests__/ralph-prd-smoke.test.js +7 -0
- package/dist/cli/__tests__/ralph-prd-smoke.test.js.map +1 -1
- package/dist/cli/__tests__/ralph.test.js +59 -1
- package/dist/cli/__tests__/ralph.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.js +57 -21
- package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
- package/dist/cli/__tests__/setup-refresh.test.js +27 -8
- package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
- package/dist/cli/__tests__/setup-scope.test.js +20 -10
- package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
- package/dist/cli/__tests__/setup-skill-validation.test.js +11 -11
- package/dist/cli/__tests__/setup-skill-validation.test.js.map +1 -1
- package/dist/cli/__tests__/setup-skills-overwrite.test.js +12 -12
- package/dist/cli/__tests__/setup-skills-overwrite.test.js.map +1 -1
- package/dist/cli/__tests__/team.test.js +242 -10
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/__tests__/ultragoal.test.d.ts +2 -0
- package/dist/cli/__tests__/ultragoal.test.d.ts.map +1 -0
- package/dist/cli/__tests__/ultragoal.test.js +106 -0
- package/dist/cli/__tests__/ultragoal.test.js.map +1 -0
- package/dist/cli/__tests__/uninstall.test.js +11 -0
- package/dist/cli/__tests__/uninstall.test.js.map +1 -1
- package/dist/cli/autoresearch-goal.d.ts +3 -0
- package/dist/cli/autoresearch-goal.d.ts.map +1 -0
- package/dist/cli/autoresearch-goal.js +175 -0
- package/dist/cli/autoresearch-goal.js.map +1 -0
- package/dist/cli/cleanup.d.ts +3 -1
- package/dist/cli/cleanup.d.ts.map +1 -1
- package/dist/cli/cleanup.js +42 -2
- package/dist/cli/cleanup.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +95 -3
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/explore.d.ts.map +1 -1
- package/dist/cli/explore.js +10 -2
- package/dist/cli/explore.js.map +1 -1
- package/dist/cli/index.d.ts +21 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +268 -30
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/mcp-serve.d.ts +1 -0
- package/dist/cli/mcp-serve.d.ts.map +1 -1
- package/dist/cli/mcp-serve.js +8 -0
- package/dist/cli/mcp-serve.js.map +1 -1
- package/dist/cli/native-assets.js +1 -1
- package/dist/cli/native-assets.js.map +1 -1
- package/dist/cli/performance-goal.d.ts +3 -0
- package/dist/cli/performance-goal.d.ts.map +1 -0
- package/dist/cli/performance-goal.js +186 -0
- package/dist/cli/performance-goal.js.map +1 -0
- package/dist/cli/ralph.d.ts +2 -0
- package/dist/cli/ralph.d.ts.map +1 -1
- package/dist/cli/ralph.js +25 -1
- package/dist/cli/ralph.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +13 -6
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/team.d.ts +6 -0
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +113 -33
- package/dist/cli/team.js.map +1 -1
- package/dist/cli/tmux-hook.d.ts.map +1 -1
- package/dist/cli/tmux-hook.js +2 -1
- package/dist/cli/tmux-hook.js.map +1 -1
- package/dist/cli/ultragoal.d.ts +3 -0
- package/dist/cli/ultragoal.d.ts.map +1 -0
- package/dist/cli/ultragoal.js +191 -0
- package/dist/cli/ultragoal.js.map +1 -0
- package/dist/cli/uninstall.d.ts.map +1 -1
- package/dist/cli/uninstall.js +4 -2
- package/dist/cli/uninstall.js.map +1 -1
- package/dist/config/__tests__/generator-idempotent.test.js +39 -6
- package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
- package/dist/config/__tests__/generator-notify.test.js +5 -0
- package/dist/config/__tests__/generator-notify.test.js.map +1 -1
- package/dist/config/commit-lore-guard.d.ts +3 -0
- package/dist/config/commit-lore-guard.d.ts.map +1 -0
- package/dist/config/commit-lore-guard.js +9 -0
- package/dist/config/commit-lore-guard.js.map +1 -0
- package/dist/config/generator.d.ts +14 -4
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/generator.js +166 -66
- package/dist/config/generator.js.map +1 -1
- package/dist/config/omx-first-party-mcp.d.ts +1 -0
- package/dist/config/omx-first-party-mcp.d.ts.map +1 -1
- package/dist/config/omx-first-party-mcp.js +4 -1
- package/dist/config/omx-first-party-mcp.js.map +1 -1
- package/dist/goal-workflows/__tests__/artifacts.test.d.ts +2 -0
- package/dist/goal-workflows/__tests__/artifacts.test.d.ts.map +1 -0
- package/dist/goal-workflows/__tests__/artifacts.test.js +96 -0
- package/dist/goal-workflows/__tests__/artifacts.test.js.map +1 -0
- package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.d.ts +2 -0
- package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.d.ts.map +1 -0
- package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.js +54 -0
- package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.js.map +1 -0
- package/dist/goal-workflows/artifacts.d.ts +62 -0
- package/dist/goal-workflows/artifacts.d.ts.map +1 -0
- package/dist/goal-workflows/artifacts.js +132 -0
- package/dist/goal-workflows/artifacts.js.map +1 -0
- package/dist/goal-workflows/codex-goal-snapshot.d.ts +28 -0
- package/dist/goal-workflows/codex-goal-snapshot.d.ts.map +1 -0
- package/dist/goal-workflows/codex-goal-snapshot.js +110 -0
- package/dist/goal-workflows/codex-goal-snapshot.js.map +1 -0
- package/dist/goal-workflows/handoff.d.ts +10 -0
- package/dist/goal-workflows/handoff.d.ts.map +1 -0
- package/dist/goal-workflows/handoff.js +31 -0
- package/dist/goal-workflows/handoff.js.map +1 -0
- package/dist/goal-workflows/validation.d.ts +13 -0
- package/dist/goal-workflows/validation.d.ts.map +1 -0
- package/dist/goal-workflows/validation.js +36 -0
- package/dist/goal-workflows/validation.js.map +1 -0
- package/dist/hooks/__tests__/agents-overlay.test.js +59 -0
- package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
- package/dist/hooks/__tests__/anti-slop-workflow.test.js +109 -18
- package/dist/hooks/__tests__/anti-slop-workflow.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +45 -32
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +3 -3
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +2 -1
- package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +17 -24
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-wave-two.test.js +3 -3
- package/dist/hooks/__tests__/prompt-guidance-wave-two.test.js.map +1 -1
- package/dist/hooks/__tests__/task-size-detector.test.js +1 -1
- package/dist/hooks/__tests__/task-size-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/visual-ralph-skill.test.js +3 -3
- package/dist/hooks/__tests__/visual-ralph-skill.test.js.map +1 -1
- package/dist/hooks/__tests__/visual-verdict-loop.test.js +7 -11
- package/dist/hooks/__tests__/visual-verdict-loop.test.js.map +1 -1
- package/dist/hooks/agents-overlay.d.ts.map +1 -1
- package/dist/hooks/agents-overlay.js +23 -2
- package/dist/hooks/agents-overlay.js.map +1 -1
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +12 -13
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hooks/keyword-registry.d.ts.map +1 -1
- package/dist/hooks/keyword-registry.js +2 -10
- package/dist/hooks/keyword-registry.js.map +1 -1
- package/dist/hooks/prompt-guidance-contract.d.ts.map +1 -1
- package/dist/hooks/prompt-guidance-contract.js +0 -4
- package/dist/hooks/prompt-guidance-contract.js.map +1 -1
- package/dist/hooks/session.js +2 -2
- package/dist/hooks/session.js.map +1 -1
- package/dist/hooks/task-size-detector.d.ts.map +1 -1
- package/dist/hooks/task-size-detector.js +1 -0
- package/dist/hooks/task-size-detector.js.map +1 -1
- package/dist/hud/__tests__/index.test.js +30 -14
- package/dist/hud/__tests__/index.test.js.map +1 -1
- package/dist/hud/__tests__/reconcile.test.js +29 -7
- package/dist/hud/__tests__/reconcile.test.js.map +1 -1
- package/dist/hud/reconcile.d.ts +2 -1
- package/dist/hud/reconcile.d.ts.map +1 -1
- package/dist/hud/reconcile.js +12 -0
- package/dist/hud/reconcile.js.map +1 -1
- package/dist/mcp/__tests__/bootstrap.test.js +15 -2
- package/dist/mcp/__tests__/bootstrap.test.js.map +1 -1
- package/dist/mcp/__tests__/state-paths.test.js +54 -0
- package/dist/mcp/__tests__/state-paths.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server.test.js +36 -0
- package/dist/mcp/__tests__/state-server.test.js.map +1 -1
- package/dist/mcp/bootstrap.d.ts +1 -1
- package/dist/mcp/bootstrap.d.ts.map +1 -1
- package/dist/mcp/bootstrap.js +9 -7
- package/dist/mcp/bootstrap.js.map +1 -1
- package/dist/mcp/state-paths.d.ts +17 -0
- package/dist/mcp/state-paths.d.ts.map +1 -1
- package/dist/mcp/state-paths.js +36 -2
- package/dist/mcp/state-paths.js.map +1 -1
- package/dist/modes/__tests__/base-session-scope.test.js +26 -0
- package/dist/modes/__tests__/base-session-scope.test.js.map +1 -1
- package/dist/modes/base.d.ts +1 -0
- package/dist/modes/base.d.ts.map +1 -1
- package/dist/modes/base.js +35 -5
- package/dist/modes/base.js.map +1 -1
- package/dist/notifications/__tests__/http-client.test.d.ts +2 -0
- package/dist/notifications/__tests__/http-client.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/http-client.test.js +90 -0
- package/dist/notifications/__tests__/http-client.test.js.map +1 -0
- package/dist/notifications/__tests__/notifier.test.js +22 -60
- package/dist/notifications/__tests__/notifier.test.js.map +1 -1
- package/dist/notifications/dispatcher.d.ts.map +1 -1
- package/dist/notifications/dispatcher.js +35 -60
- package/dist/notifications/dispatcher.js.map +1 -1
- package/dist/notifications/http-client.d.ts +22 -0
- package/dist/notifications/http-client.d.ts.map +1 -0
- package/dist/notifications/http-client.js +298 -0
- package/dist/notifications/http-client.js.map +1 -0
- package/dist/notifications/notifier.d.ts +3 -2
- package/dist/notifications/notifier.d.ts.map +1 -1
- package/dist/notifications/notifier.js +17 -22
- package/dist/notifications/notifier.js.map +1 -1
- package/dist/openclaw/__tests__/dispatcher.test.js +63 -2
- package/dist/openclaw/__tests__/dispatcher.test.js.map +1 -1
- package/dist/openclaw/dispatcher.d.ts.map +1 -1
- package/dist/openclaw/dispatcher.js +3 -2
- package/dist/openclaw/dispatcher.js.map +1 -1
- package/dist/performance-goal/artifacts.d.ts +76 -0
- package/dist/performance-goal/artifacts.d.ts.map +1 -0
- package/dist/performance-goal/artifacts.js +221 -0
- package/dist/performance-goal/artifacts.js.map +1 -0
- package/dist/pipeline/__tests__/stages.test.js +423 -14
- package/dist/pipeline/__tests__/stages.test.js.map +1 -1
- package/dist/pipeline/stages/team-exec.d.ts +8 -4
- package/dist/pipeline/stages/team-exec.d.ts.map +1 -1
- package/dist/pipeline/stages/team-exec.js +181 -13
- package/dist/pipeline/stages/team-exec.js.map +1 -1
- package/dist/planning/__tests__/artifacts.test.js +261 -1
- package/dist/planning/__tests__/artifacts.test.js.map +1 -1
- package/dist/planning/artifact-names.d.ts +13 -0
- package/dist/planning/artifact-names.d.ts.map +1 -0
- package/dist/planning/artifact-names.js +108 -0
- package/dist/planning/artifact-names.js.map +1 -0
- package/dist/planning/artifacts.d.ts +23 -1
- package/dist/planning/artifacts.d.ts.map +1 -1
- package/dist/planning/artifacts.js +171 -59
- package/dist/planning/artifacts.js.map +1 -1
- package/dist/ralph/__tests__/persistence.test.js +21 -1
- package/dist/ralph/__tests__/persistence.test.js.map +1 -1
- package/dist/ralph/persistence.d.ts.map +1 -1
- package/dist/ralph/persistence.js +6 -4
- package/dist/ralph/persistence.js.map +1 -1
- package/dist/ralplan/__tests__/runtime.test.js +2 -0
- package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
- package/dist/ralplan/runtime.d.ts.map +1 -1
- package/dist/ralplan/runtime.js +6 -0
- package/dist/ralplan/runtime.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +1749 -88
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/__tests__/hook-derived-watcher.test.js +33 -1
- package/dist/scripts/__tests__/hook-derived-watcher.test.js.map +1 -1
- package/dist/scripts/__tests__/run-test-files.test.js +36 -0
- package/dist/scripts/__tests__/run-test-files.test.js.map +1 -1
- package/dist/scripts/codex-native-hook.d.ts.map +1 -1
- package/dist/scripts/codex-native-hook.js +570 -45
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/codex-native-pre-post.d.ts +7 -0
- package/dist/scripts/codex-native-pre-post.d.ts.map +1 -1
- package/dist/scripts/codex-native-pre-post.js +341 -15
- package/dist/scripts/codex-native-pre-post.js.map +1 -1
- package/dist/scripts/hook-derived-watcher.js +2 -1
- package/dist/scripts/hook-derived-watcher.js.map +1 -1
- package/dist/scripts/notify-fallback-watcher.js +2 -1
- package/dist/scripts/notify-fallback-watcher.js.map +1 -1
- package/dist/scripts/notify-hook/orchestration-intent.d.ts +1 -2
- package/dist/scripts/notify-hook/orchestration-intent.d.ts.map +1 -1
- package/dist/scripts/notify-hook/orchestration-intent.js +2 -3
- package/dist/scripts/notify-hook/orchestration-intent.js.map +1 -1
- package/dist/scripts/notify-hook/team-leader-nudge.d.ts +0 -2
- package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-leader-nudge.js +8 -60
- package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
- package/dist/scripts/notify-hook/team-worker-posttooluse.js +1 -1
- package/dist/scripts/notify-hook/team-worker-posttooluse.js.map +1 -1
- package/dist/scripts/notify-hook/team-worker-stop.d.ts +15 -0
- package/dist/scripts/notify-hook/team-worker-stop.d.ts.map +1 -0
- package/dist/scripts/notify-hook/team-worker-stop.js +224 -0
- package/dist/scripts/notify-hook/team-worker-stop.js.map +1 -0
- package/dist/scripts/notify-hook/team-worker.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-worker.js +26 -18
- package/dist/scripts/notify-hook/team-worker.js.map +1 -1
- package/dist/scripts/notify-hook.js +1 -1
- package/dist/scripts/notify-hook.js.map +1 -1
- package/dist/scripts/run-test-files.js +17 -1
- package/dist/scripts/run-test-files.js.map +1 -1
- package/dist/scripts/sync-plugin-mirror.d.ts +1 -0
- package/dist/scripts/sync-plugin-mirror.d.ts.map +1 -1
- package/dist/scripts/sync-plugin-mirror.js +10 -4
- package/dist/scripts/sync-plugin-mirror.js.map +1 -1
- package/dist/state/__tests__/operations.test.js +26 -0
- package/dist/state/__tests__/operations.test.js.map +1 -1
- package/dist/state/__tests__/skill-active.test.js +76 -0
- package/dist/state/__tests__/skill-active.test.js.map +1 -1
- package/dist/state/operations.d.ts +3 -1
- package/dist/state/operations.d.ts.map +1 -1
- package/dist/state/operations.js +8 -4
- package/dist/state/operations.js.map +1 -1
- package/dist/state/skill-active.d.ts +1 -0
- package/dist/state/skill-active.d.ts.map +1 -1
- package/dist/state/skill-active.js +54 -13
- package/dist/state/skill-active.js.map +1 -1
- package/dist/team/__tests__/api-interop.test.js +279 -0
- package/dist/team/__tests__/api-interop.test.js.map +1 -1
- package/dist/team/__tests__/approved-execution.test.d.ts +2 -0
- package/dist/team/__tests__/approved-execution.test.d.ts.map +1 -0
- package/dist/team/__tests__/approved-execution.test.js +124 -0
- package/dist/team/__tests__/approved-execution.test.js.map +1 -0
- package/dist/team/__tests__/delivery-e2e-smoke.test.js +2 -4
- package/dist/team/__tests__/delivery-e2e-smoke.test.js.map +1 -1
- package/dist/team/__tests__/delivery-log.test.d.ts +2 -0
- package/dist/team/__tests__/delivery-log.test.d.ts.map +1 -0
- package/dist/team/__tests__/delivery-log.test.js +44 -0
- package/dist/team/__tests__/delivery-log.test.js.map +1 -0
- package/dist/team/__tests__/model-contract.test.js +40 -9
- package/dist/team/__tests__/model-contract.test.js.map +1 -1
- package/dist/team/__tests__/repo-aware-decomposition.test.js +41 -0
- package/dist/team/__tests__/repo-aware-decomposition.test.js.map +1 -1
- package/dist/team/__tests__/role-router.test.js +4 -4
- package/dist/team/__tests__/role-router.test.js.map +1 -1
- package/dist/team/__tests__/runtime-boxed-state.test.d.ts +2 -0
- package/dist/team/__tests__/runtime-boxed-state.test.d.ts.map +1 -0
- package/dist/team/__tests__/runtime-boxed-state.test.js +39 -0
- package/dist/team/__tests__/runtime-boxed-state.test.js.map +1 -0
- package/dist/team/__tests__/runtime-cli.test.js +24 -0
- package/dist/team/__tests__/runtime-cli.test.js.map +1 -1
- package/dist/team/__tests__/runtime.test.js +563 -72
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/state-root.test.js +13 -0
- package/dist/team/__tests__/state-root.test.js.map +1 -1
- package/dist/team/__tests__/state.test.js +13 -0
- package/dist/team/__tests__/state.test.js.map +1 -1
- package/dist/team/__tests__/team-identity.test.d.ts +2 -0
- package/dist/team/__tests__/team-identity.test.d.ts.map +1 -0
- package/dist/team/__tests__/team-identity.test.js +166 -0
- package/dist/team/__tests__/team-identity.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.test.js +58 -1
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +62 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/api-interop.d.ts +1 -0
- package/dist/team/api-interop.d.ts.map +1 -1
- package/dist/team/api-interop.js +163 -132
- package/dist/team/api-interop.js.map +1 -1
- package/dist/team/approved-execution.d.ts +37 -0
- package/dist/team/approved-execution.d.ts.map +1 -0
- package/dist/team/approved-execution.js +136 -0
- package/dist/team/approved-execution.js.map +1 -0
- package/dist/team/delivery-log.d.ts +1 -1
- package/dist/team/delivery-log.d.ts.map +1 -1
- package/dist/team/delivery-log.js +2 -1
- package/dist/team/delivery-log.js.map +1 -1
- package/dist/team/followup-planner.js +2 -2
- package/dist/team/followup-planner.js.map +1 -1
- package/dist/team/goal-workflow.d.ts +20 -0
- package/dist/team/goal-workflow.d.ts.map +1 -0
- package/dist/team/goal-workflow.js +57 -0
- package/dist/team/goal-workflow.js.map +1 -0
- package/dist/team/orchestrator.js +2 -2
- package/dist/team/orchestrator.js.map +1 -1
- package/dist/team/repo-aware-decomposition.d.ts +3 -0
- package/dist/team/repo-aware-decomposition.d.ts.map +1 -1
- package/dist/team/repo-aware-decomposition.js +2 -0
- package/dist/team/repo-aware-decomposition.js.map +1 -1
- package/dist/team/role-router.js +5 -5
- package/dist/team/role-router.js.map +1 -1
- package/dist/team/runtime-cli.d.ts +32 -2
- package/dist/team/runtime-cli.d.ts.map +1 -1
- package/dist/team/runtime-cli.js +78 -26
- package/dist/team/runtime-cli.js.map +1 -1
- package/dist/team/runtime.d.ts +7 -1
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +383 -40
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/scaling.d.ts.map +1 -1
- package/dist/team/scaling.js +2 -0
- package/dist/team/scaling.js.map +1 -1
- package/dist/team/state.d.ts +9 -0
- package/dist/team/state.d.ts.map +1 -1
- package/dist/team/state.js +21 -0
- package/dist/team/state.js.map +1 -1
- package/dist/team/team-identity.d.ts +26 -0
- package/dist/team/team-identity.d.ts.map +1 -0
- package/dist/team/team-identity.js +169 -0
- package/dist/team/team-identity.js.map +1 -0
- package/dist/team/tmux-session.d.ts +18 -0
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +65 -3
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts +4 -0
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +28 -2
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/ultragoal/__tests__/artifacts.test.d.ts +2 -0
- package/dist/ultragoal/__tests__/artifacts.test.d.ts.map +1 -0
- package/dist/ultragoal/__tests__/artifacts.test.js +93 -0
- package/dist/ultragoal/__tests__/artifacts.test.js.map +1 -0
- package/dist/ultragoal/artifacts.d.ts +89 -0
- package/dist/ultragoal/artifacts.d.ts.map +1 -0
- package/dist/ultragoal/artifacts.js +233 -0
- package/dist/ultragoal/artifacts.js.map +1 -0
- package/dist/utils/__tests__/agents-model-table.test.js +3 -1
- package/dist/utils/__tests__/agents-model-table.test.js.map +1 -1
- package/dist/utils/__tests__/paths.test.js +31 -1
- package/dist/utils/__tests__/paths.test.js.map +1 -1
- package/dist/utils/agents-model-table.d.ts.map +1 -1
- package/dist/utils/agents-model-table.js +12 -1
- package/dist/utils/agents-model-table.js.map +1 -1
- package/dist/utils/paths.d.ts +2 -0
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +23 -7
- package/dist/utils/paths.js.map +1 -1
- package/dist/verification/__tests__/ci-rust-gates.test.js +30 -19
- package/dist/verification/__tests__/ci-rust-gates.test.js.map +1 -1
- package/package.json +5 -5
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/oh-my-codex/skills/ai-slop-cleaner/SKILL.md +30 -5
- package/plugins/oh-my-codex/skills/ask/SKILL.md +58 -0
- package/plugins/oh-my-codex/skills/autoresearch-goal/SKILL.md +36 -0
- package/plugins/oh-my-codex/skills/omx-setup/SKILL.md +2 -2
- package/plugins/oh-my-codex/skills/performance-goal/SKILL.md +65 -0
- package/plugins/oh-my-codex/skills/plan/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/ralph/SKILL.md +22 -3
- package/plugins/oh-my-codex/skills/team/SKILL.md +6 -2
- package/plugins/oh-my-codex/skills/ultragoal/SKILL.md +49 -0
- package/plugins/oh-my-codex/skills/visual-ralph/SKILL.md +9 -9
- package/prompts/api-reviewer.md +1 -1
- package/prompts/code-reviewer.md +2 -0
- package/prompts/performance-reviewer.md +1 -1
- package/prompts/quality-reviewer.md +1 -1
- package/prompts/quality-strategist.md +2 -2
- package/prompts/style-reviewer.md +1 -1
- package/prompts/test-engineer.md +1 -1
- package/skills/ai-slop-cleaner/SKILL.md +30 -5
- package/skills/ask/SKILL.md +58 -0
- package/skills/ask-claude/SKILL.md +3 -54
- package/skills/ask-gemini/SKILL.md +3 -54
- package/skills/autoresearch-goal/SKILL.md +36 -0
- package/skills/build-fix/SKILL.md +4 -139
- package/skills/deepsearch/SKILL.md +4 -32
- package/skills/ecomode/SKILL.md +4 -108
- package/skills/help/SKILL.md +4 -196
- package/skills/note/SKILL.md +4 -56
- package/skills/omx-setup/SKILL.md +2 -2
- package/skills/performance-goal/SKILL.md +65 -0
- package/skills/plan/SKILL.md +1 -1
- package/skills/ralph/SKILL.md +22 -3
- package/skills/ralph-init/SKILL.md +4 -40
- package/skills/review/SKILL.md +4 -32
- package/skills/security-review/SKILL.md +4 -294
- package/skills/swarm/SKILL.md +4 -19
- package/skills/tdd/SKILL.md +4 -100
- package/skills/team/SKILL.md +6 -2
- package/skills/trace/SKILL.md +4 -27
- package/skills/ultragoal/SKILL.md +49 -0
- package/skills/visual-ralph/SKILL.md +9 -9
- package/skills/visual-verdict/SKILL.md +4 -70
- package/skills/web-clone/SKILL.md +4 -18
- package/src/scripts/__tests__/codex-native-hook.test.ts +2923 -1030
- package/src/scripts/__tests__/hook-derived-watcher.test.ts +45 -1
- package/src/scripts/__tests__/run-test-files.test.ts +46 -0
- package/src/scripts/codex-native-hook.ts +696 -46
- package/src/scripts/codex-native-pre-post.ts +369 -16
- package/src/scripts/hook-derived-watcher.ts +2 -1
- package/src/scripts/notify-fallback-watcher.ts +2 -1
- package/src/scripts/notify-hook/orchestration-intent.ts +1 -3
- package/src/scripts/notify-hook/team-leader-nudge.ts +7 -63
- package/src/scripts/notify-hook/team-worker-posttooluse.ts +1 -1
- package/src/scripts/notify-hook/team-worker-stop.ts +246 -0
- package/src/scripts/notify-hook/team-worker.ts +23 -14
- package/src/scripts/notify-hook.ts +1 -1
- package/src/scripts/run-test-files.ts +20 -1
- package/src/scripts/sync-plugin-mirror.ts +13 -4
- package/templates/catalog-manifest.json +45 -27
- package/plugins/oh-my-codex/skills/ask-claude/SKILL.md +0 -61
- package/plugins/oh-my-codex/skills/ask-gemini/SKILL.md +0 -61
- package/plugins/oh-my-codex/skills/help/SKILL.md +0 -202
- package/plugins/oh-my-codex/skills/note/SKILL.md +0 -62
- package/plugins/oh-my-codex/skills/security-review/SKILL.md +0 -300
- package/plugins/oh-my-codex/skills/trace/SKILL.md +0 -33
- package/plugins/oh-my-codex/skills/visual-verdict/SKILL.md +0 -76
|
@@ -63,8 +63,9 @@ async function assertProjectPluginModeArtifacts(wd) {
|
|
|
63
63
|
assert.match(hooks, /codex-native-hook\.js/);
|
|
64
64
|
const config = await readFile(join(wd, ".codex", "config.toml"), "utf-8");
|
|
65
65
|
assert.match(config, /^codex_hooks = true$/m);
|
|
66
|
+
assert.match(config, /^goals = true$/m);
|
|
66
67
|
assert.doesNotMatch(config, /developer_instructions|notify-hook|mcp_servers/);
|
|
67
|
-
assert.equal(existsSync(join(wd, ".codex", "skills", "
|
|
68
|
+
assert.equal(existsSync(join(wd, ".codex", "skills", "ask", "SKILL.md")), false);
|
|
68
69
|
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")), false);
|
|
69
70
|
assert.equal(existsSync(join(wd, ".codex", "prompts", "executor.md")), false);
|
|
70
71
|
assert.equal(existsSync(join(wd, "AGENTS.md")), false);
|
|
@@ -332,7 +333,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
332
333
|
await setup({ scope: "user" });
|
|
333
334
|
const persisted = JSON.parse(await readFile(join(wd, ".omx", "setup-scope.json"), "utf-8"));
|
|
334
335
|
assert.deepEqual(persisted, { scope: "user", installMode: "plugin" });
|
|
335
|
-
assert.equal(existsSync(join(codexHomeDir, "skills", "
|
|
336
|
+
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
336
337
|
const hooks = await readFile(join(codexHomeDir, "hooks.json"), "utf-8");
|
|
337
338
|
assert.match(hooks, /codex-native-hook\.js/);
|
|
338
339
|
});
|
|
@@ -372,7 +373,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
372
373
|
await setup({ scope: "project" });
|
|
373
374
|
const persisted = JSON.parse(await readFile(join(wd, ".omx", "setup-scope.json"), "utf-8"));
|
|
374
375
|
assert.deepEqual(persisted, { scope: "project" });
|
|
375
|
-
assert.equal(existsSync(join(wd, ".codex", "skills", "
|
|
376
|
+
assert.equal(existsSync(join(wd, ".codex", "skills", "ask", "SKILL.md")), true);
|
|
376
377
|
await setup({ scope: "project" });
|
|
377
378
|
const repeatedPersisted = JSON.parse(await readFile(join(wd, ".omx", "setup-scope.json"), "utf-8"));
|
|
378
379
|
assert.deepEqual(repeatedPersisted, { scope: "project" });
|
|
@@ -394,7 +395,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
394
395
|
await setup({ scope: "user" });
|
|
395
396
|
const persisted = JSON.parse(await readFile(join(wd, ".omx", "setup-scope.json"), "utf-8"));
|
|
396
397
|
assert.deepEqual(persisted, { scope: "user", installMode: "legacy" });
|
|
397
|
-
assert.equal(existsSync(join(codexHomeDir, "skills", "
|
|
398
|
+
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), true);
|
|
398
399
|
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), true);
|
|
399
400
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), true);
|
|
400
401
|
});
|
|
@@ -434,7 +435,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
434
435
|
.length, 1);
|
|
435
436
|
assert.match(config, /^codex_hooks = true$/m);
|
|
436
437
|
assert.doesNotMatch(config, /\[mcp_servers\./);
|
|
437
|
-
assert.equal(existsSync(join(codexHomeDir, "skills", "
|
|
438
|
+
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
438
439
|
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), false);
|
|
439
440
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), false);
|
|
440
441
|
});
|
|
@@ -473,8 +474,9 @@ describe("omx setup install mode behavior", () => {
|
|
|
473
474
|
assert.match(hooks, /codex-native-hook\.js/);
|
|
474
475
|
const config = await readFile(join(codexHomeDir, "config.toml"), "utf-8");
|
|
475
476
|
assert.match(config, /^codex_hooks = true$/m);
|
|
477
|
+
assert.match(config, /^goals = true$/m);
|
|
476
478
|
assert.doesNotMatch(config, /developer_instructions|notify-hook|mcp_servers/);
|
|
477
|
-
assert.equal(existsSync(join(codexHomeDir, "skills", "
|
|
479
|
+
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
478
480
|
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), false);
|
|
479
481
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), false);
|
|
480
482
|
assert.equal(existsSync(join(codexHomeDir, "AGENTS.md")), false);
|
|
@@ -498,11 +500,16 @@ describe("omx setup install mode behavior", () => {
|
|
|
498
500
|
});
|
|
499
501
|
const hooks = await readFile(join(codexHomeDir, "hooks.json"), "utf-8");
|
|
500
502
|
assert.match(hooks, /codex-native-hook\.js/);
|
|
501
|
-
assert.equal(existsSync(join(codexHomeDir, "skills", "
|
|
503
|
+
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), false);
|
|
502
504
|
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), false);
|
|
503
505
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), false);
|
|
504
506
|
const config = await readFile(join(codexHomeDir, "config.toml"), "utf-8");
|
|
505
507
|
assert.match(config, /developer_instructions\s*=/);
|
|
508
|
+
assert.match(config, /Registered Codex plugin marketplace surfaces supply OMX workflows, prompts, and native-agent roles/);
|
|
509
|
+
assert.match(config, /User-installed skills may still live under ~\/.codex\/skills/);
|
|
510
|
+
assert.match(config, /Setup-owned prompt files and native-agent TOML defaults are intentionally omitted unless explicitly installed/);
|
|
511
|
+
assert.doesNotMatch(config, /Native subagents live in \.codex\/agents/);
|
|
512
|
+
assert.doesNotMatch(config, /Treat installed prompts as narrower execution surfaces/);
|
|
506
513
|
assert.match(config, /^codex_hooks = true$/m);
|
|
507
514
|
assert.doesNotMatch(config, /notify-hook|mcp_servers/);
|
|
508
515
|
const agentsMd = await readFile(join(codexHomeDir, "AGENTS.md"), "utf-8");
|
|
@@ -513,7 +520,35 @@ describe("omx setup install mode behavior", () => {
|
|
|
513
520
|
assert.match(agentsMd, /<guidance_schema_contract>/);
|
|
514
521
|
assert.match(agentsMd, /<execution_protocols>/);
|
|
515
522
|
assert.match(agentsMd, /AGENTS\.md is the top-level operating contract/);
|
|
516
|
-
assert.match(agentsMd, /
|
|
523
|
+
assert.match(agentsMd, /Registered Codex plugin marketplace surfaces supply OMX workflows, prompts, and native-agent roles/);
|
|
524
|
+
assert.match(agentsMd, /User-installed skills may still live under `~\/.codex\/skills`/);
|
|
525
|
+
assert.match(agentsMd, /Setup-owned prompt files and native-agent TOML defaults are intentionally omitted in plugin mode unless explicitly installed/);
|
|
526
|
+
assert.doesNotMatch(agentsMd, /Role prompts under `prompts\/\*\.md`/);
|
|
527
|
+
assert.doesNotMatch(agentsMd, /load the installed prompt\/skill\/agent surfaces from/);
|
|
528
|
+
});
|
|
529
|
+
});
|
|
530
|
+
}
|
|
531
|
+
finally {
|
|
532
|
+
await rm(wd, { recursive: true, force: true });
|
|
533
|
+
}
|
|
534
|
+
});
|
|
535
|
+
it("uses project-scoped plugin AGENTS.md wording without legacy prompt or agent paths", async () => {
|
|
536
|
+
const wd = await mkdtemp(join(tmpdir(), "omx-setup-install-mode-"));
|
|
537
|
+
try {
|
|
538
|
+
await withIsolatedUserHome(wd, async () => {
|
|
539
|
+
await withTempCwd(wd, async () => {
|
|
540
|
+
await setup({
|
|
541
|
+
scope: "project",
|
|
542
|
+
installMode: "plugin",
|
|
543
|
+
pluginAgentsMdPrompt: async () => true,
|
|
544
|
+
pluginDeveloperInstructionsPrompt: async () => false,
|
|
545
|
+
});
|
|
546
|
+
const agentsMd = await readFile(join(wd, "AGENTS.md"), "utf-8");
|
|
547
|
+
assert.match(agentsMd, /Registered Codex plugin marketplace surfaces supply OMX workflows, prompts, and native-agent roles/);
|
|
548
|
+
assert.match(agentsMd, /User-installed skills may still live under `\.\/.codex\/skills` for project scope, or `~\/.codex\/skills` for user-installed skills/);
|
|
549
|
+
assert.doesNotMatch(agentsMd, /`~\/.codex\/prompts`/);
|
|
550
|
+
assert.doesNotMatch(agentsMd, /`~\/.codex\/agents`/);
|
|
551
|
+
assert.doesNotMatch(agentsMd, /Role prompts under `prompts\/\*\.md`/);
|
|
517
552
|
});
|
|
518
553
|
});
|
|
519
554
|
}
|
|
@@ -602,7 +637,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
602
637
|
installMode: "plugin",
|
|
603
638
|
});
|
|
604
639
|
await setup({ scope: "project" });
|
|
605
|
-
assert.equal(existsSync(join(wd, ".codex", "skills", "
|
|
640
|
+
assert.equal(existsSync(join(wd, ".codex", "skills", "ask", "SKILL.md")), false);
|
|
606
641
|
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")), false);
|
|
607
642
|
assert.equal(existsSync(join(wd, ".codex", "prompts", "executor.md")), false);
|
|
608
643
|
const hooks = await readFile(join(wd, ".codex", "hooks.json"), "utf-8");
|
|
@@ -622,7 +657,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
622
657
|
await setup({ scope: "project", installMode: "legacy" });
|
|
623
658
|
const persisted = JSON.parse(await readFile(join(wd, ".omx", "setup-scope.json"), "utf-8"));
|
|
624
659
|
assert.deepEqual(persisted, { scope: "project" });
|
|
625
|
-
assert.equal(existsSync(join(wd, ".codex", "skills", "
|
|
660
|
+
assert.equal(existsSync(join(wd, ".codex", "skills", "ask", "SKILL.md")), true);
|
|
626
661
|
assert.equal(existsSync(join(wd, ".codex", "agents", "planner.toml")), true);
|
|
627
662
|
assert.equal(existsSync(join(wd, ".codex", "prompts", "executor.md")), true);
|
|
628
663
|
});
|
|
@@ -644,7 +679,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
644
679
|
scope: "user",
|
|
645
680
|
installMode: "legacy",
|
|
646
681
|
});
|
|
647
|
-
assert.equal(existsSync(join(codexHomeDir, "skills", "
|
|
682
|
+
assert.equal(existsSync(join(codexHomeDir, "skills", "ask", "SKILL.md")), true);
|
|
648
683
|
assert.equal(existsSync(join(codexHomeDir, "agents", "planner.toml")), true);
|
|
649
684
|
assert.equal(existsSync(join(codexHomeDir, "prompts", "executor.md")), true);
|
|
650
685
|
});
|
|
@@ -688,6 +723,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
688
723
|
await setup({ scope: "project", installMode: "plugin" });
|
|
689
724
|
});
|
|
690
725
|
assert.match(pluginOutput, /Using setup install mode: plugin/);
|
|
726
|
+
assert.match(pluginOutput, /Native Codex hooks and runtime feature flags refresh complete .*codex_hooks, goals/);
|
|
691
727
|
assert.doesNotMatch(pluginOutput, /user-scope skill delivery mode/);
|
|
692
728
|
assert.doesNotMatch(pluginOutput, /Native agent defaults configured.*TOML files written to \.codex\/agents\//);
|
|
693
729
|
assert.doesNotMatch(pluginOutput, /Use role\/workflow keywords like \$architect, \$executor, and \$plan/);
|
|
@@ -720,20 +756,20 @@ describe("omx setup install mode behavior", () => {
|
|
|
720
756
|
await withIsolatedUserHome(wd, async (codexHomeDir) => {
|
|
721
757
|
await withTempCwd(wd, async () => {
|
|
722
758
|
await setup({ scope: "user", installMode: "legacy" });
|
|
723
|
-
const
|
|
759
|
+
const askSkillPath = join(codexHomeDir, "skills", "ask", "SKILL.md");
|
|
724
760
|
const promptPath = join(codexHomeDir, "prompts", "executor.md");
|
|
725
761
|
const agentPath = join(codexHomeDir, "agents", "planner.toml");
|
|
726
762
|
const hooksPath = join(codexHomeDir, "hooks.json");
|
|
727
763
|
const configPath = join(codexHomeDir, "config.toml");
|
|
728
764
|
const agentsMdPath = join(codexHomeDir, "AGENTS.md");
|
|
729
|
-
assert.equal(existsSync(
|
|
765
|
+
assert.equal(existsSync(askSkillPath), true);
|
|
730
766
|
assert.equal(existsSync(promptPath), true);
|
|
731
767
|
assert.equal(existsSync(agentPath), true);
|
|
732
768
|
assert.equal(existsSync(hooksPath), true);
|
|
733
769
|
assert.equal(existsSync(configPath), true);
|
|
734
770
|
assert.equal(existsSync(agentsMdPath), true);
|
|
735
771
|
await setup({ scope: "user", installMode: "plugin" });
|
|
736
|
-
assert.equal(existsSync(
|
|
772
|
+
assert.equal(existsSync(askSkillPath), false);
|
|
737
773
|
assert.equal(existsSync(promptPath), false);
|
|
738
774
|
assert.equal(existsSync(agentPath), false);
|
|
739
775
|
assert.equal(existsSync(hooksPath), true);
|
|
@@ -815,9 +851,9 @@ describe("omx setup install mode behavior", () => {
|
|
|
815
851
|
await withTempCwd(wd, async () => {
|
|
816
852
|
await setup({ scope: "user", installMode: "legacy" });
|
|
817
853
|
await seedPluginCacheFromInstalledSkills(codexHomeDir);
|
|
818
|
-
const
|
|
854
|
+
const askSkillDir = join(codexHomeDir, "skills", "ask");
|
|
819
855
|
const wikiSkillDir = join(codexHomeDir, "skills", "wiki");
|
|
820
|
-
assert.equal(existsSync(
|
|
856
|
+
assert.equal(existsSync(askSkillDir), true);
|
|
821
857
|
assert.equal(existsSync(wikiSkillDir), true);
|
|
822
858
|
const outputLines = [];
|
|
823
859
|
const previousLog = console.log;
|
|
@@ -831,7 +867,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
831
867
|
console.log = previousLog;
|
|
832
868
|
}
|
|
833
869
|
const setupOutput = outputLines.join("\n");
|
|
834
|
-
assert.equal(existsSync(
|
|
870
|
+
assert.equal(existsSync(askSkillDir), false);
|
|
835
871
|
assert.equal(existsSync(wikiSkillDir), false);
|
|
836
872
|
assert.match(setupOutput, /skills: updated=0, unchanged=0, backed_up=\d+, skipped=0, removed=\d+/);
|
|
837
873
|
const backupSetupRoot = join(wd, "home", ".omx", "backups", "setup");
|
|
@@ -839,7 +875,7 @@ describe("omx setup install mode behavior", () => {
|
|
|
839
875
|
assert.equal(backupTimestamps.length, 1);
|
|
840
876
|
const backupSkillsDir = join(backupSetupRoot, backupTimestamps[0], ".codex", "skills");
|
|
841
877
|
const backedUpSkillNames = await readdir(backupSkillsDir);
|
|
842
|
-
assert.ok(backedUpSkillNames.includes("
|
|
878
|
+
assert.ok(backedUpSkillNames.includes("ask"));
|
|
843
879
|
assert.ok(backedUpSkillNames.includes("wiki"));
|
|
844
880
|
assert.match(setupOutput, new RegExp(`skills: updated=0, unchanged=0, backed_up=${backedUpSkillNames.length}, skipped=0, removed=${backedUpSkillNames.length}`));
|
|
845
881
|
});
|
|
@@ -856,11 +892,11 @@ describe("omx setup install mode behavior", () => {
|
|
|
856
892
|
await withTempCwd(wd, async () => {
|
|
857
893
|
await setup({ scope: "user", installMode: "legacy" });
|
|
858
894
|
await seedPluginCacheFromInstalledSkills(codexHomeDir);
|
|
859
|
-
const
|
|
895
|
+
const askSkillPath = join(codexHomeDir, "skills", "ask", "SKILL.md");
|
|
860
896
|
const wikiSkillDir = join(codexHomeDir, "skills", "wiki");
|
|
861
|
-
await writeFile(
|
|
897
|
+
await writeFile(askSkillPath, "# customized ask\n");
|
|
862
898
|
await setup({ scope: "user", installMode: "plugin" });
|
|
863
|
-
assert.equal(await readFile(
|
|
899
|
+
assert.equal(await readFile(askSkillPath, "utf-8"), "# customized ask\n");
|
|
864
900
|
assert.equal(existsSync(wikiSkillDir), false);
|
|
865
901
|
});
|
|
866
902
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-install-mode.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/setup-install-mode.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup-install-mode.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/setup-install-mode.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,8 +60,8 @@ describe("omx setup refresh summary and dry-run behavior", () => {
|
|
|
60
60
|
try {
|
|
61
61
|
await mkdir(join(wd, ".omx", "state"), { recursive: true });
|
|
62
62
|
await runSetupInTempDir(wd, { scope: "project" });
|
|
63
|
-
const skillPath = join(wd, ".codex", "skills", "
|
|
64
|
-
await writeFile(skillPath, "# locally modified
|
|
63
|
+
const skillPath = join(wd, ".codex", "skills", "omx-setup", "SKILL.md");
|
|
64
|
+
await writeFile(skillPath, "# locally modified omx-setup\n");
|
|
65
65
|
const output = await runSetupWithCapturedLogs(wd, {
|
|
66
66
|
scope: "project",
|
|
67
67
|
verbose: true,
|
|
@@ -72,7 +72,7 @@ describe("omx setup refresh summary and dry-run behavior", () => {
|
|
|
72
72
|
assert.match(output, /native_agents: updated=/);
|
|
73
73
|
assert.match(output, /agents_md: updated=/);
|
|
74
74
|
assert.match(output, /config: updated=/);
|
|
75
|
-
assert.match(output, /updated skill
|
|
75
|
+
assert.match(output, /updated skill omx-setup\/SKILL\.md/);
|
|
76
76
|
}
|
|
77
77
|
finally {
|
|
78
78
|
await rm(wd, { recursive: true, force: true });
|
|
@@ -83,8 +83,8 @@ describe("omx setup refresh summary and dry-run behavior", () => {
|
|
|
83
83
|
try {
|
|
84
84
|
await mkdir(join(wd, ".omx", "state"), { recursive: true });
|
|
85
85
|
await runSetupInTempDir(wd, { scope: "project" });
|
|
86
|
-
const skillPath = join(wd, ".codex", "skills", "
|
|
87
|
-
const customized = "# locally modified
|
|
86
|
+
const skillPath = join(wd, ".codex", "skills", "omx-setup", "SKILL.md");
|
|
87
|
+
const customized = "# locally modified omx-setup\n";
|
|
88
88
|
await writeFile(skillPath, customized);
|
|
89
89
|
const output = await runSetupWithCapturedLogs(wd, {
|
|
90
90
|
scope: "project",
|
|
@@ -103,13 +103,32 @@ describe("omx setup refresh summary and dry-run behavior", () => {
|
|
|
103
103
|
const wd = await mkdtemp(join(tmpdir(), "omx-setup-refresh-"));
|
|
104
104
|
try {
|
|
105
105
|
await runSetupInTempDir(wd, { scope: "project" });
|
|
106
|
-
assert.equal(existsSync(join(wd, ".omx", "state")), true);
|
|
107
106
|
assert.equal(await readFile(join(wd, ".gitignore"), "utf-8"), EXPECTED_PROJECT_GITIGNORE);
|
|
108
107
|
}
|
|
109
108
|
finally {
|
|
110
109
|
await rm(wd, { recursive: true, force: true });
|
|
111
110
|
}
|
|
112
111
|
});
|
|
112
|
+
it("installs goal workflow skills during project-scoped legacy setup", async () => {
|
|
113
|
+
const wd = await mkdtemp(join(tmpdir(), "omx-setup-refresh-"));
|
|
114
|
+
try {
|
|
115
|
+
await runSetupInTempDir(wd, { scope: "project", installMode: "legacy" });
|
|
116
|
+
for (const skillName of [
|
|
117
|
+
"performance-goal",
|
|
118
|
+
"autoresearch-goal",
|
|
119
|
+
"ultragoal",
|
|
120
|
+
]) {
|
|
121
|
+
const skillPath = join(wd, ".codex", "skills", skillName, "SKILL.md");
|
|
122
|
+
assert.equal(existsSync(skillPath), true, `expected omx setup to install ${skillName}`);
|
|
123
|
+
assert.match(await readFile(skillPath, "utf-8"), /^description: "\[OMX\] /m);
|
|
124
|
+
}
|
|
125
|
+
const config = await readFile(join(wd, ".codex", "config.toml"), "utf-8");
|
|
126
|
+
assert.match(config, /^goals = true$/m);
|
|
127
|
+
}
|
|
128
|
+
finally {
|
|
129
|
+
await rm(wd, { recursive: true, force: true });
|
|
130
|
+
}
|
|
131
|
+
});
|
|
113
132
|
it("appends missing OMX project ignore rules to an existing project .gitignore without duplicating them", async () => {
|
|
114
133
|
const wd = await mkdtemp(join(tmpdir(), "omx-setup-refresh-"));
|
|
115
134
|
try {
|
|
@@ -173,14 +192,14 @@ describe("omx setup refresh summary and dry-run behavior", () => {
|
|
|
173
192
|
".codex/config.toml",
|
|
174
193
|
".codex/agents/local.toml",
|
|
175
194
|
".codex/prompts/local.md",
|
|
176
|
-
".codex/skills/
|
|
195
|
+
".codex/skills/omx-setup/SKILL.md",
|
|
177
196
|
".codex/skills/.system/cache.json",
|
|
178
197
|
], { cwd: wd, encoding: "utf-8" });
|
|
179
198
|
assert.equal(status.status, 0);
|
|
180
199
|
assert.match(status.stdout, /^!! \.codex\/config\.toml$/m);
|
|
181
200
|
assert.match(status.stdout, /^\?\? \.codex\/agents\/local\.toml$/m);
|
|
182
201
|
assert.match(status.stdout, /^\?\? \.codex\/prompts\/local\.md$/m);
|
|
183
|
-
assert.match(status.stdout, /^\?\? \.codex\/skills\/
|
|
202
|
+
assert.match(status.stdout, /^\?\? \.codex\/skills\/omx-setup\/SKILL\.md$/m);
|
|
184
203
|
assert.match(status.stdout, /^!! \.codex\/skills\/\.system\/cache\.json$/m);
|
|
185
204
|
}
|
|
186
205
|
finally {
|