@scotthuang/agent-knock-knock 0.12.37 → 0.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/README.md +3 -0
  3. package/dist/src/agent-session-provider.d.ts +5 -0
  4. package/dist/src/agent-session-provider.js +10 -1
  5. package/dist/src/agent-session-provider.js.map +1 -1
  6. package/dist/src/callback-outbox-service.d.ts +2 -0
  7. package/dist/src/callback-outbox-service.js +1 -1
  8. package/dist/src/callback-outbox-service.js.map +1 -1
  9. package/dist/src/callback-transport.d.ts +7 -0
  10. package/dist/src/callback-transport.js +1 -1
  11. package/dist/src/callback-transport.js.map +1 -1
  12. package/dist/src/claude-lifecycle-compatibility.js +49 -2
  13. package/dist/src/claude-lifecycle-compatibility.js.map +1 -1
  14. package/dist/src/claude-terminal-agent-adapter.d.ts +1 -1
  15. package/dist/src/claude-terminal-agent-adapter.js +2 -2
  16. package/dist/src/claude-terminal-agent-adapter.js.map +1 -1
  17. package/dist/src/cli-core.js +35 -32
  18. package/dist/src/cli-core.js.map +1 -1
  19. package/dist/src/codex-store-adapter.d.ts +1 -1
  20. package/dist/src/codex-store-adapter.js +35 -8
  21. package/dist/src/codex-store-adapter.js.map +1 -1
  22. package/dist/src/deferred-foreground-authority-cli-adapter.d.ts +20 -0
  23. package/dist/src/deferred-foreground-authority-cli-adapter.js +216 -8
  24. package/dist/src/deferred-foreground-authority-cli-adapter.js.map +1 -1
  25. package/dist/src/host-adapter.d.ts +1 -1
  26. package/dist/src/host-adapter.js +1 -1
  27. package/dist/src/host-bridge-tools.js +2 -2
  28. package/dist/src/managed-turn-recovery-service.d.ts +8 -1
  29. package/dist/src/managed-turn-recovery-service.js +55 -13
  30. package/dist/src/managed-turn-recovery-service.js.map +1 -1
  31. package/dist/src/mutation-transaction.d.ts +1 -0
  32. package/dist/src/mutation-transaction.js +19 -15
  33. package/dist/src/mutation-transaction.js.map +1 -1
  34. package/dist/src/native-thread-lifecycle-cli-adapter.d.ts +39 -3
  35. package/dist/src/native-thread-lifecycle-cli-adapter.js +307 -7
  36. package/dist/src/native-thread-lifecycle-cli-adapter.js.map +1 -1
  37. package/dist/src/openclaw-plugin-callback-adapter.js +17 -7
  38. package/dist/src/openclaw-plugin-callback-adapter.js.map +1 -1
  39. package/dist/src/openclaw-plugin-command-adapter.js +297 -83
  40. package/dist/src/openclaw-plugin-command-adapter.js.map +1 -1
  41. package/dist/src/openclaw-plugin-schemas.d.ts +57 -0
  42. package/dist/src/openclaw-plugin-schemas.js +60 -2
  43. package/dist/src/openclaw-plugin-schemas.js.map +1 -1
  44. package/dist/src/openclaw-private-authority-offers.d.ts +17 -0
  45. package/dist/src/openclaw-private-authority-offers.js +75 -3
  46. package/dist/src/openclaw-private-authority-offers.js.map +1 -1
  47. package/dist/src/store.d.ts +1 -1
  48. package/dist/src/store.js +6 -4
  49. package/dist/src/store.js.map +1 -1
  50. package/dist/src/terminal-acceptance-application-service.js +2 -2
  51. package/dist/src/terminal-acceptance-application-service.js.map +1 -1
  52. package/dist/src/terminal-acceptance-cli-adapter.d.ts +11 -1
  53. package/dist/src/terminal-acceptance-cli-adapter.js +290 -16
  54. package/dist/src/terminal-acceptance-cli-adapter.js.map +1 -1
  55. package/dist/src/terminal-action-projection.d.ts +1 -1
  56. package/dist/src/terminal-action-projection.js +6 -0
  57. package/dist/src/terminal-action-projection.js.map +1 -1
  58. package/dist/src/terminal-agent-adapter.d.ts +9 -0
  59. package/dist/src/terminal-agent-adapter.js.map +1 -1
  60. package/dist/src/terminal-agent-bridge.d.ts +52 -8
  61. package/dist/src/terminal-agent-bridge.js +131 -94
  62. package/dist/src/terminal-agent-bridge.js.map +1 -1
  63. package/dist/src/terminal-authority-policy.js +3 -0
  64. package/dist/src/terminal-authority-policy.js.map +1 -1
  65. package/dist/src/terminal-binding-authority.d.ts +2 -0
  66. package/dist/src/terminal-binding-authority.js +8 -0
  67. package/dist/src/terminal-binding-authority.js.map +1 -1
  68. package/dist/src/terminal-command-cli-adapter.d.ts +17 -1
  69. package/dist/src/terminal-command-cli-adapter.js +784 -286
  70. package/dist/src/terminal-command-cli-adapter.js.map +1 -1
  71. package/dist/src/terminal-delegate-cli-adapter.js +21 -7
  72. package/dist/src/terminal-delegate-cli-adapter.js.map +1 -1
  73. package/dist/src/terminal-dispatch-application.d.ts +3 -1
  74. package/dist/src/terminal-dispatch-application.js +13 -5
  75. package/dist/src/terminal-dispatch-application.js.map +1 -1
  76. package/dist/src/terminal-dispatch-composition.d.ts +43 -0
  77. package/dist/src/terminal-dispatch-execution.d.ts +2 -2
  78. package/dist/src/terminal-dispatch-execution.js +53 -3
  79. package/dist/src/terminal-dispatch-execution.js.map +1 -1
  80. package/dist/src/terminal-dispatch-policy.d.ts +20 -0
  81. package/dist/src/terminal-dispatch-policy.js +33 -1
  82. package/dist/src/terminal-dispatch-policy.js.map +1 -1
  83. package/dist/src/terminal-dispatch-presenter.d.ts +45 -0
  84. package/dist/src/terminal-dispatch-presenter.js +220 -18
  85. package/dist/src/terminal-dispatch-presenter.js.map +1 -1
  86. package/dist/src/terminal-dispatch-receipt.d.ts +5 -1
  87. package/dist/src/terminal-dispatch-receipt.js +26 -3
  88. package/dist/src/terminal-dispatch-receipt.js.map +1 -1
  89. package/dist/src/terminal-dispatch-recovery-cli-adapter.js +63 -1
  90. package/dist/src/terminal-dispatch-recovery-cli-adapter.js.map +1 -1
  91. package/dist/src/terminal-dispatch-recovery-service.d.ts +1 -0
  92. package/dist/src/terminal-dispatch-recovery-service.js +7 -0
  93. package/dist/src/terminal-dispatch-recovery-service.js.map +1 -1
  94. package/dist/src/terminal-identity-authority-cli-adapter.js +103 -4
  95. package/dist/src/terminal-identity-authority-cli-adapter.js.map +1 -1
  96. package/dist/src/terminal-interaction-authority.d.ts +48 -1
  97. package/dist/src/terminal-interaction-authority.js +30 -0
  98. package/dist/src/terminal-interaction-authority.js.map +1 -1
  99. package/dist/src/terminal-interaction-cli-adapter.js +9 -0
  100. package/dist/src/terminal-interaction-cli-adapter.js.map +1 -1
  101. package/dist/src/terminal-interaction-core.d.ts +104 -0
  102. package/dist/src/terminal-interaction-core.js +407 -0
  103. package/dist/src/terminal-interaction-core.js.map +1 -0
  104. package/dist/src/terminal-interaction-protocol.d.ts +89 -0
  105. package/dist/src/terminal-interaction-protocol.js +199 -0
  106. package/dist/src/terminal-interaction-protocol.js.map +1 -1
  107. package/dist/src/terminal-list-cli-adapter.d.ts +5 -0
  108. package/dist/src/terminal-list-cli-adapter.js +190 -40
  109. package/dist/src/terminal-list-cli-adapter.js.map +1 -1
  110. package/dist/src/terminal-list-renderer.js +60 -7
  111. package/dist/src/terminal-list-renderer.js.map +1 -1
  112. package/dist/src/terminal-maintenance-cli-adapter.js +14 -3
  113. package/dist/src/terminal-maintenance-cli-adapter.js.map +1 -1
  114. package/dist/src/terminal-monitor-application-service.d.ts +1 -0
  115. package/dist/src/terminal-monitor-application-service.js +72 -10
  116. package/dist/src/terminal-monitor-application-service.js.map +1 -1
  117. package/dist/src/terminal-monitor-cli-adapter.d.ts +3 -0
  118. package/dist/src/terminal-monitor-cli-adapter.js +24 -8
  119. package/dist/src/terminal-monitor-cli-adapter.js.map +1 -1
  120. package/dist/src/terminal-monitor-state-cli-adapter.js +15 -2
  121. package/dist/src/terminal-monitor-state-cli-adapter.js.map +1 -1
  122. package/dist/src/terminal-monitor-state-reconciliation-service.js +15 -1
  123. package/dist/src/terminal-monitor-state-reconciliation-service.js.map +1 -1
  124. package/dist/src/terminal-mutation-cli-runtime.d.ts +11 -1
  125. package/dist/src/terminal-mutation-cli-runtime.js +9 -4
  126. package/dist/src/terminal-mutation-cli-runtime.js.map +1 -1
  127. package/dist/src/terminal-questionnaire-adapter.d.ts +3 -1
  128. package/dist/src/terminal-questionnaire-adapter.js +34 -21
  129. package/dist/src/terminal-questionnaire-adapter.js.map +1 -1
  130. package/dist/src/terminal-status-cli-adapter.d.ts +1 -7
  131. package/dist/src/terminal-status-cli-adapter.js +29 -3
  132. package/dist/src/terminal-status-cli-adapter.js.map +1 -1
  133. package/dist/src/terminal-status-facts.d.ts +17 -1
  134. package/dist/src/terminal-status-facts.js +59 -0
  135. package/dist/src/terminal-status-facts.js.map +1 -1
  136. package/dist/src/terminal-submission-acceptance.d.ts +37 -2
  137. package/dist/src/terminal-submission-acceptance.js +633 -30
  138. package/dist/src/terminal-submission-acceptance.js.map +1 -1
  139. package/dist/src/terminal-submission-facts.d.ts +5 -0
  140. package/dist/src/terminal-submission-facts.js.map +1 -1
  141. package/dist/src/terminal-watch-callback-cli-adapter.d.ts +2 -1
  142. package/dist/src/terminal-watch-callback-cli-adapter.js +2 -1
  143. package/dist/src/terminal-watch-callback-cli-adapter.js.map +1 -1
  144. package/dist/src/terminal-watch-cli-adapter.d.ts +6 -2
  145. package/dist/src/terminal-watch-cli-adapter.js +1051 -15
  146. package/dist/src/terminal-watch-cli-adapter.js.map +1 -1
  147. package/dist/src/terminal-watch-service.d.ts +15 -1
  148. package/dist/src/terminal-watch-service.js +169 -13
  149. package/dist/src/terminal-watch-service.js.map +1 -1
  150. package/dist/src/terminal-watch-store.d.ts +72 -3
  151. package/dist/src/terminal-watch-store.js +541 -35
  152. package/dist/src/terminal-watch-store.js.map +1 -1
  153. package/docs/host-bridge-profiles.md +2 -2
  154. package/docs/quickstart-herdr.md +5 -3
  155. package/docs/quickstart-tmux.md +8 -6
  156. package/openclaw.plugin.json +8 -0
  157. package/package.json +1 -1
  158. package/templates/openclaw-skills/agent-knock-knock/SKILL.md +16 -12
@@ -13,6 +13,8 @@ import { listManagedSessions, loadNativeThreadTransition } from "./session-store
13
13
  import { isExactClaudeNativeInspectionIdleComposer, NativeInspectionSubmissionError } from "./terminal-agent-bridge.js";
14
14
  import { terminalControlAliasMatches, selectRootTerminalProcesses, withCodexCompanionFences } from "./terminal-authority-policy.js";
15
15
  import { nonBlankString } from "./value-guards.js";
16
+ export const CODEX_FOREGROUND_IDENTIFICATION_TTL_MS = 30_000;
17
+ export const CODEX_FOREGROUND_IDENTIFICATION_SCROLLBACK_LINES = 240;
16
18
  export function createNativeThreadLifecycleCliAdapter(ports) {
17
19
  const app = new NativeThreadLifecycleCliApplication(ports);
18
20
  return Object.freeze({
@@ -24,6 +26,8 @@ export function createNativeThreadLifecycleCliAdapter(ports) {
24
26
  agentAdapter: (options, agent) => app.agentAdapter(options, agent),
25
27
  runList: (options) => app.runList(options),
26
28
  runInspect: (options) => app.runInspect(options),
29
+ runIdentifyForeground: (options) => app.runIdentifyForeground(options),
30
+ identifyCodexForegroundWhileLocked: (input) => app.identifyCodexForegroundWhileLocked(input),
27
31
  assertSameInspectionTerminal: (expected, actual, stage) => app.assertSameInspectionTerminal(expected, actual, stage),
28
32
  codexLatentClearResumeObservation,
29
33
  nativeInspectionComposerEmpty
@@ -323,6 +327,10 @@ class NativeThreadLifecycleCliApplication {
323
327
  }
324
328
  assertInspectionReady(input) {
325
329
  const { options, terminal, terminalStatus, session } = input;
330
+ if (terminalStatus?.interaction_state !== undefined) {
331
+ throw new Error(`terminal ${terminal.terminalControl.target} is waiting for a native ` +
332
+ "questionnaire response; answer or cancel it before native inspection");
333
+ }
326
334
  if (terminalStatus && (terminalStatus.reachable !== true ||
327
335
  terminalStatus.activity_state !== "idle" ||
328
336
  terminalStatus.approval_state.blocked === true)) {
@@ -462,6 +470,271 @@ class NativeThreadLifecycleCliApplication {
462
470
  throw new Error("Claude composer contains input or is not at the exact idle frame; refusing automated terminal input");
463
471
  }
464
472
  }
473
+ validateForegroundIdentificationOptions(options) {
474
+ if (options.command !== undefined || options.message !== undefined) {
475
+ throw new Error("foreground identification does not accept a command or message payload");
476
+ }
477
+ return required(nonBlankString(options.expectedTerminalToken), "--expected-terminal-token is required");
478
+ }
479
+ async runIdentifyForeground(options) {
480
+ const expectedTerminalToken = this.validateForegroundIdentificationOptions(options);
481
+ const terminal = await this.resolveLifecycleTerminal(options);
482
+ if (terminal.agent !== "codex") {
483
+ throw new Error("foreground identification currently supports only Codex terminals");
484
+ }
485
+ const storeDir = this.ports.state.storeDir(options);
486
+ const release = this.ports.state.acquireTerminal(storeDir, terminal.terminalControl, { timeoutMs: 30_000 });
487
+ try {
488
+ const proof = await this.identifyCodexForegroundWhileLocked({
489
+ options,
490
+ terminal,
491
+ expectedTerminalToken
492
+ });
493
+ this.ports.output.print({
494
+ status: "observed",
495
+ inspection: "identify_foreground",
496
+ terminal_id: proof.terminalId,
497
+ agent: "codex",
498
+ agent_version: proof.agentVersion,
499
+ behavior_profile: proof.behaviorProfile,
500
+ native_thread_id: proof.nativeThreadId,
501
+ foreground_proof: {
502
+ scope: "ephemeral_diagnostic_only",
503
+ observed_at: proof.observedAt,
504
+ expires_at: proof.expiresAt,
505
+ ttl_ms: CODEX_FOREGROUND_IDENTIFICATION_TTL_MS,
506
+ grants_authority: false
507
+ },
508
+ terminal_submission: {
509
+ command: proof.terminalSubmission.command,
510
+ enter_count: proof.terminalSubmission.enterCount,
511
+ materialization_kind: proof.terminalSubmission.materialization.kind
512
+ },
513
+ store_mutation: false,
514
+ session_created: false,
515
+ turn_created: false,
516
+ receipt_created: false,
517
+ monitor_created: false,
518
+ callback_created: false
519
+ });
520
+ }
521
+ finally {
522
+ release();
523
+ }
524
+ }
525
+ async identifyCodexForegroundWhileLocked(input) {
526
+ if (input.terminal.agent !== "codex") {
527
+ throw new Error("foreground identification currently supports only Codex terminals");
528
+ }
529
+ if (!nonBlankString(input.expectedTerminalToken)) {
530
+ throw new Error("foreground identification requires a terminal token");
531
+ }
532
+ const bridge = this.ports.runtime.forOptions(input.options).createBridge();
533
+ const physicalRuntime = this.ports.identity.runtimeForLiveIdentity({
534
+ terminal: input.terminal,
535
+ physicalOnly: true
536
+ });
537
+ const terminal = await bridge.resolveStoredTerminal("codex", input.terminal.pid, input.terminal.terminalControl, physicalRuntime);
538
+ this.assertSameInspectionTerminal(input.terminal, terminal, "while waiting for foreground-identification control");
539
+ const realCwd = this.realForegroundWorkspace(terminal);
540
+ const processIncarnation = this.ports.identity.processIncarnation(terminal.pid);
541
+ this.assertForegroundPhysicalToken({
542
+ terminal,
543
+ processIncarnation,
544
+ expectedTerminalToken: input.expectedTerminalToken
545
+ });
546
+ const runtimeFacade = this.ports.runtime.forOptions(input.options);
547
+ const agentVersion = required(nonBlankString(runtimeFacade.agentVersionForRunningProcess("codex", terminal.pid)), "Codex foreground identification requires a verified running version");
548
+ const adapter = runtimeFacade.createAgentRegistry().require("codex");
549
+ const capability = adapter.probeNativeInspection?.(agentVersion);
550
+ if (capability?.status !== "supported" ||
551
+ capability.statusInspection !== true) {
552
+ throw new Error(capability?.reason ??
553
+ "Codex foreground identification has no supported /status profile");
554
+ }
555
+ const plan = adapter.planNativeInspection?.({ kind: "status" }, capability);
556
+ if (!plan ||
557
+ plan.operation.kind !== "status" ||
558
+ plan.command !== "/status" ||
559
+ plan.effect !== "read_only" ||
560
+ plan.expectedResult.presentation !== "inline") {
561
+ throw new Error("the Codex adapter did not produce the closed inline /status plan");
562
+ }
563
+ const initialStatus = await bridge.status("codex", terminal.terminalControl, {
564
+ runtime: physicalRuntime,
565
+ scrollbackLines: CODEX_FOREGROUND_IDENTIFICATION_SCROLLBACK_LINES
566
+ });
567
+ this.assertInspectionReady({
568
+ options: input.options,
569
+ terminal,
570
+ terminalStatus: initialStatus
571
+ });
572
+ this.assertForegroundHasNoLifecycleTransition(input.options, terminal);
573
+ await this.assertInspectionComposerReady({
574
+ options: input.options,
575
+ terminal
576
+ });
577
+ const context = {
578
+ options: input.options,
579
+ terminal,
580
+ snapshot: {
581
+ codexCompanions: { additional: [] },
582
+ capabilities: adapter.probeThreadLifecycle?.(agentVersion) ?? {
583
+ status: "unknown",
584
+ agentVersion,
585
+ newThread: false,
586
+ resumeExact: false,
587
+ reason: "thread lifecycle capability is outside this diagnostic"
588
+ },
589
+ version: agentVersion,
590
+ bindingToken: input.expectedTerminalToken,
591
+ bindingTokens: [input.expectedTerminalToken]
592
+ },
593
+ bridge,
594
+ plan,
595
+ runtime: physicalRuntime,
596
+ expectedBindingToken: input.expectedTerminalToken,
597
+ foregroundBoundary: {
598
+ processUuid: processIncarnation.processUuid,
599
+ processBirth: processIncarnation.processBirth,
600
+ realCwd,
601
+ agentVersion,
602
+ expectedTerminalToken: input.expectedTerminalToken
603
+ }
604
+ };
605
+ const submission = await this.submitInspection(context);
606
+ try {
607
+ const observed = await this.observeStableInspection(context, submission);
608
+ const finalTerminal = await bridge.resolveStoredTerminal("codex", terminal.pid, terminal.terminalControl, physicalRuntime);
609
+ const finalStatus = required(await this.assertFreshForegroundBoundary({
610
+ context,
611
+ terminal: finalTerminal,
612
+ stage: "after foreground identification",
613
+ requireReadyScreen: true
614
+ }), "Codex foreground status revalidation is unavailable");
615
+ const nativeThreadId = required(isExactNativeThreadId(observed.observation.nativeThreadId)
616
+ ? observed.observation.nativeThreadId
617
+ : undefined, "Codex /status did not prove one exact foreground native thread");
618
+ const evidenceFingerprint = required(nonBlankString(observed.observation.evidenceFingerprint), "Codex /status did not produce exact evidence");
619
+ const postProbeScreenDigest = required(nonBlankString(finalStatus.screen.digest), "Codex foreground screen digest is unavailable");
620
+ const observedScreenDigest = required(bareNativeInspectionScreenDigest(observed.screenDigest), "Codex foreground observation screen digest is malformed");
621
+ if (observedScreenDigest !== postProbeScreenDigest) {
622
+ throw new Error("Codex screen changed after the stable /status observation");
623
+ }
624
+ const observedAt = new Date();
625
+ const proof = {
626
+ terminalId: terminal.conversationId,
627
+ pid: terminal.pid,
628
+ processUuid: processIncarnation.processUuid,
629
+ processBirth: processIncarnation.processBirth,
630
+ realCwd,
631
+ nativeThreadId,
632
+ agentVersion,
633
+ behaviorProfile: plan.behaviorProfile,
634
+ evidenceFingerprint,
635
+ postProbeScreenDigest,
636
+ observationScrollbackLines: CODEX_FOREGROUND_IDENTIFICATION_SCROLLBACK_LINES,
637
+ observedAt: observedAt.toISOString(),
638
+ expiresAt: new Date(observedAt.getTime() + CODEX_FOREGROUND_IDENTIFICATION_TTL_MS).toISOString(),
639
+ terminalSubmission: Object.freeze({
640
+ command: "/status",
641
+ enterCount: 1,
642
+ materialization: submission.materialization
643
+ })
644
+ };
645
+ return Object.freeze(proof);
646
+ }
647
+ catch (error) {
648
+ const detail = error instanceof Error ? error.message : String(error);
649
+ if (/do not retry automatically/iu.test(detail))
650
+ throw error;
651
+ throw new Error("Codex foreground-identification Enter was dispatched exactly once, " +
652
+ "but its postcondition became uncertain; do not retry automatically: " +
653
+ detail);
654
+ }
655
+ }
656
+ async assertFreshForegroundBoundary(input) {
657
+ const boundary = required(input.context.foregroundBoundary, "foreground-identification boundary is missing");
658
+ this.assertSameInspectionTerminal(input.context.terminal, input.terminal, input.stage);
659
+ if (this.realForegroundWorkspace(input.terminal) !== boundary.realCwd) {
660
+ throw new Error(`terminal real cwd changed ${input.stage}; refresh AKK list`);
661
+ }
662
+ const processIncarnation = this.ports.identity.processIncarnation(input.terminal.pid);
663
+ if (processIncarnation.processUuid !== boundary.processUuid ||
664
+ processIncarnation.processBirth !== boundary.processBirth) {
665
+ throw new Error(`Codex process incarnation changed ${input.stage}; refresh AKK list`);
666
+ }
667
+ this.assertForegroundPhysicalToken({
668
+ terminal: input.terminal,
669
+ processIncarnation,
670
+ expectedTerminalToken: boundary.expectedTerminalToken
671
+ });
672
+ const currentVersion = this.ports.runtime.forOptions(input.context.options)
673
+ .agentVersionForRunningProcess("codex", input.terminal.pid);
674
+ if (currentVersion !== boundary.agentVersion) {
675
+ throw new Error(`Codex version changed ${input.stage}; refresh AKK list`);
676
+ }
677
+ this.assertInspectionReady({
678
+ options: input.context.options,
679
+ terminal: input.terminal
680
+ });
681
+ this.assertForegroundHasNoLifecycleTransition(input.context.options, input.terminal);
682
+ if (!input.requireReadyScreen) {
683
+ return undefined;
684
+ }
685
+ const status = await input.context.bridge.status("codex", input.terminal.terminalControl, {
686
+ runtime: input.context.runtime,
687
+ scrollbackLines: CODEX_FOREGROUND_IDENTIFICATION_SCROLLBACK_LINES
688
+ });
689
+ this.assertInspectionReady({
690
+ options: input.context.options,
691
+ terminal: input.terminal,
692
+ terminalStatus: status
693
+ });
694
+ await this.assertInspectionComposerReady({
695
+ options: input.context.options,
696
+ terminal: input.terminal
697
+ });
698
+ return status;
699
+ }
700
+ assertForegroundPhysicalToken(input) {
701
+ const actual = unmanagedTerminalBindingToken({
702
+ terminalId: input.terminal.conversationId,
703
+ terminalControl: input.terminal.terminalControl,
704
+ agent: "codex",
705
+ pid: input.terminal.pid,
706
+ workspace: input.terminal.terminalControl.currentPath ?? "",
707
+ processUuid: input.processIncarnation.processUuid,
708
+ processBirth: input.processIncarnation.processBirth
709
+ });
710
+ if (actual !== input.expectedTerminalToken) {
711
+ throw new Error("the physical terminal token is stale; refresh AKK list");
712
+ }
713
+ }
714
+ realForegroundWorkspace(terminal) {
715
+ const cwd = required(nonBlankString(terminal.terminalControl.currentPath), "Codex terminal cwd is unavailable");
716
+ let realCwd;
717
+ try {
718
+ realCwd = fs.realpathSync(cwd);
719
+ }
720
+ catch {
721
+ throw new Error("Codex terminal cwd cannot be resolved exactly");
722
+ }
723
+ if (!fs.statSync(realCwd).isDirectory()) {
724
+ throw new Error("Codex terminal cwd is not a directory");
725
+ }
726
+ return realCwd;
727
+ }
728
+ assertForegroundHasNoLifecycleTransition(options, terminal) {
729
+ const storeDir = this.ports.state.storeDir(options);
730
+ const related = listManagedSessions(storeDir).filter((session) => Boolean(session.binding && terminalControlAliasMatches(session.binding.terminal_id, session.binding.terminal_control, terminal.conversationId, terminal.terminalControl)));
731
+ const unresolved = related.find((session) => ["transitioning", "quarantined"].includes(session.status) ||
732
+ this.ports.state.hasUnresolvedTransition(storeDir, session));
733
+ if (unresolved) {
734
+ throw new Error(`managed Session ${unresolved.session_id} has an unresolved ` +
735
+ "native-thread transition");
736
+ }
737
+ }
465
738
  validateInspectionOptions(options) {
466
739
  const inspection = required(nonBlankString(options.inspection), "--inspection is required");
467
740
  if (inspection !== "status") {
@@ -551,10 +824,20 @@ class NativeThreadLifecycleCliApplication {
551
824
  runtime: context.runtime,
552
825
  beforeEnter: async () => {
553
826
  const terminal = await context.bridge.resolveStoredTerminal(context.terminal.agent, context.terminal.pid, context.terminal.terminalControl, context.runtime);
554
- await this.assertFreshInspectionBoundary({
555
- context, terminal,
556
- stage: "immediately before native status submission"
557
- });
827
+ if (context.foregroundBoundary) {
828
+ await this.assertFreshForegroundBoundary({
829
+ context,
830
+ terminal,
831
+ stage: "immediately before native status submission",
832
+ requireReadyScreen: false
833
+ });
834
+ }
835
+ else {
836
+ await this.assertFreshInspectionBoundary({
837
+ context, terminal,
838
+ stage: "immediately before native status submission"
839
+ });
840
+ }
558
841
  }
559
842
  });
560
843
  }
@@ -610,9 +893,15 @@ class NativeThreadLifecycleCliApplication {
610
893
  : context.runtime;
611
894
  let fingerprint;
612
895
  let stable;
896
+ let stableScreenDigest;
613
897
  let count = 0;
614
898
  for (let attempt = 0; attempt < 50; attempt += 1) {
615
- const observed = await context.bridge.observeNativeInspection(context.terminal.agent, context.terminal.terminalControl, request, { runtime: postEnterRuntime, scrollbackLines: 240 });
899
+ const observed = await context.bridge.observeNativeInspection(context.terminal.agent, context.terminal.terminalControl, request, {
900
+ runtime: postEnterRuntime,
901
+ scrollbackLines: context.foregroundBoundary
902
+ ? CODEX_FOREGROUND_IDENTIFICATION_SCROLLBACK_LINES
903
+ : 240
904
+ });
616
905
  if (freshInspectionObservation(context.plan, submission.preEnterScreenDigest, observed)) {
617
906
  if (fingerprint === observed.observation.evidenceFingerprint)
618
907
  count += 1;
@@ -621,20 +910,27 @@ class NativeThreadLifecycleCliApplication {
621
910
  count = 1;
622
911
  }
623
912
  stable = observed.observation;
913
+ stableScreenDigest = observed.screenDigest;
624
914
  if (count >= 2)
625
915
  break;
626
916
  }
627
917
  else {
628
918
  fingerprint = undefined;
629
919
  stable = undefined;
920
+ stableScreenDigest = undefined;
630
921
  count = 0;
631
922
  }
632
923
  await this.ports.runtime.sleep(100);
633
924
  }
634
- if (!stable || count < 2) {
925
+ if (!stable || !stableScreenDigest || count < 2) {
635
926
  throw new Error("native status inspection Enter was dispatched exactly once, but a fresh exact status result was not proven; do not retry automatically");
636
927
  }
637
- return { observation: stable, request, postEnterRuntime };
928
+ return {
929
+ observation: stable,
930
+ request,
931
+ postEnterRuntime,
932
+ screenDigest: stableScreenDigest
933
+ };
638
934
  }
639
935
  async dismissInspection(context, observed) {
640
936
  if (context.plan.expectedResult.presentation !== "modal")
@@ -724,12 +1020,16 @@ class NativeThreadLifecycleCliApplication {
724
1020
  });
725
1021
  }
726
1022
  }
1023
+ function bareNativeInspectionScreenDigest(fingerprint) {
1024
+ return /^sha256:([0-9a-f]{64})$/u.exec(fingerprint)?.[1];
1025
+ }
727
1026
  function freshInspectionObservation(plan, preEnterScreenDigest, observed) {
728
1027
  return observed.status.reachable === true &&
729
1028
  (plan.expectedResult.presentation === "inline"
730
1029
  ? observed.status.activity_state === "idle"
731
1030
  : !["working", "awaiting_approval"].includes(observed.status.activity_state)) &&
732
1031
  observed.status.approval_state.blocked !== true &&
1032
+ observed.status.interaction_state === undefined &&
733
1033
  observed.screenDigest !== preEnterScreenDigest &&
734
1034
  observed.observation.status === "observed" &&
735
1035
  observed.observation.result?.kind === "native_status" &&
@@ -1 +1 @@
1
- {"version":3,"file":"native-thread-lifecycle-cli-adapter.js","sourceRoot":"","sources":["../../src/native-thread-lifecycle-cli-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-thread-lifecycle-cli-adapter.js","sourceRoot":"","sources":["../../src/native-thread-lifecycle-cli-adapter.ts"],"names":[],"mappings":"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"}
@@ -162,6 +162,11 @@ function callbackOfferState(message, messageMetadata) {
162
162
  if (stringValue(messageMetadata?.reason) === "approval_required") {
163
163
  return "approval_refresh_required";
164
164
  }
165
+ if (message.type === "question" &&
166
+ stringValue(messageMetadata?.source) === "terminal_bridge" &&
167
+ stringValue(messageMetadata?.reason) === "interaction_manual_required") {
168
+ return "interaction_manual_required";
169
+ }
165
170
  return message.type === "question" &&
166
171
  message.requires_response === true &&
167
172
  stringValue(messageMetadata?.source) === "terminal_bridge" &&
@@ -349,8 +354,11 @@ function buildCallbackDeliveryPlan({ sessionKey, conversationId, sessionId, turn
349
354
  ? "The callback could not establish private approval authority. Do not call approve from this callback alone. First call agent_knock_knock_status with only its exact turn_id, present the current approval request, and ask for an explicit user decision."
350
355
  : callbackOffer === "interaction_refresh_required"
351
356
  ? "This callback reports a native terminal questionnaire. Do not call agent_knock_knock_respond or agent_knock_knock_respond_interaction from the callback alone. First call agent_knock_knock_status with only its exact turn_id in this controller conversation, present the fresh pending interaction_state to the user, and only after their answer call agent_knock_knock_respond_interaction with the advertised semantic IDs. Answer exactly one current step and never guess raw keys, menu indexes, or labels."
352
- : "Respond in this conversation as OpenClaw product manager. If the callback is question or blocked, make the product decision and use agent_knock_knock_respond with its exact turn_id. If it is done, summarize the result to the user.";
353
- const inspectionGuidance = callbackOffer === "interaction_refresh_required"
357
+ : callbackOffer === "interaction_manual_required"
358
+ ? "This callback reports a native terminal questionnaire that AKK cannot answer safely. Inform the user that manual terminal input is required. Do not call agent_knock_knock_respond or agent_knock_knock_respond_interaction and do not guess keys, menu indexes, labels, or answer text."
359
+ : "Respond in this conversation as OpenClaw product manager. If the callback is question or blocked, make the product decision and use agent_knock_knock_respond with its exact turn_id. If it is done, summarize the result to the user.";
360
+ const inspectionGuidance = callbackOffer === "interaction_refresh_required" ||
361
+ callbackOffer === "interaction_manual_required"
354
362
  ? "Do not inspect files, processes, sessions, stdout, or stderr. The only authorized live refresh for this callback is agent_knock_knock_status with its exact turn_id."
355
363
  : "Do not poll files, processes, sessions, stdout, or stderr. Use only the structured callback payload below.";
356
364
  return {
@@ -384,11 +392,13 @@ function formatCallbackInjection({ message, sessionId, turnId, statePath, callba
384
392
  ? formatApprovalRefreshShortcut(turnId)
385
393
  : callbackOffer === "interaction_refresh_required"
386
394
  ? formatInteractionRefreshShortcut(turnId)
387
- : type === "done"
388
- ? formatDoneShortcuts(sessionId, turnId)
389
- : message.requires_response === true || type === "question" || type === "blocked"
390
- ? formatRespondShortcut(turnId)
391
- : "";
395
+ : callbackOffer === "interaction_manual_required"
396
+ ? ""
397
+ : type === "done"
398
+ ? formatDoneShortcuts(sessionId, turnId)
399
+ : message.requires_response === true || type === "question" || type === "blocked"
400
+ ? formatRespondShortcut(turnId)
401
+ : "";
392
402
  return [
393
403
  "[Agent Knock Knock callback]",
394
404
  `Session: ${sessionId}`,