@scotthuang/agent-knock-knock 0.13.10 → 0.13.12

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 (145) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +9 -2
  3. package/dist/src/codex-app-server-interaction-client.d.ts +72 -0
  4. package/dist/src/codex-app-server-interaction-client.js +310 -0
  5. package/dist/src/codex-app-server-interaction-client.js.map +1 -0
  6. package/dist/src/codex-app-server-questionnaire.d.ts +73 -0
  7. package/dist/src/codex-app-server-questionnaire.js +366 -0
  8. package/dist/src/codex-app-server-questionnaire.js.map +1 -0
  9. package/dist/src/codex-app-server-read-client.d.ts +118 -0
  10. package/dist/src/codex-app-server-read-client.js +300 -0
  11. package/dist/src/codex-app-server-read-client.js.map +1 -0
  12. package/dist/src/codex-app-server-transport.d.ts +11 -0
  13. package/dist/src/codex-app-server-transport.js +47 -0
  14. package/dist/src/codex-app-server-transport.js.map +1 -0
  15. package/dist/src/codex-async-question-adapter.d.ts +5 -0
  16. package/dist/src/codex-async-question-adapter.js +58 -17
  17. package/dist/src/codex-async-question-adapter.js.map +1 -1
  18. package/dist/src/codex-fullscreen-composer-proof.d.ts +23 -0
  19. package/dist/src/codex-fullscreen-composer-proof.js +124 -0
  20. package/dist/src/codex-fullscreen-composer-proof.js.map +1 -0
  21. package/dist/src/codex-lifecycle-compatibility.d.ts +10 -0
  22. package/dist/src/codex-lifecycle-compatibility.js +30 -3
  23. package/dist/src/codex-lifecycle-compatibility.js.map +1 -1
  24. package/dist/src/codex-paginated-answer-proof.d.ts +25 -0
  25. package/dist/src/codex-paginated-answer-proof.js +189 -0
  26. package/dist/src/codex-paginated-answer-proof.js.map +1 -0
  27. package/dist/src/codex-paginated-async-answer.d.ts +36 -0
  28. package/dist/src/codex-paginated-async-answer.js +321 -0
  29. package/dist/src/codex-paginated-async-answer.js.map +1 -0
  30. package/dist/src/codex-paginated-async-response.d.ts +21 -0
  31. package/dist/src/codex-paginated-async-response.js +116 -0
  32. package/dist/src/codex-paginated-async-response.js.map +1 -0
  33. package/dist/src/codex-paginated-observation.d.ts +30 -0
  34. package/dist/src/codex-paginated-observation.js +139 -0
  35. package/dist/src/codex-paginated-observation.js.map +1 -0
  36. package/dist/src/codex-paginated-questionnaire-runtime.d.ts +33 -0
  37. package/dist/src/codex-paginated-questionnaire-runtime.js +157 -0
  38. package/dist/src/codex-paginated-questionnaire-runtime.js.map +1 -0
  39. package/dist/src/codex-paginated-task.d.ts +77 -0
  40. package/dist/src/codex-paginated-task.js +440 -0
  41. package/dist/src/codex-paginated-task.js.map +1 -0
  42. package/dist/src/codex-paginated-thread-binding.d.ts +18 -0
  43. package/dist/src/codex-paginated-thread-binding.js +55 -0
  44. package/dist/src/codex-paginated-thread-binding.js.map +1 -0
  45. package/dist/src/codex-paginated-thread-facts.d.ts +10 -0
  46. package/dist/src/codex-paginated-thread-facts.js +2 -0
  47. package/dist/src/codex-paginated-thread-facts.js.map +1 -0
  48. package/dist/src/codex-paginated-watch.d.ts +29 -0
  49. package/dist/src/codex-paginated-watch.js +107 -0
  50. package/dist/src/codex-paginated-watch.js.map +1 -0
  51. package/dist/src/codex-session-provider.d.ts +6 -0
  52. package/dist/src/codex-session-provider.js +15 -2
  53. package/dist/src/codex-session-provider.js.map +1 -1
  54. package/dist/src/codex-store-adapter.d.ts +1 -0
  55. package/dist/src/codex-store-adapter.js +24 -6
  56. package/dist/src/codex-store-adapter.js.map +1 -1
  57. package/dist/src/codex-terminal-agent-adapter.js +53 -2
  58. package/dist/src/codex-terminal-agent-adapter.js.map +1 -1
  59. package/dist/src/doctor-capabilities.d.ts +2 -2
  60. package/dist/src/doctor-capabilities.js +7 -4
  61. package/dist/src/doctor-capabilities.js.map +1 -1
  62. package/dist/src/install-doctor-command-adapter.js +1 -1
  63. package/dist/src/install-doctor-command-adapter.js.map +1 -1
  64. package/dist/src/native-thread-lifecycle-cli-adapter.js +4 -1
  65. package/dist/src/native-thread-lifecycle-cli-adapter.js.map +1 -1
  66. package/dist/src/store.d.ts +1 -1
  67. package/dist/src/store.js +2 -2
  68. package/dist/src/store.js.map +1 -1
  69. package/dist/src/terminal-agent-adapter.d.ts +3 -0
  70. package/dist/src/terminal-agent-adapter.js.map +1 -1
  71. package/dist/src/terminal-agent-bridge.d.ts +13 -5
  72. package/dist/src/terminal-agent-bridge.js +27 -103
  73. package/dist/src/terminal-agent-bridge.js.map +1 -1
  74. package/dist/src/terminal-approval-fingerprint.d.ts +7 -0
  75. package/dist/src/terminal-approval-fingerprint.js +107 -0
  76. package/dist/src/terminal-approval-fingerprint.js.map +1 -0
  77. package/dist/src/terminal-command-cli-ports.d.ts +1 -0
  78. package/dist/src/terminal-command-dispatch-preparation.js +7 -0
  79. package/dist/src/terminal-command-dispatch-preparation.js.map +1 -1
  80. package/dist/src/terminal-composer-classifier.js +38 -1
  81. package/dist/src/terminal-composer-classifier.js.map +1 -1
  82. package/dist/src/terminal-control-provider.d.ts +6 -2
  83. package/dist/src/terminal-control-provider.js +4 -4
  84. package/dist/src/terminal-control-provider.js.map +1 -1
  85. package/dist/src/terminal-human-explicit-send-cli-adapter.js +22 -15
  86. package/dist/src/terminal-human-explicit-send-cli-adapter.js.map +1 -1
  87. package/dist/src/terminal-interaction-core.js +2 -1
  88. package/dist/src/terminal-interaction-core.js.map +1 -1
  89. package/dist/src/terminal-interaction-response-bridge.d.ts +21 -1
  90. package/dist/src/terminal-interaction-response-bridge.js +147 -3
  91. package/dist/src/terminal-interaction-response-bridge.js.map +1 -1
  92. package/dist/src/terminal-list-cli-adapter.js +4 -4
  93. package/dist/src/terminal-list-cli-adapter.js.map +1 -1
  94. package/dist/src/terminal-list-facts.d.ts +1 -1
  95. package/dist/src/terminal-list-facts.js +1 -1
  96. package/dist/src/terminal-list-facts.js.map +1 -1
  97. package/dist/src/terminal-list-renderer.js +1 -1
  98. package/dist/src/terminal-list-renderer.js.map +1 -1
  99. package/dist/src/terminal-managed-send-cli-adapter.d.ts +1 -1
  100. package/dist/src/terminal-managed-send-cli-adapter.js +27 -0
  101. package/dist/src/terminal-managed-send-cli-adapter.js.map +1 -1
  102. package/dist/src/terminal-model-control-bridge.d.ts +1 -1
  103. package/dist/src/terminal-model-control-bridge.js +1 -1
  104. package/dist/src/terminal-model-control-bridge.js.map +1 -1
  105. package/dist/src/terminal-model-control-profile.d.ts +2 -1
  106. package/dist/src/terminal-model-control-profile.js +24 -1
  107. package/dist/src/terminal-model-control-profile.js.map +1 -1
  108. package/dist/src/terminal-model-control.js +61 -21
  109. package/dist/src/terminal-model-control.js.map +1 -1
  110. package/dist/src/terminal-native-inspection-bridge.d.ts +6 -1
  111. package/dist/src/terminal-native-inspection-bridge.js +118 -81
  112. package/dist/src/terminal-native-inspection-bridge.js.map +1 -1
  113. package/dist/src/terminal-questionnaire-adapter.js +19 -16
  114. package/dist/src/terminal-questionnaire-adapter.js.map +1 -1
  115. package/dist/src/terminal-runtime-cli-adapter.js +16 -0
  116. package/dist/src/terminal-runtime-cli-adapter.js.map +1 -1
  117. package/dist/src/terminal-send-watch-policy.d.ts +38 -0
  118. package/dist/src/terminal-send-watch-policy.js +77 -0
  119. package/dist/src/terminal-send-watch-policy.js.map +1 -0
  120. package/dist/src/terminal-submission-acceptance.js +56 -10
  121. package/dist/src/terminal-submission-acceptance.js.map +1 -1
  122. package/dist/src/terminal-submission-facts.d.ts +1 -1
  123. package/dist/src/terminal-submission-facts.js +11 -9
  124. package/dist/src/terminal-submission-facts.js.map +1 -1
  125. package/dist/src/terminal-watch-cli-adapter.d.ts +9 -1
  126. package/dist/src/terminal-watch-cli-adapter.js +198 -210
  127. package/dist/src/terminal-watch-cli-adapter.js.map +1 -1
  128. package/dist/src/terminal-watch-codec.js +23 -1
  129. package/dist/src/terminal-watch-codec.js.map +1 -1
  130. package/dist/src/terminal-watch-interaction-runtime.js +27 -6
  131. package/dist/src/terminal-watch-interaction-runtime.js.map +1 -1
  132. package/dist/src/terminal-watch-presentation.d.ts +4 -0
  133. package/dist/src/terminal-watch-presentation.js +153 -0
  134. package/dist/src/terminal-watch-presentation.js.map +1 -0
  135. package/dist/src/terminal-watch-record.d.ts +4 -2
  136. package/dist/src/terminal-watch-record.js +15 -10
  137. package/dist/src/terminal-watch-record.js.map +1 -1
  138. package/dist/src/terminal-watch-service.js +13 -1
  139. package/dist/src/terminal-watch-service.js.map +1 -1
  140. package/docs/codex-0.157.1-compatibility.md +77 -0
  141. package/docs/codex-0.158.0-compatibility.md +129 -0
  142. package/docs/quickstart-herdr.md +3 -3
  143. package/docs/quickstart-tmux.md +4 -4
  144. package/package.json +7 -3
  145. package/templates/openclaw-skills/agent-knock-knock/SKILL.md +15 -13
@@ -1,4 +1,5 @@
1
1
  import { createHash } from "node:crypto";
2
+ import { captureCodexFullscreenComposerFrame, CODEX_FULLSCREEN_COMPOSER_VERSION, exactCodexFullscreenSlashComposerCapture } from "./codex-fullscreen-composer-proof.js";
2
3
  import { TerminalControlInputNotSentError } from "./terminal-control-provider.js";
3
4
  import { sameTerminalControlIncarnation } from "./terminal-control-ref.js";
4
5
  import { CODEX_EXACT_CANDIDATE_GRACE_CAPTURES, CODEX_MULTILINE_SETTLE_POLL_MS, CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES, CODEX_MULTILINE_STABLE_CAPTURES, CODEX_PASTE_ENTER_SETTLE_MS } from "./terminal-text-submission-bridge.js";
@@ -50,6 +51,10 @@ const CODEX_NATIVE_STATUS_POPUP_BY_PROFILE = {
50
51
  " /status show current session configuration and token usage",
51
52
  " /statusline configure which items appear in the status line"
52
53
  ],
54
+ "codex-tui-0.158.0": [
55
+ "› /status show current session configuration and token usage",
56
+ " /statusline configure which items appear in the status line"
57
+ ],
53
58
  "codex-tui-generic-v1": [
54
59
  " /status show current session configuration and token usage",
55
60
  " /statusline configure which items appear in the status line"
@@ -72,6 +77,7 @@ const CODEX_NATIVE_STATUS_MIN_VIEWPORT_BY_PROFILE = {
72
77
  "codex-tui-0.153.4": 80,
73
78
  "codex-tui-0.154.0": 80,
74
79
  "codex-tui-0.155.1": 80,
80
+ "codex-tui-0.158.0": 80,
75
81
  "codex-tui-generic-v1": 80
76
82
  };
77
83
  const CLAUDE_NATIVE_STATUS_POPUP_BY_PROFILE = {
@@ -250,6 +256,10 @@ export class TerminalNativeInspectionBridge {
250
256
  * composer and terminal-identity fences used by native inspection.
251
257
  */
252
258
  async submitCodexStatusProbe(terminalControl, agentVersion, options = {}) {
259
+ if (options.allowWorkingCodexStatus && (agentVersion !== CODEX_FULLSCREEN_COMPOSER_VERSION ||
260
+ options.runtime?.agentVersion !== CODEX_FULLSCREEN_COMPOSER_VERSION)) {
261
+ throw nativeInspectionSubmissionError("not_started", new Error("working native status requires the exact Codex 0.158.0 runtime"), "unsupported_profile");
262
+ }
253
263
  const adapter = this.registry.require("codex");
254
264
  let plan;
255
265
  try {
@@ -268,7 +278,10 @@ export class TerminalNativeInspectionBridge {
268
278
  catch (error) {
269
279
  throw nativeInspectionSubmissionError("not_started", error, "unsupported_profile");
270
280
  }
271
- const result = await this.submitClosedNativeInspection("codex", terminalControl, plan, options, { requireCodexReadyComposer: true });
281
+ const result = await this.submitClosedNativeInspection("codex", terminalControl, plan, options, {
282
+ requireCodexReadyComposer: true,
283
+ allowWorkingCodexStatus: options.allowWorkingCodexStatus === true
284
+ });
272
285
  if (!result.preTextScreenDigest) {
273
286
  throw new Error("Codex /status pre-text composer evidence is missing");
274
287
  }
@@ -312,7 +325,7 @@ export class TerminalNativeInspectionBridge {
312
325
  let preTextScreenDigest;
313
326
  if (safety.requireCodexReadyComposer) {
314
327
  try {
315
- const ready = await this.captureCodexReadyComposer(adapter, verifiedForText, plan, options.runtime);
328
+ const ready = await this.captureCodexReadyComposer(adapter, verifiedForText, plan, options.runtime, safety.allowWorkingCodexStatus);
316
329
  verifiedForText = ready.terminalControl;
317
330
  preTextScreenDigest = ready.screenDigest;
318
331
  }
@@ -336,7 +349,7 @@ export class TerminalNativeInspectionBridge {
336
349
  }
337
350
  let settled;
338
351
  try {
339
- settled = await this.settleNativeInspectionComposer(adapter, terminalControl, plan, options.runtime);
352
+ settled = await this.settleNativeInspectionComposer(adapter, terminalControl, plan, options.runtime, safety.allowWorkingCodexStatus);
340
353
  await options.beforeEnter?.({
341
354
  agent: adapter.agent,
342
355
  terminalControl: settled.terminalControl,
@@ -354,7 +367,7 @@ export class TerminalNativeInspectionBridge {
354
367
  // human input while that proof is in flight. Keep the exact composer
355
368
  // capture as the final substantive asynchronous evidence before the
356
369
  // single Enter attempt.
357
- settled = await this.revalidateNativeInspectionComposer(adapter, settled.terminalControl, plan, settled.materialization, options.runtime);
370
+ settled = await this.revalidateNativeInspectionComposer(adapter, settled.terminalControl, plan, settled.materialization, options.runtime, safety.allowWorkingCodexStatus);
358
371
  }
359
372
  catch (error) {
360
373
  throw nativeInspectionSubmissionError("text_injected", error, "composer_not_exact");
@@ -486,7 +499,7 @@ export class TerminalNativeInspectionBridge {
486
499
  throw new NativeInspectionDismissalError(error instanceof Error ? error.message : String(error), { cause: error });
487
500
  }
488
501
  }
489
- async captureCodexReadyComposer(adapter, terminalControl, plan, runtime) {
502
+ async captureCodexReadyComposer(adapter, terminalControl, plan, runtime, allowWorkingCodexStatus = false) {
490
503
  if (adapter.agent !== "codex") {
491
504
  throw new NativeInspectionDiagnosticError("unsupported_profile", "the closed Codex /status probe requires the Codex adapter");
492
505
  }
@@ -494,71 +507,8 @@ export class TerminalNativeInspectionBridge {
494
507
  if (minimumViewport === undefined) {
495
508
  throw new NativeInspectionDiagnosticError("unsupported_profile", `Codex ${plan.behaviorProfile} has no exact /status viewport profile`);
496
509
  }
497
- const captureReady = async (control) => {
498
- const verified = await this.verifyTerminalIdentity(adapter.agent, control, runtime);
499
- const endpoint = this.terminalProvider.endpoint(verified);
500
- const viewportInspector = this.terminalProvider.inspectViewport;
501
- let exactViewport;
502
- let viewportUnavailableReason = "terminal provider has no exact viewport inspector";
503
- if (viewportInspector) {
504
- let viewport;
505
- try {
506
- viewport = await viewportInspector.call(this.terminalProvider, endpoint);
507
- }
508
- catch (error) {
509
- throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status viewport inspection failed before terminal input: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
510
- }
511
- if (viewport) {
512
- if (!Number.isSafeInteger(viewport.columns) ||
513
- viewport.columns <= 0 ||
514
- !Number.isSafeInteger(viewport.rows) ||
515
- viewport.rows <= 0) {
516
- throw new NativeInspectionDiagnosticError("viewport_unavailable", "Codex /status viewport inspector returned invalid geometry");
517
- }
518
- exactViewport = viewport.columns;
519
- }
520
- else {
521
- viewportUnavailableReason =
522
- "terminal provider could not prove exact viewport geometry";
523
- }
524
- }
525
- const styledScreen = await this.terminalProvider.capture(endpoint, { scrollbackLines: 40, preserveEscapes: true });
526
- const plainScreen = stripTerminalEscapeSequences(styledScreen);
527
- const inspection = adapter.inspectScreen({ screen: plainScreen, runtime });
528
- assertNativeInspectionComposerSafe(inspection, adapter.displayName);
529
- const composer = exactCodexReadyStyledComposerCapture(styledScreen);
530
- if (!composer) {
531
- throw new NativeInspectionDiagnosticError("composer_not_ready", "Codex composer contains non-placeholder input or is not at the exact idle prompt");
532
- }
533
- const inferredViewport = inferCodexVisibleViewportColumns(styledScreen);
534
- const observedViewport = exactViewport ?? inferredViewport;
535
- if ((observedViewport !== undefined && observedViewport < minimumViewport) ||
536
- hasTruncatedCodexStatusSessionLine(plainScreen)) {
537
- throw new NativeInspectionDiagnosticError("viewport_too_narrow", `Codex /status requires a proven viewport of at least ` +
538
- `${minimumViewport} columns to preserve the complete Session UUID` +
539
- `${observedViewport === undefined
540
- ? ""
541
- : `; observed ${observedViewport}`}; widen or zoom the pane before retrying`);
542
- }
543
- if (exactViewport === undefined) {
544
- throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status requires exact terminal viewport geometry before input; ` +
545
- viewportUnavailableReason +
546
- `${inferredViewport === undefined
547
- ? ""
548
- : ` (ANSI fallback estimated ${inferredViewport} columns)`}`);
549
- }
550
- const reverified = await this.verifyTerminalIdentity(adapter.agent, verified, runtime);
551
- if (!sameTerminalControlIdentity(verified, reverified)) {
552
- throw new NativeInspectionDiagnosticError("identity_unverified", "terminal control identity changed after the Codex pre-text composer capture");
553
- }
554
- return {
555
- terminalControl: reverified,
556
- screenDigest: nativeInspectionScreenFingerprint(styledScreen),
557
- composerDigest: composer.digest
558
- };
559
- };
560
- const first = await captureReady(terminalControl);
561
- const second = await captureReady(first.terminalControl);
510
+ const first = await this.captureCodexReadyComposerFrame(adapter, terminalControl, minimumViewport, runtime, allowWorkingCodexStatus);
511
+ const second = await this.captureCodexReadyComposerFrame(adapter, first.terminalControl, minimumViewport, runtime, allowWorkingCodexStatus);
562
512
  if (second.composerDigest !== first.composerDigest) {
563
513
  throw new NativeInspectionDiagnosticError("composer_not_ready", "Codex empty composer changed across its stable pre-text captures");
564
514
  }
@@ -567,6 +517,66 @@ export class TerminalNativeInspectionBridge {
567
517
  screenDigest: second.screenDigest
568
518
  };
569
519
  }
520
+ async captureCodexReadyComposerFrame(adapter, control, minimumViewport, runtime, allowWorkingCodexStatus = false) {
521
+ const verified = await this.verifyTerminalIdentity(adapter.agent, control, runtime);
522
+ const endpoint = this.terminalProvider.endpoint(verified);
523
+ const { exactViewport, viewportUnavailableReason } = await this.captureCodexStatusViewportBeforeInput(endpoint);
524
+ const styledScreen = await this.terminalProvider.capture(endpoint, { scrollbackLines: 40, preserveEscapes: true });
525
+ const plainScreen = stripTerminalEscapeSequences(styledScreen);
526
+ const inspection = adapter.inspectScreen({ screen: plainScreen, runtime });
527
+ assertNativeInspectionComposerSafe(inspection, adapter.displayName, allowWorkingCodexStatus);
528
+ const composer = exactCodexReadyStyledComposerCapture(styledScreen, runtime?.agentVersion);
529
+ if (!composer) {
530
+ throw new NativeInspectionDiagnosticError("composer_not_ready", "Codex composer contains non-placeholder input or is not at the exact idle prompt");
531
+ }
532
+ const inferredViewport = inferCodexVisibleViewportColumns(styledScreen);
533
+ const observedViewport = exactViewport ?? inferredViewport;
534
+ if ((observedViewport !== undefined && observedViewport < minimumViewport) ||
535
+ hasTruncatedCodexStatusSessionLine(plainScreen)) {
536
+ throw new NativeInspectionDiagnosticError("viewport_too_narrow", `Codex /status requires a proven viewport of at least ` +
537
+ `${minimumViewport} columns to preserve the complete Session UUID` +
538
+ `${observedViewport === undefined
539
+ ? ""
540
+ : `; observed ${observedViewport}`}; widen or zoom the pane before retrying`);
541
+ }
542
+ if (exactViewport === undefined) {
543
+ throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status requires exact terminal viewport geometry before input; ` +
544
+ viewportUnavailableReason + `${inferredViewport === undefined
545
+ ? "" : ` (ANSI fallback estimated ${inferredViewport} columns)`}`);
546
+ }
547
+ const reverified = await this.verifyTerminalIdentity(adapter.agent, verified, runtime);
548
+ if (!sameTerminalControlIdentity(verified, reverified)) {
549
+ throw new NativeInspectionDiagnosticError("identity_unverified", "terminal control identity changed after the Codex pre-text composer capture");
550
+ }
551
+ return { terminalControl: reverified,
552
+ screenDigest: nativeInspectionScreenFingerprint(styledScreen), composerDigest: composer.digest };
553
+ }
554
+ async captureCodexStatusViewportBeforeInput(endpoint) {
555
+ const inspector = this.terminalProvider.inspectViewport;
556
+ if (!inspector)
557
+ return {
558
+ viewportUnavailableReason: "terminal provider has no exact viewport inspector"
559
+ };
560
+ let viewport;
561
+ try {
562
+ viewport = await inspector.call(this.terminalProvider, endpoint);
563
+ }
564
+ catch (error) {
565
+ throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status viewport inspection failed before terminal input: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
566
+ }
567
+ if (!viewport)
568
+ return {
569
+ viewportUnavailableReason: "terminal provider could not prove exact viewport geometry"
570
+ };
571
+ if (!Number.isSafeInteger(viewport.columns) || viewport.columns <= 0 ||
572
+ !Number.isSafeInteger(viewport.rows) || viewport.rows <= 0) {
573
+ throw new NativeInspectionDiagnosticError("viewport_unavailable", "Codex /status viewport inspector returned invalid geometry");
574
+ }
575
+ return {
576
+ exactViewport: viewport.columns,
577
+ viewportUnavailableReason: "terminal provider has no exact viewport inspector"
578
+ };
579
+ }
570
580
  async assertFinalCodexStatusViewport(terminalControl, plan, runtime) {
571
581
  const minimumViewport = CODEX_NATIVE_STATUS_MIN_VIEWPORT_BY_PROFILE[plan.behaviorProfile];
572
582
  if (minimumViewport === undefined) {
@@ -601,7 +611,7 @@ export class TerminalNativeInspectionBridge {
601
611
  }
602
612
  return reverified;
603
613
  }
604
- async settleNativeInspectionComposer(adapter, terminalControl, plan, runtime) {
614
+ async settleNativeInspectionComposer(adapter, terminalControl, plan, runtime, allowWorkingCodexStatus = false) {
605
615
  const startedAt = this.nowMs();
606
616
  const settleTimeoutMs = plan.composer.maximumSettleMs;
607
617
  let stableDigest;
@@ -615,7 +625,7 @@ export class TerminalNativeInspectionBridge {
615
625
  runtime,
616
626
  scrollbackLines: CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES
617
627
  });
618
- assertNativeInspectionComposerSafe(captured.inspection);
628
+ assertNativeInspectionComposerSafe(captured.inspection, adapter.displayName, allowWorkingCodexStatus);
619
629
  const materialized = exactNativeInspectionComposerCapture(adapter.agent, captured.screen, plan);
620
630
  const now = this.nowMs();
621
631
  if (materialized) {
@@ -638,7 +648,7 @@ export class TerminalNativeInspectionBridge {
638
648
  stableForMs,
639
649
  stableCaptures
640
650
  };
641
- return this.revalidateNativeInspectionComposer(adapter, captured.terminalControl, plan, evidence, runtime);
651
+ return this.revalidateNativeInspectionComposer(adapter, captured.terminalControl, plan, evidence, runtime, allowWorkingCodexStatus);
642
652
  }
643
653
  }
644
654
  else {
@@ -671,12 +681,12 @@ export class TerminalNativeInspectionBridge {
671
681
  ? `${adapter.displayName} /status slash popup was truncated by the viewport; widen or zoom the pane before retrying manually`
672
682
  : `${adapter.displayName} /status composer did not become exact, idle, and stable before the bounded submit deadline`);
673
683
  }
674
- async revalidateNativeInspectionComposer(adapter, terminalControl, plan, expected, runtime) {
684
+ async revalidateNativeInspectionComposer(adapter, terminalControl, plan, expected, runtime, allowWorkingCodexStatus = false) {
675
685
  const captured = await this.captureInspection(adapter, terminalControl, {
676
686
  runtime,
677
687
  scrollbackLines: CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES
678
688
  });
679
- assertNativeInspectionComposerSafe(captured.inspection);
689
+ assertNativeInspectionComposerSafe(captured.inspection, adapter.displayName, allowWorkingCodexStatus);
680
690
  const materialized = exactNativeInspectionComposerCapture(adapter.agent, captured.screen, plan);
681
691
  if (!materialized ||
682
692
  materialized.digest !== expected.digest ||
@@ -697,13 +707,29 @@ export class TerminalNativeInspectionBridge {
697
707
  if (!sameTerminalControlIdentity(captured.terminalControl, verifiedImmediatelyBeforeEnter)) {
698
708
  throw new NativeInspectionDiagnosticError("identity_unverified", `terminal control identity changed after the final ${adapter.displayName} /status composer capture`);
699
709
  }
710
+ const finalScreen = plan.behaviorProfile === "codex-tui-0.158.0"
711
+ ? await this.captureCodexStyledStatusPopup(verifiedImmediatelyBeforeEnter, plan, expected, runtime, allowWorkingCodexStatus)
712
+ : captured.screen;
700
713
  return {
701
714
  terminalControl: verifiedImmediatelyBeforeEnter,
702
- screenDigest: nativeInspectionScreenFingerprint(captured.screen),
715
+ screenDigest: nativeInspectionScreenFingerprint(finalScreen),
703
716
  evidenceInventory: baseline.evidenceInventory,
704
717
  materialization: expected
705
718
  };
706
719
  }
720
+ async captureCodexStyledStatusPopup(control, plan, expected, runtime, allowWorking = false) {
721
+ const styledScreen = await this.terminalProvider.capture(this.terminalProvider.endpoint(control), { scrollbackLines: CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES, preserveEscapes: true });
722
+ const plainScreen = stripTerminalEscapeSequences(styledScreen);
723
+ const adapter = this.registry.require("codex");
724
+ assertNativeInspectionComposerSafe(adapter.inspectScreen({ screen: plainScreen, runtime }), adapter.displayName, allowWorking);
725
+ const styled = exactCodexFullscreenSlashComposerCapture(styledScreen, plan.command, CODEX_NATIVE_STATUS_POPUP_BY_PROFILE[plan.behaviorProfile] ?? [], true);
726
+ const materialized = exactNativeInspectionComposerCapture("codex", plainScreen, plan);
727
+ if (!styled || !materialized || materialized.digest !== expected.digest ||
728
+ materialized.kind !== expected.kind) {
729
+ throw new NativeInspectionDiagnosticError("composer_drift", "Codex fullscreen /status lost its exact styled popup before Enter");
730
+ }
731
+ return styledScreen;
732
+ }
707
733
  }
708
734
  function sameTerminalControlIdentity(left, right) {
709
735
  return sameTerminalControlIncarnation(left, right);
@@ -794,10 +820,10 @@ function assertClosedNativeInspectionDismissal(plan) {
794
820
  throw new Error("native inspection has no closed modal dismissal plan");
795
821
  }
796
822
  }
797
- function assertNativeInspectionComposerSafe(inspection, displayName = "terminal agent") {
823
+ function assertNativeInspectionComposerSafe(inspection, displayName = "terminal agent", allowWorkingCodexStatus = false) {
798
824
  if (inspection.approval.blocked ||
799
825
  inspection.activity.state === "awaiting_approval" ||
800
- inspection.activity.state === "working") {
826
+ inspection.activity.state === "working" && !allowWorkingCodexStatus) {
801
827
  throw new NativeInspectionDiagnosticError("composer_not_ready", `${displayName} became busy or blocked while its /status composer was settling`);
802
828
  }
803
829
  // Codex's generic activity parser deliberately reports a non-empty slash
@@ -812,6 +838,10 @@ function exactNativeInspectionComposerCapture(agent, screen, plan) {
812
838
  : exactClaudeNativeInspectionComposerCapture(screen, plan);
813
839
  }
814
840
  function exactCodexNativeInspectionComposerCapture(screen, plan) {
841
+ if (plan.behaviorProfile === "codex-tui-0.158.0") {
842
+ const captured = exactCodexFullscreenSlashComposerCapture(stripTerminalEscapeSequences(screen), plan.command, CODEX_NATIVE_STATUS_POPUP_BY_PROFILE[plan.behaviorProfile]);
843
+ return captured && { digest: captured.digest, kind: "exact_slash_popup" };
844
+ }
815
845
  const lines = screen.replace(/\r\n?/gu, "\n").split("\n");
816
846
  let currentComposerIndex = -1;
817
847
  for (let index = lines.length - 1; index >= 0; index -= 1) {
@@ -981,9 +1011,16 @@ function bareDigestFromNativeInspectionScreenFingerprint(fingerprint) {
981
1011
  return match[1];
982
1012
  }
983
1013
  export function stripTerminalEscapeSequences(value) {
984
- return value.replace(/\x1B(?:\[[0-?]*[ -/]*[@-~]|\][^\x07]*(?:\x07|\x1B\\))/gu, "");
1014
+ return value.replace(/\x1B(?:\[[0-?]*[ -/]*[@-~]|\][^\x07\x1B]*(?:\x07|\x1B\\))/gu, "");
985
1015
  }
986
- export function exactCodexReadyStyledComposerCapture(screen) {
1016
+ export function exactCodexReadyStyledComposerCapture(screen, agentVersion) {
1017
+ if (agentVersion === CODEX_FULLSCREEN_COMPOSER_VERSION) {
1018
+ const frame = captureCodexFullscreenComposerFrame(screen, agentVersion);
1019
+ if (!frame || !frame.hasShortcutFooter ||
1020
+ !["", "Ask Codex to do anything"].includes(frame.composerText)) {
1021
+ return undefined;
1022
+ }
1023
+ }
987
1024
  const lines = screen.replace(/\r\n?/gu, "\n").split("\n");
988
1025
  while (lines.length > 0 &&
989
1026
  stripTerminalEscapeSequences(lines.at(-1) ?? "").trim().length === 0) {
@@ -997,7 +1034,7 @@ export function exactCodexReadyStyledComposerCapture(screen) {
997
1034
  const visible = [];
998
1035
  for (let index = 0; index < composerLine.length;) {
999
1036
  if (composerLine[index] === "\x1b") {
1000
- const escape = /^(?:\x1B\[([0-9;]*)m|\x1B\][^\x07]*(?:\x07|\x1B\\))/u
1037
+ const escape = /^(?:\x1B\[([0-9;]*)m|\x1B\][^\x07\x1B]*(?:\x07|\x1B\\))/u
1001
1038
  .exec(composerLine.slice(index));
1002
1039
  if (escape) {
1003
1040
  if (escape[1] !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-native-inspection-bridge.js","sourceRoot":"","sources":["../../src/terminal-native-inspection-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-native-inspection-bridge.js","sourceRoot":"","sources":["../../src/terminal-native-inspection-bridge.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,8 @@ export const CLAUDE_NATIVE_QUESTIONNAIRE_PROFILES = Object.freeze({
7
7
  export const CODEX_NATIVE_QUESTIONNAIRE_PROFILES = Object.freeze({
8
8
  "0.153.4": "codex/0.153.4/request-user-input-v3",
9
9
  "0.154.0": "codex/0.154.0/request-user-input-v3",
10
- "0.155.1": "codex/0.155.1/request-user-input-v3"
10
+ "0.155.1": "codex/0.155.1/request-user-input-v3",
11
+ "0.158.0": "codex/0.158.0/request-user-input-v4"
11
12
  });
12
13
  export const NATIVE_QUESTIONNAIRE_PROFILES = Object.freeze({
13
14
  // Compatibility export for the original questionnaire profile. New Claude
@@ -33,7 +34,7 @@ const MAX_TEXT_ANSWER_CHARACTERS = 4_096;
33
34
  // custom-text editor has the same placeholder proof as managed Send, keep a
34
35
  // semantic response strictly below that boundary.
35
36
  const MAX_CLAUDE_TEXT_ANSWER_CHARACTERS = 799;
36
- const ANSI_SEQUENCE_PATTERN = /[\u001B\u009B](?:(?:\[[0-?]*[ -/]*[@-~])|(?:\][^\u0007]*(?:\u0007|\u001B\\))|.)/gu;
37
+ const ANSI_SEQUENCE_PATTERN = /[\u001B\u009B](?:(?:\[[0-?]*[ -/]*[@-~])|(?:\][^\u0007\u001B]*(?:\u0007|\u001B\\))|.)/gu;
37
38
  const UNSAFE_CONTROL_PATTERN = /[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F-\u009F]/u;
38
39
  const SECRET_INPUT_PATTERN = new RegExp([
39
40
  "password",
@@ -523,7 +524,7 @@ function inspectCodexQuestionnaire(options, screen) {
523
524
  ? { ...unanswered, status: "manual_required", reason: "secret_input", action_plan: { kind: "manual_only" } }
524
525
  : unanswered;
525
526
  }
526
- const region = parseCodexQuestionRegion(screen.lines);
527
+ const region = parseCodexQuestionRegion(screen.lines, profile);
527
528
  if (!region) {
528
529
  return manualCandidate("codex", profile, screen.lines, bounds, "changed_shape");
529
530
  }
@@ -628,19 +629,21 @@ function codexFreeTextFooterTips(header) {
628
629
  function codexCustomTextFooterTips(header) {
629
630
  return [CODEX_CLEAR_NOTES_TIP, codexSubmitTip(header)];
630
631
  }
631
- function codexHasCanonicalOther(options) {
632
+ function codexHasCanonicalOther(options, profile) {
632
633
  const other = options.at(-1);
633
634
  return other?.label === CODEX_OTHER_OPTION_LABEL &&
634
- other.description === CODEX_OTHER_OPTION_DESCRIPTION;
635
+ other.description === (profile === "codex/0.158.0/request-user-input-v4"
636
+ ? "Optionally, add details in notes (tab)"
637
+ : CODEX_OTHER_OPTION_DESCRIPTION);
635
638
  }
636
- function codexCustomTextSurfaceProven(options) {
637
- return codexHasCanonicalOther(options) &&
639
+ function codexCustomTextSurfaceProven(options, profile) {
640
+ return codexHasCanonicalOther(options, profile) &&
638
641
  options.filter((option) => option.label === CODEX_CUSTOM_TEXT_LABEL).length <= 1;
639
642
  }
640
- function codexHasUnprovenCustomTextCandidate(options) {
643
+ function codexHasUnprovenCustomTextCandidate(options, profile) {
641
644
  const candidateVisible = options.some((option) => option.label === CODEX_CUSTOM_TEXT_LABEL ||
642
645
  option.label === CODEX_OTHER_OPTION_LABEL);
643
- return candidateVisible && !codexCustomTextSurfaceProven(options);
646
+ return candidateVisible && !codexCustomTextSurfaceProven(options, profile);
644
647
  }
645
648
  /**
646
649
  * Some models emit the Claude-style label from the user request as a normal
@@ -649,8 +652,8 @@ function codexHasUnprovenCustomTextCandidate(options) {
649
652
  * surface. When the alias is absent, codexProjectedChoices adds an equivalent
650
653
  * semantic affordance without claiming that it was rendered by the terminal.
651
654
  */
652
- function isCodexCustomTextOption(option, _index, options) {
653
- return codexCustomTextSurfaceProven(options) &&
655
+ function isCodexCustomTextOption(option, _index, options, profile) {
656
+ return codexCustomTextSurfaceProven(options, profile) &&
654
657
  option.label === CODEX_CUSTOM_TEXT_LABEL;
655
658
  }
656
659
  function codexOpenCustomTextStages(options) {
@@ -673,7 +676,7 @@ function codexOpenCustomTextStages(options) {
673
676
  function codexProjectedChoices(prompt, options, profile) {
674
677
  const normalized = normalizedOptions(profile, prompt, options);
675
678
  const nativeChoices = normalized.map((option, index) => {
676
- const customText = isCodexCustomTextOption(options[index], index, options);
679
+ const customText = isCodexCustomTextOption(options[index], index, options, profile);
677
680
  return {
678
681
  option,
679
682
  action: {
@@ -685,7 +688,7 @@ function codexProjectedChoices(prompt, options, profile) {
685
688
  }
686
689
  };
687
690
  });
688
- if (!codexCustomTextSurfaceProven(options) ||
691
+ if (!codexCustomTextSurfaceProven(options, profile) ||
689
692
  options.some((option) => option.label === CODEX_CUSTOM_TEXT_LABEL)) {
690
693
  return nativeChoices;
691
694
  }
@@ -738,7 +741,7 @@ function matchExactCodexFooter(lines, expectedTips) {
738
741
  }
739
742
  return undefined;
740
743
  }
741
- function parseCodexQuestionRegion(lines) {
744
+ function parseCodexQuestionRegion(lines, profile) {
742
745
  const end = lines.length - 1;
743
746
  const headerIndex = lastIndexMatching(lines, (line) => parseCodexHeader(line) !== undefined, end);
744
747
  const header = headerIndex >= 0 ? parseCodexHeader(lines[headerIndex] ?? "") : undefined;
@@ -777,7 +780,7 @@ function parseCodexQuestionRegion(lines) {
777
780
  const selected = options?.[selectedIndex];
778
781
  if (options &&
779
782
  selected &&
780
- codexHasCanonicalOther(options) &&
783
+ codexHasCanonicalOther(options, profile) &&
781
784
  selectedIndex === options.length - 1) {
782
785
  return {
783
786
  start: headerIndex,
@@ -846,7 +849,7 @@ function codexQuestionInspection(region, lines, explicitSecret, profile) {
846
849
  }
847
850
  if (region.mode === "options" &&
848
851
  region.options !== undefined &&
849
- codexHasUnprovenCustomTextCandidate(region.options)) {
852
+ codexHasUnprovenCustomTextCandidate(region.options, profile)) {
850
853
  return { ...base, status: "manual_required", reason: "changed_shape", action_plan: { kind: "manual_only" } };
851
854
  }
852
855
  if (textMode) {