oh-my-codex 0.14.4 → 0.15.1
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/.agents/plugins/marketplace.json +20 -0
- package/Cargo.lock +6 -6
- package/Cargo.toml +2 -1
- package/README.md +40 -7
- package/crates/omx-explore/Cargo.toml +1 -0
- package/crates/omx-explore/src/main.rs +246 -24
- package/crates/omx-mux/Cargo.toml +1 -0
- package/crates/omx-runtime/Cargo.toml +1 -0
- package/crates/omx-runtime-core/Cargo.toml +1 -0
- package/crates/omx-runtime-core/src/dispatch.rs +2 -1
- package/crates/omx-runtime-core/src/engine.rs +2 -2
- package/crates/omx-runtime-core/src/mailbox.rs +2 -1
- package/crates/omx-sparkshell/Cargo.toml +1 -0
- package/crates/omx-sparkshell/src/codex_bridge.rs +1 -0
- package/crates/omx-sparkshell/src/prompt.rs +1 -0
- package/crates/omx-sparkshell/src/threshold.rs +1 -0
- package/dist/agents/__tests__/native-config.test.js +98 -4
- package/dist/agents/__tests__/native-config.test.js.map +1 -1
- package/dist/agents/native-config.d.ts +4 -0
- package/dist/agents/native-config.d.ts.map +1 -1
- package/dist/agents/native-config.js +19 -3
- package/dist/agents/native-config.js.map +1 -1
- package/dist/agents/policy.d.ts +10 -0
- package/dist/agents/policy.d.ts.map +1 -0
- package/dist/agents/policy.js +61 -0
- package/dist/agents/policy.js.map +1 -0
- package/dist/catalog/__tests__/generator.test.js +2 -0
- package/dist/catalog/__tests__/generator.test.js.map +1 -1
- package/dist/catalog/__tests__/plugin-bundle-ssot.test.d.ts +2 -0
- package/dist/catalog/__tests__/plugin-bundle-ssot.test.d.ts.map +1 -0
- package/dist/catalog/__tests__/plugin-bundle-ssot.test.js +72 -0
- package/dist/catalog/__tests__/plugin-bundle-ssot.test.js.map +1 -0
- package/dist/catalog/installable.d.ts +5 -0
- package/dist/catalog/installable.d.ts.map +1 -0
- package/dist/catalog/installable.js +13 -0
- package/dist/catalog/installable.js.map +1 -0
- package/dist/catalog/skill-mirror.d.ts +20 -0
- package/dist/catalog/skill-mirror.d.ts.map +1 -0
- package/dist/catalog/skill-mirror.js +104 -0
- package/dist/catalog/skill-mirror.js.map +1 -0
- package/dist/cli/__tests__/ask.test.js +4 -1
- package/dist/cli/__tests__/ask.test.js.map +1 -1
- package/dist/cli/__tests__/codex-plugin-layout.test.d.ts +2 -0
- package/dist/cli/__tests__/codex-plugin-layout.test.d.ts.map +1 -0
- package/dist/cli/__tests__/codex-plugin-layout.test.js +210 -0
- package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -0
- package/dist/cli/__tests__/doctor-team.test.js +46 -1
- package/dist/cli/__tests__/doctor-team.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-warning-copy.test.js +225 -111
- package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
- package/dist/cli/__tests__/exec.test.js +96 -1
- package/dist/cli/__tests__/exec.test.js.map +1 -1
- package/dist/cli/__tests__/explore.test.js +26 -9
- package/dist/cli/__tests__/explore.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +301 -7
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/launch-fallback.test.js +358 -4
- package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
- package/dist/cli/__tests__/list.test.d.ts +2 -0
- package/dist/cli/__tests__/list.test.d.ts.map +1 -0
- package/dist/cli/__tests__/list.test.js +38 -0
- package/dist/cli/__tests__/list.test.js.map +1 -0
- package/dist/cli/__tests__/mcp-parity.test.js +86 -0
- package/dist/cli/__tests__/mcp-parity.test.js.map +1 -1
- package/dist/cli/__tests__/mcp-serve.test.d.ts +2 -0
- package/dist/cli/__tests__/mcp-serve.test.d.ts.map +1 -0
- package/dist/cli/__tests__/mcp-serve.test.js +38 -0
- package/dist/cli/__tests__/mcp-serve.test.js.map +1 -0
- package/dist/cli/__tests__/nested-help-routing.test.js +1 -0
- package/dist/cli/__tests__/nested-help-routing.test.js.map +1 -1
- package/dist/cli/__tests__/package-bin-contract.test.js +58 -3
- package/dist/cli/__tests__/package-bin-contract.test.js.map +1 -1
- package/dist/cli/__tests__/question.test.js +209 -5
- package/dist/cli/__tests__/question.test.js.map +1 -1
- package/dist/cli/__tests__/setup-agents-overwrite.test.js +146 -3
- package/dist/cli/__tests__/setup-agents-overwrite.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.d.ts +2 -0
- package/dist/cli/__tests__/setup-install-mode.test.d.ts.map +1 -0
- package/dist/cli/__tests__/setup-install-mode.test.js +873 -0
- package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -0
- package/dist/cli/__tests__/setup-prompts-overwrite.test.js +83 -22
- package/dist/cli/__tests__/setup-prompts-overwrite.test.js.map +1 -1
- package/dist/cli/__tests__/setup-refresh.test.js +120 -2
- package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
- package/dist/cli/__tests__/setup-skills-overwrite.test.js +32 -13
- package/dist/cli/__tests__/setup-skills-overwrite.test.js.map +1 -1
- package/dist/cli/__tests__/sidecar.test.d.ts +2 -0
- package/dist/cli/__tests__/sidecar.test.d.ts.map +1 -0
- package/dist/cli/__tests__/sidecar.test.js +24 -0
- package/dist/cli/__tests__/sidecar.test.js.map +1 -0
- package/dist/cli/__tests__/team.test.js +90 -42
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/__tests__/version-sync-contract.test.js +11 -0
- package/dist/cli/__tests__/version-sync-contract.test.js.map +1 -1
- package/dist/cli/codex-home.d.ts +4 -5
- package/dist/cli/codex-home.d.ts.map +1 -1
- package/dist/cli/codex-home.js +9 -37
- package/dist/cli/codex-home.js.map +1 -1
- package/dist/cli/doctor.d.ts +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +509 -278
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +13 -5
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +351 -60
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/list.d.ts +2 -0
- package/dist/cli/list.d.ts.map +1 -0
- package/dist/cli/list.js +40 -0
- package/dist/cli/list.js.map +1 -0
- package/dist/cli/mcp-serve.d.ts +12 -0
- package/dist/cli/mcp-serve.d.ts.map +1 -0
- package/dist/cli/mcp-serve.js +63 -0
- package/dist/cli/mcp-serve.js.map +1 -0
- package/dist/cli/plugin-marketplace.d.ts +13 -0
- package/dist/cli/plugin-marketplace.d.ts.map +1 -0
- package/dist/cli/plugin-marketplace.js +77 -0
- package/dist/cli/plugin-marketplace.js.map +1 -0
- package/dist/cli/question.d.ts.map +1 -1
- package/dist/cli/question.js +27 -2
- package/dist/cli/question.js.map +1 -1
- package/dist/cli/setup-preferences.d.ts +20 -0
- package/dist/cli/setup-preferences.d.ts.map +1 -0
- package/dist/cli/setup-preferences.js +71 -0
- package/dist/cli/setup-preferences.js.map +1 -0
- package/dist/cli/setup.d.ts +12 -3
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +1080 -254
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/team.d.ts +1 -0
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +22 -3
- package/dist/cli/team.js.map +1 -1
- package/dist/cli/uninstall.d.ts.map +1 -1
- package/dist/cli/uninstall.js +2 -8
- package/dist/cli/uninstall.js.map +1 -1
- package/dist/config/__tests__/generator-idempotent.test.js +100 -3
- package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
- package/dist/config/__tests__/generator-notify.test.js +6 -5
- package/dist/config/__tests__/generator-notify.test.js.map +1 -1
- package/dist/config/__tests__/generator-status-line-presets.test.d.ts +2 -0
- package/dist/config/__tests__/generator-status-line-presets.test.d.ts.map +1 -0
- package/dist/config/__tests__/generator-status-line-presets.test.js +203 -0
- package/dist/config/__tests__/generator-status-line-presets.test.js.map +1 -0
- package/dist/config/__tests__/models.test.js +35 -2
- package/dist/config/__tests__/models.test.js.map +1 -1
- package/dist/config/codex-hooks.d.ts.map +1 -1
- package/dist/config/codex-hooks.js +2 -7
- package/dist/config/codex-hooks.js.map +1 -1
- package/dist/config/generator.d.ts +10 -0
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/generator.js +259 -76
- package/dist/config/generator.js.map +1 -1
- package/dist/config/models.d.ts +13 -3
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +25 -5
- package/dist/config/models.js.map +1 -1
- package/dist/config/omx-first-party-mcp.d.ts +18 -0
- package/dist/config/omx-first-party-mcp.d.ts.map +1 -0
- package/dist/config/omx-first-party-mcp.js +76 -0
- package/dist/config/omx-first-party-mcp.js.map +1 -0
- package/dist/document-refresh/__tests__/enforcer.test.d.ts +2 -0
- package/dist/document-refresh/__tests__/enforcer.test.d.ts.map +1 -0
- package/dist/document-refresh/__tests__/enforcer.test.js +128 -0
- package/dist/document-refresh/__tests__/enforcer.test.js.map +1 -0
- package/dist/document-refresh/config.d.ts +9 -0
- package/dist/document-refresh/config.d.ts.map +1 -0
- package/dist/document-refresh/config.js +70 -0
- package/dist/document-refresh/config.js.map +1 -0
- package/dist/document-refresh/enforcer.d.ts +43 -0
- package/dist/document-refresh/enforcer.d.ts.map +1 -0
- package/dist/document-refresh/enforcer.js +329 -0
- package/dist/document-refresh/enforcer.js.map +1 -0
- package/dist/exec/followup.d.ts +44 -0
- package/dist/exec/followup.d.ts.map +1 -0
- package/dist/exec/followup.js +349 -0
- package/dist/exec/followup.js.map +1 -0
- package/dist/hooks/__tests__/codebase-map.test.js +63 -1
- package/dist/hooks/__tests__/codebase-map.test.js.map +1 -1
- package/dist/hooks/__tests__/deep-interview-contract.test.js +10 -7
- package/dist/hooks/__tests__/deep-interview-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +89 -0
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +84 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +23 -2
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +43 -0
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js +17 -0
- package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js +53 -0
- package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-regression-205.test.js +4 -4
- package/dist/hooks/__tests__/notify-hook-regression-205.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +103 -0
- package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js +27 -13
- package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-worker-fail-closed.test.d.ts +2 -0
- package/dist/hooks/__tests__/notify-hook-team-worker-fail-closed.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/notify-hook-team-worker-fail-closed.test.js +35 -0
- package/dist/hooks/__tests__/notify-hook-team-worker-fail-closed.test.js.map +1 -0
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +70 -3
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
- package/dist/hooks/__tests__/pre-context-gate-skills.test.js +5 -0
- package/dist/hooks/__tests__/pre-context-gate-skills.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-fragments.test.js +3 -2
- package/dist/hooks/__tests__/prompt-guidance-fragments.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-refactor-contract.test.d.ts +2 -0
- package/dist/hooks/__tests__/prompt-refactor-contract.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/prompt-refactor-contract.test.js +22 -0
- package/dist/hooks/__tests__/prompt-refactor-contract.test.js.map +1 -0
- package/dist/hooks/__tests__/team-runtime-gating-docs-contract.test.d.ts +2 -0
- package/dist/hooks/__tests__/team-runtime-gating-docs-contract.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/team-runtime-gating-docs-contract.test.js +28 -0
- package/dist/hooks/__tests__/team-runtime-gating-docs-contract.test.js.map +1 -0
- package/dist/hooks/__tests__/triage-heuristic.test.js +59 -4
- package/dist/hooks/__tests__/triage-heuristic.test.js.map +1 -1
- package/dist/hooks/__tests__/visual-ralph-skill.test.d.ts +2 -0
- package/dist/hooks/__tests__/visual-ralph-skill.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/visual-ralph-skill.test.js +44 -0
- package/dist/hooks/__tests__/visual-ralph-skill.test.js.map +1 -0
- package/dist/hooks/codebase-map.d.ts.map +1 -1
- package/dist/hooks/codebase-map.js +83 -6
- package/dist/hooks/codebase-map.js.map +1 -1
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +19 -14
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hooks/prompt-guidance-contract.d.ts +6 -0
- package/dist/hooks/prompt-guidance-contract.d.ts.map +1 -1
- package/dist/hooks/prompt-guidance-contract.js +89 -0
- package/dist/hooks/prompt-guidance-contract.js.map +1 -1
- package/dist/hooks/session.d.ts +2 -0
- package/dist/hooks/session.d.ts.map +1 -1
- package/dist/hooks/session.js +6 -0
- package/dist/hooks/session.js.map +1 -1
- package/dist/hooks/triage-heuristic.d.ts +2 -2
- package/dist/hooks/triage-heuristic.d.ts.map +1 -1
- package/dist/hooks/triage-heuristic.js +97 -20
- package/dist/hooks/triage-heuristic.js.map +1 -1
- package/dist/hooks/triage-state.d.ts +1 -1
- package/dist/hooks/triage-state.d.ts.map +1 -1
- package/dist/hooks/triage-state.js +2 -1
- package/dist/hooks/triage-state.js.map +1 -1
- package/dist/hud/__tests__/index.test.js +4 -4
- package/dist/hud/__tests__/index.test.js.map +1 -1
- package/dist/hud/__tests__/state.test.js +4 -0
- package/dist/hud/__tests__/state.test.js.map +1 -1
- package/dist/hud/__tests__/types.test.js +27 -0
- package/dist/hud/__tests__/types.test.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +8 -0
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/types.d.ts +9 -0
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/hud/types.js +3 -0
- package/dist/hud/types.js.map +1 -1
- package/dist/mcp/__tests__/bootstrap.test.js +45 -5
- package/dist/mcp/__tests__/bootstrap.test.js.map +1 -1
- package/dist/mcp/__tests__/server-lifecycle.test.js +50 -7
- package/dist/mcp/__tests__/server-lifecycle.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server.test.js +67 -9
- package/dist/mcp/__tests__/state-server.test.js.map +1 -1
- package/dist/mcp/bootstrap.d.ts +12 -1
- package/dist/mcp/bootstrap.d.ts.map +1 -1
- package/dist/mcp/bootstrap.js +87 -29
- package/dist/mcp/bootstrap.js.map +1 -1
- package/dist/mcp/state-server.d.ts +5 -11
- package/dist/mcp/state-server.d.ts.map +1 -1
- package/dist/mcp/state-server.js +16 -432
- package/dist/mcp/state-server.js.map +1 -1
- package/dist/planning/__tests__/artifacts.test.js +152 -1
- package/dist/planning/__tests__/artifacts.test.js.map +1 -1
- package/dist/planning/artifacts.d.ts +9 -0
- package/dist/planning/artifacts.d.ts.map +1 -1
- package/dist/planning/artifacts.js +60 -1
- package/dist/planning/artifacts.js.map +1 -1
- package/dist/question/__tests__/deep-interview.test.js +1 -1
- package/dist/question/__tests__/deep-interview.test.js.map +1 -1
- package/dist/question/__tests__/renderer.test.js +70 -0
- package/dist/question/__tests__/renderer.test.js.map +1 -1
- package/dist/question/__tests__/ui.test.js +49 -0
- package/dist/question/__tests__/ui.test.js.map +1 -1
- package/dist/question/renderer.d.ts +14 -1
- package/dist/question/renderer.d.ts.map +1 -1
- package/dist/question/renderer.js +109 -10
- package/dist/question/renderer.js.map +1 -1
- package/dist/question/state.d.ts +2 -0
- package/dist/question/state.d.ts.map +1 -1
- package/dist/question/state.js +4 -0
- package/dist/question/state.js.map +1 -1
- package/dist/question/types.d.ts +2 -1
- package/dist/question/types.d.ts.map +1 -1
- package/dist/question/types.js.map +1 -1
- package/dist/question/ui.d.ts.map +1 -1
- package/dist/question/ui.js +28 -8
- package/dist/question/ui.js.map +1 -1
- package/dist/runtime/__tests__/bridge.test.js +143 -1
- package/dist/runtime/__tests__/bridge.test.js.map +1 -1
- package/dist/runtime/bridge.d.ts +21 -0
- package/dist/runtime/bridge.d.ts.map +1 -1
- package/dist/runtime/bridge.js +54 -4
- package/dist/runtime/bridge.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +1904 -230
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/__tests__/generate-release-body.test.js +90 -1
- package/dist/scripts/__tests__/generate-release-body.test.js.map +1 -1
- package/dist/scripts/__tests__/hook-derived-watcher.test.js +110 -2
- package/dist/scripts/__tests__/hook-derived-watcher.test.js.map +1 -1
- package/dist/scripts/__tests__/postinstall.test.js +7 -93
- package/dist/scripts/__tests__/postinstall.test.js.map +1 -1
- package/dist/scripts/__tests__/prompt-inventory.test.d.ts +2 -0
- package/dist/scripts/__tests__/prompt-inventory.test.d.ts.map +1 -0
- package/dist/scripts/__tests__/prompt-inventory.test.js +56 -0
- package/dist/scripts/__tests__/prompt-inventory.test.js.map +1 -0
- package/dist/scripts/__tests__/run-test-files.test.d.ts +2 -0
- package/dist/scripts/__tests__/run-test-files.test.d.ts.map +1 -0
- package/dist/scripts/__tests__/run-test-files.test.js +62 -0
- package/dist/scripts/__tests__/run-test-files.test.js.map +1 -0
- package/dist/scripts/__tests__/smoke-packed-install.test.js +13 -1
- package/dist/scripts/__tests__/smoke-packed-install.test.js.map +1 -1
- package/dist/scripts/__tests__/verify-native-agents.test.d.ts +2 -0
- package/dist/scripts/__tests__/verify-native-agents.test.d.ts.map +1 -0
- package/dist/scripts/__tests__/verify-native-agents.test.js +166 -0
- package/dist/scripts/__tests__/verify-native-agents.test.js.map +1 -0
- package/dist/scripts/codex-execution-surface.d.ts +16 -0
- package/dist/scripts/codex-execution-surface.d.ts.map +1 -0
- package/dist/scripts/codex-execution-surface.js +42 -0
- package/dist/scripts/codex-execution-surface.js.map +1 -0
- package/dist/scripts/codex-native-hook.d.ts.map +1 -1
- package/dist/scripts/codex-native-hook.js +418 -76
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/codex-native-pre-post.d.ts +8 -0
- package/dist/scripts/codex-native-pre-post.d.ts.map +1 -1
- package/dist/scripts/codex-native-pre-post.js +133 -19
- package/dist/scripts/codex-native-pre-post.js.map +1 -1
- package/dist/scripts/generate-release-body.d.ts +1 -0
- package/dist/scripts/generate-release-body.d.ts.map +1 -1
- package/dist/scripts/generate-release-body.js +32 -3
- package/dist/scripts/generate-release-body.js.map +1 -1
- package/dist/scripts/hook-derived-watcher.js +46 -7
- package/dist/scripts/hook-derived-watcher.js.map +1 -1
- package/dist/scripts/notify-fallback-watcher.js +59 -9
- package/dist/scripts/notify-fallback-watcher.js.map +1 -1
- package/dist/scripts/notify-hook/__tests__/team-worker-posttooluse.test.d.ts +2 -0
- package/dist/scripts/notify-hook/__tests__/team-worker-posttooluse.test.d.ts.map +1 -0
- package/dist/scripts/notify-hook/__tests__/team-worker-posttooluse.test.js +153 -0
- package/dist/scripts/notify-hook/__tests__/team-worker-posttooluse.test.js.map +1 -0
- package/dist/scripts/notify-hook/managed-tmux.d.ts.map +1 -1
- package/dist/scripts/notify-hook/managed-tmux.js +18 -1
- package/dist/scripts/notify-hook/managed-tmux.js.map +1 -1
- package/dist/scripts/notify-hook/process-runner.d.ts.map +1 -1
- package/dist/scripts/notify-hook/process-runner.js +7 -3
- package/dist/scripts/notify-hook/process-runner.js.map +1 -1
- package/dist/scripts/notify-hook/team-dispatch.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-dispatch.js +96 -11
- package/dist/scripts/notify-hook/team-dispatch.js.map +1 -1
- package/dist/scripts/notify-hook/team-tmux-guard.js +3 -3
- package/dist/scripts/notify-hook/team-worker-posttooluse.d.ts +34 -0
- package/dist/scripts/notify-hook/team-worker-posttooluse.d.ts.map +1 -0
- package/dist/scripts/notify-hook/team-worker-posttooluse.js +434 -0
- package/dist/scripts/notify-hook/team-worker-posttooluse.js.map +1 -0
- package/dist/scripts/notify-hook/team-worker.d.ts +1 -1
- package/dist/scripts/notify-hook/team-worker.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-worker.js +3 -43
- package/dist/scripts/notify-hook/team-worker.js.map +1 -1
- package/dist/scripts/notify-hook.js +36 -5
- package/dist/scripts/notify-hook.js.map +1 -1
- package/dist/scripts/postinstall.d.ts +1 -5
- package/dist/scripts/postinstall.d.ts.map +1 -1
- package/dist/scripts/postinstall.js +3 -42
- package/dist/scripts/postinstall.js.map +1 -1
- package/dist/scripts/prompt-inventory.d.ts +29 -0
- package/dist/scripts/prompt-inventory.d.ts.map +1 -0
- package/dist/scripts/prompt-inventory.js +178 -0
- package/dist/scripts/prompt-inventory.js.map +1 -0
- package/dist/scripts/run-test-files.js +32 -2
- package/dist/scripts/run-test-files.js.map +1 -1
- package/dist/scripts/smoke-packed-install.d.ts +3 -0
- package/dist/scripts/smoke-packed-install.d.ts.map +1 -1
- package/dist/scripts/smoke-packed-install.js +9 -1
- package/dist/scripts/smoke-packed-install.js.map +1 -1
- package/dist/scripts/sync-plugin-mirror.d.ts +13 -0
- package/dist/scripts/sync-plugin-mirror.d.ts.map +1 -0
- package/dist/scripts/sync-plugin-mirror.js +242 -0
- package/dist/scripts/sync-plugin-mirror.js.map +1 -0
- package/dist/scripts/verify-native-agents.d.ts +16 -0
- package/dist/scripts/verify-native-agents.d.ts.map +1 -0
- package/dist/scripts/verify-native-agents.js +188 -0
- package/dist/scripts/verify-native-agents.js.map +1 -0
- package/dist/session-history/search.d.ts.map +1 -1
- package/dist/session-history/search.js +7 -2
- package/dist/session-history/search.js.map +1 -1
- package/dist/sidecar/__tests__/boundary.test.d.ts +2 -0
- package/dist/sidecar/__tests__/boundary.test.d.ts.map +1 -0
- package/dist/sidecar/__tests__/boundary.test.js +48 -0
- package/dist/sidecar/__tests__/boundary.test.js.map +1 -0
- package/dist/sidecar/__tests__/collector.test.d.ts +2 -0
- package/dist/sidecar/__tests__/collector.test.d.ts.map +1 -0
- package/dist/sidecar/__tests__/collector.test.js +162 -0
- package/dist/sidecar/__tests__/collector.test.js.map +1 -0
- package/dist/sidecar/__tests__/render.test.d.ts +2 -0
- package/dist/sidecar/__tests__/render.test.d.ts.map +1 -0
- package/dist/sidecar/__tests__/render.test.js +67 -0
- package/dist/sidecar/__tests__/render.test.js.map +1 -0
- package/dist/sidecar/__tests__/tmux.test.d.ts +2 -0
- package/dist/sidecar/__tests__/tmux.test.d.ts.map +1 -0
- package/dist/sidecar/__tests__/tmux.test.js +30 -0
- package/dist/sidecar/__tests__/tmux.test.js.map +1 -0
- package/dist/sidecar/__tests__/watch.test.d.ts +2 -0
- package/dist/sidecar/__tests__/watch.test.d.ts.map +1 -0
- package/dist/sidecar/__tests__/watch.test.js +42 -0
- package/dist/sidecar/__tests__/watch.test.js.map +1 -0
- package/dist/sidecar/collector.d.ts +4 -0
- package/dist/sidecar/collector.d.ts.map +1 -0
- package/dist/sidecar/collector.js +377 -0
- package/dist/sidecar/collector.js.map +1 -0
- package/dist/sidecar/index.d.ts +25 -0
- package/dist/sidecar/index.d.ts.map +1 -0
- package/dist/sidecar/index.js +165 -0
- package/dist/sidecar/index.js.map +1 -0
- package/dist/sidecar/render.d.ts +3 -0
- package/dist/sidecar/render.d.ts.map +1 -0
- package/dist/sidecar/render.js +72 -0
- package/dist/sidecar/render.js.map +1 -0
- package/dist/sidecar/tmux.d.ts +13 -0
- package/dist/sidecar/tmux.d.ts.map +1 -0
- package/dist/sidecar/tmux.js +44 -0
- package/dist/sidecar/tmux.js.map +1 -0
- package/dist/sidecar/types.d.ts +125 -0
- package/dist/sidecar/types.d.ts.map +1 -0
- package/dist/sidecar/types.js +2 -0
- package/dist/sidecar/types.js.map +1 -0
- package/dist/state/__tests__/operations.test.js +50 -22
- package/dist/state/__tests__/operations.test.js.map +1 -1
- package/dist/state/operations.d.ts +1 -1
- package/dist/state/operations.d.ts.map +1 -1
- package/dist/state/operations.js +19 -7
- package/dist/state/operations.js.map +1 -1
- package/dist/team/__tests__/commit-hygiene.test.d.ts +2 -0
- package/dist/team/__tests__/commit-hygiene.test.d.ts.map +1 -0
- package/dist/team/__tests__/commit-hygiene.test.js +93 -0
- package/dist/team/__tests__/commit-hygiene.test.js.map +1 -0
- package/dist/team/__tests__/delegation-policy.test.d.ts +2 -0
- package/dist/team/__tests__/delegation-policy.test.d.ts.map +1 -0
- package/dist/team/__tests__/delegation-policy.test.js +69 -0
- package/dist/team/__tests__/delegation-policy.test.js.map +1 -0
- package/dist/team/__tests__/events.test.js +54 -4
- package/dist/team/__tests__/events.test.js.map +1 -1
- package/dist/team/__tests__/hook-primary-e2e-contract.test.d.ts +2 -0
- package/dist/team/__tests__/hook-primary-e2e-contract.test.d.ts.map +1 -0
- package/dist/team/__tests__/hook-primary-e2e-contract.test.js +78 -0
- package/dist/team/__tests__/hook-primary-e2e-contract.test.js.map +1 -0
- package/dist/team/__tests__/model-contract.test.js +18 -2
- package/dist/team/__tests__/model-contract.test.js.map +1 -1
- package/dist/team/__tests__/repo-aware-decomposition.test.d.ts +2 -0
- package/dist/team/__tests__/repo-aware-decomposition.test.d.ts.map +1 -0
- package/dist/team/__tests__/repo-aware-decomposition.test.js +95 -0
- package/dist/team/__tests__/repo-aware-decomposition.test.js.map +1 -0
- package/dist/team/__tests__/runtime.test.js +677 -17
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/state-root.test.js +177 -1
- package/dist/team/__tests__/state-root.test.js.map +1 -1
- package/dist/team/__tests__/state.test.js +110 -0
- package/dist/team/__tests__/state.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +301 -2
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +94 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/commit-hygiene.d.ts +22 -3
- package/dist/team/commit-hygiene.d.ts.map +1 -1
- package/dist/team/commit-hygiene.js +134 -2
- package/dist/team/commit-hygiene.js.map +1 -1
- package/dist/team/contracts.d.ts +1 -1
- package/dist/team/contracts.d.ts.map +1 -1
- package/dist/team/contracts.js +2 -0
- package/dist/team/contracts.js.map +1 -1
- package/dist/team/dag-schema.d.ts +38 -0
- package/dist/team/dag-schema.d.ts.map +1 -0
- package/dist/team/dag-schema.js +221 -0
- package/dist/team/dag-schema.js.map +1 -0
- package/dist/team/delegation-policy.d.ts +3 -0
- package/dist/team/delegation-policy.d.ts.map +1 -0
- package/dist/team/delegation-policy.js +82 -0
- package/dist/team/delegation-policy.js.map +1 -0
- package/dist/team/model-contract.d.ts +3 -1
- package/dist/team/model-contract.d.ts.map +1 -1
- package/dist/team/model-contract.js +44 -5
- package/dist/team/model-contract.js.map +1 -1
- package/dist/team/repo-aware-decomposition.d.ts +60 -0
- package/dist/team/repo-aware-decomposition.d.ts.map +1 -0
- package/dist/team/repo-aware-decomposition.js +229 -0
- package/dist/team/repo-aware-decomposition.js.map +1 -0
- package/dist/team/runtime.d.ts +34 -0
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +191 -50
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/state/tasks.d.ts.map +1 -1
- package/dist/team/state/tasks.js +33 -0
- package/dist/team/state/tasks.js.map +1 -1
- package/dist/team/state/types.d.ts +23 -1
- package/dist/team/state/types.d.ts.map +1 -1
- package/dist/team/state/types.js.map +1 -1
- package/dist/team/state-root.d.ts +35 -0
- package/dist/team/state-root.d.ts.map +1 -1
- package/dist/team/state-root.js +281 -1
- package/dist/team/state-root.js.map +1 -1
- package/dist/team/state.d.ts +27 -1
- package/dist/team/state.d.ts.map +1 -1
- package/dist/team/state.js +6 -0
- package/dist/team/state.js.map +1 -1
- package/dist/team/tmux-session.d.ts +1 -0
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +83 -6
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts +3 -0
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +77 -4
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/utils/__tests__/agents-model-table.test.js +8 -0
- package/dist/utils/__tests__/agents-model-table.test.js.map +1 -1
- package/dist/utils/__tests__/paths.test.js +42 -9
- package/dist/utils/__tests__/paths.test.js.map +1 -1
- package/dist/utils/agents-md.d.ts +3 -0
- package/dist/utils/agents-md.d.ts.map +1 -1
- package/dist/utils/agents-md.js +25 -0
- package/dist/utils/agents-md.js.map +1 -1
- package/dist/utils/agents-model-table.d.ts.map +1 -1
- package/dist/utils/agents-model-table.js +2 -3
- package/dist/utils/agents-model-table.js.map +1 -1
- package/package.json +14 -7
- package/plugins/oh-my-codex/.app.json +3 -0
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +30 -0
- package/plugins/oh-my-codex/.mcp.json +44 -0
- package/plugins/oh-my-codex/skills/ai-slop-cleaner/SKILL.md +114 -0
- package/plugins/oh-my-codex/skills/analyze/SKILL.md +148 -0
- package/plugins/oh-my-codex/skills/ask-claude/SKILL.md +61 -0
- package/plugins/oh-my-codex/skills/ask-gemini/SKILL.md +61 -0
- package/plugins/oh-my-codex/skills/autopilot/SKILL.md +231 -0
- package/plugins/oh-my-codex/skills/autoresearch/SKILL.md +68 -0
- package/plugins/oh-my-codex/skills/cancel/SKILL.md +399 -0
- package/plugins/oh-my-codex/skills/code-review/SKILL.md +290 -0
- package/plugins/oh-my-codex/skills/configure-notifications/SKILL.md +287 -0
- package/plugins/oh-my-codex/skills/deep-interview/SKILL.md +464 -0
- package/plugins/oh-my-codex/skills/doctor/SKILL.md +239 -0
- package/plugins/oh-my-codex/skills/help/SKILL.md +202 -0
- package/plugins/oh-my-codex/skills/hud/SKILL.md +98 -0
- package/plugins/oh-my-codex/skills/note/SKILL.md +62 -0
- package/plugins/oh-my-codex/skills/omx-setup/SKILL.md +135 -0
- package/plugins/oh-my-codex/skills/pipeline/SKILL.md +86 -0
- package/plugins/oh-my-codex/skills/plan/SKILL.md +276 -0
- package/plugins/oh-my-codex/skills/ralph/SKILL.md +269 -0
- package/plugins/oh-my-codex/skills/ralplan/SKILL.md +162 -0
- package/plugins/oh-my-codex/skills/security-review/SKILL.md +300 -0
- package/plugins/oh-my-codex/skills/skill/SKILL.md +835 -0
- package/plugins/oh-my-codex/skills/team/SKILL.md +510 -0
- package/plugins/oh-my-codex/skills/trace/SKILL.md +33 -0
- package/plugins/oh-my-codex/skills/ultraqa/SKILL.md +143 -0
- package/plugins/oh-my-codex/skills/ultrawork/SKILL.md +175 -0
- package/plugins/oh-my-codex/skills/visual-ralph/SKILL.md +153 -0
- package/plugins/oh-my-codex/skills/visual-verdict/SKILL.md +76 -0
- package/plugins/oh-my-codex/skills/wiki/SKILL.md +57 -0
- package/plugins/oh-my-codex/skills/worker/SKILL.md +106 -0
- package/prompts/critic.md +35 -83
- package/prompts/executor.md +32 -109
- package/prompts/explore-harness.md +1 -1
- package/prompts/explore.md +37 -90
- package/prompts/planner.md +28 -58
- package/prompts/researcher.md +46 -78
- package/prompts/verifier.md +23 -31
- package/skills/autopilot/SKILL.md +1 -4
- package/skills/deep-interview/SKILL.md +8 -5
- package/skills/doctor/SKILL.md +45 -17
- package/skills/help/SKILL.md +2 -2
- package/skills/omx-setup/SKILL.md +52 -9
- package/skills/plan/SKILL.md +1 -4
- package/skills/ralph/SKILL.md +3 -5
- package/skills/ralplan/SKILL.md +2 -6
- package/skills/team/SKILL.md +2 -5
- package/skills/ultraqa/SKILL.md +1 -4
- package/skills/ultrawork/SKILL.md +2 -3
- package/skills/visual-ralph/SKILL.md +153 -0
- package/skills/web-clone/SKILL.md +12 -354
- package/src/scripts/__tests__/codex-native-hook.test.ts +2306 -224
- package/src/scripts/__tests__/generate-release-body.test.ts +109 -0
- package/src/scripts/__tests__/hook-derived-watcher.test.ts +132 -2
- package/src/scripts/__tests__/postinstall.test.ts +7 -104
- package/src/scripts/__tests__/prompt-inventory.test.ts +64 -0
- package/src/scripts/__tests__/run-test-files.test.ts +72 -0
- package/src/scripts/__tests__/smoke-packed-install.test.ts +15 -0
- package/src/scripts/__tests__/verify-native-agents.test.ts +204 -0
- package/src/scripts/codex-execution-surface.ts +73 -0
- package/src/scripts/codex-native-hook.ts +579 -82
- package/src/scripts/codex-native-pre-post.ts +157 -19
- package/src/scripts/generate-release-body.ts +34 -2
- package/src/scripts/hook-derived-watcher.ts +51 -8
- package/src/scripts/notify-fallback-watcher.ts +65 -9
- package/src/scripts/notify-hook/__tests__/team-worker-posttooluse.test.ts +180 -0
- package/src/scripts/notify-hook/managed-tmux.ts +22 -4
- package/src/scripts/notify-hook/process-runner.ts +7 -3
- package/src/scripts/notify-hook/team-dispatch.ts +103 -11
- package/src/scripts/notify-hook/team-tmux-guard.ts +3 -3
- package/src/scripts/notify-hook/team-worker-posttooluse.ts +536 -0
- package/src/scripts/notify-hook/team-worker.ts +4 -48
- package/src/scripts/notify-hook.ts +36 -5
- package/src/scripts/postinstall.ts +4 -58
- package/src/scripts/prompt-inventory.ts +218 -0
- package/src/scripts/run-test-files.ts +41 -2
- package/src/scripts/smoke-packed-install.ts +10 -1
- package/src/scripts/sync-plugin-mirror.ts +360 -0
- package/src/scripts/verify-native-agents.ts +245 -0
- package/templates/AGENTS.md +26 -91
- package/templates/catalog-manifest.json +16 -1
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: analyze
|
|
3
|
+
description: "Run read-only deep repository analysis and return a ranked synthesis with explicit confidence, concrete file references, and clear evidence-vs-inference boundaries. Use when a user says 'analyze', 'investigate', 'why does', 'what's causing', or needs grounded cross-file explanation before any changes are proposed."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Analyze — Read-Only Deep Analysis
|
|
7
|
+
|
|
8
|
+
Use this skill to answer the user’s question through **read-only repository analysis**. The goal is to explain what the codebase most likely says about the question, not to drift into implementation, debugging theater, or generic fix planning.
|
|
9
|
+
|
|
10
|
+
## Use `$analyze` when
|
|
11
|
+
|
|
12
|
+
- the user wants a grounded explanation, not code changes
|
|
13
|
+
- the answer requires reading multiple files or tracing behavior across boundaries
|
|
14
|
+
- there are several plausible explanations and they need to be ranked
|
|
15
|
+
- confidence should reflect the strength of the available evidence
|
|
16
|
+
- the user wants to understand architecture, behavior, causality, impact, or tradeoffs before changing anything
|
|
17
|
+
|
|
18
|
+
Examples:
|
|
19
|
+
- why a workflow behaves a certain way
|
|
20
|
+
- how a feature is wired across modules
|
|
21
|
+
- what likely explains a failure, regression, or mismatch
|
|
22
|
+
- what would be impacted by changing a dependency or contract
|
|
23
|
+
- which interpretation of the current codebase is best supported
|
|
24
|
+
|
|
25
|
+
## Do not use `$analyze` when
|
|
26
|
+
|
|
27
|
+
- the user explicitly wants code edits, a fix, or execution — use the appropriate implementation lane instead
|
|
28
|
+
- the user wants a new product plan or acceptance criteria — use `$plan` / `$ralplan`
|
|
29
|
+
- the request is a simple one-file fact lookup — read the file and answer directly
|
|
30
|
+
- the request is purely about running the OMX tmux team runtime — use `$team` only when OMX runtime is active
|
|
31
|
+
|
|
32
|
+
## Non-negotiable contract
|
|
33
|
+
|
|
34
|
+
Analyze is **read-only by contract**.
|
|
35
|
+
|
|
36
|
+
- Do not edit files.
|
|
37
|
+
- Do not turn the answer into an implementation plan.
|
|
38
|
+
- Do not recommend fixes as the primary output.
|
|
39
|
+
- Do not silently switch into execution work.
|
|
40
|
+
- Do not overclaim certainty.
|
|
41
|
+
- Do not invent facts that are not supported by repository evidence.
|
|
42
|
+
- Do not use judgmental, normative, or speculative language that outruns the evidence.
|
|
43
|
+
|
|
44
|
+
If a next step is helpful, keep it to a **discriminating read-only probe** that would reduce uncertainty.
|
|
45
|
+
|
|
46
|
+
## Question-aligned synthesis
|
|
47
|
+
|
|
48
|
+
Answer the user’s actual question first.
|
|
49
|
+
|
|
50
|
+
- Start from the asked question, not a generic debugger template.
|
|
51
|
+
- Keep the synthesis scoped to what the user needs to know.
|
|
52
|
+
- Scale the depth to the request: for simple or obvious questions, reduce swarm intensity and answer directly after enough reading.
|
|
53
|
+
- For broader questions, expand the search surface but keep the final answer tightly synthesized.
|
|
54
|
+
|
|
55
|
+
## Evidence rules
|
|
56
|
+
|
|
57
|
+
Maintain an explicit **evidence-vs-inference distinction**. Every material claim must be labeled as one of:
|
|
58
|
+
|
|
59
|
+
1. **Evidence** — directly supported by concrete repository artifacts
|
|
60
|
+
2. **Inference** — a reasoned conclusion drawn from evidence
|
|
61
|
+
3. **Unknown** — a question the current repository evidence does not resolve
|
|
62
|
+
|
|
63
|
+
Never present an inference as if it were direct evidence.
|
|
64
|
+
Never present a guess as if it were an inference.
|
|
65
|
+
Call out uncertainty explicitly when the codebase does not settle the question.
|
|
66
|
+
|
|
67
|
+
### Acceptable evidence
|
|
68
|
+
|
|
69
|
+
Prefer stronger evidence over weaker evidence:
|
|
70
|
+
|
|
71
|
+
1. direct code paths, contracts, tests, generated artifacts, configs, or docs with concrete file references
|
|
72
|
+
2. multiple independent files pointing to the same conclusion
|
|
73
|
+
3. localized behavioral inference from well-supported code structure
|
|
74
|
+
4. weaker contextual clues that remain explicitly marked as tentative
|
|
75
|
+
|
|
76
|
+
Unsupported speculation is not evidence.
|
|
77
|
+
|
|
78
|
+
## Parallel exploration policy
|
|
79
|
+
|
|
80
|
+
Parallel exploration is allowed when it improves quality, but it must stay runtime-safe.
|
|
81
|
+
|
|
82
|
+
- Default to direct read-only analysis when the answer is simple.
|
|
83
|
+
- When parallelism helps, prefer **native subagents by default** or equivalent in-session parallel exploration when available.
|
|
84
|
+
- Keep parallel lanes bounded: each lane should answer a concrete sub-question or inspect a specific subsystem.
|
|
85
|
+
- Use **`$team` only when OMX runtime is active** and durable tmux-based coordination is actually needed.
|
|
86
|
+
- Do not imply that `$team` is available in plain Codex/App sessions.
|
|
87
|
+
|
|
88
|
+
A good default split for complex analysis is:
|
|
89
|
+
- one lane for primary code path / contracts
|
|
90
|
+
- one lane for config / orchestration / generated surfaces
|
|
91
|
+
- one lane for tests / docs / secondary corroboration
|
|
92
|
+
|
|
93
|
+
## Execution policy
|
|
94
|
+
|
|
95
|
+
- Default to concise, evidence-dense progress and completion reporting unless the user or risk level requires more detail.
|
|
96
|
+
- Treat newer user task updates as local overrides for the active workflow branch while preserving earlier non-conflicting constraints.
|
|
97
|
+
- If the user says `continue`, keep working from the current analysis state instead of restarting discovery.
|
|
98
|
+
|
|
99
|
+
## Working method
|
|
100
|
+
|
|
101
|
+
1. Restate the question in one sentence.
|
|
102
|
+
2. Identify the smallest set of files most likely to answer it.
|
|
103
|
+
3. Read for direct evidence first.
|
|
104
|
+
4. If needed, open bounded parallel exploration lanes.
|
|
105
|
+
5. Compare competing explanations.
|
|
106
|
+
6. Rank the explanations by support.
|
|
107
|
+
7. Return a synthesis that clearly separates evidence from inference.
|
|
108
|
+
|
|
109
|
+
## Output contract
|
|
110
|
+
|
|
111
|
+
Structure the answer so the user can see what is known, what is inferred, and how confident the synthesis is.
|
|
112
|
+
|
|
113
|
+
### Question
|
|
114
|
+
[Restate the user’s question briefly]
|
|
115
|
+
|
|
116
|
+
### Ranked synthesis
|
|
117
|
+
| Rank | Explanation | Confidence | Basis |
|
|
118
|
+
|------|-------------|------------|-------|
|
|
119
|
+
| 1 | ... | High / Medium / Low | strongest supporting evidence |
|
|
120
|
+
| 2 | ... | High / Medium / Low | why it trails |
|
|
121
|
+
| 3 | ... | High / Medium / Low | why it remains possible |
|
|
122
|
+
|
|
123
|
+
### Evidence
|
|
124
|
+
- `path/to/file:line-line` — what this artifact directly shows
|
|
125
|
+
- `path/to/file:line-line` — corroborating evidence
|
|
126
|
+
|
|
127
|
+
### Inference
|
|
128
|
+
- What the evidence most strongly implies
|
|
129
|
+
- Why weaker alternatives were down-ranked
|
|
130
|
+
|
|
131
|
+
### Unknowns / limits
|
|
132
|
+
- What the repository evidence does not establish
|
|
133
|
+
- What would need to be checked next to reduce uncertainty
|
|
134
|
+
|
|
135
|
+
## Quality bar
|
|
136
|
+
|
|
137
|
+
A good analyze response is:
|
|
138
|
+
- read-only and question-aligned
|
|
139
|
+
- ranked rather than flat
|
|
140
|
+
- explicit about confidence
|
|
141
|
+
- concrete about file references
|
|
142
|
+
- careful about evidence vs inference
|
|
143
|
+
- free of unsupported speculation
|
|
144
|
+
- free of normative drift or judgmental filler
|
|
145
|
+
- explicit about the evidence-vs-inference distinction
|
|
146
|
+
- concise for simple cases, broader only when the question truly needs it
|
|
147
|
+
|
|
148
|
+
Task: {{ARGUMENTS}}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ask-claude
|
|
3
|
+
description: Ask Claude via local CLI and capture a reusable artifact
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Ask Claude (Local CLI)
|
|
7
|
+
|
|
8
|
+
Use the locally installed Claude CLI as a direct external advisor for focused questions, reviews, or second opinions.
|
|
9
|
+
|
|
10
|
+
## Usage
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
/ask-claude <question or task>
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Routing
|
|
17
|
+
|
|
18
|
+
### Preferred: Local CLI execution
|
|
19
|
+
Run Claude through the canonical OMX CLI command path (no MCP routing):
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
omx ask claude "{{ARGUMENTS}}"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Exact non-interactive Claude CLI command from `claude --help`:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
claude -p "{{ARGUMENTS}}"
|
|
29
|
+
# equivalent: claude --print "{{ARGUMENTS}}"
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
If needed, adapt to the user's installed Claude CLI variant while keeping local execution as the default path.
|
|
33
|
+
|
|
34
|
+
Legacy compatibility entrypoints (`./scripts/ask-claude.sh`, `npm run ask:claude -- ...`) are transitional wrappers.
|
|
35
|
+
|
|
36
|
+
### Missing binary behavior
|
|
37
|
+
If `claude` is not found, do **not** switch to MCP.
|
|
38
|
+
Instead:
|
|
39
|
+
1. Explain that local Claude CLI is required for this skill.
|
|
40
|
+
2. Ask the user to install/configure Claude CLI.
|
|
41
|
+
3. Provide a quick verification command:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
claude --version
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Artifact requirement
|
|
48
|
+
After local execution, save a markdown artifact to:
|
|
49
|
+
|
|
50
|
+
```text
|
|
51
|
+
.omx/artifacts/claude-<slug>-<timestamp>.md
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Minimum artifact sections:
|
|
55
|
+
1. Original user task
|
|
56
|
+
2. Final prompt sent to Claude CLI
|
|
57
|
+
3. Claude output (raw)
|
|
58
|
+
4. Concise summary
|
|
59
|
+
5. Action items / next steps
|
|
60
|
+
|
|
61
|
+
Task: {{ARGUMENTS}}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ask-gemini
|
|
3
|
+
description: Ask Gemini via local CLI and capture a reusable artifact
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Ask Gemini (Local CLI)
|
|
7
|
+
|
|
8
|
+
Use the locally installed Gemini CLI as a direct external advisor for brainstorming, design feedback, and second opinions.
|
|
9
|
+
|
|
10
|
+
## Usage
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
/ask-gemini <question or task>
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Routing
|
|
17
|
+
|
|
18
|
+
### Preferred: Local CLI execution
|
|
19
|
+
Run Gemini through the canonical OMX CLI command path (no MCP routing):
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
omx ask gemini "{{ARGUMENTS}}"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Exact non-interactive Gemini CLI command from `gemini --help`:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
gemini -p "{{ARGUMENTS}}"
|
|
29
|
+
# equivalent: gemini --prompt "{{ARGUMENTS}}"
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
If needed, adapt to the user's installed Gemini CLI variant while keeping local execution as the default path.
|
|
33
|
+
|
|
34
|
+
Legacy compatibility entrypoints (`./scripts/ask-gemini.sh`, `npm run ask:gemini -- ...`) are transitional wrappers.
|
|
35
|
+
|
|
36
|
+
### Missing binary behavior
|
|
37
|
+
If `gemini` is not found, do **not** switch to MCP.
|
|
38
|
+
Instead:
|
|
39
|
+
1. Explain that local Gemini CLI is required for this skill.
|
|
40
|
+
2. Ask the user to install/configure Gemini CLI.
|
|
41
|
+
3. Provide a quick verification command:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
gemini --version
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Artifact requirement
|
|
48
|
+
After local execution, save a markdown artifact to:
|
|
49
|
+
|
|
50
|
+
```text
|
|
51
|
+
.omx/artifacts/gemini-<slug>-<timestamp>.md
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Minimum artifact sections:
|
|
55
|
+
1. Original user task
|
|
56
|
+
2. Final prompt sent to Gemini CLI
|
|
57
|
+
3. Gemini output (raw)
|
|
58
|
+
4. Concise summary
|
|
59
|
+
5. Action items / next steps
|
|
60
|
+
|
|
61
|
+
Task: {{ARGUMENTS}}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: autopilot
|
|
3
|
+
description: Full autonomous execution from idea to working code
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<Purpose>
|
|
7
|
+
Autopilot takes a brief product idea and autonomously handles the full lifecycle: requirements analysis, technical design, planning, parallel implementation, QA cycling, and multi-perspective validation. It produces working, verified code from a 2-3 line description.
|
|
8
|
+
</Purpose>
|
|
9
|
+
|
|
10
|
+
<Use_When>
|
|
11
|
+
- User wants end-to-end autonomous execution from an idea to working code
|
|
12
|
+
- User says "autopilot", "auto pilot", "autonomous", "build me", "create me", "make me", "full auto", "handle it all", or "I want a/an..."
|
|
13
|
+
- Task requires multiple phases: planning, coding, testing, and validation
|
|
14
|
+
- User wants hands-off execution and is willing to let the system run to completion
|
|
15
|
+
</Use_When>
|
|
16
|
+
|
|
17
|
+
<Do_Not_Use_When>
|
|
18
|
+
- User wants to explore options or brainstorm -- use `plan` skill instead
|
|
19
|
+
- User says "just explain", "draft only", or "what would you suggest" -- respond conversationally
|
|
20
|
+
- User wants a single focused code change -- use `ralph` or delegate to an executor agent
|
|
21
|
+
- User wants to review or critique an existing plan -- use `plan --review`
|
|
22
|
+
- Task is a quick fix or small bug -- use direct executor delegation
|
|
23
|
+
</Do_Not_Use_When>
|
|
24
|
+
|
|
25
|
+
<Why_This_Exists>
|
|
26
|
+
Most non-trivial software tasks require coordinated phases: understanding requirements, designing a solution, implementing in parallel, testing, and validating quality. Autopilot orchestrates all of these phases automatically so the user can describe what they want and receive working code without managing each step.
|
|
27
|
+
</Why_This_Exists>
|
|
28
|
+
|
|
29
|
+
<Execution_Policy>
|
|
30
|
+
- Each phase must complete before the next begins
|
|
31
|
+
- Parallel execution is used within phases where possible (Phase 2 and Phase 4)
|
|
32
|
+
- QA cycles repeat up to 5 times; if the same error persists 3 times, stop and report the fundamental issue
|
|
33
|
+
- Validation requires approval from all reviewers; rejected items get fixed and re-validated
|
|
34
|
+
- Cancel with `/cancel` at any time; progress is preserved for resume
|
|
35
|
+
- If a deep-interview spec exists, use it as high-clarity phase input instead of re-expanding from scratch
|
|
36
|
+
- If input is too vague for reliable expansion, offer/trigger `$deep-interview` first
|
|
37
|
+
- Do not enter expansion/planning/execution-heavy phases until pre-context grounding exists; if fast execution is forced, proceed only with explicit risk notes
|
|
38
|
+
- Apply the shared workflow guidance pattern: concise, evidence-dense progress and completion reporting, local overrides for the active workflow branch, persistent inspection/verification while the workflow depends on it, and automatic continuation for safe reversible steps. Ask only for material, destructive, or preference-dependent branches.
|
|
39
|
+
</Execution_Policy>
|
|
40
|
+
|
|
41
|
+
<Steps>
|
|
42
|
+
0. **Pre-context Intake (required before Phase 0 starts)**:
|
|
43
|
+
- Derive a task slug from the request.
|
|
44
|
+
- Load the latest relevant snapshot from `.omx/context/{slug}-*.md` when available.
|
|
45
|
+
- If no snapshot exists, create `.omx/context/{slug}-{timestamp}.md` (UTC `YYYYMMDDTHHMMSSZ`) with:
|
|
46
|
+
- Task statement
|
|
47
|
+
- Desired outcome
|
|
48
|
+
- Known facts/evidence
|
|
49
|
+
- Constraints
|
|
50
|
+
- Unknowns/open questions
|
|
51
|
+
- Likely codebase touchpoints
|
|
52
|
+
- If ambiguity remains high, run `explore` first for brownfield facts, then run `$deep-interview --quick <task>` before proceeding.
|
|
53
|
+
- Carry the snapshot path into autopilot artifacts/state so all phases share grounded context.
|
|
54
|
+
|
|
55
|
+
1. **Phase 0 - Expansion**: Turn the user's idea into a detailed spec
|
|
56
|
+
- If `.omx/specs/deep-interview-*.md` exists for this task: reuse it and skip redundant expansion work
|
|
57
|
+
- If prompt is highly vague: route to `$deep-interview` for Socratic ambiguity-gated clarification
|
|
58
|
+
- Analyst (THOROUGH tier): Extract requirements
|
|
59
|
+
- Architect (THOROUGH tier): Create technical specification
|
|
60
|
+
- Output: `.omx/plans/autopilot-spec.md`
|
|
61
|
+
|
|
62
|
+
2. **Phase 1 - Planning**: Create an implementation plan from the spec
|
|
63
|
+
- Architect (THOROUGH tier): Create plan (direct mode, no interview)
|
|
64
|
+
- Critic (THOROUGH tier): Validate plan
|
|
65
|
+
- Output: `.omx/plans/autopilot-impl.md`
|
|
66
|
+
|
|
67
|
+
3. **Phase 2 - Execution**: Implement the plan using Ralph + Ultrawork
|
|
68
|
+
- LOW-tier executor/search roles: Simple tasks
|
|
69
|
+
- STANDARD-tier executor roles: Standard tasks
|
|
70
|
+
- THOROUGH-tier executor/architect roles: Complex tasks
|
|
71
|
+
- Run independent tasks in parallel
|
|
72
|
+
|
|
73
|
+
4. **Phase 3 - QA**: Cycle until all tests pass (UltraQA mode)
|
|
74
|
+
- Build, lint, test, fix failures
|
|
75
|
+
- Repeat up to 5 cycles
|
|
76
|
+
- Stop early if the same error repeats 3 times (indicates a fundamental issue)
|
|
77
|
+
|
|
78
|
+
5. **Phase 4 - Validation**: Multi-perspective review in parallel
|
|
79
|
+
- Architect: Functional completeness
|
|
80
|
+
- Security-reviewer: Vulnerability check
|
|
81
|
+
- Code-reviewer: Quality review
|
|
82
|
+
- All must approve; fix and re-validate on rejection
|
|
83
|
+
|
|
84
|
+
6. **Phase 5 - Cleanup**: Clear all mode state via OMX MCP tools on successful completion
|
|
85
|
+
- `state_clear({mode: "autopilot"})`
|
|
86
|
+
- `state_clear({mode: "ralph"})`
|
|
87
|
+
- `state_clear({mode: "ultrawork"})`
|
|
88
|
+
- `state_clear({mode: "ultraqa"})`
|
|
89
|
+
- Or run `/cancel` for clean exit
|
|
90
|
+
</Steps>
|
|
91
|
+
|
|
92
|
+
<Tool_Usage>
|
|
93
|
+
- Before first MCP tool use, call `ToolSearch("mcp")` to discover deferred MCP tools
|
|
94
|
+
- Use `ask_codex` with `agent_role: "architect"` for Phase 4 architecture validation
|
|
95
|
+
- Use `ask_codex` with `agent_role: "security-reviewer"` for Phase 4 security review
|
|
96
|
+
- Use `ask_codex` with `agent_role: "code-reviewer"` for Phase 4 quality review
|
|
97
|
+
- Agents form their own analysis first, then consult Codex for cross-validation
|
|
98
|
+
- If ToolSearch finds no MCP tools or Codex is unavailable, proceed without it -- never block on external tools
|
|
99
|
+
</Tool_Usage>
|
|
100
|
+
|
|
101
|
+
## State Management
|
|
102
|
+
|
|
103
|
+
Use `omx_state` MCP tools for autopilot lifecycle state.
|
|
104
|
+
|
|
105
|
+
- **On start**:
|
|
106
|
+
`state_write({mode: "autopilot", active: true, current_phase: "expansion", started_at: "<now>", state: {context_snapshot_path: "<snapshot-path>"}})`
|
|
107
|
+
- **On phase transitions**:
|
|
108
|
+
`state_write({mode: "autopilot", current_phase: "planning"})`
|
|
109
|
+
`state_write({mode: "autopilot", current_phase: "execution"})`
|
|
110
|
+
`state_write({mode: "autopilot", current_phase: "qa"})`
|
|
111
|
+
`state_write({mode: "autopilot", current_phase: "validation"})`
|
|
112
|
+
- **On completion**:
|
|
113
|
+
`state_write({mode: "autopilot", active: false, current_phase: "complete", completed_at: "<now>"})`
|
|
114
|
+
- **On cancellation/cleanup**:
|
|
115
|
+
run `$cancel` (which should call `state_clear(mode="autopilot")`)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
## Scenario Examples
|
|
119
|
+
|
|
120
|
+
**Good:** The user says `continue` after the workflow already has a clear next step. Continue the current branch of work instead of restarting or re-asking the same question.
|
|
121
|
+
|
|
122
|
+
**Good:** The user changes only the output shape or downstream delivery step (for example `make a PR`). Preserve earlier non-conflicting workflow constraints and apply the update locally.
|
|
123
|
+
|
|
124
|
+
**Bad:** The user says `continue`, and the workflow restarts discovery or stops before the missing verification/evidence is gathered.
|
|
125
|
+
|
|
126
|
+
<Examples>
|
|
127
|
+
<Good>
|
|
128
|
+
User: "autopilot A REST API for a bookstore inventory with CRUD operations using TypeScript"
|
|
129
|
+
Why good: Specific domain (bookstore), clear features (CRUD), technology constraint (TypeScript). Autopilot has enough context to expand into a full spec.
|
|
130
|
+
</Good>
|
|
131
|
+
|
|
132
|
+
<Good>
|
|
133
|
+
User: "build me a CLI tool that tracks daily habits with streak counting"
|
|
134
|
+
Why good: Clear product concept with a specific feature. The "build me" trigger activates autopilot.
|
|
135
|
+
</Good>
|
|
136
|
+
|
|
137
|
+
<Bad>
|
|
138
|
+
User: "fix the bug in the login page"
|
|
139
|
+
Why bad: This is a single focused fix, not a multi-phase project. Use direct executor delegation or ralph instead.
|
|
140
|
+
</Bad>
|
|
141
|
+
|
|
142
|
+
<Bad>
|
|
143
|
+
User: "what are some good approaches for adding caching?"
|
|
144
|
+
Why bad: This is an exploration/brainstorming request. Respond conversationally or use the plan skill.
|
|
145
|
+
</Bad>
|
|
146
|
+
</Examples>
|
|
147
|
+
|
|
148
|
+
<Escalation_And_Stop_Conditions>
|
|
149
|
+
- Stop and report when the same QA error persists across 3 cycles (fundamental issue requiring human input)
|
|
150
|
+
- Stop and report when validation keeps failing after 3 re-validation rounds
|
|
151
|
+
- Stop when the user says "stop", "cancel", or "abort"
|
|
152
|
+
- If requirements were too vague and expansion produces an unclear spec, pause and redirect to `$deep-interview` before proceeding
|
|
153
|
+
</Escalation_And_Stop_Conditions>
|
|
154
|
+
|
|
155
|
+
<Final_Checklist>
|
|
156
|
+
- [ ] All 5 phases completed (Expansion, Planning, Execution, QA, Validation)
|
|
157
|
+
- [ ] All validators approved in Phase 4
|
|
158
|
+
- [ ] Tests pass (verified with fresh test run output)
|
|
159
|
+
- [ ] Build succeeds (verified with fresh build output)
|
|
160
|
+
- [ ] State files cleaned up
|
|
161
|
+
- [ ] User informed of completion with summary of what was built
|
|
162
|
+
</Final_Checklist>
|
|
163
|
+
|
|
164
|
+
<Advanced>
|
|
165
|
+
## Configuration
|
|
166
|
+
|
|
167
|
+
Optional settings in `~/.codex/config.toml`:
|
|
168
|
+
|
|
169
|
+
```toml
|
|
170
|
+
[omx.autopilot]
|
|
171
|
+
maxIterations = 10
|
|
172
|
+
maxQaCycles = 5
|
|
173
|
+
maxValidationRounds = 3
|
|
174
|
+
pauseAfterExpansion = false
|
|
175
|
+
pauseAfterPlanning = false
|
|
176
|
+
skipQa = false
|
|
177
|
+
skipValidation = false
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
## Resume
|
|
181
|
+
|
|
182
|
+
If autopilot was cancelled or failed, run `/autopilot` again to resume from where it stopped.
|
|
183
|
+
|
|
184
|
+
## Recommended Clarity Pipeline
|
|
185
|
+
|
|
186
|
+
For ambiguous requests, prefer:
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
deep-interview -> ralplan -> autopilot
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
- `deep-interview`: ambiguity-gated Socratic requirements
|
|
193
|
+
- `ralplan`: consensus planning (planner/architect/critic)
|
|
194
|
+
- `autopilot`: execution + QA + validation
|
|
195
|
+
|
|
196
|
+
## Best Practices for Input
|
|
197
|
+
|
|
198
|
+
1. Be specific about the domain -- "bookstore" not "store"
|
|
199
|
+
2. Mention key features -- "with CRUD", "with authentication"
|
|
200
|
+
3. Specify constraints -- "using TypeScript", "with PostgreSQL"
|
|
201
|
+
4. Let it run -- avoid interrupting unless truly needed
|
|
202
|
+
|
|
203
|
+
## Pipeline Orchestrator (v0.8+)
|
|
204
|
+
|
|
205
|
+
Autopilot can be driven by the configurable pipeline orchestrator (`src/pipeline/`), which
|
|
206
|
+
sequences stages through a uniform `PipelineStage` interface:
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
RALPLAN (consensus planning) -> team-exec (Codex CLI workers) -> ralph-verify (architect verification)
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
Pipeline configuration options:
|
|
213
|
+
|
|
214
|
+
```toml
|
|
215
|
+
[omx.autopilot.pipeline]
|
|
216
|
+
maxRalphIterations = 10 # Ralph verification iteration ceiling
|
|
217
|
+
workerCount = 2 # Number of Codex CLI team workers
|
|
218
|
+
agentType = "executor" # Agent type for team workers
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
The pipeline persists state via `pipeline-state.json` and supports resume from the last
|
|
222
|
+
incomplete stage. See `src/pipeline/orchestrator.ts` for the full API.
|
|
223
|
+
|
|
224
|
+
## Troubleshooting
|
|
225
|
+
|
|
226
|
+
**Stuck in a phase?** Check TODO list for blocked tasks, run `state_read({mode: "autopilot"})`, or cancel and resume.
|
|
227
|
+
|
|
228
|
+
**QA cycles exhausted?** The same error 3 times indicates a fundamental issue. Review the error pattern; manual intervention may be needed.
|
|
229
|
+
|
|
230
|
+
**Validation keeps failing?** Review the specific issues. Requirements may have been too vague -- cancel and provide more detail.
|
|
231
|
+
</Advanced>
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: autoresearch
|
|
3
|
+
description: Stateful validator-gated research loop with native-hook persistence
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Autoresearch
|
|
7
|
+
|
|
8
|
+
Autoresearch is the skill-first replacement for the deprecated `omx autoresearch` command.
|
|
9
|
+
It keeps the useful measured-research loop, but it now runs as a native-hook stateful workflow instead of a direct CLI or tmux launch surface.
|
|
10
|
+
|
|
11
|
+
## Use when
|
|
12
|
+
- You want a Ralph-ish persistent research loop
|
|
13
|
+
- The task should keep nudging until explicit validation evidence exists
|
|
14
|
+
- You want init-time choice between script validation and prompt+architect validation
|
|
15
|
+
|
|
16
|
+
## Do not use when
|
|
17
|
+
- You want the old `omx autoresearch` command surface (hard-deprecated)
|
|
18
|
+
- You want detached tmux or split-pane launch parity
|
|
19
|
+
- You have not decided the validation regime yet
|
|
20
|
+
|
|
21
|
+
## Core contract
|
|
22
|
+
1. **Init chooses validation mode.** Pick exactly one:
|
|
23
|
+
- `mission-validator-script`
|
|
24
|
+
- `prompt-architect-artifact`
|
|
25
|
+
2. **Persist mode state** in `.omx/state/.../autoresearch-state.json` including:
|
|
26
|
+
- `validation_mode`
|
|
27
|
+
- `completion_artifact_path`
|
|
28
|
+
- `mission_validator_command` **or** `validator_prompt`
|
|
29
|
+
- optional `output_artifact_path`
|
|
30
|
+
3. **Completion is artifact-gated.** The loop does not stop because the model says “done”, because a stop hook fired once, or because several turns were no-ops.
|
|
31
|
+
4. **Direct CLI launch is gone.** Use `$deep-interview --autoresearch` for intake and `$autoresearch` for execution.
|
|
32
|
+
|
|
33
|
+
## Completion artifact contract
|
|
34
|
+
|
|
35
|
+
### `mission-validator-script`
|
|
36
|
+
The completion artifact must exist and record a passing validator result, for example:
|
|
37
|
+
|
|
38
|
+
```json
|
|
39
|
+
{
|
|
40
|
+
"status": "passed",
|
|
41
|
+
"passed": true,
|
|
42
|
+
"summary": "metric improved beyond baseline"
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### `prompt-architect-artifact`
|
|
47
|
+
The completion artifact must include both an architect approval verdict and an output artifact path, for example:
|
|
48
|
+
|
|
49
|
+
```json
|
|
50
|
+
{
|
|
51
|
+
"validator_prompt": "Review the research output against the mission.",
|
|
52
|
+
"architect_review": { "verdict": "approved" },
|
|
53
|
+
"output_artifact_path": ".omx/specs/autoresearch-demo/report.md"
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Recommended flow
|
|
58
|
+
1. Run `$deep-interview --autoresearch` to clarify mission + evaluator.
|
|
59
|
+
2. Materialize `.omx/specs/autoresearch-{slug}/mission.md`, `sandbox.md`, and `result.json`.
|
|
60
|
+
3. Start `$autoresearch` with the chosen validation mode stored in mode state.
|
|
61
|
+
4. Let stop-hook / auto-nudge continue until the completion artifact satisfies the chosen validation mode.
|
|
62
|
+
5. Finish only after the validator artifact is complete.
|
|
63
|
+
|
|
64
|
+
## Migration note
|
|
65
|
+
- `omx autoresearch` is hard-deprecated.
|
|
66
|
+
- No direct CLI launch.
|
|
67
|
+
- No tmux split-pane launch.
|
|
68
|
+
- No noop-count completion gate.
|