oh-my-codex 0.6.3 → 0.7.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/README.md +19 -9
- package/bin/omx.js +3 -5
- package/dist/agents/__tests__/definitions.test.d.ts +2 -0
- package/dist/agents/__tests__/definitions.test.d.ts.map +1 -0
- package/dist/agents/__tests__/definitions.test.js +35 -0
- package/dist/agents/__tests__/definitions.test.js.map +1 -0
- package/dist/agents/__tests__/native-config.test.d.ts +2 -0
- package/dist/agents/__tests__/native-config.test.d.ts.map +1 -0
- package/dist/agents/__tests__/native-config.test.js +48 -0
- package/dist/agents/__tests__/native-config.test.js.map +1 -0
- package/dist/catalog/__tests__/schema.test.js +15 -0
- package/dist/catalog/__tests__/schema.test.js.map +1 -1
- package/dist/catalog/schema.d.ts.map +1 -1
- package/dist/catalog/schema.js +6 -0
- package/dist/catalog/schema.js.map +1 -1
- package/dist/cli/__tests__/catalog-contract.test.d.ts +2 -0
- package/dist/cli/__tests__/catalog-contract.test.d.ts.map +1 -0
- package/dist/cli/__tests__/catalog-contract.test.js +18 -0
- package/dist/cli/__tests__/catalog-contract.test.js.map +1 -0
- package/dist/cli/__tests__/doctor-team.test.js +3 -2
- package/dist/cli/__tests__/doctor-team.test.js.map +1 -1
- package/dist/cli/__tests__/error-handling-warnings.test.d.ts +2 -0
- package/dist/cli/__tests__/error-handling-warnings.test.d.ts.map +1 -0
- package/dist/cli/__tests__/error-handling-warnings.test.js +35 -0
- package/dist/cli/__tests__/error-handling-warnings.test.js.map +1 -0
- package/dist/cli/__tests__/index.test.js +81 -8
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/setup-agents-overwrite.test.d.ts +2 -0
- package/dist/cli/__tests__/setup-agents-overwrite.test.d.ts.map +1 -0
- package/dist/cli/__tests__/setup-agents-overwrite.test.js +124 -0
- package/dist/cli/__tests__/setup-agents-overwrite.test.js.map +1 -0
- package/dist/cli/__tests__/setup-scope.test.js +79 -21
- package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
- package/dist/cli/__tests__/setup-skills-overwrite.test.d.ts +2 -0
- package/dist/cli/__tests__/setup-skills-overwrite.test.d.ts.map +1 -0
- package/dist/cli/__tests__/setup-skills-overwrite.test.js +32 -0
- package/dist/cli/__tests__/setup-skills-overwrite.test.js.map +1 -0
- package/dist/cli/__tests__/star-prompt.test.js +74 -0
- package/dist/cli/__tests__/star-prompt.test.js.map +1 -1
- package/dist/cli/__tests__/team.test.js +8 -0
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +75 -18
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +10 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +153 -45
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/setup.d.ts +2 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +104 -60
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/star-prompt.d.ts +21 -1
- package/dist/cli/star-prompt.d.ts.map +1 -1
- package/dist/cli/star-prompt.js +34 -13
- package/dist/cli/star-prompt.js.map +1 -1
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +10 -3
- package/dist/cli/team.js.map +1 -1
- package/dist/cli/update.d.ts.map +1 -1
- package/dist/cli/update.js.map +1 -1
- package/dist/config/__tests__/generator-notify.test.js +16 -0
- package/dist/config/__tests__/generator-notify.test.js.map +1 -1
- package/dist/config/__tests__/models.test.js +9 -1
- package/dist/config/__tests__/models.test.js.map +1 -1
- package/dist/config/generator.js +9 -10
- package/dist/config/generator.js.map +1 -1
- package/dist/config/models.d.ts +8 -1
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +27 -5
- package/dist/config/models.js.map +1 -1
- package/dist/hooks/__tests__/agents-overlay.test.js +24 -0
- package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
- package/dist/hooks/__tests__/consensus-execution-handoff.test.d.ts +18 -0
- package/dist/hooks/__tests__/consensus-execution-handoff.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/consensus-execution-handoff.test.js +204 -0
- package/dist/hooks/__tests__/consensus-execution-handoff.test.js.map +1 -0
- package/dist/hooks/__tests__/emulator.test.d.ts +2 -0
- package/dist/hooks/__tests__/emulator.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/emulator.test.js +47 -0
- package/dist/hooks/__tests__/emulator.test.js.map +1 -0
- package/dist/hooks/__tests__/keyword-detector.test.js +330 -4
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +101 -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 +13 -7
- package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-modules.test.js +61 -0
- package/dist/hooks/__tests__/notify-hook-modules.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-session-scope.test.js +47 -0
- package/dist/hooks/__tests__/notify-hook-session-scope.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.d.ts +2 -0
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +560 -0
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -0
- package/dist/hooks/__tests__/session.test.d.ts +2 -0
- package/dist/hooks/__tests__/session.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/session.test.js +161 -0
- package/dist/hooks/__tests__/session.test.js.map +1 -0
- package/dist/hooks/__tests__/task-size-detector.test.d.ts +2 -0
- package/dist/hooks/__tests__/task-size-detector.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/task-size-detector.test.js +336 -0
- package/dist/hooks/__tests__/task-size-detector.test.js.map +1 -0
- package/dist/hooks/__tests__/tmux-hook-engine-types-sync.test.d.ts +2 -0
- package/dist/hooks/__tests__/tmux-hook-engine-types-sync.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/tmux-hook-engine-types-sync.test.js +24 -0
- package/dist/hooks/__tests__/tmux-hook-engine-types-sync.test.js.map +1 -0
- package/dist/hooks/agents-overlay.d.ts.map +1 -1
- package/dist/hooks/agents-overlay.js +46 -2
- package/dist/hooks/agents-overlay.js.map +1 -1
- package/dist/hooks/code-simplifier/__tests__/index.test.js +67 -15
- package/dist/hooks/code-simplifier/__tests__/index.test.js.map +1 -1
- package/dist/hooks/code-simplifier/index.d.ts +10 -4
- package/dist/hooks/code-simplifier/index.d.ts.map +1 -1
- package/dist/hooks/code-simplifier/index.js +38 -12
- package/dist/hooks/code-simplifier/index.js.map +1 -1
- package/dist/hooks/codebase-map.d.ts.map +1 -1
- package/dist/hooks/codebase-map.js +5 -32
- package/dist/hooks/codebase-map.js.map +1 -1
- package/dist/hooks/emulator.d.ts.map +1 -1
- package/dist/hooks/emulator.js +11 -18
- package/dist/hooks/emulator.js.map +1 -1
- package/dist/hooks/extensibility/__tests__/dispatcher.test.js +59 -1
- package/dist/hooks/extensibility/__tests__/dispatcher.test.js.map +1 -1
- package/dist/hooks/extensibility/__tests__/loader.test.js +19 -0
- package/dist/hooks/extensibility/__tests__/loader.test.js.map +1 -1
- package/dist/hooks/extensibility/dispatcher.d.ts.map +1 -1
- package/dist/hooks/extensibility/dispatcher.js +51 -39
- package/dist/hooks/extensibility/dispatcher.js.map +1 -1
- package/dist/hooks/extensibility/loader.d.ts.map +1 -1
- package/dist/hooks/extensibility/loader.js +25 -13
- package/dist/hooks/extensibility/loader.js.map +1 -1
- package/dist/hooks/extensibility/logging.d.ts.map +1 -1
- package/dist/hooks/extensibility/logging.js +6 -1
- package/dist/hooks/extensibility/logging.js.map +1 -1
- package/dist/hooks/extensibility/sdk.js.map +1 -1
- package/dist/hooks/keyword-detector.d.ts +87 -0
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +235 -23
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hooks/keyword-registry.d.ts +15 -0
- package/dist/hooks/keyword-registry.d.ts.map +1 -0
- package/dist/hooks/keyword-registry.js +41 -0
- package/dist/hooks/keyword-registry.js.map +1 -0
- package/dist/hooks/session.d.ts +18 -2
- package/dist/hooks/session.d.ts.map +1 -1
- package/dist/hooks/session.js +84 -11
- package/dist/hooks/session.js.map +1 -1
- package/dist/hooks/task-size-detector.d.ts +72 -0
- package/dist/hooks/task-size-detector.d.ts.map +1 -0
- package/dist/hooks/task-size-detector.js +204 -0
- package/dist/hooks/task-size-detector.js.map +1 -0
- package/dist/hud/__tests__/colors.test.js +1 -103
- package/dist/hud/__tests__/colors.test.js.map +1 -1
- package/dist/hud/__tests__/index.test.d.ts +2 -0
- package/dist/hud/__tests__/index.test.d.ts.map +1 -0
- package/dist/hud/__tests__/index.test.js +131 -0
- package/dist/hud/__tests__/index.test.js.map +1 -0
- package/dist/hud/__tests__/render.test.js +53 -0
- package/dist/hud/__tests__/render.test.js.map +1 -1
- package/dist/hud/__tests__/watch.test.d.ts +2 -0
- package/dist/hud/__tests__/watch.test.d.ts.map +1 -0
- package/dist/hud/__tests__/watch.test.js +63 -0
- package/dist/hud/__tests__/watch.test.js.map +1 -0
- package/dist/hud/colors.d.ts +2 -9
- package/dist/hud/colors.d.ts.map +1 -1
- package/dist/hud/colors.js +19 -34
- package/dist/hud/colors.js.map +1 -1
- package/dist/hud/constants.d.ts +1 -0
- package/dist/hud/constants.d.ts.map +1 -1
- package/dist/hud/constants.js +1 -0
- package/dist/hud/constants.js.map +1 -1
- package/dist/hud/index.d.ts +27 -0
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +149 -9
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +20 -7
- package/dist/hud/render.js.map +1 -1
- package/dist/mcp/__tests__/bootstrap.test.d.ts +2 -0
- package/dist/mcp/__tests__/bootstrap.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/bootstrap.test.js +25 -0
- package/dist/mcp/__tests__/bootstrap.test.js.map +1 -0
- package/dist/mcp/__tests__/code-intel-server.test.d.ts +2 -0
- package/dist/mcp/__tests__/code-intel-server.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/code-intel-server.test.js +43 -0
- package/dist/mcp/__tests__/code-intel-server.test.js.map +1 -0
- package/dist/mcp/__tests__/memory-server.test.d.ts +2 -0
- package/dist/mcp/__tests__/memory-server.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/memory-server.test.js +34 -0
- package/dist/mcp/__tests__/memory-server.test.js.map +1 -0
- package/dist/mcp/__tests__/memory-validation.test.d.ts +2 -0
- package/dist/mcp/__tests__/memory-validation.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/memory-validation.test.js +29 -0
- package/dist/mcp/__tests__/memory-validation.test.js.map +1 -0
- package/dist/mcp/__tests__/path-traversal.test.js +55 -0
- package/dist/mcp/__tests__/path-traversal.test.js.map +1 -1
- package/dist/mcp/__tests__/state-paths.test.js +43 -6
- package/dist/mcp/__tests__/state-paths.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server-ralph-phase.test.js +50 -0
- package/dist/mcp/__tests__/state-server-ralph-phase.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server-schema.test.js +3 -7
- package/dist/mcp/__tests__/state-server-schema.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server.test.js +30 -1
- package/dist/mcp/__tests__/state-server.test.js.map +1 -1
- package/dist/mcp/__tests__/trace-server.test.js +58 -0
- package/dist/mcp/__tests__/trace-server.test.js.map +1 -1
- package/dist/mcp/bootstrap.d.ts +3 -0
- package/dist/mcp/bootstrap.d.ts.map +1 -0
- package/dist/mcp/bootstrap.js +13 -0
- package/dist/mcp/bootstrap.js.map +1 -0
- package/dist/mcp/code-intel-server.d.ts +8 -0
- package/dist/mcp/code-intel-server.d.ts.map +1 -1
- package/dist/mcp/code-intel-server.js +50 -24
- package/dist/mcp/code-intel-server.js.map +1 -1
- package/dist/mcp/memory-server.js +34 -13
- package/dist/mcp/memory-server.js.map +1 -1
- package/dist/mcp/memory-validation.d.ts +9 -0
- package/dist/mcp/memory-validation.d.ts.map +1 -0
- package/dist/mcp/memory-validation.js +11 -0
- package/dist/mcp/memory-validation.js.map +1 -0
- package/dist/mcp/state-paths.d.ts +2 -0
- package/dist/mcp/state-paths.d.ts.map +1 -1
- package/dist/mcp/state-paths.js +83 -12
- package/dist/mcp/state-paths.js.map +1 -1
- package/dist/mcp/state-server.d.ts.map +1 -1
- package/dist/mcp/state-server.js +85 -47
- package/dist/mcp/state-server.js.map +1 -1
- package/dist/mcp/trace-server.d.ts +16 -0
- package/dist/mcp/trace-server.d.ts.map +1 -1
- package/dist/mcp/trace-server.js +84 -24
- package/dist/mcp/trace-server.js.map +1 -1
- package/dist/modes/__tests__/base-ralph-contract.test.d.ts +2 -0
- package/dist/modes/__tests__/base-ralph-contract.test.d.ts.map +1 -0
- package/dist/modes/__tests__/base-ralph-contract.test.js +49 -0
- package/dist/modes/__tests__/base-ralph-contract.test.js.map +1 -0
- package/dist/modes/__tests__/base-tmux-pane.test.js +13 -1
- package/dist/modes/__tests__/base-tmux-pane.test.js.map +1 -1
- package/dist/modes/base.d.ts +0 -4
- package/dist/modes/base.d.ts.map +1 -1
- package/dist/modes/base.js +31 -11
- package/dist/modes/base.js.map +1 -1
- package/dist/notifications/__tests__/config.test.js +47 -1
- package/dist/notifications/__tests__/config.test.js.map +1 -1
- package/dist/notifications/__tests__/formatter.test.js +54 -2
- package/dist/notifications/__tests__/formatter.test.js.map +1 -1
- package/dist/notifications/__tests__/hook-config.test.d.ts +5 -0
- package/dist/notifications/__tests__/hook-config.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/hook-config.test.js +139 -0
- package/dist/notifications/__tests__/hook-config.test.js.map +1 -0
- package/dist/notifications/__tests__/idle-cooldown.test.d.ts +5 -0
- package/dist/notifications/__tests__/idle-cooldown.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/idle-cooldown.test.js +100 -0
- package/dist/notifications/__tests__/idle-cooldown.test.js.map +1 -0
- package/dist/notifications/__tests__/notifier.test.js +89 -1
- package/dist/notifications/__tests__/notifier.test.js.map +1 -1
- package/dist/notifications/__tests__/reply-config.test.d.ts +2 -0
- package/dist/notifications/__tests__/reply-config.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/reply-config.test.js +79 -0
- package/dist/notifications/__tests__/reply-config.test.js.map +1 -0
- package/dist/notifications/__tests__/reply-listener.test.js +35 -1
- package/dist/notifications/__tests__/reply-listener.test.js.map +1 -1
- package/dist/notifications/__tests__/session-registry.test.js +40 -0
- package/dist/notifications/__tests__/session-registry.test.js.map +1 -1
- package/dist/notifications/__tests__/template-engine.test.d.ts +5 -0
- package/dist/notifications/__tests__/template-engine.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/template-engine.test.js +147 -0
- package/dist/notifications/__tests__/template-engine.test.js.map +1 -0
- package/dist/notifications/config.d.ts +8 -0
- package/dist/notifications/config.d.ts.map +1 -1
- package/dist/notifications/config.js +110 -19
- package/dist/notifications/config.js.map +1 -1
- package/dist/notifications/formatter.d.ts +5 -0
- package/dist/notifications/formatter.d.ts.map +1 -1
- package/dist/notifications/formatter.js +45 -10
- package/dist/notifications/formatter.js.map +1 -1
- package/dist/notifications/hook-config-types.d.ts +43 -0
- package/dist/notifications/hook-config-types.d.ts.map +1 -0
- package/dist/notifications/hook-config-types.js +8 -0
- package/dist/notifications/hook-config-types.js.map +1 -0
- package/dist/notifications/hook-config.d.ts +40 -0
- package/dist/notifications/hook-config.d.ts.map +1 -0
- package/dist/notifications/hook-config.js +127 -0
- package/dist/notifications/hook-config.js.map +1 -0
- package/dist/notifications/idle-cooldown.d.ts +35 -0
- package/dist/notifications/idle-cooldown.d.ts.map +1 -0
- package/dist/notifications/idle-cooldown.js +108 -0
- package/dist/notifications/idle-cooldown.js.map +1 -0
- package/dist/notifications/index.d.ts +3 -0
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +43 -1
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/notifier.d.ts +9 -0
- package/dist/notifications/notifier.d.ts.map +1 -1
- package/dist/notifications/notifier.js +36 -30
- package/dist/notifications/notifier.js.map +1 -1
- package/dist/notifications/reply-listener.d.ts +3 -0
- package/dist/notifications/reply-listener.d.ts.map +1 -1
- package/dist/notifications/reply-listener.js +61 -7
- package/dist/notifications/reply-listener.js.map +1 -1
- package/dist/notifications/session-registry.d.ts +1 -1
- package/dist/notifications/session-registry.d.ts.map +1 -1
- package/dist/notifications/session-registry.js +18 -6
- package/dist/notifications/session-registry.js.map +1 -1
- package/dist/notifications/template-engine.d.ts +34 -0
- package/dist/notifications/template-engine.d.ts.map +1 -0
- package/dist/notifications/template-engine.js +246 -0
- package/dist/notifications/template-engine.js.map +1 -0
- package/dist/notifications/types.d.ts +6 -0
- package/dist/notifications/types.d.ts.map +1 -1
- package/dist/openclaw/__tests__/config.test.d.ts +6 -0
- package/dist/openclaw/__tests__/config.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/config.test.js +174 -0
- package/dist/openclaw/__tests__/config.test.js.map +1 -0
- package/dist/openclaw/__tests__/dispatcher.test.d.ts +5 -0
- package/dist/openclaw/__tests__/dispatcher.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/dispatcher.test.js +104 -0
- package/dist/openclaw/__tests__/dispatcher.test.js.map +1 -0
- package/dist/openclaw/__tests__/index.test.d.ts +6 -0
- package/dist/openclaw/__tests__/index.test.d.ts.map +1 -0
- package/dist/openclaw/__tests__/index.test.js +131 -0
- package/dist/openclaw/__tests__/index.test.js.map +1 -0
- package/dist/openclaw/config.d.ts +37 -0
- package/dist/openclaw/config.d.ts.map +1 -0
- package/dist/openclaw/config.js +106 -0
- package/dist/openclaw/config.js.map +1 -0
- package/dist/openclaw/dispatcher.d.ts +63 -0
- package/dist/openclaw/dispatcher.d.ts.map +1 -0
- package/dist/openclaw/dispatcher.js +223 -0
- package/dist/openclaw/dispatcher.js.map +1 -0
- package/dist/openclaw/index.d.ts +27 -0
- package/dist/openclaw/index.d.ts.map +1 -0
- package/dist/openclaw/index.js +130 -0
- package/dist/openclaw/index.js.map +1 -0
- package/dist/openclaw/types.d.ts +105 -0
- package/dist/openclaw/types.d.ts.map +1 -0
- package/dist/openclaw/types.js +12 -0
- package/dist/openclaw/types.js.map +1 -0
- package/dist/ralph/contract.d.ts.map +1 -1
- package/dist/ralph/contract.js +13 -4
- package/dist/ralph/contract.js.map +1 -1
- package/dist/team/__tests__/phase-controller.test.js +14 -0
- package/dist/team/__tests__/phase-controller.test.js.map +1 -1
- package/dist/team/__tests__/runtime.test.js +328 -1
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/scaling.test.d.ts +2 -0
- package/dist/team/__tests__/scaling.test.d.ts.map +1 -0
- package/dist/team/__tests__/scaling.test.js +295 -0
- package/dist/team/__tests__/scaling.test.js.map +1 -0
- package/dist/team/__tests__/state.test.js +62 -1
- package/dist/team/__tests__/state.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +219 -14
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +4 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/contracts.d.ts +14 -0
- package/dist/team/contracts.d.ts.map +1 -0
- package/dist/team/contracts.js +30 -0
- package/dist/team/contracts.js.map +1 -0
- package/dist/team/model-contract.d.ts +1 -0
- package/dist/team/model-contract.d.ts.map +1 -1
- package/dist/team/model-contract.js +5 -1
- package/dist/team/model-contract.js.map +1 -1
- package/dist/team/phase-controller.d.ts +2 -0
- package/dist/team/phase-controller.d.ts.map +1 -1
- package/dist/team/phase-controller.js +16 -2
- package/dist/team/phase-controller.js.map +1 -1
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +356 -65
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/scaling.d.ts +58 -0
- package/dist/team/scaling.d.ts.map +1 -0
- package/dist/team/scaling.js +319 -0
- package/dist/team/scaling.js.map +1 -0
- package/dist/team/state.d.ts +11 -2
- package/dist/team/state.d.ts.map +1 -1
- package/dist/team/state.js +97 -27
- package/dist/team/state.js.map +1 -1
- package/dist/team/team-ops.d.ts +2 -0
- package/dist/team/team-ops.d.ts.map +1 -1
- package/dist/team/team-ops.js +4 -0
- package/dist/team/team-ops.js.map +1 -1
- package/dist/team/tmux-session.d.ts +34 -5
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +177 -49
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +20 -0
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/utils/__tests__/paths.test.js +8 -1
- package/dist/utils/__tests__/paths.test.js.map +1 -1
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +14 -6
- package/dist/utils/paths.js.map +1 -1
- package/dist/verification/__tests__/verifier.test.js +20 -1
- package/dist/verification/__tests__/verifier.test.js.map +1 -1
- package/dist/verification/verifier.d.ts +5 -0
- package/dist/verification/verifier.d.ts.map +1 -1
- package/dist/verification/verifier.js +19 -0
- package/dist/verification/verifier.js.map +1 -1
- package/package.json +2 -1
- package/prompts/architect.md +11 -0
- package/prompts/critic.md +14 -1
- package/prompts/planner.md +21 -0
- package/scripts/notify-hook/auto-nudge.js +80 -1
- package/scripts/notify-hook/payload-parser.js +21 -0
- package/scripts/notify-hook/team-worker.js +142 -0
- package/scripts/notify-hook/tmux-injection.js +3 -3
- package/scripts/notify-hook.js +55 -4
- package/skills/configure-notifications/SKILL.md +278 -0
- package/skills/configure-openclaw/SKILL.md +267 -0
- package/skills/configure-slack/SKILL.md +226 -0
- package/skills/omx-setup/SKILL.md +14 -19
- package/skills/plan/SKILL.md +57 -33
- package/skills/ralplan/SKILL.md +107 -21
- package/skills/team/SKILL.md +10 -1
- package/templates/AGENTS.md +11 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/hooks/extensibility/sdk.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/hooks/extensibility/sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,11 +10,35 @@
|
|
|
10
10
|
* When Codex CLI adds pre-hook support, this module can be promoted
|
|
11
11
|
* to an external hook handler.
|
|
12
12
|
*/
|
|
13
|
+
import { type TaskSizeResult } from './task-size-detector.js';
|
|
13
14
|
export interface KeywordMatch {
|
|
14
15
|
keyword: string;
|
|
15
16
|
skill: string;
|
|
16
17
|
priority: number;
|
|
17
18
|
}
|
|
19
|
+
export type SkillActivePhase = 'planning' | 'executing' | 'reviewing' | 'completing';
|
|
20
|
+
export interface SkillActiveState {
|
|
21
|
+
version: 1;
|
|
22
|
+
active: boolean;
|
|
23
|
+
skill: string;
|
|
24
|
+
keyword: string;
|
|
25
|
+
phase: SkillActivePhase;
|
|
26
|
+
activated_at: string;
|
|
27
|
+
updated_at: string;
|
|
28
|
+
source: 'keyword-detector';
|
|
29
|
+
session_id?: string;
|
|
30
|
+
thread_id?: string;
|
|
31
|
+
turn_id?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface RecordSkillActivationInput {
|
|
34
|
+
stateDir: string;
|
|
35
|
+
text: string;
|
|
36
|
+
sessionId?: string;
|
|
37
|
+
threadId?: string;
|
|
38
|
+
turnId?: string;
|
|
39
|
+
nowIso?: string;
|
|
40
|
+
}
|
|
41
|
+
export declare const SKILL_ACTIVE_STATE_FILE = "skill-active-state.json";
|
|
18
42
|
/**
|
|
19
43
|
* Detect keywords in user input text
|
|
20
44
|
* Returns matching skills sorted by priority (highest first)
|
|
@@ -24,4 +48,67 @@ export declare function detectKeywords(text: string): KeywordMatch[];
|
|
|
24
48
|
* Get the highest-priority keyword match
|
|
25
49
|
*/
|
|
26
50
|
export declare function detectPrimaryKeyword(text: string): KeywordMatch | null;
|
|
51
|
+
export declare function recordSkillActivation(input: RecordSkillActivationInput): Promise<SkillActiveState | null>;
|
|
52
|
+
/**
|
|
53
|
+
* Pre-execution gate — ported from OMC src/hooks/keyword-detector/index.ts
|
|
54
|
+
*
|
|
55
|
+
* In OMC these functions run at prompt time in bridge.ts (mandatory enforcement).
|
|
56
|
+
* In OMX they generate AGENTS.md instructions and serve as test infrastructure.
|
|
57
|
+
* See task-size-detector.ts for full advisory-nature documentation.
|
|
58
|
+
*/
|
|
59
|
+
/**
|
|
60
|
+
* Execution mode keywords subject to the ralplan-first gate.
|
|
61
|
+
* These modes spin up heavy orchestration and should not run on vague requests.
|
|
62
|
+
*/
|
|
63
|
+
export declare const EXECUTION_GATE_KEYWORDS: Set<string>;
|
|
64
|
+
/**
|
|
65
|
+
* Escape hatch prefixes that bypass the ralplan gate.
|
|
66
|
+
*/
|
|
67
|
+
export declare const GATE_BYPASS_PREFIXES: string[];
|
|
68
|
+
/**
|
|
69
|
+
* Positive signals that the prompt IS well-specified enough for direct execution.
|
|
70
|
+
* If ANY of these are present, the prompt auto-passes the gate (fast path).
|
|
71
|
+
*/
|
|
72
|
+
export declare const WELL_SPECIFIED_SIGNALS: RegExp[];
|
|
73
|
+
/**
|
|
74
|
+
* Check if a prompt is underspecified for direct execution.
|
|
75
|
+
* Returns true if the prompt lacks enough specificity for heavy execution modes.
|
|
76
|
+
*
|
|
77
|
+
* Conservative: only gates clearly vague prompts. Borderline cases pass through.
|
|
78
|
+
*/
|
|
79
|
+
export declare function isUnderspecifiedForExecution(text: string): boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Apply the ralplan-first gate: if execution keywords are present
|
|
82
|
+
* but the prompt is underspecified, redirect to ralplan.
|
|
83
|
+
*
|
|
84
|
+
* Returns the modified keyword list and gate metadata.
|
|
85
|
+
*/
|
|
86
|
+
export declare function applyRalplanGate(keywords: string[], text: string): {
|
|
87
|
+
keywords: string[];
|
|
88
|
+
gateApplied: boolean;
|
|
89
|
+
gatedKeywords: string[];
|
|
90
|
+
};
|
|
91
|
+
/**
|
|
92
|
+
* Options for task-size-aware keyword filtering
|
|
93
|
+
*/
|
|
94
|
+
export interface TaskSizeFilterOptions {
|
|
95
|
+
/** Enable task-size detection. Default: true */
|
|
96
|
+
enabled?: boolean;
|
|
97
|
+
/** Word count threshold for small tasks. Default: 50 */
|
|
98
|
+
smallWordLimit?: number;
|
|
99
|
+
/** Word count threshold for large tasks. Default: 200 */
|
|
100
|
+
largeWordLimit?: number;
|
|
101
|
+
/** Suppress heavy modes for small tasks. Default: true */
|
|
102
|
+
suppressHeavyModesForSmallTasks?: boolean;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Get all keywords with task-size-based filtering applied.
|
|
106
|
+
* For small tasks, heavy orchestration modes (ralph/autopilot/team/ultrawork etc.)
|
|
107
|
+
* are suppressed to avoid over-orchestration.
|
|
108
|
+
*/
|
|
109
|
+
export declare function getAllKeywordsWithSizeCheck(text: string, options?: TaskSizeFilterOptions): {
|
|
110
|
+
keywords: string[];
|
|
111
|
+
taskSizeResult: TaskSizeResult | null;
|
|
112
|
+
suppressedKeywords: string[];
|
|
113
|
+
};
|
|
27
114
|
//# sourceMappingURL=keyword-detector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyword-detector.d.ts","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"keyword-detector.d.ts","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAiC,KAAK,cAAc,EAA2B,MAAM,yBAAyB,CAAC;AAGtH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;AAErF,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,gBAAgB,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAyDjE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAgB3D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAGtE;AAED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA+B/G;AAED;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,uBAAuB,aAKlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,UAAkB,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,EA6B1C,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAsBlE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAAE,EAClB,IAAI,EAAE,MAAM,GACX;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAA;CAAE,CAiCvE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,qBAA0B,GAClC;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAAE,CAoC7F"}
|
|
@@ -10,28 +10,60 @@
|
|
|
10
10
|
* When Codex CLI adds pre-hook support, this module can be promoted
|
|
11
11
|
* to an external hook handler.
|
|
12
12
|
*/
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
{
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
13
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
14
|
+
import { join } from 'node:path';
|
|
15
|
+
import { classifyTaskSize, isHeavyMode } from './task-size-detector.js';
|
|
16
|
+
import { KEYWORD_TRIGGER_DEFINITIONS, compareKeywordMatches } from './keyword-registry.js';
|
|
17
|
+
export const SKILL_ACTIVE_STATE_FILE = 'skill-active-state.json';
|
|
18
|
+
async function readExistingSkillState(statePath) {
|
|
19
|
+
try {
|
|
20
|
+
const raw = await readFile(statePath, 'utf-8');
|
|
21
|
+
return JSON.parse(raw);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function escapeRegex(text) {
|
|
28
|
+
return text.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
29
|
+
}
|
|
30
|
+
function isWordChar(ch) {
|
|
31
|
+
return Boolean(ch && /[A-Za-z0-9_]/.test(ch));
|
|
32
|
+
}
|
|
33
|
+
function keywordToPattern(keyword) {
|
|
34
|
+
const escaped = escapeRegex(keyword);
|
|
35
|
+
const startsWithWord = isWordChar(keyword[0]);
|
|
36
|
+
const endsWithWord = isWordChar(keyword[keyword.length - 1]);
|
|
37
|
+
const prefix = startsWithWord ? '\\b' : '';
|
|
38
|
+
const suffix = endsWithWord ? '\\b' : '';
|
|
39
|
+
return new RegExp(`${prefix}${escaped}${suffix}`, 'i');
|
|
40
|
+
}
|
|
41
|
+
const KEYWORD_MAP = KEYWORD_TRIGGER_DEFINITIONS.map((entry) => ({
|
|
42
|
+
pattern: keywordToPattern(entry.keyword),
|
|
43
|
+
skill: entry.skill,
|
|
44
|
+
priority: entry.priority,
|
|
45
|
+
}));
|
|
46
|
+
const KEYWORDS_REQUIRING_INTENT = new Set(['team', 'swarm']);
|
|
47
|
+
const TEAM_SWARM_INTENT_PATTERNS = {
|
|
48
|
+
team: [
|
|
49
|
+
/(?:^|[^\w])\$(?:team)\b/i,
|
|
50
|
+
/\/prompts:team\b/i,
|
|
51
|
+
/\b(?:use|run|start|enable|launch|invoke|activate|orchestrate|coordinate)\s+(?:a\s+|an\s+|the\s+)?team\b/i,
|
|
52
|
+
/\bteam\s+(?:mode|orchestration|workflow|agents?)\b/i,
|
|
53
|
+
],
|
|
54
|
+
swarm: [
|
|
55
|
+
/(?:^|[^\w])\$(?:swarm)\b/i,
|
|
56
|
+
/\/prompts:swarm\b/i,
|
|
57
|
+
/\b(?:use|run|start|enable|launch|invoke|activate|orchestrate|coordinate)\s+(?:a\s+|an\s+|the\s+)?swarm\b/i,
|
|
58
|
+
/\bswarm\s+(?:mode|orchestration|workflow|agents?)\b/i,
|
|
59
|
+
],
|
|
60
|
+
};
|
|
61
|
+
function hasIntentContextForKeyword(text, keyword) {
|
|
62
|
+
if (!KEYWORDS_REQUIRING_INTENT.has(keyword.toLowerCase()))
|
|
63
|
+
return true;
|
|
64
|
+
const k = keyword.toLowerCase();
|
|
65
|
+
return TEAM_SWARM_INTENT_PATTERNS[k].some((pattern) => pattern.test(text));
|
|
66
|
+
}
|
|
35
67
|
/**
|
|
36
68
|
* Detect keywords in user input text
|
|
37
69
|
* Returns matching skills sorted by priority (highest first)
|
|
@@ -41,6 +73,8 @@ export function detectKeywords(text) {
|
|
|
41
73
|
for (const { pattern, skill, priority } of KEYWORD_MAP) {
|
|
42
74
|
const match = text.match(pattern);
|
|
43
75
|
if (match) {
|
|
76
|
+
if (!hasIntentContextForKeyword(text, match[0].toLowerCase()))
|
|
77
|
+
continue;
|
|
44
78
|
matches.push({
|
|
45
79
|
keyword: match[0],
|
|
46
80
|
skill,
|
|
@@ -48,7 +82,7 @@ export function detectKeywords(text) {
|
|
|
48
82
|
});
|
|
49
83
|
}
|
|
50
84
|
}
|
|
51
|
-
return matches.sort(
|
|
85
|
+
return matches.sort(compareKeywordMatches);
|
|
52
86
|
}
|
|
53
87
|
/**
|
|
54
88
|
* Get the highest-priority keyword match
|
|
@@ -57,4 +91,182 @@ export function detectPrimaryKeyword(text) {
|
|
|
57
91
|
const matches = detectKeywords(text);
|
|
58
92
|
return matches.length > 0 ? matches[0] : null;
|
|
59
93
|
}
|
|
94
|
+
export async function recordSkillActivation(input) {
|
|
95
|
+
const match = detectPrimaryKeyword(input.text);
|
|
96
|
+
if (!match)
|
|
97
|
+
return null;
|
|
98
|
+
const nowIso = input.nowIso ?? new Date().toISOString();
|
|
99
|
+
const statePath = join(input.stateDir, SKILL_ACTIVE_STATE_FILE);
|
|
100
|
+
const previous = await readExistingSkillState(statePath);
|
|
101
|
+
const sameSkill = previous?.active === true && previous.skill === match.skill;
|
|
102
|
+
const sameKeyword = previous?.keyword?.toLowerCase() === match.keyword.toLowerCase();
|
|
103
|
+
const state = {
|
|
104
|
+
version: 1,
|
|
105
|
+
active: true,
|
|
106
|
+
skill: match.skill,
|
|
107
|
+
keyword: match.keyword,
|
|
108
|
+
phase: 'planning',
|
|
109
|
+
activated_at: sameSkill && sameKeyword ? previous.activated_at : nowIso,
|
|
110
|
+
updated_at: nowIso,
|
|
111
|
+
source: 'keyword-detector',
|
|
112
|
+
session_id: input.sessionId,
|
|
113
|
+
thread_id: input.threadId,
|
|
114
|
+
turn_id: input.turnId,
|
|
115
|
+
};
|
|
116
|
+
try {
|
|
117
|
+
await writeFile(statePath, JSON.stringify(state, null, 2));
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
console.warn('[omx] warning: failed to persist keyword activation state', error);
|
|
121
|
+
}
|
|
122
|
+
return state;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Pre-execution gate — ported from OMC src/hooks/keyword-detector/index.ts
|
|
126
|
+
*
|
|
127
|
+
* In OMC these functions run at prompt time in bridge.ts (mandatory enforcement).
|
|
128
|
+
* In OMX they generate AGENTS.md instructions and serve as test infrastructure.
|
|
129
|
+
* See task-size-detector.ts for full advisory-nature documentation.
|
|
130
|
+
*/
|
|
131
|
+
/**
|
|
132
|
+
* Execution mode keywords subject to the ralplan-first gate.
|
|
133
|
+
* These modes spin up heavy orchestration and should not run on vague requests.
|
|
134
|
+
*/
|
|
135
|
+
export const EXECUTION_GATE_KEYWORDS = new Set([
|
|
136
|
+
'ralph',
|
|
137
|
+
'autopilot',
|
|
138
|
+
'team',
|
|
139
|
+
'ultrawork',
|
|
140
|
+
]);
|
|
141
|
+
/**
|
|
142
|
+
* Escape hatch prefixes that bypass the ralplan gate.
|
|
143
|
+
*/
|
|
144
|
+
export const GATE_BYPASS_PREFIXES = ['force:', '!'];
|
|
145
|
+
/**
|
|
146
|
+
* Positive signals that the prompt IS well-specified enough for direct execution.
|
|
147
|
+
* If ANY of these are present, the prompt auto-passes the gate (fast path).
|
|
148
|
+
*/
|
|
149
|
+
export const WELL_SPECIFIED_SIGNALS = [
|
|
150
|
+
// References specific files by extension
|
|
151
|
+
/\b[\w/.-]+\.(?:ts|js|py|go|rs|java|tsx|jsx|vue|svelte|rb|c|cpp|h|css|scss|html|json|yaml|yml|toml)\b/,
|
|
152
|
+
// References specific paths with directory separators
|
|
153
|
+
/(?:src|lib|test|spec|app|pages|components|hooks|utils|services|api|dist|build|scripts)\/\w+/,
|
|
154
|
+
// References specific functions/classes/methods by keyword
|
|
155
|
+
/\b(?:function|class|method|interface|type|const|let|var|def|fn|struct|enum)\s+\w{2,}/i,
|
|
156
|
+
// CamelCase identifiers (likely symbol names: processKeyword, getUserById)
|
|
157
|
+
/\b[a-z]+(?:[A-Z][a-z]+)+\b/,
|
|
158
|
+
// PascalCase identifiers (likely class/type names: KeywordDetector, UserModel)
|
|
159
|
+
/\b[A-Z][a-z]+(?:[A-Z][a-z0-9]*)+\b/,
|
|
160
|
+
// snake_case identifiers with 2+ segments (likely symbol names: user_model, get_user)
|
|
161
|
+
/\b[a-z]+(?:_[a-z]+)+\b/,
|
|
162
|
+
// Bare issue/PR number (#123, #42)
|
|
163
|
+
/(?:^|\s)#\d+\b/,
|
|
164
|
+
// Has numbered steps or bullet list (structured request)
|
|
165
|
+
/(?:^|\n)\s*(?:\d+[.)]\s|-\s+\S|\*\s+\S)/m,
|
|
166
|
+
// Has acceptance criteria or test spec keywords
|
|
167
|
+
/\b(?:acceptance\s+criteria|test\s+(?:spec|plan|case)|should\s+(?:return|throw|render|display|create|delete|update))\b/i,
|
|
168
|
+
// Has specific error or issue reference
|
|
169
|
+
/\b(?:error:|bug\s*#?\d+|issue\s*#\d+|stack\s*trace|exception|TypeError|ReferenceError|SyntaxError)\b/i,
|
|
170
|
+
// Has a code block with substantial content
|
|
171
|
+
/```[\s\S]{20,}?```/,
|
|
172
|
+
// PR or commit reference
|
|
173
|
+
/\b(?:PR\s*#\d+|commit\s+[0-9a-f]{7}|pull\s+request)\b/i,
|
|
174
|
+
// "in <specific-path>" pattern
|
|
175
|
+
/\bin\s+[\w/.-]+\.(?:ts|js|py|go|rs|java|tsx|jsx)\b/,
|
|
176
|
+
// Test runner commands (explicit test target)
|
|
177
|
+
/\b(?:npm\s+test|npx\s+(?:vitest|jest)|pytest|cargo\s+test|go\s+test|make\s+test)\b/i,
|
|
178
|
+
];
|
|
179
|
+
/**
|
|
180
|
+
* Check if a prompt is underspecified for direct execution.
|
|
181
|
+
* Returns true if the prompt lacks enough specificity for heavy execution modes.
|
|
182
|
+
*
|
|
183
|
+
* Conservative: only gates clearly vague prompts. Borderline cases pass through.
|
|
184
|
+
*/
|
|
185
|
+
export function isUnderspecifiedForExecution(text) {
|
|
186
|
+
const trimmed = text.trim();
|
|
187
|
+
if (!trimmed)
|
|
188
|
+
return true;
|
|
189
|
+
// Escape hatch: force: or ! prefix bypasses the gate
|
|
190
|
+
for (const prefix of GATE_BYPASS_PREFIXES) {
|
|
191
|
+
if (trimmed.startsWith(prefix))
|
|
192
|
+
return false;
|
|
193
|
+
}
|
|
194
|
+
// If any well-specified signal is present, pass through
|
|
195
|
+
if (WELL_SPECIFIED_SIGNALS.some(p => p.test(trimmed)))
|
|
196
|
+
return false;
|
|
197
|
+
// Strip mode keywords for effective word counting
|
|
198
|
+
const stripped = trimmed
|
|
199
|
+
.replace(/\b(?:ralph|autopilot|team|ultrawork|ultrapilot|ulw|swarm)\b/gi, '')
|
|
200
|
+
.trim();
|
|
201
|
+
const effectiveWords = stripped.split(/\s+/).filter(w => w.length > 0).length;
|
|
202
|
+
// Short prompts without well-specified signals are underspecified
|
|
203
|
+
if (effectiveWords <= 15)
|
|
204
|
+
return true;
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Apply the ralplan-first gate: if execution keywords are present
|
|
209
|
+
* but the prompt is underspecified, redirect to ralplan.
|
|
210
|
+
*
|
|
211
|
+
* Returns the modified keyword list and gate metadata.
|
|
212
|
+
*/
|
|
213
|
+
export function applyRalplanGate(keywords, text) {
|
|
214
|
+
if (keywords.length === 0) {
|
|
215
|
+
return { keywords, gateApplied: false, gatedKeywords: [] };
|
|
216
|
+
}
|
|
217
|
+
// Don't gate if cancel is present (cancel always wins)
|
|
218
|
+
if (keywords.includes('cancel')) {
|
|
219
|
+
return { keywords, gateApplied: false, gatedKeywords: [] };
|
|
220
|
+
}
|
|
221
|
+
// Don't gate if ralplan is already in the list
|
|
222
|
+
if (keywords.includes('ralplan')) {
|
|
223
|
+
return { keywords, gateApplied: false, gatedKeywords: [] };
|
|
224
|
+
}
|
|
225
|
+
// Check if any execution keywords are present
|
|
226
|
+
const executionKeywords = keywords.filter(k => EXECUTION_GATE_KEYWORDS.has(k));
|
|
227
|
+
if (executionKeywords.length === 0) {
|
|
228
|
+
return { keywords, gateApplied: false, gatedKeywords: [] };
|
|
229
|
+
}
|
|
230
|
+
// Check if prompt is underspecified
|
|
231
|
+
if (!isUnderspecifiedForExecution(text)) {
|
|
232
|
+
return { keywords, gateApplied: false, gatedKeywords: [] };
|
|
233
|
+
}
|
|
234
|
+
// Gate: replace execution keywords with ralplan
|
|
235
|
+
const filtered = keywords.filter(k => !EXECUTION_GATE_KEYWORDS.has(k));
|
|
236
|
+
if (!filtered.includes('ralplan')) {
|
|
237
|
+
filtered.push('ralplan');
|
|
238
|
+
}
|
|
239
|
+
return { keywords: filtered, gateApplied: true, gatedKeywords: executionKeywords };
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Get all keywords with task-size-based filtering applied.
|
|
243
|
+
* For small tasks, heavy orchestration modes (ralph/autopilot/team/ultrawork etc.)
|
|
244
|
+
* are suppressed to avoid over-orchestration.
|
|
245
|
+
*/
|
|
246
|
+
export function getAllKeywordsWithSizeCheck(text, options = {}) {
|
|
247
|
+
const { enabled = true, smallWordLimit = 50, largeWordLimit = 200, suppressHeavyModesForSmallTasks = true, } = options;
|
|
248
|
+
const keywords = detectKeywords(text).map(m => m.skill);
|
|
249
|
+
if (!enabled || !suppressHeavyModesForSmallTasks || keywords.length === 0) {
|
|
250
|
+
return { keywords, taskSizeResult: null, suppressedKeywords: [] };
|
|
251
|
+
}
|
|
252
|
+
const thresholds = { smallWordLimit, largeWordLimit };
|
|
253
|
+
const taskSizeResult = classifyTaskSize(text, thresholds);
|
|
254
|
+
// Only suppress heavy modes for small tasks
|
|
255
|
+
if (taskSizeResult.size !== 'small') {
|
|
256
|
+
return { keywords, taskSizeResult, suppressedKeywords: [] };
|
|
257
|
+
}
|
|
258
|
+
const suppressedKeywords = [];
|
|
259
|
+
const filteredKeywords = keywords.filter(keyword => {
|
|
260
|
+
if (isHeavyMode(keyword)) {
|
|
261
|
+
suppressedKeywords.push(keyword);
|
|
262
|
+
return false;
|
|
263
|
+
}
|
|
264
|
+
return true;
|
|
265
|
+
});
|
|
266
|
+
return {
|
|
267
|
+
keywords: filteredKeywords,
|
|
268
|
+
taskSizeResult,
|
|
269
|
+
suppressedKeywords,
|
|
270
|
+
};
|
|
271
|
+
}
|
|
60
272
|
//# sourceMappingURL=keyword-detector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyword-detector.js","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"keyword-detector.js","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface KeywordTriggerDefinition {
|
|
2
|
+
keyword: string;
|
|
3
|
+
skill: string;
|
|
4
|
+
priority: number;
|
|
5
|
+
guidance: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const KEYWORD_TRIGGER_DEFINITIONS: readonly KeywordTriggerDefinition[];
|
|
8
|
+
export declare function compareKeywordMatches(a: {
|
|
9
|
+
priority: number;
|
|
10
|
+
keyword: string;
|
|
11
|
+
}, b: {
|
|
12
|
+
priority: number;
|
|
13
|
+
keyword: string;
|
|
14
|
+
}): number;
|
|
15
|
+
//# sourceMappingURL=keyword-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyword-registry.d.ts","sourceRoot":"","sources":["../../src/hooks/keyword-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,2BAA2B,EAAE,SAAS,wBAAwB,EA0CjE,CAAC;AAEX,wBAAgB,qBAAqB,CAAC,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAIhI"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export const KEYWORD_TRIGGER_DEFINITIONS = [
|
|
2
|
+
{ keyword: 'ralph', skill: 'ralph', priority: 9, guidance: 'Activate ralph persistence loop with verification' },
|
|
3
|
+
{ keyword: "don't stop", skill: 'ralph', priority: 9, guidance: 'Activate ralph persistence loop with verification' },
|
|
4
|
+
{ keyword: 'must complete', skill: 'ralph', priority: 9, guidance: 'Activate ralph persistence loop with verification' },
|
|
5
|
+
{ keyword: 'keep going', skill: 'ralph', priority: 9, guidance: 'Activate ralph persistence loop with verification' },
|
|
6
|
+
{ keyword: 'autopilot', skill: 'autopilot', priority: 10, guidance: 'Activate autopilot skill for autonomous execution' },
|
|
7
|
+
{ keyword: 'build me', skill: 'autopilot', priority: 10, guidance: 'Activate autopilot skill for autonomous execution' },
|
|
8
|
+
{ keyword: 'I want a', skill: 'autopilot', priority: 10, guidance: 'Activate autopilot skill for autonomous execution' },
|
|
9
|
+
{ keyword: 'ultrawork', skill: 'ultrawork', priority: 10, guidance: 'Activate ultrawork parallel execution mode' },
|
|
10
|
+
{ keyword: 'ulw', skill: 'ultrawork', priority: 10, guidance: 'Activate ultrawork parallel execution mode' },
|
|
11
|
+
{ keyword: 'parallel', skill: 'ultrawork', priority: 10, guidance: 'Activate ultrawork parallel execution mode' },
|
|
12
|
+
{ keyword: 'plan this', skill: 'plan', priority: 8, guidance: 'Activate planning skill' },
|
|
13
|
+
{ keyword: 'plan the', skill: 'plan', priority: 8, guidance: 'Activate planning skill' },
|
|
14
|
+
{ keyword: "let's plan", skill: 'plan', priority: 8, guidance: 'Activate planning skill' },
|
|
15
|
+
{ keyword: 'ralplan', skill: 'ralplan', priority: 11, guidance: 'Activate consensus planning (planner + architect + critic)' },
|
|
16
|
+
{ keyword: 'consensus plan', skill: 'ralplan', priority: 11, guidance: 'Activate consensus planning (planner + architect + critic)' },
|
|
17
|
+
{ keyword: 'team', skill: 'team', priority: 8, guidance: 'Activate coordinated team mode' },
|
|
18
|
+
{ keyword: 'swarm', skill: 'team', priority: 8, guidance: 'Activate coordinated team mode (swarm is a compatibility alias for team)' },
|
|
19
|
+
{ keyword: 'coordinated team', skill: 'team', priority: 8, guidance: 'Activate coordinated team mode' },
|
|
20
|
+
{ keyword: 'coordinated swarm', skill: 'team', priority: 8, guidance: 'Activate coordinated team mode (swarm is a compatibility alias for team)' },
|
|
21
|
+
{ keyword: 'ecomode', skill: 'ecomode', priority: 10, guidance: 'Activate ecomode for token-efficient execution' },
|
|
22
|
+
{ keyword: 'eco', skill: 'ecomode', priority: 10, guidance: 'Activate ecomode for token-efficient execution' },
|
|
23
|
+
{ keyword: 'budget', skill: 'ecomode', priority: 10, guidance: 'Activate ecomode for token-efficient execution' },
|
|
24
|
+
{ keyword: 'cancel', skill: 'cancel', priority: 5, guidance: 'Cancel active execution modes' },
|
|
25
|
+
{ keyword: 'stop', skill: 'cancel', priority: 5, guidance: 'Cancel active execution modes' },
|
|
26
|
+
{ keyword: 'abort', skill: 'cancel', priority: 5, guidance: 'Cancel active execution modes' },
|
|
27
|
+
{ keyword: 'tdd', skill: 'tdd', priority: 6, guidance: 'Activate test-driven workflow' },
|
|
28
|
+
{ keyword: 'test first', skill: 'tdd', priority: 6, guidance: 'Activate test-driven workflow' },
|
|
29
|
+
{ keyword: 'fix build', skill: 'build-fix', priority: 6, guidance: 'Activate build-fix workflow' },
|
|
30
|
+
{ keyword: 'type errors', skill: 'build-fix', priority: 6, guidance: 'Activate build-fix workflow' },
|
|
31
|
+
{ keyword: 'review code', skill: 'code-review', priority: 6, guidance: 'Activate code-review workflow' },
|
|
32
|
+
{ keyword: 'security review', skill: 'security-review', priority: 6, guidance: 'Activate security-review workflow' },
|
|
33
|
+
];
|
|
34
|
+
export function compareKeywordMatches(a, b) {
|
|
35
|
+
if (b.priority !== a.priority)
|
|
36
|
+
return b.priority - a.priority;
|
|
37
|
+
if (b.keyword.length !== a.keyword.length)
|
|
38
|
+
return b.keyword.length - a.keyword.length;
|
|
39
|
+
return a.keyword.localeCompare(b.keyword);
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=keyword-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyword-registry.js","sourceRoot":"","sources":["../../src/hooks/keyword-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks/session.d.ts
CHANGED
|
@@ -9,6 +9,9 @@ export interface SessionState {
|
|
|
9
9
|
started_at: string;
|
|
10
10
|
cwd: string;
|
|
11
11
|
pid: number;
|
|
12
|
+
platform?: NodeJS.Platform;
|
|
13
|
+
pid_start_ticks?: number;
|
|
14
|
+
pid_cmdline?: string;
|
|
12
15
|
}
|
|
13
16
|
/**
|
|
14
17
|
* Reset session-scoped HUD/metrics files at launch so stale values do not leak
|
|
@@ -19,10 +22,22 @@ export declare function resetSessionMetrics(cwd: string): Promise<void>;
|
|
|
19
22
|
* Read current session state. Returns null if no session file exists.
|
|
20
23
|
*/
|
|
21
24
|
export declare function readSessionState(cwd: string): Promise<SessionState | null>;
|
|
25
|
+
interface LinuxProcessIdentity {
|
|
26
|
+
startTicks: number;
|
|
27
|
+
cmdline: string | null;
|
|
28
|
+
}
|
|
29
|
+
interface SessionStaleCheckOptions {
|
|
30
|
+
platform?: NodeJS.Platform;
|
|
31
|
+
isPidAlive?: (pid: number) => boolean;
|
|
32
|
+
readLinuxIdentity?: (pid: number) => LinuxProcessIdentity | null;
|
|
33
|
+
}
|
|
22
34
|
/**
|
|
23
|
-
* Check if a session is stale
|
|
35
|
+
* Check if a session is stale.
|
|
36
|
+
* - If the owning PID is dead, it is stale.
|
|
37
|
+
* - On Linux, require process identity validation (start ticks, optional cmdline).
|
|
38
|
+
* If identity cannot be validated, treat the session as stale.
|
|
24
39
|
*/
|
|
25
|
-
export declare function isSessionStale(state: SessionState): boolean;
|
|
40
|
+
export declare function isSessionStale(state: SessionState, options?: SessionStaleCheckOptions): boolean;
|
|
26
41
|
/**
|
|
27
42
|
* Write session start state.
|
|
28
43
|
*/
|
|
@@ -35,4 +50,5 @@ export declare function writeSessionEnd(cwd: string, sessionId: string): Promise
|
|
|
35
50
|
* Append a structured JSONL entry to the daily log file.
|
|
36
51
|
*/
|
|
37
52
|
export declare function appendToLog(cwd: string, entry: Record<string, unknown>): Promise<void>;
|
|
53
|
+
export {};
|
|
38
54
|
//# sourceMappingURL=session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/hooks/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/hooks/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAeD;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBpE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAUhF;AAED,UAAU,oBAAoB;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,UAAU,wBAAwB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,oBAAoB,GAAG,IAAI,CAAC;CAClE;AAqDD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,YAAY,EACnB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAuBT;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBrF;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BnF;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAS5F"}
|