@patze/code-cli 0.43.3 → 0.55.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 (185) hide show
  1. package/CHANGELOG.md +238 -0
  2. package/README.md +84 -57
  3. package/VERSION +1 -1
  4. package/dist/backend/auth-token-kind.d.ts +3 -0
  5. package/dist/backend/auth-token-kind.d.ts.map +1 -0
  6. package/dist/backend/auth-token-kind.js +6 -0
  7. package/dist/backend/auth-token-kind.js.map +1 -0
  8. package/dist/backend/client.d.ts.map +1 -1
  9. package/dist/backend/client.js +7 -1
  10. package/dist/backend/client.js.map +1 -1
  11. package/dist/backend/execute-client.d.ts +1 -1
  12. package/dist/backend/execute-client.d.ts.map +1 -1
  13. package/dist/backend/execute-client.js +26 -0
  14. package/dist/backend/execute-client.js.map +1 -1
  15. package/dist/backend/plugin-session-client.d.ts +33 -0
  16. package/dist/backend/plugin-session-client.d.ts.map +1 -0
  17. package/dist/backend/plugin-session-client.js +108 -0
  18. package/dist/backend/plugin-session-client.js.map +1 -0
  19. package/dist/backend/runs-client.d.ts.map +1 -1
  20. package/dist/backend/runs-client.js +2 -1
  21. package/dist/backend/runs-client.js.map +1 -1
  22. package/dist/cli/auth/pairing-login.d.ts +10 -0
  23. package/dist/cli/auth/pairing-login.d.ts.map +1 -0
  24. package/dist/cli/auth/pairing-login.js +78 -0
  25. package/dist/cli/auth/pairing-login.js.map +1 -0
  26. package/dist/cli/commands/doctor.d.ts.map +1 -1
  27. package/dist/cli/commands/doctor.js +10 -4
  28. package/dist/cli/commands/doctor.js.map +1 -1
  29. package/dist/cli/commands/exec.d.ts.map +1 -1
  30. package/dist/cli/commands/exec.js +33 -8
  31. package/dist/cli/commands/exec.js.map +1 -1
  32. package/dist/cli/commands/login.d.ts +1 -0
  33. package/dist/cli/commands/login.d.ts.map +1 -1
  34. package/dist/cli/commands/login.js +36 -5
  35. package/dist/cli/commands/login.js.map +1 -1
  36. package/dist/cli/commands/runs-format.d.ts.map +1 -1
  37. package/dist/cli/commands/runs-format.js +2 -1
  38. package/dist/cli/commands/runs-format.js.map +1 -1
  39. package/dist/cli/commands/runs.d.ts.map +1 -1
  40. package/dist/cli/commands/runs.js +63 -5
  41. package/dist/cli/commands/runs.js.map +1 -1
  42. package/dist/cli/commands/status-format.d.ts.map +1 -1
  43. package/dist/cli/commands/status-format.js +4 -3
  44. package/dist/cli/commands/status-format.js.map +1 -1
  45. package/dist/cli/doctor/e2e-readiness.d.ts +12 -0
  46. package/dist/cli/doctor/e2e-readiness.d.ts.map +1 -0
  47. package/dist/cli/doctor/e2e-readiness.js +95 -0
  48. package/dist/cli/doctor/e2e-readiness.js.map +1 -0
  49. package/dist/cli/help.d.ts.map +1 -1
  50. package/dist/cli/help.js +2 -0
  51. package/dist/cli/help.js.map +1 -1
  52. package/dist/cli/interactive/agent-execute-turn.d.ts.map +1 -1
  53. package/dist/cli/interactive/agent-execute-turn.js +3 -1
  54. package/dist/cli/interactive/agent-execute-turn.js.map +1 -1
  55. package/dist/cli/interactive/agent-turn-context.d.ts +2 -2
  56. package/dist/cli/interactive/agent-turn-context.d.ts.map +1 -1
  57. package/dist/cli/interactive/agent-turn-context.js +23 -8
  58. package/dist/cli/interactive/agent-turn-context.js.map +1 -1
  59. package/dist/cli/interactive/agent-turn.d.ts.map +1 -1
  60. package/dist/cli/interactive/agent-turn.js +8 -7
  61. package/dist/cli/interactive/agent-turn.js.map +1 -1
  62. package/dist/cli/interactive/auth-credential-resolve.d.ts +20 -0
  63. package/dist/cli/interactive/auth-credential-resolve.d.ts.map +1 -0
  64. package/dist/cli/interactive/auth-credential-resolve.js +65 -0
  65. package/dist/cli/interactive/auth-credential-resolve.js.map +1 -0
  66. package/dist/cli/interactive/auth-gate.d.ts +1 -1
  67. package/dist/cli/interactive/auth-gate.d.ts.map +1 -1
  68. package/dist/cli/interactive/auth-gate.js +12 -3
  69. package/dist/cli/interactive/auth-gate.js.map +1 -1
  70. package/dist/cli/interactive/auth-readiness.d.ts +16 -0
  71. package/dist/cli/interactive/auth-readiness.d.ts.map +1 -0
  72. package/dist/cli/interactive/auth-readiness.js +50 -0
  73. package/dist/cli/interactive/auth-readiness.js.map +1 -0
  74. package/dist/cli/interactive/codex-feed-writer.d.ts.map +1 -1
  75. package/dist/cli/interactive/codex-feed-writer.js +4 -0
  76. package/dist/cli/interactive/codex-feed-writer.js.map +1 -1
  77. package/dist/cli/interactive/composer-chrome.d.ts +1 -1
  78. package/dist/cli/interactive/composer-chrome.d.ts.map +1 -1
  79. package/dist/cli/interactive/composer-chrome.js +1 -1
  80. package/dist/cli/interactive/composer-chrome.js.map +1 -1
  81. package/dist/cli/interactive/composer-edit-keys.d.ts +21 -0
  82. package/dist/cli/interactive/composer-edit-keys.d.ts.map +1 -0
  83. package/dist/cli/interactive/composer-edit-keys.js +57 -0
  84. package/dist/cli/interactive/composer-edit-keys.js.map +1 -0
  85. package/dist/cli/interactive/ensure-execute-auth.d.ts.map +1 -1
  86. package/dist/cli/interactive/ensure-execute-auth.js +8 -13
  87. package/dist/cli/interactive/ensure-execute-auth.js.map +1 -1
  88. package/dist/cli/interactive/header-refresh-triggers.d.ts +3 -0
  89. package/dist/cli/interactive/header-refresh-triggers.d.ts.map +1 -0
  90. package/dist/cli/interactive/header-refresh-triggers.js +16 -0
  91. package/dist/cli/interactive/header-refresh-triggers.js.map +1 -0
  92. package/dist/cli/interactive/header-refresh.d.ts +4 -0
  93. package/dist/cli/interactive/header-refresh.d.ts.map +1 -0
  94. package/dist/cli/interactive/header-refresh.js +33 -0
  95. package/dist/cli/interactive/header-refresh.js.map +1 -0
  96. package/dist/cli/interactive/header.d.ts +3 -2
  97. package/dist/cli/interactive/header.d.ts.map +1 -1
  98. package/dist/cli/interactive/header.js +23 -14
  99. package/dist/cli/interactive/header.js.map +1 -1
  100. package/dist/cli/interactive/interactive-footer-hints.d.ts +12 -0
  101. package/dist/cli/interactive/interactive-footer-hints.d.ts.map +1 -0
  102. package/dist/cli/interactive/interactive-footer-hints.js +32 -0
  103. package/dist/cli/interactive/interactive-footer-hints.js.map +1 -0
  104. package/dist/cli/interactive/interactive-model-apply.d.ts +15 -0
  105. package/dist/cli/interactive/interactive-model-apply.d.ts.map +1 -0
  106. package/dist/cli/interactive/interactive-model-apply.js +28 -0
  107. package/dist/cli/interactive/interactive-model-apply.js.map +1 -0
  108. package/dist/cli/interactive/interactive-ui.d.ts +13 -0
  109. package/dist/cli/interactive/interactive-ui.d.ts.map +1 -0
  110. package/dist/cli/interactive/interactive-ui.js +64 -0
  111. package/dist/cli/interactive/interactive-ui.js.map +1 -0
  112. package/dist/cli/interactive/launcher.d.ts.map +1 -1
  113. package/dist/cli/interactive/launcher.js +24 -17
  114. package/dist/cli/interactive/launcher.js.map +1 -1
  115. package/dist/cli/interactive/line-editor.d.ts +5 -4
  116. package/dist/cli/interactive/line-editor.d.ts.map +1 -1
  117. package/dist/cli/interactive/line-editor.js +102 -30
  118. package/dist/cli/interactive/line-editor.js.map +1 -1
  119. package/dist/cli/interactive/model-catalog-resolve.d.ts +11 -0
  120. package/dist/cli/interactive/model-catalog-resolve.d.ts.map +1 -0
  121. package/dist/cli/interactive/model-catalog-resolve.js +49 -0
  122. package/dist/cli/interactive/model-catalog-resolve.js.map +1 -0
  123. package/dist/cli/interactive/model-picker-panel.d.ts +22 -2
  124. package/dist/cli/interactive/model-picker-panel.d.ts.map +1 -1
  125. package/dist/cli/interactive/model-picker-panel.js +99 -16
  126. package/dist/cli/interactive/model-picker-panel.js.map +1 -1
  127. package/dist/cli/interactive/model-selector.d.ts.map +1 -1
  128. package/dist/cli/interactive/model-selector.js +3 -2
  129. package/dist/cli/interactive/model-selector.js.map +1 -1
  130. package/dist/cli/interactive/model-tty-picker.d.ts +3 -1
  131. package/dist/cli/interactive/model-tty-picker.d.ts.map +1 -1
  132. package/dist/cli/interactive/model-tty-picker.js +154 -24
  133. package/dist/cli/interactive/model-tty-picker.js.map +1 -1
  134. package/dist/cli/interactive/plain-codex-feed.d.ts.map +1 -1
  135. package/dist/cli/interactive/plain-codex-feed.js +48 -0
  136. package/dist/cli/interactive/plain-codex-feed.js.map +1 -1
  137. package/dist/cli/interactive/run-cancel.d.ts +23 -0
  138. package/dist/cli/interactive/run-cancel.d.ts.map +1 -0
  139. package/dist/cli/interactive/run-cancel.js +67 -0
  140. package/dist/cli/interactive/run-cancel.js.map +1 -0
  141. package/dist/cli/interactive/select-list-nav.d.ts +10 -0
  142. package/dist/cli/interactive/select-list-nav.d.ts.map +1 -0
  143. package/dist/cli/interactive/select-list-nav.js +45 -0
  144. package/dist/cli/interactive/select-list-nav.js.map +1 -0
  145. package/dist/cli/interactive/session-controller.d.ts +1 -0
  146. package/dist/cli/interactive/session-controller.d.ts.map +1 -1
  147. package/dist/cli/interactive/session-controller.js +5 -1
  148. package/dist/cli/interactive/session-controller.js.map +1 -1
  149. package/dist/cli/interactive/session-hints.d.ts +4 -1
  150. package/dist/cli/interactive/session-hints.d.ts.map +1 -1
  151. package/dist/cli/interactive/session-hints.js +23 -16
  152. package/dist/cli/interactive/session-hints.js.map +1 -1
  153. package/dist/cli/interactive/shell.d.ts.map +1 -1
  154. package/dist/cli/interactive/shell.js +17 -7
  155. package/dist/cli/interactive/shell.js.map +1 -1
  156. package/dist/cli/interactive/slash-dispatch.d.ts +2 -0
  157. package/dist/cli/interactive/slash-dispatch.d.ts.map +1 -1
  158. package/dist/cli/interactive/slash-dispatch.js +55 -28
  159. package/dist/cli/interactive/slash-dispatch.js.map +1 -1
  160. package/dist/cli/interactive/slash-menu.d.ts.map +1 -1
  161. package/dist/cli/interactive/slash-menu.js +29 -2
  162. package/dist/cli/interactive/slash-menu.js.map +1 -1
  163. package/dist/cli/interactive/slash-registry.js +2 -2
  164. package/dist/cli/interactive/slash-registry.js.map +1 -1
  165. package/dist/cli/interactive/smoke-trust-fixture.d.ts +10 -0
  166. package/dist/cli/interactive/smoke-trust-fixture.d.ts.map +1 -0
  167. package/dist/cli/interactive/smoke-trust-fixture.js +66 -0
  168. package/dist/cli/interactive/smoke-trust-fixture.js.map +1 -0
  169. package/dist/cli/interactive/tools-catalog.d.ts.map +1 -1
  170. package/dist/cli/interactive/tools-catalog.js +17 -12
  171. package/dist/cli/interactive/tools-catalog.js.map +1 -1
  172. package/dist/config/config.d.ts +2 -0
  173. package/dist/config/config.d.ts.map +1 -1
  174. package/dist/config/config.js +8 -0
  175. package/dist/config/config.js.map +1 -1
  176. package/dist/config/web-ui.d.ts +5 -0
  177. package/dist/config/web-ui.d.ts.map +1 -0
  178. package/dist/config/web-ui.js +12 -0
  179. package/dist/config/web-ui.js.map +1 -0
  180. package/docs/beta-release-handoff.md +56 -29
  181. package/docs/internal-beta.md +6 -3
  182. package/docs/known-limitations.md +32 -19
  183. package/docs/release-checklist.md +11 -3
  184. package/opentui/src/App.tsx +626 -218
  185. package/package.json +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"model-picker-panel.js","sourceRoot":"","sources":["../../../src/cli/interactive/model-picker-panel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-picker-panel.js","sourceRoot":"","sources":["../../../src/cli/interactive/model-picker-panel.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model-selector.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/model-selector.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAOtD,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,iEAAiE;AACjE,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,GAChB,MAAM,EAAE,CAOV;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAwB9B"}
1
+ {"version":3,"file":"model-selector.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/model-selector.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAQtD,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,iEAAiE;AACjE,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,GAChB,MAAM,EAAE,CAOV;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAwB9B"}
@@ -1,7 +1,7 @@
1
1
  import { formatModelPickerLines, resolveEffectiveModel, } from "../../config/models.js";
2
2
  import { loadConfig } from "../../config/config.js";
3
3
  import { formatModelPickerPanel } from "./model-picker-panel.js";
4
- import { runModelTtyPicker, formatModelPickerSuccessLine, } from "./model-tty-picker.js";
4
+ import { runModelTtyPicker, formatModelPickerSuccessLine, resolveModelTtyPickerCatalog, } from "./model-tty-picker.js";
5
5
  /** Deterministic panel view for tests and scripted selectors. */
6
6
  export function formatModelSelectorView(selectedIndex, currentId) {
7
7
  return formatModelPickerPanel({
@@ -43,7 +43,8 @@ async function runScriptedModelSelector(session, currentId, keySequence) {
43
43
  };
44
44
  }
45
45
  async function runTTYModelSelector(session, currentId) {
46
- const result = await runModelTtyPicker(session, currentId);
46
+ const catalog = await resolveModelTtyPickerCatalog();
47
+ const result = await runModelTtyPicker(session, currentId, { catalog });
47
48
  if (result.action === "cancel") {
48
49
  return { lines: ["Model selection cancelled."], exitCode: 0 };
49
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-selector.js","sourceRoot":"","sources":["../../../src/cli/interactive/model-selector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAA;AAY9B,iEAAiE;AACjE,MAAM,UAAU,uBAAuB,CACrC,aAAqB,EACrB,SAAiB;IAEjB,OAAO,sBAAsB,CAAC;QAC5B,SAAS;QACT,aAAa;QACb,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,EAAE;KACV,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAA2B,EAC3B,OAAe,EACf,UAAgC,EAAE;IAElC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC9B,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IACnC,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACtC,MAAM,OAAO,GAAG,qBAAqB,CAAC;QACpC,eAAe,EAAE,OAAO,CAAC,gBAAgB,EAAE;QAC3C,WAAW,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;KAClC,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;QAChC,OAAO,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IACxE,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACvE,OAAO,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC9C,CAAC;IAED,OAAO;QACL,KAAK,EAAE,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC;QACrE,QAAQ,EAAE,CAAC;KACZ,CAAA;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,OAA2B,EAC3B,SAAiB,EACjB,WAA8B;IAE9B,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;IAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,CAAC,4BAA4B,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IAC/D,CAAC;IACD,OAAO;QACL,KAAK,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QAC1E,QAAQ,EAAE,CAAC;KACZ,CAAA;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,OAA2B,EAC3B,SAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAE1D,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,CAAC,4BAA4B,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IAC/D,CAAC;IAED,OAAO;QACL,KAAK,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QAC1E,QAAQ,EAAE,CAAC;KACZ,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"model-selector.js","sourceRoot":"","sources":["../../../src/cli/interactive/model-selector.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import type { ModelReasoningLevel } from "../../config/model-reasoning.js";
2
+ import { type PatzeModelCatalogEntry } from "../../config/models.js";
2
3
  import type { InteractiveSession } from "./session.js";
3
- import type { PatzeModelCatalogEntry } from "../../config/models.js";
4
4
  export type ModelTtyPickerOptions = {
5
5
  keySequence?: readonly string[];
6
6
  input?: NodeJS.ReadStream;
7
7
  output?: NodeJS.WriteStream;
8
+ catalog?: readonly PatzeModelCatalogEntry[];
8
9
  };
9
10
  export type ModelTtyPickerResult = {
10
11
  action: "select";
@@ -15,4 +16,5 @@ export type ModelTtyPickerResult = {
15
16
  };
16
17
  export declare function runModelTtyPicker(session: InteractiveSession, currentId: string, options?: ModelTtyPickerOptions): Promise<ModelTtyPickerResult>;
17
18
  export declare function formatModelPickerSuccessLine(entry: PatzeModelCatalogEntry, reasoningLevel: ModelReasoningLevel | null): string;
19
+ export declare function resolveModelTtyPickerCatalog(): Promise<PatzeModelCatalogEntry[]>;
18
20
  //# sourceMappingURL=model-tty-picker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-tty-picker.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/model-tty-picker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAM1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAQtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAWpE,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,WAAW,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,oBAAoB,GAC5B;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,sBAAsB,CAAC;IAAC,cAAc,EAAE,mBAAmB,GAAG,IAAI,CAAA;CAAE,GAC/F;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAA;AAExB,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC,CAyC/B;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,sBAAsB,EAC7B,cAAc,EAAE,mBAAmB,GAAG,IAAI,GACzC,MAAM,CAER"}
1
+ {"version":3,"file":"model-tty-picker.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/model-tty-picker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAK1E,OAAO,EAAyC,KAAK,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAE3G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAyBtD,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,WAAW,CAAA;IAC3B,OAAO,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAA;CAC5C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAC5B;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,sBAAsB,CAAC;IAAC,cAAc,EAAE,mBAAmB,GAAG,IAAI,CAAA;CAAE,GAC/F;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAA;AAExB,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC,CAqB/B;AAmLD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,sBAAsB,EAC7B,cAAc,EAAE,mBAAmB,GAAG,IAAI,GACzC,MAAM,CAER;AAED,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAEtF"}
@@ -1,49 +1,169 @@
1
1
  import { getReasoningLevelsForModelId, modelSupportsReasoningPicker, } from "../../config/model-reasoning.js";
2
2
  import { normalizeModelId, PATZE_MODEL_CATALOG } from "../../config/models.js";
3
- import { formatModelPickerPanel, formatModelPickerResultLine, formatReasoningPickerPanel, indexForCatalogEntry, indexForReasoningLevel, } from "./model-picker-panel.js";
3
+ import { resolveModelPreferenceToggle } from "../../config/model-preferences.js";
4
+ import { resolvePickerModelCatalog } from "./model-catalog-resolve.js";
5
+ import { catalogEntryAtIndex, filterModelCatalogEntries, formatModelPickerResultLine, formatReasoningPickerPanel, formatSearchableModelPickerPanel, indexForCatalogEntry, indexForFilteredCatalogEntry, indexForReasoningLevel, } from "./model-picker-panel.js";
4
6
  import { applyModelSelection, resolveReasoningLevelFromSelection, } from "./model-selection-apply.js";
5
7
  import { createKeyReaderFromSequence, readPermissionSelectorKey, } from "./permissions-keys.js";
8
+ import { moveSelection } from "./slash-menu.js";
6
9
  import { runArrowSelectorLoop, runTTYArrowSelector } from "./tty-arrow-selector.js";
10
+ import { TtyAnchoredOverlay } from "./tty-frame.js";
11
+ import { emitKeypressEvents } from "node:readline";
7
12
  export async function runModelTtyPicker(session, currentId, options = {}) {
13
+ const catalog = options.catalog ?? [...PATZE_MODEL_CATALOG];
8
14
  const output = options.output ?? process.stdout;
9
15
  const width = output.columns && output.columns > 0 ? output.columns : 80;
10
16
  const color = !process.env.NO_COLOR;
11
- const sharedReader = options.keySequence?.length
12
- ? createKeyReaderFromSequence(options.keySequence)
13
- : null;
14
- const modelResult = sharedReader
15
- ? await runArrowSelectorLoop({
16
- itemCount: PATZE_MODEL_CATALOG.length,
17
- selectedIndex: indexForCatalogEntry(PATZE_MODEL_CATALOG, currentId),
18
- readKey: () => readPermissionSelectorKey(sharedReader),
19
- digitJump: true,
20
- })
21
- : await runTTYArrowSelector({
22
- itemCount: PATZE_MODEL_CATALOG.length,
23
- initialIndex: indexForCatalogEntry(PATZE_MODEL_CATALOG, currentId),
24
- render: (selectedIndex) => formatModelPickerPanel({ currentId, selectedIndex, width, color }),
25
- input: options.input,
26
- output: options.output,
27
- digitJump: true,
28
- });
17
+ if (options.keySequence?.length) {
18
+ return runScriptedModelTtyPicker(session, currentId, catalog, options.keySequence);
19
+ }
20
+ const input = options.input ?? process.stdin;
21
+ if (!input.isTTY || !output.isTTY) {
22
+ return { action: "cancel" };
23
+ }
24
+ return runInteractiveSearchableModelTtyPicker(session, currentId, catalog, {
25
+ input,
26
+ output,
27
+ width,
28
+ color,
29
+ });
30
+ }
31
+ async function runScriptedModelTtyPicker(session, currentId, catalog, keySequence) {
32
+ const sharedReader = createKeyReaderFromSequence(keySequence);
33
+ const modelResult = await runArrowSelectorLoop({
34
+ itemCount: catalog.length,
35
+ selectedIndex: indexForCatalogEntry(catalog, currentId),
36
+ readKey: () => readPermissionSelectorKey(sharedReader),
37
+ digitJump: true,
38
+ });
29
39
  if (modelResult.action === "cancel") {
30
40
  return { action: "cancel" };
31
41
  }
32
- const entry = PATZE_MODEL_CATALOG[modelResult.selectedIndex];
42
+ const entry = catalog[modelResult.selectedIndex];
33
43
  if (!entry) {
34
44
  return { action: "cancel" };
35
45
  }
36
46
  return finalizeModelSelection(session, entry, {
37
47
  sharedReader,
38
- width,
39
- color,
40
- input: options.input,
41
- output: options.output,
48
+ width: 80,
49
+ color: false,
50
+ });
51
+ }
52
+ async function runInteractiveSearchableModelTtyPicker(session, currentId, catalog, ctx) {
53
+ let search = "";
54
+ let selectedIndex = indexForFilteredCatalogEntry(filterModelCatalogEntries("", catalog), currentId);
55
+ const filteredCount = () => filterModelCatalogEntries(search, catalog).length;
56
+ emitKeypressEvents(ctx.input);
57
+ const wasRaw = ctx.input.isRaw ?? false;
58
+ ctx.input.setRawMode(true);
59
+ ctx.input.resume();
60
+ const overlay = new TtyAnchoredOverlay();
61
+ overlay.begin(ctx.output);
62
+ const redraw = () => {
63
+ const count = filteredCount();
64
+ selectedIndex = count === 0 ? 0 : Math.min(selectedIndex, count - 1);
65
+ overlay.redraw(ctx.output, formatSearchableModelPickerPanel({
66
+ currentId,
67
+ selectedIndex,
68
+ search,
69
+ thinking: session.getModelThinking(),
70
+ fast: session.getModelFast(),
71
+ catalog,
72
+ width: ctx.width,
73
+ color: ctx.color,
74
+ }), ctx.width);
75
+ };
76
+ return new Promise((resolve) => {
77
+ const finish = (result) => {
78
+ ctx.input.removeListener("keypress", onKeypress);
79
+ if (ctx.input.isTTY) {
80
+ ctx.input.setRawMode(wasRaw);
81
+ }
82
+ ctx.input.pause();
83
+ overlay.clear(ctx.output);
84
+ resolve(result);
85
+ };
86
+ const onKeypress = (str, key) => {
87
+ const name = key?.name ?? "";
88
+ if (key?.ctrl && name === "c") {
89
+ finish({ action: "cancel" });
90
+ return;
91
+ }
92
+ if (name === "escape") {
93
+ finish({ action: "cancel" });
94
+ return;
95
+ }
96
+ if (name === "backspace" || name === "delete") {
97
+ search = search.slice(0, -1);
98
+ redraw();
99
+ return;
100
+ }
101
+ const pickerChar = getModelPickerSearchCharacter(str, key);
102
+ if (pickerChar === "T") {
103
+ session.setModelThinking(resolveModelPreferenceToggle(session.getModelThinking(), "toggle"));
104
+ redraw();
105
+ return;
106
+ }
107
+ if (pickerChar === "F") {
108
+ session.setModelFast(resolveModelPreferenceToggle(session.getModelFast(), "toggle"));
109
+ redraw();
110
+ return;
111
+ }
112
+ if (isModelPickerSearchInput(pickerChar)) {
113
+ search = `${search}${pickerChar}`;
114
+ selectedIndex = 0;
115
+ redraw();
116
+ return;
117
+ }
118
+ if (str && /^[1-9]$/.test(str)) {
119
+ const jump = Number(str) - 1;
120
+ const count = filteredCount();
121
+ if (jump < count) {
122
+ selectedIndex = jump;
123
+ redraw();
124
+ }
125
+ return;
126
+ }
127
+ if (name === "up" || (!key?.ctrl && !key?.meta && name === "k")) {
128
+ const count = filteredCount();
129
+ if (count > 0) {
130
+ selectedIndex = moveSelection(selectedIndex, -1, count);
131
+ redraw();
132
+ }
133
+ return;
134
+ }
135
+ if (name === "down" || (!key?.ctrl && !key?.meta && name === "j")) {
136
+ const count = filteredCount();
137
+ if (count > 0) {
138
+ selectedIndex = moveSelection(selectedIndex, 1, count);
139
+ redraw();
140
+ }
141
+ return;
142
+ }
143
+ if (name === "return" || name === "enter") {
144
+ const entry = catalogEntryAtIndex(catalog, search, selectedIndex);
145
+ if (!entry) {
146
+ return;
147
+ }
148
+ void finalizeModelSelection(session, entry, {
149
+ sharedReader: null,
150
+ width: ctx.width,
151
+ color: ctx.color,
152
+ input: ctx.input,
153
+ output: ctx.output,
154
+ }).then(finish);
155
+ }
156
+ };
157
+ ctx.input.on("keypress", onKeypress);
158
+ redraw();
42
159
  });
43
160
  }
44
161
  export function formatModelPickerSuccessLine(entry, reasoningLevel) {
45
162
  return formatModelPickerResultLine(entry, reasoningLevel);
46
163
  }
164
+ export async function resolveModelTtyPickerCatalog() {
165
+ return resolvePickerModelCatalog();
166
+ }
47
167
  async function finalizeModelSelection(session, entry, ctx) {
48
168
  if (!modelSupportsReasoningPicker(entry.id)) {
49
169
  applyModelSelection(session, entry, null);
@@ -82,4 +202,14 @@ async function finalizeModelSelection(session, entry, ctx) {
82
202
  applyModelSelection(session, entry, reasoningLevel);
83
203
  return { action: "select", entry, reasoningLevel };
84
204
  }
205
+ function getModelPickerSearchCharacter(str, key) {
206
+ const name = key?.name ?? "";
207
+ if (key?.ctrl || key?.meta || name.length !== 1) {
208
+ return str ?? "";
209
+ }
210
+ return key?.shift ? name.toUpperCase() : name;
211
+ }
212
+ function isModelPickerSearchInput(input) {
213
+ return input.length === 1 && !/[\u0000-\u001F\u007F]/.test(input) && input !== "T" && input !== "F";
214
+ }
85
215
  //# sourceMappingURL=model-tty-picker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-tty-picker.js","sourceRoot":"","sources":["../../../src/cli/interactive/model-tty-picker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-tty-picker.js","sourceRoot":"","sources":["../../../src/cli/interactive/model-tty-picker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plain-codex-feed.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/plain-codex-feed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAejE,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACzC,KAAK,EAAE,MAAM,IAAI,CAAA;CAClB,CAAA;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,kBAAkB,EAC5B,eAAe,SAAU,GACxB,sBAAsB,CAuBxB"}
1
+ {"version":3,"file":"plain-codex-feed.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/plain-codex-feed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAejE,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACzC,KAAK,EAAE,MAAM,IAAI,CAAA;CAClB,CAAA;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,kBAAkB,EAC5B,eAAe,SAAU,GACxB,sBAAsB,CA0ExB"}
@@ -14,22 +14,70 @@ function formatPlainFeedLine(entry) {
14
14
  }
15
15
  export function createPlainCodexFeedRenderer(handlers, assistantTurnId = "plain") {
16
16
  let items = [];
17
+ const emittedTextById = new Map();
18
+ const pendingDeferredIds = new Set();
19
+ const flushDeferredUpserts = () => {
20
+ for (const id of pendingDeferredIds) {
21
+ const entry = items.find((item) => item.id === id);
22
+ if (!entry || entry.kind === "assistant") {
23
+ continue;
24
+ }
25
+ const prior = emittedTextById.get(entry.id);
26
+ if (prior === entry.text) {
27
+ continue;
28
+ }
29
+ handlers.annotate(formatPlainFeedLine(entry));
30
+ emittedTextById.set(entry.id, entry.text);
31
+ }
32
+ pendingDeferredIds.clear();
33
+ };
34
+ const shouldDeferStreamingUpsert = (entry) => {
35
+ if (!emittedTextById.has(entry.id)) {
36
+ return false;
37
+ }
38
+ if (entry.label === "think" && !entry.text.startsWith("✓") && !entry.text.startsWith("✗")) {
39
+ return true;
40
+ }
41
+ if (entry.label === "run" && entry.text.startsWith("●") && emittedTextById.get(entry.id)?.startsWith("●")) {
42
+ return true;
43
+ }
44
+ if (entry.kind === "tool" && entry.text.startsWith("●") && emittedTextById.get(entry.id)?.startsWith("●")) {
45
+ return true;
46
+ }
47
+ return false;
48
+ };
17
49
  return {
18
50
  reset() {
19
51
  items = [];
52
+ emittedTextById.clear();
53
+ pendingDeferredIds.clear();
20
54
  },
21
55
  onAgentEvent(event) {
22
56
  if (event.type === "assistant_delta") {
57
+ flushDeferredUpserts();
23
58
  handlers.writeAssistant(event.text);
24
59
  return;
25
60
  }
61
+ if (event.type === "status" || event.type === "result") {
62
+ flushDeferredUpserts();
63
+ }
26
64
  const result = applyAgentEventWithChanges(items, event, assistantTurnId);
27
65
  items = result.items;
28
66
  for (const entry of result.changed) {
29
67
  if (entry.kind === "assistant") {
30
68
  continue;
31
69
  }
70
+ if (shouldDeferStreamingUpsert(entry)) {
71
+ pendingDeferredIds.add(entry.id);
72
+ continue;
73
+ }
74
+ const prior = emittedTextById.get(entry.id);
75
+ if (prior === entry.text) {
76
+ continue;
77
+ }
32
78
  handlers.annotate(formatPlainFeedLine(entry));
79
+ emittedTextById.set(entry.id, entry.text);
80
+ pendingDeferredIds.delete(entry.id);
33
81
  }
34
82
  },
35
83
  };
@@ -1 +1 @@
1
- {"version":3,"file":"plain-codex-feed.js","sourceRoot":"","sources":["../../../src/cli/interactive/plain-codex-feed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,0BAA0B,GAE3B,MAAM,uBAAuB,CAAA;AAI9B,MAAM,WAAW,GAAG,CAAC,CAAA;AAErB,SAAS,mBAAmB,CAAC,KAA0B;IACrD,MAAM,IAAI,GACR,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM;QAC7C,CAAC,CAAC,KAAK,CAAC,IAAI;aACP,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAChB,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,CAAA;AACpD,CAAC;AAOD,MAAM,UAAU,4BAA4B,CAC1C,QAA4B,EAC5B,eAAe,GAAG,OAAO;IAEzB,IAAI,KAAK,GAA0B,EAAE,CAAA;IAErC,OAAO;QACL,KAAK;YACH,KAAK,GAAG,EAAE,CAAA;QACZ,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACrC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACnC,OAAM;YACR,CAAC;YAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;YACxE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;YACpB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/B,SAAQ;gBACV,CAAC;gBACD,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"plain-codex-feed.js","sourceRoot":"","sources":["../../../src/cli/interactive/plain-codex-feed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,0BAA0B,GAE3B,MAAM,uBAAuB,CAAA;AAI9B,MAAM,WAAW,GAAG,CAAC,CAAA;AAErB,SAAS,mBAAmB,CAAC,KAA0B;IACrD,MAAM,IAAI,GACR,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM;QAC7C,CAAC,CAAC,KAAK,CAAC,IAAI;aACP,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAChB,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,CAAA;AACpD,CAAC;AAOD,MAAM,UAAU,4BAA4B,CAC1C,QAA4B,EAC5B,eAAe,GAAG,OAAO;IAEzB,IAAI,KAAK,GAA0B,EAAE,CAAA;IACrC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAA;IACjD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAA;IAE5C,MAAM,oBAAoB,GAAG,GAAS,EAAE;QACtC,KAAK,MAAM,EAAE,IAAI,kBAAkB,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;YAClD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACzC,SAAQ;YACV,CAAC;YACD,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC3C,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;gBACzB,SAAQ;YACV,CAAC;YACD,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAA;YAC7C,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC3C,CAAC;QACD,kBAAkB,CAAC,KAAK,EAAE,CAAA;IAC5B,CAAC,CAAA;IAED,MAAM,0BAA0B,GAAG,CAAC,KAA0B,EAAW,EAAE;QACzE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACnC,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1F,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1G,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1G,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,OAAO;QACL,KAAK;YACH,KAAK,GAAG,EAAE,CAAA;YACV,eAAe,CAAC,KAAK,EAAE,CAAA;YACvB,kBAAkB,CAAC,KAAK,EAAE,CAAA;QAC5B,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACrC,oBAAoB,EAAE,CAAA;gBACtB,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACnC,OAAM;YACR,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvD,oBAAoB,EAAE,CAAA;YACxB,CAAC;YAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;YACxE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;YACpB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/B,SAAQ;gBACV,CAAC;gBACD,IAAI,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;oBACtC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBAChC,SAAQ;gBACV,CAAC;gBACD,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBAC3C,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;oBACzB,SAAQ;gBACV,CAAC;gBACD,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC7C,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;gBACzC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACrC,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { type ResolvedConfig } from "../../config/config.js";
2
+ import type { FetchLike } from "../../backend/preview-client.js";
3
+ import type { InteractiveSession } from "./session.js";
4
+ export type RunCancelOutcome = {
5
+ ok: true;
6
+ runId: string;
7
+ status: string;
8
+ phase?: string;
9
+ } | {
10
+ ok: false;
11
+ exitCode: number;
12
+ message: string;
13
+ };
14
+ export declare function resolveCancelRunId(session: InteractiveSession, explicit?: string | null): string | null;
15
+ export declare function cancelPatzeCodeRun(input: {
16
+ cwd: string;
17
+ runId: string;
18
+ config?: ResolvedConfig;
19
+ fetchImpl?: FetchLike;
20
+ }): Promise<RunCancelOutcome>;
21
+ export declare function formatRunCancelLines(outcome: RunCancelOutcome): string[];
22
+ export declare function cancelPatzeCodeRunForSession(session: InteractiveSession, runId?: string | null, fetchImpl?: FetchLike): Promise<RunCancelOutcome>;
23
+ //# sourceMappingURL=run-cancel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-cancel.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/run-cancel.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAEtD,MAAM,MAAM,gBAAgB,GACxB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAMvG;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAmC5B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAMxE;AAED,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,kBAAkB,EAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EACrB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAc3B"}
@@ -0,0 +1,67 @@
1
+ import { PatzeBackendClient } from "../../backend/client.js";
2
+ import { postRunCancel } from "../../backend/cancel-client.js";
3
+ import { isAuthConfigured } from "../../backend/auth.js";
4
+ import { loadConfig } from "../../config/config.js";
5
+ export function resolveCancelRunId(session, explicit) {
6
+ const trimmed = explicit?.trim();
7
+ if (trimmed) {
8
+ return trimmed;
9
+ }
10
+ return session.getLastRunId()?.trim() || null;
11
+ }
12
+ export async function cancelPatzeCodeRun(input) {
13
+ const config = input.config ?? loadConfig(input.cwd);
14
+ if (!isAuthConfigured(config)) {
15
+ return {
16
+ ok: false,
17
+ exitCode: 1,
18
+ message: "Auth incomplete — run `patze login` or set PATZE_CODE_* env vars.",
19
+ };
20
+ }
21
+ if (!config.api) {
22
+ return { ok: false, exitCode: 2, message: "API URL not configured." };
23
+ }
24
+ const client = new PatzeBackendClient(config);
25
+ const result = await postRunCancel({
26
+ apiBase: client.baseUrl,
27
+ headers: client.buildHeaders(),
28
+ runId: input.runId,
29
+ fetchImpl: input.fetchImpl,
30
+ });
31
+ if (!result.ok) {
32
+ return {
33
+ ok: false,
34
+ exitCode: 2,
35
+ message: result.message,
36
+ };
37
+ }
38
+ return {
39
+ ok: true,
40
+ runId: result.runId,
41
+ status: result.status,
42
+ phase: result.phase,
43
+ };
44
+ }
45
+ export function formatRunCancelLines(outcome) {
46
+ if (!outcome.ok) {
47
+ return [outcome.message];
48
+ }
49
+ const phase = outcome.phase ? ` · phase ${outcome.phase}` : "";
50
+ return [`Cancel requested for ${outcome.runId} (${outcome.status})${phase}.`];
51
+ }
52
+ export async function cancelPatzeCodeRunForSession(session, runId, fetchImpl) {
53
+ const resolved = resolveCancelRunId(session, runId);
54
+ if (!resolved) {
55
+ return {
56
+ ok: false,
57
+ exitCode: 2,
58
+ message: "No run id — pass one or complete a run first (/runs cancel <id>).",
59
+ };
60
+ }
61
+ return cancelPatzeCodeRun({
62
+ cwd: session.cwd,
63
+ runId: resolved,
64
+ fetchImpl,
65
+ });
66
+ }
67
+ //# sourceMappingURL=run-cancel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-cancel.js","sourceRoot":"","sources":["../../../src/cli/interactive/run-cancel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,UAAU,EAAuB,MAAM,wBAAwB,CAAA;AAQxE,MAAM,UAAU,kBAAkB,CAAC,OAA2B,EAAE,QAAwB;IACtF,MAAM,OAAO,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAA;IAChC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAA;IAChB,CAAC;IACD,OAAO,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,CAAA;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAKxC;IACC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACpD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,mEAAmE;SAC7E,CAAA;IACH,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAA;IACvE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC7C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;QACjC,OAAO,EAAE,MAAM,CAAC,OAAQ;QACxB,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE;QAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAA;IACH,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAyB;IAC5D,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9D,OAAO,CAAC,wBAAwB,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAA2B,EAC3B,KAAqB,EACrB,SAAqB;IAErB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,EAAE,EAAE,KAAK;YACT,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,mEAAmE;SAC7E,CAAA;IACH,CAAC;IACD,OAAO,kBAAkB,CAAC;QACxB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,QAAQ;QACf,SAAS;KACV,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ /** Cap slash-menu rows in one composer redraw (TTY + OpenTUI parity). */
2
+ export declare const COMPOSER_MENU_MAX_ROWS = 6;
3
+ /** Soft ceiling on visual rows for anchored composer overlays. */
4
+ export declare const COMPOSER_FRAME_ROW_BUDGET = 22;
5
+ export type ListNavKey = "up" | "down" | "enter" | "escape";
6
+ export declare function moveListSelection(index: number, delta: number, count: number): number;
7
+ /** 1–9 jump highlight (Codex-style); returns null when digit is out of range. */
8
+ export declare function jumpListSelection(digit: string, count: number): number | null;
9
+ export declare function mapListNavKey(name: string | undefined, str: string | undefined): ListNavKey | null;
10
+ //# sourceMappingURL=select-list-nav.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-list-nav.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/select-list-nav.ts"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,eAAO,MAAM,sBAAsB,IAAI,CAAA;AAEvC,kEAAkE;AAClE,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAE3C,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAE3D,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAKrF;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS7E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAqBlG"}
@@ -0,0 +1,45 @@
1
+ import { moveSelection } from "./slash-menu.js";
2
+ /** Cap slash-menu rows in one composer redraw (TTY + OpenTUI parity). */
3
+ export const COMPOSER_MENU_MAX_ROWS = 6;
4
+ /** Soft ceiling on visual rows for anchored composer overlays. */
5
+ export const COMPOSER_FRAME_ROW_BUDGET = 22;
6
+ export function moveListSelection(index, delta, count) {
7
+ if (count <= 0) {
8
+ return 0;
9
+ }
10
+ return moveSelection(index, delta, count);
11
+ }
12
+ /** 1–9 jump highlight (Codex-style); returns null when digit is out of range. */
13
+ export function jumpListSelection(digit, count) {
14
+ if (!/^[1-9]$/.test(digit)) {
15
+ return null;
16
+ }
17
+ const jump = Number(digit) - 1;
18
+ if (jump >= count) {
19
+ return null;
20
+ }
21
+ return jump;
22
+ }
23
+ export function mapListNavKey(name, str) {
24
+ const keyName = name ?? "";
25
+ if (keyName === "up" || str === "k" || keyName === "k") {
26
+ return "up";
27
+ }
28
+ if (keyName === "down" || str === "j" || keyName === "j") {
29
+ return "down";
30
+ }
31
+ if (keyName === "return" || keyName === "enter") {
32
+ return "enter";
33
+ }
34
+ if (keyName === "escape") {
35
+ return "escape";
36
+ }
37
+ if (str === "k") {
38
+ return "up";
39
+ }
40
+ if (str === "j") {
41
+ return "down";
42
+ }
43
+ return null;
44
+ }
45
+ //# sourceMappingURL=select-list-nav.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-list-nav.js","sourceRoot":"","sources":["../../../src/cli/interactive/select-list-nav.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,yEAAyE;AACzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAA;AAEvC,kEAAkE;AAClE,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAI3C,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAAa,EAAE,KAAa;IAC3E,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,KAAa;IAC5D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC9B,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAwB,EAAE,GAAuB;IAC7E,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAA;IAC1B,IAAI,OAAO,KAAK,IAAI,IAAI,GAAG,KAAK,GAAG,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;QACvD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;QACzD,OAAO,MAAM,CAAA;IACf,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAChD,OAAO,OAAO,CAAA;IAChB,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAA;IACjB,CAAC;IACD,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;QAChB,OAAO,MAAM,CAAA;IACf,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -11,6 +11,7 @@ export type ProcessLineResult = {
11
11
  exitCode: number;
12
12
  streamed?: boolean;
13
13
  clearVisibleTranscript?: boolean;
14
+ refreshHeader?: boolean;
14
15
  };
15
16
  export type ProcessLineContext = {
16
17
  signal?: AbortSignal;