oh-my-codex 0.13.2 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Cargo.lock +5 -5
- package/Cargo.toml +1 -1
- package/dist/autoresearch/__tests__/skill-validation.test.d.ts +2 -0
- package/dist/autoresearch/__tests__/skill-validation.test.d.ts.map +1 -0
- package/dist/autoresearch/__tests__/skill-validation.test.js +91 -0
- package/dist/autoresearch/__tests__/skill-validation.test.js.map +1 -0
- package/dist/autoresearch/skill-validation.d.ts +13 -0
- package/dist/autoresearch/skill-validation.d.ts.map +1 -0
- package/dist/autoresearch/skill-validation.js +165 -0
- package/dist/autoresearch/skill-validation.js.map +1 -0
- package/dist/catalog/__tests__/schema.test.js +6 -0
- package/dist/catalog/__tests__/schema.test.js.map +1 -1
- package/dist/cli/__tests__/autoresearch-guided.test.js +236 -273
- package/dist/cli/__tests__/autoresearch-guided.test.js.map +1 -1
- package/dist/cli/__tests__/autoresearch.test.js +64 -653
- package/dist/cli/__tests__/autoresearch.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +7 -0
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/nested-help-routing.test.js +2 -1
- package/dist/cli/__tests__/nested-help-routing.test.js.map +1 -1
- package/dist/cli/__tests__/question.test.d.ts +2 -0
- package/dist/cli/__tests__/question.test.d.ts.map +1 -0
- package/dist/cli/__tests__/question.test.js +113 -0
- package/dist/cli/__tests__/question.test.js.map +1 -0
- package/dist/cli/__tests__/session-search-help.test.js +1 -1
- package/dist/cli/__tests__/session-search-help.test.js.map +1 -1
- package/dist/cli/__tests__/setup-skills-overwrite.test.js +2 -0
- package/dist/cli/__tests__/setup-skills-overwrite.test.js.map +1 -1
- package/dist/cli/autoresearch-guided.d.ts +24 -7
- package/dist/cli/autoresearch-guided.d.ts.map +1 -1
- package/dist/cli/autoresearch-guided.js +189 -130
- package/dist/cli/autoresearch-guided.js.map +1 -1
- package/dist/cli/autoresearch.d.ts +3 -2
- package/dist/cli/autoresearch.d.ts.map +1 -1
- package/dist/cli/autoresearch.js +29 -305
- package/dist/cli/autoresearch.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +43 -0
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +8 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/question.d.ts +3 -0
- package/dist/cli/question.d.ts.map +1 -0
- package/dist/cli/question.js +182 -0
- package/dist/cli/question.js.map +1 -0
- package/dist/hooks/__tests__/analyze-routing-contract.test.js +22 -13
- package/dist/hooks/__tests__/analyze-routing-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/anti-slop-workflow.test.js +3 -3
- package/dist/hooks/__tests__/anti-slop-workflow.test.js.map +1 -1
- package/dist/hooks/__tests__/debugger-log-recency-contract.test.js +2 -2
- package/dist/hooks/__tests__/debugger-log-recency-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/deep-interview-contract.test.js +22 -5
- package/dist/hooks/__tests__/deep-interview-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/explore-sparkshell-guidance-contract.test.js +2 -2
- package/dist/hooks/__tests__/explore-sparkshell-guidance-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +308 -17
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +570 -2
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +717 -16
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js +25 -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 +894 -1
- package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js +34 -0
- package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js +132 -0
- package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-contract.test.js +22 -4
- package/dist/hooks/__tests__/prompt-guidance-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-fragments.test.js +4 -2
- package/dist/hooks/__tests__/prompt-guidance-fragments.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-test-helpers.d.ts +1 -0
- package/dist/hooks/__tests__/prompt-guidance-test-helpers.d.ts.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-test-helpers.js +4 -1
- package/dist/hooks/__tests__/prompt-guidance-test-helpers.js.map +1 -1
- package/dist/hooks/__tests__/prompt-guidance-wave-two.test.js +28 -0
- package/dist/hooks/__tests__/prompt-guidance-wave-two.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-orchestration-boundary.test.js +5 -4
- package/dist/hooks/__tests__/prompt-orchestration-boundary.test.js.map +1 -1
- package/dist/hooks/__tests__/prompt-team-routing.test.js +2 -2
- package/dist/hooks/__tests__/prompt-team-routing.test.js.map +1 -1
- package/dist/hooks/__tests__/triage-config.test.d.ts +2 -0
- package/dist/hooks/__tests__/triage-config.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/triage-config.test.js +211 -0
- package/dist/hooks/__tests__/triage-config.test.js.map +1 -0
- package/dist/hooks/__tests__/triage-heuristic.test.d.ts +2 -0
- package/dist/hooks/__tests__/triage-heuristic.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/triage-heuristic.test.js +230 -0
- package/dist/hooks/__tests__/triage-heuristic.test.js.map +1 -0
- package/dist/hooks/__tests__/triage-state.test.d.ts +2 -0
- package/dist/hooks/__tests__/triage-state.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/triage-state.test.js +426 -0
- package/dist/hooks/__tests__/triage-state.test.js.map +1 -0
- package/dist/hooks/keyword-detector.d.ts +26 -7
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +97 -26
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hooks/keyword-registry.d.ts.map +1 -1
- package/dist/hooks/keyword-registry.js +16 -9
- package/dist/hooks/keyword-registry.js.map +1 -1
- package/dist/hooks/prompt-guidance-contract.d.ts.map +1 -1
- package/dist/hooks/prompt-guidance-contract.js +28 -1
- package/dist/hooks/prompt-guidance-contract.js.map +1 -1
- package/dist/hooks/triage-config.d.ts +33 -0
- package/dist/hooks/triage-config.d.ts.map +1 -0
- package/dist/hooks/triage-config.js +87 -0
- package/dist/hooks/triage-config.js.map +1 -0
- package/dist/hooks/triage-heuristic.d.ts +20 -0
- package/dist/hooks/triage-heuristic.d.ts.map +1 -0
- package/dist/hooks/triage-heuristic.js +210 -0
- package/dist/hooks/triage-heuristic.js.map +1 -0
- package/dist/hooks/triage-state.d.ts +63 -0
- package/dist/hooks/triage-state.d.ts.map +1 -0
- package/dist/hooks/triage-state.js +138 -0
- package/dist/hooks/triage-state.js.map +1 -0
- package/dist/hud/__tests__/reconcile.test.js +20 -0
- package/dist/hud/__tests__/reconcile.test.js.map +1 -1
- package/dist/hud/reconcile.d.ts +1 -0
- package/dist/hud/reconcile.d.ts.map +1 -1
- package/dist/hud/reconcile.js +2 -1
- package/dist/hud/reconcile.js.map +1 -1
- package/dist/mcp/__tests__/state-server.test.js +1 -0
- package/dist/mcp/__tests__/state-server.test.js.map +1 -1
- package/dist/mcp/state-server.d.ts +8 -0
- package/dist/mcp/state-server.d.ts.map +1 -1
- package/dist/mcp/state-server.js +4 -0
- package/dist/mcp/state-server.js.map +1 -1
- package/dist/modes/__tests__/base-ralph-contract.test.js +15 -0
- package/dist/modes/__tests__/base-ralph-contract.test.js.map +1 -1
- package/dist/modes/base.d.ts +1 -0
- package/dist/modes/base.d.ts.map +1 -1
- package/dist/modes/base.js +22 -6
- package/dist/modes/base.js.map +1 -1
- package/dist/notifications/__tests__/index.test.js +78 -0
- package/dist/notifications/__tests__/index.test.js.map +1 -1
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +39 -22
- package/dist/notifications/index.js.map +1 -1
- package/dist/openclaw/index.d.ts +5 -3
- package/dist/openclaw/index.d.ts.map +1 -1
- package/dist/openclaw/index.js +5 -3
- package/dist/openclaw/index.js.map +1 -1
- package/dist/question/__tests__/client.test.d.ts +2 -0
- package/dist/question/__tests__/client.test.d.ts.map +1 -0
- package/dist/question/__tests__/client.test.js +70 -0
- package/dist/question/__tests__/client.test.js.map +1 -0
- package/dist/question/__tests__/deep-interview.test.d.ts +2 -0
- package/dist/question/__tests__/deep-interview.test.d.ts.map +1 -0
- package/dist/question/__tests__/deep-interview.test.js +108 -0
- package/dist/question/__tests__/deep-interview.test.js.map +1 -0
- package/dist/question/__tests__/policy.test.d.ts +2 -0
- package/dist/question/__tests__/policy.test.d.ts.map +1 -0
- package/dist/question/__tests__/policy.test.js +107 -0
- package/dist/question/__tests__/policy.test.js.map +1 -0
- package/dist/question/__tests__/renderer.test.d.ts +2 -0
- package/dist/question/__tests__/renderer.test.d.ts.map +1 -0
- package/dist/question/__tests__/renderer.test.js +88 -0
- package/dist/question/__tests__/renderer.test.js.map +1 -0
- package/dist/question/__tests__/state.test.d.ts +2 -0
- package/dist/question/__tests__/state.test.d.ts.map +1 -0
- package/dist/question/__tests__/state.test.js +55 -0
- package/dist/question/__tests__/state.test.js.map +1 -0
- package/dist/question/__tests__/types.test.d.ts +2 -0
- package/dist/question/__tests__/types.test.d.ts.map +1 -0
- package/dist/question/__tests__/types.test.js +44 -0
- package/dist/question/__tests__/types.test.js.map +1 -0
- package/dist/question/__tests__/ui.test.d.ts +2 -0
- package/dist/question/__tests__/ui.test.d.ts.map +1 -0
- package/dist/question/__tests__/ui.test.js +169 -0
- package/dist/question/__tests__/ui.test.js.map +1 -0
- package/dist/question/client.d.ts +54 -0
- package/dist/question/client.d.ts.map +1 -0
- package/dist/question/client.js +77 -0
- package/dist/question/client.js.map +1 -0
- package/dist/question/deep-interview.d.ts +27 -0
- package/dist/question/deep-interview.d.ts.map +1 -0
- package/dist/question/deep-interview.js +101 -0
- package/dist/question/deep-interview.js.map +1 -0
- package/dist/question/policy.d.ts +18 -0
- package/dist/question/policy.d.ts.map +1 -0
- package/dist/question/policy.js +77 -0
- package/dist/question/policy.js.map +1 -0
- package/dist/question/renderer.d.ts +18 -0
- package/dist/question/renderer.d.ts.map +1 -0
- package/dist/question/renderer.js +128 -0
- package/dist/question/renderer.js.map +1 -0
- package/dist/question/state.d.ts +19 -0
- package/dist/question/state.d.ts.map +1 -0
- package/dist/question/state.js +108 -0
- package/dist/question/state.js.map +1 -0
- package/dist/question/types.d.ts +66 -0
- package/dist/question/types.d.ts.map +1 -0
- package/dist/question/types.js +82 -0
- package/dist/question/types.js.map +1 -0
- package/dist/question/ui.d.ts +38 -0
- package/dist/question/ui.d.ts.map +1 -0
- package/dist/question/ui.js +321 -0
- package/dist/question/ui.js.map +1 -0
- package/dist/ralph/contract.d.ts +1 -1
- package/dist/ralph/contract.d.ts.map +1 -1
- package/dist/ralph/contract.js +4 -1
- package/dist/ralph/contract.js.map +1 -1
- package/dist/ralplan/runtime.js +1 -1
- package/dist/ralplan/runtime.js.map +1 -1
- package/dist/runtime/__tests__/run-loop.test.d.ts +2 -0
- package/dist/runtime/__tests__/run-loop.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/run-loop.test.js +35 -0
- package/dist/runtime/__tests__/run-loop.test.js.map +1 -0
- package/dist/runtime/__tests__/run-outcome.test.d.ts +2 -0
- package/dist/runtime/__tests__/run-outcome.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/run-outcome.test.js +64 -0
- package/dist/runtime/__tests__/run-outcome.test.js.map +1 -0
- package/dist/runtime/run-loop.d.ts +41 -0
- package/dist/runtime/run-loop.d.ts.map +1 -0
- package/dist/runtime/run-loop.js +46 -0
- package/dist/runtime/run-loop.js.map +1 -0
- package/dist/runtime/run-outcome.d.ts +28 -0
- package/dist/runtime/run-outcome.d.ts.map +1 -0
- package/dist/runtime/run-outcome.js +136 -0
- package/dist/runtime/run-outcome.js.map +1 -0
- package/dist/runtime/run-state.d.ts +36 -0
- package/dist/runtime/run-state.d.ts.map +1 -0
- package/dist/runtime/run-state.js +110 -0
- package/dist/runtime/run-state.js.map +1 -0
- package/dist/scripts/__tests__/codex-native-hook.test.js +1128 -85
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/codex-native-hook.d.ts +2 -0
- package/dist/scripts/codex-native-hook.d.ts.map +1 -1
- package/dist/scripts/codex-native-hook.js +199 -11
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/notify-fallback-watcher.js +81 -2
- package/dist/scripts/notify-fallback-watcher.js.map +1 -1
- package/dist/scripts/notify-hook/auto-nudge.d.ts +27 -0
- package/dist/scripts/notify-hook/auto-nudge.d.ts.map +1 -1
- package/dist/scripts/notify-hook/auto-nudge.js +83 -20
- package/dist/scripts/notify-hook/auto-nudge.js.map +1 -1
- package/dist/scripts/notify-hook/managed-tmux.d.ts.map +1 -1
- package/dist/scripts/notify-hook/managed-tmux.js +64 -38
- package/dist/scripts/notify-hook/managed-tmux.js.map +1 -1
- package/dist/scripts/notify-hook/ralph-session-resume.js +1 -1
- package/dist/scripts/notify-hook/ralph-session-resume.js.map +1 -1
- package/dist/scripts/notify-hook.js +15 -5
- package/dist/scripts/notify-hook.js.map +1 -1
- package/dist/scripts/sync-prompt-guidance-fragments.js +5 -0
- package/dist/scripts/sync-prompt-guidance-fragments.js.map +1 -1
- package/dist/state/__tests__/operations-ralph-phase.test.js +21 -0
- package/dist/state/__tests__/operations-ralph-phase.test.js.map +1 -1
- package/dist/state/__tests__/workflow-transition.test.js +11 -0
- package/dist/state/__tests__/workflow-transition.test.js.map +1 -1
- package/dist/state/operations.d.ts.map +1 -1
- package/dist/state/operations.js +15 -0
- package/dist/state/operations.js.map +1 -1
- package/dist/state/workflow-transition-reconcile.d.ts.map +1 -1
- package/dist/state/workflow-transition-reconcile.js +14 -1
- package/dist/state/workflow-transition-reconcile.js.map +1 -1
- package/dist/state/workflow-transition.d.ts.map +1 -1
- package/dist/state/workflow-transition.js +3 -1
- package/dist/state/workflow-transition.js.map +1 -1
- package/dist/team/__tests__/followup-planner.test.js +15 -0
- package/dist/team/__tests__/followup-planner.test.js.map +1 -1
- package/dist/team/__tests__/role-router.test.js +41 -0
- package/dist/team/__tests__/role-router.test.js.map +1 -1
- package/dist/team/followup-planner.d.ts.map +1 -1
- package/dist/team/followup-planner.js +31 -9
- package/dist/team/followup-planner.js.map +1 -1
- package/dist/team/role-router.d.ts.map +1 -1
- package/dist/team/role-router.js +73 -0
- package/dist/team/role-router.js.map +1 -1
- package/package.json +3 -2
- package/prompts/dependency-expert.md +3 -0
- package/prompts/executor.md +5 -0
- package/prompts/explore.md +2 -0
- package/prompts/planner.md +5 -0
- package/prompts/product-analyst.md +8 -8
- package/prompts/researcher.md +78 -30
- package/prompts/verifier.md +4 -0
- package/skills/autoresearch/SKILL.md +68 -0
- package/skills/deep-interview/SKILL.md +10 -9
- package/skills/help/SKILL.md +3 -1
- package/skills/ralplan/SKILL.md +1 -0
- package/skills/team/SKILL.md +1 -0
- package/skills/ultrawork/SKILL.md +1 -0
- package/src/scripts/__tests__/codex-native-hook.test.ts +1495 -188
- package/src/scripts/codex-native-hook.ts +235 -19
- package/src/scripts/notify-fallback-watcher.ts +92 -2
- package/src/scripts/notify-hook/auto-nudge.ts +89 -20
- package/src/scripts/notify-hook/managed-tmux.ts +70 -31
- package/src/scripts/notify-hook/ralph-session-resume.ts +1 -1
- package/src/scripts/notify-hook.ts +23 -5
- package/src/scripts/sync-prompt-guidance-fragments.ts +4 -0
- package/templates/AGENTS.md +48 -37
- package/templates/catalog-manifest.json +7 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { type SkillActiveState } from "../hooks/keyword-detector.js";
|
|
2
|
+
import { reconcileHudForPromptSubmit } from "../hud/reconcile.js";
|
|
2
3
|
type CodexHookEventName = "SessionStart" | "PreToolUse" | "PostToolUse" | "UserPromptSubmit" | "Stop";
|
|
3
4
|
type CodexHookPayload = Record<string, unknown>;
|
|
4
5
|
interface NativeHookDispatchOptions {
|
|
5
6
|
cwd?: string;
|
|
6
7
|
sessionOwnerPid?: number;
|
|
8
|
+
reconcileHudForPromptSubmitFn?: typeof reconcileHudForPromptSubmit;
|
|
7
9
|
}
|
|
8
10
|
export interface NativeHookDispatchResult {
|
|
9
11
|
hookEventName: CodexHookEventName | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-native-hook.d.ts","sourceRoot":"","sources":["../../src/scripts/codex-native-hook.ts"],"names":[],"mappings":"AAsBA,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"codex-native-hook.d.ts","sourceRoot":"","sources":["../../src/scripts/codex-native-hook.ts"],"names":[],"mappings":"AAsBA,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,8BAA8B,CAAC;AAiBtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAelE,KAAK,kBAAkB,GACnB,cAAc,GACd,YAAY,GACZ,aAAa,GACb,kBAAkB,GAClB,MAAM,CAAC;AAEX,KAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEhD,UAAU,yBAAyB;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6BAA6B,CAAC,EAAE,OAAO,2BAA2B,CAAC;CACpE;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACzC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC5C;AA2FD,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,kBAAkB,GAAG,IAAI,GACvC,MAAM,GAAG,IAAI,CAef;AAqKD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IACP,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAC/C,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC,GACL,MAAM,GAAG,IAAI,CAuBf;AAwqCD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,gBAAgB,EACzB,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,wBAAwB,CAAC,CAiKnC;AA8BD,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAmB3D"}
|
|
@@ -17,7 +17,12 @@ import { buildNativeHookEvent, } from "../hooks/extensibility/events.js";
|
|
|
17
17
|
import { dispatchHookEvent } from "../hooks/extensibility/dispatcher.js";
|
|
18
18
|
import { reconcileHudForPromptSubmit } from "../hud/reconcile.js";
|
|
19
19
|
import { onSessionStart as buildWikiSessionStartContext } from "../wiki/lifecycle.js";
|
|
20
|
-
|
|
20
|
+
import { readAutoresearchCompletionStatus, readAutoresearchModeState } from "../autoresearch/skill-validation.js";
|
|
21
|
+
import { shouldContinueRun } from "../runtime/run-loop.js";
|
|
22
|
+
import { triagePrompt } from "../hooks/triage-heuristic.js";
|
|
23
|
+
import { readTriageConfig } from "../hooks/triage-config.js";
|
|
24
|
+
import { readTriageState, writeTriageState, shouldSuppressFollowup, promptSignature, } from "../hooks/triage-state.js";
|
|
25
|
+
import { isPendingDeepInterviewQuestionEnforcement } from "../question/deep-interview.js";
|
|
21
26
|
const TERMINAL_MODE_PHASES = new Set(["complete", "failed", "cancelled"]);
|
|
22
27
|
const SKILL_STOP_BLOCKERS = new Set(["ralplan"]);
|
|
23
28
|
const TEAM_TERMINAL_TASK_STATUSES = new Set(["completed", "failed"]);
|
|
@@ -29,6 +34,18 @@ const STABLE_FINAL_RECOMMENDATION_PATTERNS = [
|
|
|
29
34
|
/^\s*decision\s*:\s*(?:yes|no|ship|hold|release|do not release|proceed|do not proceed)\b[^\n\r]*/im,
|
|
30
35
|
];
|
|
31
36
|
const RELEASE_READINESS_FINALIZE_SYSTEM_MESSAGE = "OMX release-readiness detected a stable final recommendation with no active worker tasks; emit one concise final decision summary and finalize.";
|
|
37
|
+
const EXECUTION_HANDOFF_PATTERNS = [
|
|
38
|
+
/^(?:好|好的|行|可以|那就|那现在)?[,,\s]*(?:开始|继续|直接)\s*(?:执行|优化|实现|修改|修复)(?=$|\s|[,,。.!!??])/u,
|
|
39
|
+
/(?:按照|按|基于)(?:这个|上述|当前)?\s*(?:plan|计划|方案).{0,16}(?:开始|继续|直接)?\s*(?:执行|优化|实现|修改|修复)/u,
|
|
40
|
+
/(?:不用|别|不要).{0,6}讨论/u,
|
|
41
|
+
/\b(?:start|begin|go ahead(?: and)?|proceed(?: now)?)\s+(?:to\s+)?(?:implement|execute|apply|fix)\b/i,
|
|
42
|
+
/\b(?:according to|based on)\s+(?:the|this|that)\s+plan\b.{0,20}\b(?:start|begin|proceed(?: now)?|go ahead(?: and)?)\b/i,
|
|
43
|
+
];
|
|
44
|
+
const SHORT_FOLLOWUP_PRIORITY_PATTERNS = [
|
|
45
|
+
/^(?:继续|接着|然后|那就|那现在|还有(?:一个)?问题|这些优化都做了么|这些都做了么|现在呢|本轮|当前轮|这一轮)/u,
|
|
46
|
+
/(?:按照|按|基于)(?:这个|上述|当前)?(?:plan|计划|方案)/u,
|
|
47
|
+
/\b(?:follow up|latest request|this turn|current turn|newest request)\b/i,
|
|
48
|
+
];
|
|
32
49
|
function safeString(value) {
|
|
33
50
|
return typeof value === "string" ? value : "";
|
|
34
51
|
}
|
|
@@ -45,6 +62,34 @@ function safePositiveInteger(value) {
|
|
|
45
62
|
}
|
|
46
63
|
return null;
|
|
47
64
|
}
|
|
65
|
+
function normalizePromptSignalText(text) {
|
|
66
|
+
return text.trim().replace(/\s+/g, " ");
|
|
67
|
+
}
|
|
68
|
+
function looksLikeExecutionHandoffPrompt(prompt) {
|
|
69
|
+
const normalized = normalizePromptSignalText(prompt);
|
|
70
|
+
if (!normalized)
|
|
71
|
+
return false;
|
|
72
|
+
return EXECUTION_HANDOFF_PATTERNS.some((pattern) => pattern.test(normalized));
|
|
73
|
+
}
|
|
74
|
+
function looksLikeShortFollowupPrompt(prompt) {
|
|
75
|
+
const normalized = normalizePromptSignalText(prompt);
|
|
76
|
+
if (!normalized)
|
|
77
|
+
return false;
|
|
78
|
+
if (looksLikeExecutionHandoffPrompt(normalized))
|
|
79
|
+
return true;
|
|
80
|
+
if (normalized.length > 240)
|
|
81
|
+
return false;
|
|
82
|
+
return SHORT_FOLLOWUP_PRIORITY_PATTERNS.some((pattern) => pattern.test(normalized));
|
|
83
|
+
}
|
|
84
|
+
function buildPromptPriorityMessage(prompt) {
|
|
85
|
+
if (looksLikeExecutionHandoffPrompt(prompt)) {
|
|
86
|
+
return "Newest user input is an execution handoff for the current task. Treat it as authorization to act now against the latest approved plan/request. Do not restate the prior plan unless the user explicitly asks for a recap or status update.";
|
|
87
|
+
}
|
|
88
|
+
if (looksLikeShortFollowupPrompt(prompt)) {
|
|
89
|
+
return "Newest user input is a same-thread follow-up. Answer that latest follow-up directly and prefer it over older unresolved prompts when choosing what to do next.";
|
|
90
|
+
}
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
48
93
|
function readHookEventName(payload) {
|
|
49
94
|
const raw = safeString(payload.hook_event_name
|
|
50
95
|
?? payload.hookEventName
|
|
@@ -126,6 +171,17 @@ function formatPhase(value, fallback = "active") {
|
|
|
126
171
|
const phase = safeString(value).trim();
|
|
127
172
|
return phase || fallback;
|
|
128
173
|
}
|
|
174
|
+
async function readActiveAutoresearchState(cwd, sessionId) {
|
|
175
|
+
const normalizedSessionId = sessionId?.trim() || undefined;
|
|
176
|
+
if (!normalizedSessionId)
|
|
177
|
+
return null;
|
|
178
|
+
const state = await readAutoresearchModeState(cwd, normalizedSessionId);
|
|
179
|
+
if (state?.active !== true)
|
|
180
|
+
return null;
|
|
181
|
+
if (!isNonTerminalPhase(state.current_phase ?? state.currentPhase ?? 'executing'))
|
|
182
|
+
return null;
|
|
183
|
+
return state;
|
|
184
|
+
}
|
|
129
185
|
async function readActiveRalphState(stateDir, preferredSessionId) {
|
|
130
186
|
const sessionInfo = await readUsableSessionState(resolve(stateDir, "..", ".."));
|
|
131
187
|
const currentOmxSessionId = safeString(sessionInfo?.session_id).trim();
|
|
@@ -135,15 +191,14 @@ async function readActiveRalphState(stateDir, preferredSessionId) {
|
|
|
135
191
|
].filter(Boolean))];
|
|
136
192
|
for (const sessionId of sessionCandidates) {
|
|
137
193
|
const sessionScoped = await readJsonIfExists(join(stateDir, "sessions", sessionId, "ralph-state.json"));
|
|
138
|
-
if (sessionScoped?.active === true
|
|
139
|
-
&& !TERMINAL_RALPH_PHASES.has(safeString(sessionScoped.current_phase).trim().toLowerCase())) {
|
|
194
|
+
if (sessionScoped?.active === true && shouldContinueRun(sessionScoped)) {
|
|
140
195
|
return sessionScoped;
|
|
141
196
|
}
|
|
142
197
|
}
|
|
143
198
|
if (sessionCandidates.length > 0)
|
|
144
199
|
return null;
|
|
145
200
|
const direct = await readJsonIfExists(join(stateDir, "ralph-state.json"));
|
|
146
|
-
if (direct?.active === true &&
|
|
201
|
+
if (direct?.active === true && shouldContinueRun(direct)) {
|
|
147
202
|
return direct;
|
|
148
203
|
}
|
|
149
204
|
const sessionsRoot = join(stateDir, "sessions");
|
|
@@ -154,8 +209,7 @@ async function readActiveRalphState(stateDir, preferredSessionId) {
|
|
|
154
209
|
if (!entry.isDirectory())
|
|
155
210
|
continue;
|
|
156
211
|
const candidate = await readJsonIfExists(join(sessionsRoot, entry.name, "ralph-state.json"));
|
|
157
|
-
if (candidate?.active === true
|
|
158
|
-
&& !TERMINAL_RALPH_PHASES.has(safeString(candidate.current_phase).trim().toLowerCase())) {
|
|
212
|
+
if (candidate?.active === true && shouldContinueRun(candidate)) {
|
|
159
213
|
return candidate;
|
|
160
214
|
}
|
|
161
215
|
}
|
|
@@ -369,10 +423,11 @@ async function buildSessionStartContext(cwd, sessionId) {
|
|
|
369
423
|
function buildAdditionalContextMessage(prompt, skillState) {
|
|
370
424
|
if (!prompt)
|
|
371
425
|
return null;
|
|
426
|
+
const promptPriorityMessage = buildPromptPriorityMessage(prompt);
|
|
372
427
|
const matches = detectKeywords(prompt);
|
|
373
428
|
const match = detectPrimaryKeyword(prompt);
|
|
374
429
|
if (!match)
|
|
375
|
-
return
|
|
430
|
+
return promptPriorityMessage;
|
|
376
431
|
const detectedKeywordMessage = matches.length > 1
|
|
377
432
|
? `OMX native UserPromptSubmit detected workflow keywords ${matches.map((entry) => `"${entry.keyword}" -> ${entry.skill}`).join(", ")}.`
|
|
378
433
|
: `OMX native UserPromptSubmit detected workflow keyword "${match.keyword}" -> ${match.skill}.`;
|
|
@@ -386,6 +441,9 @@ function buildAdditionalContextMessage(prompt, skillState) {
|
|
|
386
441
|
const ralphPromptActivationNote = skillState?.initialized_mode === "ralph"
|
|
387
442
|
? "Prompt-side `$ralph` activation seeds Ralph workflow state only; it does not invoke `omx ralph`. Use `omx ralph --prd ...` only when you explicitly want the PRD-gated CLI startup path."
|
|
388
443
|
: null;
|
|
444
|
+
const deepInterviewPromptActivationNote = skillState?.initialized_mode === "deep-interview"
|
|
445
|
+
? "Deep-interview must ask each interview round via `omx question`; do not fall back to `request_user_input` or plain-text questioning. Stop remains blocked while a deep-interview question obligation is pending."
|
|
446
|
+
: null;
|
|
389
447
|
const combinedTransitionMessage = (() => {
|
|
390
448
|
if (!skillState?.transition_message)
|
|
391
449
|
return null;
|
|
@@ -400,6 +458,7 @@ function buildAdditionalContextMessage(prompt, skillState) {
|
|
|
400
458
|
return [
|
|
401
459
|
`OMX native UserPromptSubmit denied workflow keyword "${match.keyword}" -> ${match.skill}.`,
|
|
402
460
|
skillState.transition_error,
|
|
461
|
+
promptPriorityMessage,
|
|
403
462
|
'Follow AGENTS.md routing and preserve workflow transition and planning-safety rules.',
|
|
404
463
|
].join(' ');
|
|
405
464
|
}
|
|
@@ -411,6 +470,7 @@ function buildAdditionalContextMessage(prompt, skillState) {
|
|
|
411
470
|
deferredSkills.length > 0
|
|
412
471
|
? `planning preserved over simultaneous execution follow-up; deferred skills: ${deferredSkills.join(", ")}.`
|
|
413
472
|
: null,
|
|
473
|
+
promptPriorityMessage,
|
|
414
474
|
skillState.initialized_mode && skillState.initialized_state_path
|
|
415
475
|
? `skill: ${skillState.initialized_mode} activated and initial state initialized at ${skillState.initialized_state_path}; write subsequent updates via omx_state MCP.`
|
|
416
476
|
: null,
|
|
@@ -431,7 +491,9 @@ function buildAdditionalContextMessage(prompt, skillState) {
|
|
|
431
491
|
deferredSkills.length > 0
|
|
432
492
|
? `planning preserved over simultaneous execution follow-up; deferred skills: ${deferredSkills.join(", ")}.`
|
|
433
493
|
: null,
|
|
494
|
+
promptPriorityMessage,
|
|
434
495
|
initializedStateMessage,
|
|
496
|
+
deepInterviewPromptActivationNote,
|
|
435
497
|
"Use the durable OMX team runtime via `omx team ...` for coordinated execution; do not replace it with in-process fanout.",
|
|
436
498
|
"If you need runtime syntax, run `omx team --help` yourself.",
|
|
437
499
|
"Follow AGENTS.md routing and preserve workflow transition and planning-safety rules.",
|
|
@@ -444,12 +506,14 @@ function buildAdditionalContextMessage(prompt, skillState) {
|
|
|
444
506
|
deferredSkills.length > 0
|
|
445
507
|
? `planning preserved over simultaneous execution follow-up; deferred skills: ${deferredSkills.join(", ")}.`
|
|
446
508
|
: null,
|
|
509
|
+
promptPriorityMessage,
|
|
447
510
|
`skill: ${skillState.initialized_mode} activated and initial state initialized at ${skillState.initialized_state_path}; write subsequent updates via omx_state MCP.`,
|
|
511
|
+
deepInterviewPromptActivationNote,
|
|
448
512
|
ralphPromptActivationNote,
|
|
449
513
|
"Follow AGENTS.md routing and preserve workflow transition and planning-safety rules.",
|
|
450
514
|
].join(" ");
|
|
451
515
|
}
|
|
452
|
-
return
|
|
516
|
+
return [detectedKeywordMessage, promptPriorityMessage, "Follow AGENTS.md routing and preserve workflow transition and planning-safety rules."].filter(Boolean).join(" ");
|
|
453
517
|
}
|
|
454
518
|
function parseTeamWorkerEnv(rawValue) {
|
|
455
519
|
const match = /^([a-z0-9][a-z0-9-]{0,29})\/(worker-\d+)$/.exec(rawValue.trim());
|
|
@@ -549,7 +613,7 @@ async function buildModeBasedStopOutput(mode, cwd, sessionId) {
|
|
|
549
613
|
const state = sessionId
|
|
550
614
|
? await readModeStateForSession(mode, sessionId, cwd)
|
|
551
615
|
: await readModeState(mode, cwd);
|
|
552
|
-
if (state
|
|
616
|
+
if (!state || !shouldContinueRun(state))
|
|
553
617
|
return null;
|
|
554
618
|
const phase = formatPhase(state.current_phase);
|
|
555
619
|
return {
|
|
@@ -737,6 +801,39 @@ async function readStopAutoNudgePhase(cwd, sessionId, threadId) {
|
|
|
737
801
|
const modePhase = safeString(modeState.current_phase).trim().toLowerCase();
|
|
738
802
|
return modePhase === "intent-first" ? "planning" : "";
|
|
739
803
|
}
|
|
804
|
+
async function buildDeepInterviewQuestionStopOutput(cwd, sessionId, threadId) {
|
|
805
|
+
const modeState = await readStopSessionPinnedState("deep-interview-state.json", cwd, sessionId);
|
|
806
|
+
if (!modeState || modeState.active !== true)
|
|
807
|
+
return null;
|
|
808
|
+
const phase = formatPhase(modeState.current_phase, "planning");
|
|
809
|
+
if (TERMINAL_MODE_PHASES.has(phase.toLowerCase()) || phase === "completing") {
|
|
810
|
+
return null;
|
|
811
|
+
}
|
|
812
|
+
const canonicalState = await readVisibleSkillActiveState(cwd, sessionId);
|
|
813
|
+
if (canonicalState) {
|
|
814
|
+
const blocker = listActiveSkills(canonicalState).find((entry) => (entry.skill === "deep-interview"
|
|
815
|
+
&& matchesSkillStopContext(entry, canonicalState, sessionId, threadId)));
|
|
816
|
+
if (!blocker)
|
|
817
|
+
return null;
|
|
818
|
+
}
|
|
819
|
+
const questionEnforcement = safeObject(modeState.question_enforcement);
|
|
820
|
+
if (!isPendingDeepInterviewQuestionEnforcement(questionEnforcement)) {
|
|
821
|
+
return null;
|
|
822
|
+
}
|
|
823
|
+
const obligationId = safeString(questionEnforcement.obligation_id).trim();
|
|
824
|
+
if (!obligationId)
|
|
825
|
+
return null;
|
|
826
|
+
const systemMessage = `OMX deep-interview is still active (phase: ${phase}) and requires a structured question via omx question before stopping.`;
|
|
827
|
+
return {
|
|
828
|
+
obligationId,
|
|
829
|
+
output: {
|
|
830
|
+
decision: "block",
|
|
831
|
+
reason: `Deep interview is still active (phase: ${phase}) and has a pending structured question obligation; use \`omx question\` before stopping.`,
|
|
832
|
+
stopReason: "deep_interview_question_required",
|
|
833
|
+
systemMessage,
|
|
834
|
+
},
|
|
835
|
+
};
|
|
836
|
+
}
|
|
740
837
|
function resolveRepeatableStopSessionId(payload, canonicalSessionId) {
|
|
741
838
|
return canonicalSessionId?.trim() || readPayloadSessionId(payload) || "";
|
|
742
839
|
}
|
|
@@ -979,6 +1076,20 @@ async function buildStopHookOutput(payload, cwd, stateDir) {
|
|
|
979
1076
|
const threadId = readPayloadThreadId(payload);
|
|
980
1077
|
const ralphState = await readActiveRalphState(stateDir, canonicalSessionId);
|
|
981
1078
|
if (!ralphState) {
|
|
1079
|
+
const autoresearchState = await readActiveAutoresearchState(cwd, canonicalSessionId);
|
|
1080
|
+
if (autoresearchState) {
|
|
1081
|
+
const completion = await readAutoresearchCompletionStatus(cwd, canonicalSessionId.trim());
|
|
1082
|
+
if (!completion.complete) {
|
|
1083
|
+
const currentPhase = safeString(autoresearchState.current_phase ?? autoresearchState.currentPhase).trim() || 'executing';
|
|
1084
|
+
const systemMessage = `OMX autoresearch is still active (phase: ${currentPhase}); continue until validator evidence is complete before stopping.`;
|
|
1085
|
+
return await maybeReturnRepeatableStopOutput(payload, stateDir, buildRepeatableStopSignature(payload, 'autoresearch-stop', `${currentPhase}|${completion.reason}`, canonicalSessionId), {
|
|
1086
|
+
decision: 'block',
|
|
1087
|
+
reason: systemMessage,
|
|
1088
|
+
stopReason: `autoresearch_${currentPhase}`,
|
|
1089
|
+
systemMessage,
|
|
1090
|
+
}, canonicalSessionId, { allowRepeatDuringStopHook: true });
|
|
1091
|
+
}
|
|
1092
|
+
}
|
|
982
1093
|
const teamWorkerOutput = await buildTeamWorkerStopOutput(cwd);
|
|
983
1094
|
if (hasTeamWorkerContext() && teamWorkerOutput)
|
|
984
1095
|
return teamWorkerOutput;
|
|
@@ -1002,6 +1113,10 @@ async function buildStopHookOutput(payload, cwd, stateDir) {
|
|
|
1002
1113
|
return await returnPersistentStopBlock(payload, stateDir, "team-stop", safeString(teamOutput.stopReason), teamOutput, canonicalSessionId);
|
|
1003
1114
|
}
|
|
1004
1115
|
if (canonicalSessionId) {
|
|
1116
|
+
const deepInterviewQuestionOutput = await buildDeepInterviewQuestionStopOutput(cwd, canonicalSessionId, threadId);
|
|
1117
|
+
if (deepInterviewQuestionOutput) {
|
|
1118
|
+
return await returnPersistentStopBlock(payload, stateDir, "deep-interview-question-stop", deepInterviewQuestionOutput.obligationId, deepInterviewQuestionOutput.output, canonicalSessionId);
|
|
1119
|
+
}
|
|
1005
1120
|
const canonicalTeam = await findCanonicalActiveTeamForSession(cwd, canonicalSessionId);
|
|
1006
1121
|
if (canonicalTeam) {
|
|
1007
1122
|
const canonicalTeamOutput = buildTeamStopOutputForPhase(canonicalTeam.teamName, canonicalTeam.phase);
|
|
@@ -1046,6 +1161,7 @@ export async function dispatchCodexNativeHook(payload, options = {}) {
|
|
|
1046
1161
|
await mkdir(stateDir, { recursive: true });
|
|
1047
1162
|
const omxEventName = mapCodexHookEventToOmxEvent(hookEventName);
|
|
1048
1163
|
let skillState = null;
|
|
1164
|
+
let triageAdditionalContext = null;
|
|
1049
1165
|
const nativeSessionId = safeString(payload.session_id ?? payload.sessionId).trim();
|
|
1050
1166
|
const threadId = safeString(payload.thread_id ?? payload.threadId).trim();
|
|
1051
1167
|
const turnId = safeString(payload.turn_id ?? payload.turnId).trim();
|
|
@@ -1072,7 +1188,79 @@ export async function dispatchCodexNativeHook(payload, options = {}) {
|
|
|
1072
1188
|
turnId,
|
|
1073
1189
|
});
|
|
1074
1190
|
}
|
|
1075
|
-
|
|
1191
|
+
// --- Triage classifier (advisory-only, non-keyword prompts) ---
|
|
1192
|
+
if (prompt && skillState === null) {
|
|
1193
|
+
try {
|
|
1194
|
+
if (readTriageConfig().enabled) {
|
|
1195
|
+
const normalized = prompt.trim().toLowerCase();
|
|
1196
|
+
const previous = readTriageState({ cwd, sessionId: sessionIdForState || null });
|
|
1197
|
+
const suppress = shouldSuppressFollowup({
|
|
1198
|
+
previous,
|
|
1199
|
+
currentPrompt: normalized,
|
|
1200
|
+
currentHasKeyword: false,
|
|
1201
|
+
});
|
|
1202
|
+
if (!suppress) {
|
|
1203
|
+
const decision = triagePrompt(prompt);
|
|
1204
|
+
const nowIso = new Date().toISOString();
|
|
1205
|
+
const effectiveTurnId = turnId || nowIso;
|
|
1206
|
+
if (decision.lane === "HEAVY") {
|
|
1207
|
+
triageAdditionalContext =
|
|
1208
|
+
"OMX native UserPromptSubmit triage detected a multi-step goal with no workflow keyword. This is advisory prompt-routing context only; it did not activate autopilot or initialize workflow state. Prefer the existing autopilot-style workflow if AGENTS.md/runtime conditions allow it, unless newer user context narrows or opts out.";
|
|
1209
|
+
const newState = {
|
|
1210
|
+
version: 1,
|
|
1211
|
+
last_triage: {
|
|
1212
|
+
lane: "HEAVY",
|
|
1213
|
+
destination: "autopilot",
|
|
1214
|
+
reason: decision.reason,
|
|
1215
|
+
prompt_signature: promptSignature(normalized),
|
|
1216
|
+
turn_id: effectiveTurnId,
|
|
1217
|
+
created_at: nowIso,
|
|
1218
|
+
},
|
|
1219
|
+
suppress_followup: true,
|
|
1220
|
+
};
|
|
1221
|
+
writeTriageState({ cwd, sessionId: sessionIdForState || null, state: newState });
|
|
1222
|
+
}
|
|
1223
|
+
else if (decision.lane === "LIGHT") {
|
|
1224
|
+
if (decision.destination === "explore") {
|
|
1225
|
+
triageAdditionalContext =
|
|
1226
|
+
"OMX native UserPromptSubmit triage detected a read-only/question-shaped request with no workflow keyword. This is advisory prompt-routing context only. Prefer the explore role surface rather than escalating to autopilot.";
|
|
1227
|
+
}
|
|
1228
|
+
else if (decision.destination === "executor") {
|
|
1229
|
+
triageAdditionalContext =
|
|
1230
|
+
"OMX native UserPromptSubmit triage detected a narrow edit-shaped request with no workflow keyword. This is advisory prompt-routing context only. Prefer the executor role surface rather than autopilot.";
|
|
1231
|
+
}
|
|
1232
|
+
else if (decision.destination === "designer") {
|
|
1233
|
+
triageAdditionalContext =
|
|
1234
|
+
"OMX native UserPromptSubmit triage detected a visual/style request with no workflow keyword. This is advisory prompt-routing context only. Prefer the designer role surface.";
|
|
1235
|
+
}
|
|
1236
|
+
if (triageAdditionalContext !== null) {
|
|
1237
|
+
const dest = decision.destination;
|
|
1238
|
+
const newState = {
|
|
1239
|
+
version: 1,
|
|
1240
|
+
last_triage: {
|
|
1241
|
+
lane: "LIGHT",
|
|
1242
|
+
destination: dest,
|
|
1243
|
+
reason: decision.reason,
|
|
1244
|
+
prompt_signature: promptSignature(normalized),
|
|
1245
|
+
turn_id: effectiveTurnId,
|
|
1246
|
+
created_at: nowIso,
|
|
1247
|
+
},
|
|
1248
|
+
suppress_followup: true,
|
|
1249
|
+
};
|
|
1250
|
+
writeTriageState({ cwd, sessionId: sessionIdForState || null, state: newState });
|
|
1251
|
+
}
|
|
1252
|
+
}
|
|
1253
|
+
// lane === "PASS": no context, no state write
|
|
1254
|
+
}
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
catch {
|
|
1258
|
+
// Swallow all triage errors; never break the hook
|
|
1259
|
+
triageAdditionalContext = null;
|
|
1260
|
+
}
|
|
1261
|
+
}
|
|
1262
|
+
const reconcileHudForPromptSubmitFn = options.reconcileHudForPromptSubmitFn ?? reconcileHudForPromptSubmit;
|
|
1263
|
+
await reconcileHudForPromptSubmitFn(cwd, { sessionId: canonicalSessionId || sessionIdForState || undefined }).catch(() => { });
|
|
1076
1264
|
}
|
|
1077
1265
|
if (omxEventName) {
|
|
1078
1266
|
const baseContext = buildBaseContext(cwd, payload, hookEventName);
|
|
@@ -1095,7 +1283,7 @@ export async function dispatchCodexNativeHook(payload, options = {}) {
|
|
|
1095
1283
|
if (hookEventName === "SessionStart" || hookEventName === "UserPromptSubmit") {
|
|
1096
1284
|
const additionalContext = hookEventName === "SessionStart"
|
|
1097
1285
|
? await buildSessionStartContext(cwd, canonicalSessionId || nativeSessionId)
|
|
1098
|
-
: buildAdditionalContextMessage(readPromptText(payload), skillState);
|
|
1286
|
+
: (buildAdditionalContextMessage(readPromptText(payload), skillState) ?? triageAdditionalContext);
|
|
1099
1287
|
if (additionalContext) {
|
|
1100
1288
|
outputJson = {
|
|
1101
1289
|
hookSpecificOutput: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-native-hook.js","sourceRoot":"","sources":["../../src/scripts/codex-native-hook.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codex-native-hook.js","sourceRoot":"","sources":["../../src/scripts/codex-native-hook.ts"],"names":[],"mappings":"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"}
|