@pentoshi/clai 5.1.0 → 5.1.2

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 (150) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/MCP.md +4 -3
  3. package/REA.md +4 -0
  4. package/dist/agent/events.d.ts +4 -1
  5. package/dist/agent/evidence/tool-budgets.js +3 -3
  6. package/dist/agent/evidence/tool-budgets.js.map +1 -1
  7. package/dist/agent/subagents/tools.d.ts +1 -1
  8. package/dist/agent/turn/loop/round-request.js +1 -0
  9. package/dist/agent/turn/loop/round-request.js.map +1 -1
  10. package/dist/agent/turn/loop/stream-request.d.ts +1 -0
  11. package/dist/agent/turn/loop/stream-request.js +1 -0
  12. package/dist/agent/turn/loop/stream-request.js.map +1 -1
  13. package/dist/agent/turn/tool-watchdog.js +4 -0
  14. package/dist/agent/turn/tool-watchdog.js.map +1 -1
  15. package/dist/app/adapters/agent-event-adapter.js +2 -0
  16. package/dist/app/adapters/agent-event-adapter.js.map +1 -1
  17. package/dist/app/adapters/in-memory-clipboard-adapter.js +21 -17
  18. package/dist/app/adapters/in-memory-clipboard-adapter.js.map +1 -1
  19. package/dist/app/controllers/cancel-coordinator.d.ts +1 -0
  20. package/dist/app/controllers/cancel-coordinator.js +7 -2
  21. package/dist/app/controllers/cancel-coordinator.js.map +1 -1
  22. package/dist/app/controllers/session-controller.d.ts +3 -0
  23. package/dist/app/controllers/session-controller.js +39 -22
  24. package/dist/app/controllers/session-controller.js.map +1 -1
  25. package/dist/app/controllers/session-turn-request.d.ts +2 -1
  26. package/dist/app/controllers/session-turn-request.js +11 -3
  27. package/dist/app/controllers/session-turn-request.js.map +1 -1
  28. package/dist/app/controllers/turn-controller.d.ts +3 -0
  29. package/dist/app/controllers/turn-controller.js +23 -7
  30. package/dist/app/controllers/turn-controller.js.map +1 -1
  31. package/dist/attachments/clipboard-image.d.ts +1 -1
  32. package/dist/attachments/clipboard-image.js +70 -54
  33. package/dist/attachments/clipboard-image.js.map +1 -1
  34. package/dist/attachments/image-prepare.d.ts +2 -2
  35. package/dist/attachments/image-prepare.js +102 -303
  36. package/dist/attachments/image-prepare.js.map +1 -1
  37. package/dist/attachments/image-transcoder.d.ts +14 -0
  38. package/dist/attachments/image-transcoder.js +85 -0
  39. package/dist/attachments/image-transcoder.js.map +1 -0
  40. package/dist/attachments/labels.d.ts +6 -0
  41. package/dist/attachments/labels.js +30 -0
  42. package/dist/attachments/labels.js.map +1 -0
  43. package/dist/attachments/read-image.d.ts +1 -0
  44. package/dist/attachments/read-image.js +31 -0
  45. package/dist/attachments/read-image.js.map +1 -0
  46. package/dist/attachments/service.d.ts +2 -1
  47. package/dist/attachments/service.js +8 -5
  48. package/dist/attachments/service.js.map +1 -1
  49. package/dist/classic/app/ClassicApp.js +1 -0
  50. package/dist/classic/app/ClassicApp.js.map +1 -1
  51. package/dist/classic/app/wiring-interactions.js +1 -2
  52. package/dist/classic/app/wiring-interactions.js.map +1 -1
  53. package/dist/classic/bootstrap/start-classic.js +6 -12
  54. package/dist/classic/bootstrap/start-classic.js.map +1 -1
  55. package/dist/classic/chrome/composer-controller.d.ts +3 -4
  56. package/dist/classic/chrome/composer-controller.js +12 -51
  57. package/dist/classic/chrome/composer-controller.js.map +1 -1
  58. package/dist/classic/chrome/composer-paste.d.ts +25 -0
  59. package/dist/classic/chrome/composer-paste.js +77 -0
  60. package/dist/classic/chrome/composer-paste.js.map +1 -0
  61. package/dist/classic/chrome/context-limit-editor.js +1 -1
  62. package/dist/classic/chrome/context-limit-editor.js.map +1 -1
  63. package/dist/classic/chrome/queue-rows.js +2 -1
  64. package/dist/classic/chrome/queue-rows.js.map +1 -1
  65. package/dist/classic/chrome/status-rows.d.ts +2 -0
  66. package/dist/classic/chrome/status-rows.js +11 -21
  67. package/dist/classic/chrome/status-rows.js.map +1 -1
  68. package/dist/classic/input/cancel-ladder.d.ts +1 -0
  69. package/dist/classic/input/cancel-ladder.js +21 -23
  70. package/dist/classic/input/cancel-ladder.js.map +1 -1
  71. package/dist/index.js +1 -1
  72. package/dist/index.js.map +1 -1
  73. package/dist/llm/generation-metrics.d.ts +3 -0
  74. package/dist/llm/generation-metrics.js.map +1 -1
  75. package/dist/llm/generation-progress.d.ts +21 -0
  76. package/dist/llm/generation-progress.js +93 -0
  77. package/dist/llm/generation-progress.js.map +1 -0
  78. package/dist/llm/operation-usage.d.ts +2 -0
  79. package/dist/llm/operation-usage.js +22 -3
  80. package/dist/llm/operation-usage.js.map +1 -1
  81. package/dist/llm/routing/attempt-stream.js +2 -0
  82. package/dist/llm/routing/attempt-stream.js.map +1 -1
  83. package/dist/mcp/manager.d.ts +3 -0
  84. package/dist/mcp/manager.js +43 -51
  85. package/dist/mcp/manager.js.map +1 -1
  86. package/dist/mcp/transport-http.js +1 -1
  87. package/dist/mcp/transport-http.js.map +1 -1
  88. package/dist/mcp/transport-stdio.js +1 -1
  89. package/dist/mcp/transport-stdio.js.map +1 -1
  90. package/dist/prompts/embedded.js +1 -1
  91. package/dist/prompts/embedded.js.map +1 -1
  92. package/dist/prompts/system.agent.md +1 -1
  93. package/dist/rea/runtime.js +7 -2
  94. package/dist/rea/runtime.js.map +1 -1
  95. package/dist/rea/timeouts.d.ts +1 -0
  96. package/dist/rea/timeouts.js +19 -0
  97. package/dist/rea/timeouts.js.map +1 -0
  98. package/dist/session-runtime/start-runtime.js +6 -1
  99. package/dist/session-runtime/start-runtime.js.map +1 -1
  100. package/dist/store/history.d.ts +1 -1
  101. package/dist/store/history.js +29 -35
  102. package/dist/store/history.js.map +1 -1
  103. package/dist/tools/image.js +4 -18
  104. package/dist/tools/image.js.map +1 -1
  105. package/dist/tui-v2/app/App.js +36 -91
  106. package/dist/tui-v2/app/App.js.map +1 -1
  107. package/dist/tui-v2/bootstrap/start-tui-v2.js +6 -12
  108. package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
  109. package/dist/tui-v2/components/queue/queue-panel.js +2 -1
  110. package/dist/tui-v2/components/queue/queue-panel.js.map +1 -1
  111. package/dist/tui-v2/components/status/context-limit-chip.js +2 -2
  112. package/dist/tui-v2/components/status/context-limit-chip.js.map +1 -1
  113. package/dist/tui-v2/components/status/status-line.d.ts +0 -1
  114. package/dist/tui-v2/components/status/status-line.js +8 -8
  115. package/dist/tui-v2/components/status/status-line.js.map +1 -1
  116. package/dist/tui-v2/composer/composer-editor.js +3 -2
  117. package/dist/tui-v2/composer/composer-editor.js.map +1 -1
  118. package/dist/tui-v2/composer/composer-image-paste.d.ts +1 -20
  119. package/dist/tui-v2/composer/composer-image-paste.js +1 -76
  120. package/dist/tui-v2/composer/composer-image-paste.js.map +1 -1
  121. package/dist/tui-v2/input/escape-cancellation.d.ts +3 -3
  122. package/dist/tui-v2/input/escape-cancellation.js +4 -4
  123. package/dist/tui-v2/input/escape-cancellation.js.map +1 -1
  124. package/dist/types.d.ts +1 -0
  125. package/dist/ui/mentions/expand.d.ts +2 -2
  126. package/dist/ui/mentions/expand.js +5 -57
  127. package/dist/ui/mentions/expand.js.map +1 -1
  128. package/dist/ui/mentions.d.ts +4 -4
  129. package/dist/ui/mentions.js +21 -22
  130. package/dist/ui/mentions.js.map +1 -1
  131. package/dist/ui-core/bootstrap/shutdown-services.js +1 -0
  132. package/dist/ui-core/bootstrap/shutdown-services.js.map +1 -1
  133. package/dist/ui-core/composer/composer-image-paste.d.ts +3 -2
  134. package/dist/ui-core/composer/composer-image-paste.js +49 -46
  135. package/dist/ui-core/composer/composer-image-paste.js.map +1 -1
  136. package/dist/ui-core/composer/paste-placeholder.d.ts +3 -0
  137. package/dist/ui-core/composer/paste-placeholder.js +27 -4
  138. package/dist/ui-core/composer/paste-placeholder.js.map +1 -1
  139. package/dist/ui-core/ports/clipboard-osc52.js +3 -0
  140. package/dist/ui-core/ports/clipboard-osc52.js.map +1 -1
  141. package/dist/ui-core/rendering/context-limit.js +2 -2
  142. package/dist/ui-core/rendering/context-limit.js.map +1 -1
  143. package/dist/ui-core/rendering/footer-metrics.d.ts +6 -0
  144. package/dist/ui-core/rendering/footer-metrics.js +21 -0
  145. package/dist/ui-core/rendering/footer-metrics.js.map +1 -0
  146. package/dist/ui-core/rendering/status-segments.js +1 -1
  147. package/dist/ui-core/rendering/status-segments.js.map +1 -1
  148. package/dist/version.generated.d.ts +2 -2
  149. package/dist/version.generated.js +2 -2
  150. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/rea/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/rea/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function reaStartupEnvironment(env: NodeJS.ProcessEnv): Record<string, string>;
@@ -0,0 +1,19 @@
1
+ const MAX_TIMER_DELAY_MS = 2_147_483_647;
2
+ const STARTUP_DEFAULTS = {
3
+ REA_GHIDRA_STARTUP_TIMEOUT_MS: 7_200_000,
4
+ REA_HOPPER_STARTUP_TIMEOUT_MS: 7_200_000,
5
+ REA_SWIFTC_COMPILE_TIMEOUT_MS: 600_000,
6
+ };
7
+ export function reaStartupEnvironment(env) {
8
+ const settings = {};
9
+ for (const [name, defaultMs] of Object.entries(STARTUP_DEFAULTS)) {
10
+ const value = env[name] ?? String(defaultMs);
11
+ const timeoutMs = Number(value);
12
+ if (!/^[1-9]\d*$/.test(value) || !Number.isSafeInteger(timeoutMs) || timeoutMs > MAX_TIMER_DELAY_MS) {
13
+ throw new Error(`${name} must be a positive integer from 1 to ${MAX_TIMER_DELAY_MS} milliseconds.`);
14
+ }
15
+ settings[name] = value;
16
+ }
17
+ return settings;
18
+ }
19
+ //# sourceMappingURL=timeouts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeouts.js","sourceRoot":"","sources":["../../src/rea/timeouts.ts"],"names":[],"mappings":"AAAA,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAEzC,MAAM,gBAAgB,GAAqC;IACzD,6BAA6B,EAAE,SAAS;IACxC,6BAA6B,EAAE,SAAS;IACxC,6BAA6B,EAAE,OAAO;CACvC,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,GAAsB;IAC1D,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjE,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,kBAAkB,EAAE,CAAC;YACpG,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,yCAAyC,kBAAkB,gBAAgB,CAAC,CAAC;QACtG,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IACzB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -48,7 +48,12 @@ export async function startIndependentRuntime(options) {
48
48
  () => shutdownServices(services),
49
49
  ],
50
50
  epilogue: () => runFreebuffSessionShutdownCleanup(),
51
- onSigint: () => services.session.abort(),
51
+ onSigint: () => {
52
+ void services.cancel.cancelAll().then((outcome) => {
53
+ if (!outcome.ok)
54
+ services.session.notice("warn", outcome.sessionResult.output);
55
+ }, (error) => services.session.notice("warn", error instanceof Error ? error.message : String(error)));
56
+ },
52
57
  onError: (error) => { console.error(error instanceof Error ? error.message : String(error)); },
53
58
  });
54
59
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"start-runtime.js","sourceRoot":"","sources":["../../src/session-runtime/start-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start-runtime.js","sourceRoot":"","sources":["../../src/session-runtime/start-runtime.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export interface ToolCallRecord {
29
29
  exitCode?: number | undefined;
30
30
  output: string;
31
31
  }
32
- export declare function materializeHistoryImages(messages: readonly ChatMessage[], budget?: ImageBudget): ChatMessage[];
32
+ export declare function materializeHistoryImages(messages: readonly ChatMessage[], budget?: ImageBudget, signal?: AbortSignal): Promise<ChatMessage[]>;
33
33
  export declare function saveSession(messages: ChatMessage[], name?: string | undefined, transcript?: TranscriptItem[] | undefined, contextUsage?: PersistedContextUsage | undefined, revision?: number | undefined, writerGeneration?: string | undefined, previousTurn?: PreviousTurnSignal | null | undefined, sessionModel?: SessionModelSelection | undefined, location?: HistorySessionLocation | undefined, changes?: readonly import("../app/controllers/session-changes.js").FileLineChanges[] | undefined): Promise<HistoryRecord>;
34
34
  export declare function upsertSession(id: string, messages: ChatMessage[], name?: string | undefined, transcript?: TranscriptItem[] | undefined, contextUsage?: PersistedContextUsage | undefined, revision?: number | undefined, writerGeneration?: string | undefined, previousTurn?: PreviousTurnSignal | null | undefined, sessionModel?: SessionModelSelection | undefined, location?: HistorySessionLocation | undefined, changes?: readonly import("../app/controllers/session-changes.js").FileLineChanges[] | undefined, unsyncedItemIds?: readonly string[] | undefined): Promise<HistoryRecord>;
35
35
  export declare function pendingSessionMerge(id: string): Promise<HistoryRecord | undefined>;
@@ -1,8 +1,7 @@
1
- import { readFileSync } from "node:fs";
2
1
  import { stat } from "node:fs/promises";
3
2
  import { isInternalChatMessage } from "../types.js";
4
3
  import { imageBudgetFor, } from "../attachments/image-content.js";
5
- import { prepareImageForModel } from "../attachments/image-prepare.js";
4
+ import { loadImagePaths } from "../ui/mentions.js";
6
5
  import { flattenTranscriptHistory } from "../ui-core/state/transcript-history.js";
7
6
  import { redactSecrets } from "../llm/provider.js";
8
7
  import { canonicalizeChatMessageReasoningArtifacts } from "../llm/reasoning-artifacts.js";
@@ -124,43 +123,38 @@ function scrubMessage(source) {
124
123
  });
125
124
  }
126
125
  const MAX_RESTORED_IMAGE_COUNT = 6;
127
- export function materializeHistoryImages(messages, budget = imageBudgetFor("")) {
126
+ export async function materializeHistoryImages(messages, budget = imageBudgetFor(""), signal) {
128
127
  let imageCount = 0;
129
128
  let totalBytes = 0;
130
129
  const maxCount = Math.min(MAX_RESTORED_IMAGE_COUNT, budget.maxCount);
131
- const maxTotalBytes = budget.maxTotalBytes;
132
- return messages.map((message) => {
133
- if (!message.images?.length)
134
- return { ...message };
135
- const images = message.images.flatMap((image) => {
136
- if (image.dataBase64)
137
- return [image];
138
- if (!image.path || imageCount >= maxCount)
139
- return [];
140
- const prepared = prepareImageForModel(image.path, budget);
141
- if (!prepared.ok)
142
- return [];
143
- if (totalBytes + prepared.byteLength > maxTotalBytes)
144
- return [];
145
- try {
146
- const bytes = readFileSync(prepared.path);
147
- imageCount += 1;
148
- totalBytes += bytes.length;
149
- return [
150
- {
151
- mediaType: prepared.mediaType,
152
- dataBase64: bytes.toString("base64"),
153
- path: prepared.path,
154
- },
155
- ];
156
- }
157
- catch {
158
- return [];
159
- }
160
- });
130
+ const output = [];
131
+ for (const message of messages) {
132
+ signal?.throwIfAborted();
133
+ if (!message.images?.length) {
134
+ output.push({ ...message });
135
+ continue;
136
+ }
137
+ const images = [];
138
+ for (const image of message.images) {
139
+ if (imageCount >= maxCount || totalBytes >= budget.maxTotalBytes)
140
+ break;
141
+ const remaining = { ...budget, maxCount: 1, maxTotalBytes: budget.maxTotalBytes - totalBytes };
142
+ const loaded = image.dataBase64 ? [image]
143
+ : image.path ? await loadImagePaths([image.path], remaining, undefined, signal) : [];
144
+ const candidate = loaded[0];
145
+ if (!candidate)
146
+ continue;
147
+ const bytes = Buffer.byteLength(candidate.dataBase64, "base64");
148
+ if (bytes > budget.hardMaxBytes || totalBytes + bytes > budget.maxTotalBytes)
149
+ continue;
150
+ imageCount += 1;
151
+ totalBytes += bytes;
152
+ images.push(candidate);
153
+ }
161
154
  const { images: _images, ...rest } = message;
162
- return images.length > 0 ? { ...rest, images } : rest;
163
- });
155
+ output.push(images.length > 0 ? { ...rest, images } : rest);
156
+ }
157
+ return output;
164
158
  }
165
159
  let scrubbedItems = new WeakMap();
166
160
  let scrubbedRevision = knownSecretsRevision();
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/store/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/store/history.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { resolve } from "node:path";
4
4
  import { detectConvertibleImageFormat, detectModelImageMediaType, formatByteSize, } from "../attachments/image-content.js";
5
5
  import { describePreparedImage, imageBudgetFor, prepareImageForModel, } from "../attachments/image-prepare.js";
6
6
  import { modelSupportsVision } from "../llm/capabilities.js";
7
+ import { readImageBytes } from "../attachments/read-image.js";
7
8
  import { LANG_PATTERN, MIN_RELIABLE_CONFIDENCE, meaningfulCharCount, runOcr, } from "./ocr.js";
8
9
  function expandHome(path) {
9
10
  if (path === "~")
@@ -178,7 +179,7 @@ export async function imageView(args, options = {}) {
178
179
  let totalBytes = 0;
179
180
  for (const path of paths) {
180
181
  options.signal?.throwIfAborted();
181
- const prepared = prepareImageForModel(path, budget);
182
+ const prepared = await prepareImageForModel(path, budget, undefined, options.signal);
182
183
  if (!prepared.ok) {
183
184
  failures.push(`${path} — ${prepared.reason}`);
184
185
  continue;
@@ -190,25 +191,10 @@ export async function imageView(args, options = {}) {
190
191
  }
191
192
  let bytes;
192
193
  try {
193
- const handle = await open(prepared.path, "r");
194
- try {
195
- const current = await handle.stat();
196
- if (!current.isFile()) {
197
- failures.push(`${path} — prepared path is no longer a regular file`);
198
- continue;
199
- }
200
- if (current.size > budget.hardMaxBytes) {
201
- failures.push(`${path} — changed to ${formatByteSize(current.size)}, above the ` +
202
- `${formatByteSize(budget.hardMaxBytes)} per-image limit for ${budget.label} models`);
203
- continue;
204
- }
205
- bytes = await handle.readFile();
206
- }
207
- finally {
208
- await handle.close();
209
- }
194
+ bytes = await readImageBytes(prepared.path, Math.min(budget.hardMaxBytes, budget.maxTotalBytes - totalBytes), options.signal);
210
195
  }
211
196
  catch (error) {
197
+ options.signal?.throwIfAborted();
212
198
  failures.push(`${path} — could not be read (${error instanceof Error ? error.message : String(error)})`);
213
199
  continue;
214
200
  }
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/tools/image.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/tools/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,cAAc,GACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,MAAM,GACP,MAAM,UAAU,CAAC;AASlB,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,OAAO,EAAE,CAAC;IACnC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CACrB,IAA6B,EAC7B,GAAW;IAEX,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3E,CAAC;AAED,SAAS,cAAc,CACrB,IAA6B,EAC7B,GAAW;IAEX,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,eAAe,CACtB,IAA6B,EAC7B,GAAW;IAEX,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACrE,OAAO,4BAA4B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC;IACnF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,IAA6B,EAC7B,UAA+B,EAAE;IAEjC,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,oDAAoD;YAC5D,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC;IACnD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,8DAA8D;YACtE,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;YACpD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,gDAAgD;gBACxD,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QACD,aAAa,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACnB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,kCAAkC,IAAI,EAAE;gBAChD,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,cAAc,IAAI,qBAAqB;gBAC/C,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,cAAc,IAAI,oHAAoH;gBAC9I,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,0BAA0B,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACnG,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC1B,IAAI;QACJ,IAAI;QACJ,aAAa;QACb,SAAS,EAAE,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM;QACtD,UAAU,EAAE,eAAe,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI;QACvD,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,uBAAuB,IAAI,KAAK,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE;YACzE,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,IAAI,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO;YACL,EAAE,EAAE,IAAI;YACR,MAAM,EAAE,wCAAwC,IAAI,kKAAkK;SACvN,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,MAAM,EACJ,kCAAkC,IAAI,qBAAqB,MAAM,CAAC,UAAU,gBAAgB,uBAAuB,gBAAgB;gBACnI,qHAAqH;gBACrH,sGAAsG;gBACtG,mFAAmF;SACtF,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GACV,cAAc,IAAI,UAAU,MAAM,CAAC,GAAG,gBAAgB,MAAM,CAAC,UAAU,GAAG;QAC1E,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC;IACN,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;AAC7D,CAAC;AAED,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3D,OAAO,mDAAmD,CAAC;QAC7D,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,2EAA2E,CAAC;IACrF,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;QACnC,OAAO,8BAA8B,eAAe,yBAAyB,KAAK,CAAC,MAAM,GAAG,CAAC;IAC/F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAA6B,EAC7B,UAA+B,EAAE;IAEjC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrC,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,eAAe,KAAK,IAAI,kBAAkB,4DAA4D;gBACtG,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,IAAI;gBACzD,4FAA4F;YAC9F,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACrF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9C,SAAS;QACX,CAAC;QACD,IAAI,UAAU,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5D,QAAQ,CAAC,IAAI,CACX,GAAG,IAAI,yCAAyC,cAAc,CAAC,UAAU,CAAC,WAAW;gBACnF,GAAG,MAAM,CAAC,KAAK,qBAAqB,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAC7E,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,GAAG,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAChI,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;YACjC,QAAQ,CAAC,IAAI,CACX,GAAG,IAAI,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAC1F,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CACX,GAAG,IAAI,iBAAiB,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc;gBACpE,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,wBAAwB,MAAM,CAAC,KAAK,SAAS,CACtF,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,UAAU,GAAG,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CACX,GAAG,IAAI,wDAAwD;gBAC7D,GAAG,cAAc,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,eAAe,MAAM,CAAC,KAAK,GAAG;gBAC9E,oBAAoB,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAC7D,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,eAAe,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,eAAe,IAAI,eAAe,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC/D,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,0EAA0E,CAAC,CAAC;YACjG,SAAS;QACX,CAAC;QACD,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC;YACV,SAAS,EAAE,eAAe;YAC1B,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,QAAQ,CAAC,UAAU;SAC1B,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CACR,GAAG,QAAQ,CAAC,UAAU,MAAM,qBAAqB,CAAC,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,CACnG,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,+BAA+B,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,KAAK;gBAClF,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAClD,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GACV,MAAM,CAAC,MAAM,KAAK,CAAC;QACjB,CAAC,CAAC,gEAAgE;QAClE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,kFAAkF,CAAC;IACzG,MAAM,MAAM,GAAG;QACb,gBAAgB,MAAM,EAAE;QACxB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QACxD,GAAG,CAAC,QAAQ,CAAC,MAAM;YACjB,CAAC,CAAC,CAAC,EAAE,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YACjE,CAAC,CAAC,EAAE,CAAC;QACP,EAAE;QACF,+EAA+E;YAC7E,4CAA4C;KAC/C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AACtC,CAAC"}
@@ -70,7 +70,7 @@ export function App() {
70
70
  useEffect(() => services.focus.onChange(setFocusContext), [services.focus]);
71
71
  useEffect(() => {
72
72
  return services.session.onTurnEnd((result) => {
73
- if (!preserveEscapeArmAfterTurn(services.cancel.hasCancelableWork())) {
73
+ if (!preserveEscapeArmAfterTurn(services.cancel.hasForegroundWork())) {
74
74
  clearEscapeCancellation();
75
75
  }
76
76
  if (result.status === "completed")
@@ -81,7 +81,7 @@ export function App() {
81
81
  const disarmWhenIdle = () => {
82
82
  if (!escapeCancelArmedRef.current)
83
83
  return;
84
- if (!services.cancel.hasCancelableWork())
84
+ if (!services.cancel.hasForegroundWork())
85
85
  clearEscapeCancellation();
86
86
  };
87
87
  const unsubJobs = services.ports.jobs.subscribe(disarmWhenIdle);
@@ -185,18 +185,7 @@ export function App() {
185
185
  key.preventDefault();
186
186
  const dismissed = services.overlay.cancelBlockingPrompt();
187
187
  if (chord === "ctrl+c") {
188
- const now = Date.now();
189
- const doublePress = lastCtrlC.current > 0 &&
190
- now - lastCtrlC.current < CTRL_C_QUIT_WINDOW_MS;
191
- services.cancel.abortForeground();
192
- if (doublePress) {
193
- services.requestExit();
194
- return;
195
- }
196
- lastCtrlC.current = now;
197
- notifyWarn(services, dismissed
198
- ? "Prompt cancelled · Ctrl+C again to exit"
199
- : "Turn aborted · Ctrl+C again to exit", { key: "interrupt", durationMs: 2200 });
188
+ handleInterrupt(dismissed);
200
189
  return;
201
190
  }
202
191
  handleEscapeCancellation(dismissed);
@@ -213,18 +202,7 @@ export function App() {
213
202
  }
214
203
  if (chord === "ctrl+c") {
215
204
  key.preventDefault();
216
- const now = Date.now();
217
- const doublePress = lastCtrlC.current > 0 && now - lastCtrlC.current < CTRL_C_QUIT_WINDOW_MS;
218
- services.cancel.abortForeground();
219
- if (doublePress) {
220
- services.requestExit();
221
- return;
222
- }
223
- lastCtrlC.current = now;
224
- notifyWarn(services, "Ctrl+C again to exit", {
225
- key: "interrupt",
226
- durationMs: 2200,
227
- });
205
+ handleInterrupt();
228
206
  }
229
207
  return;
230
208
  }
@@ -249,49 +227,10 @@ export function App() {
249
227
  key.preventDefault();
250
228
  handleEscapeCancellation(services.overlay.cancelBlockingPrompt());
251
229
  break;
252
- case "app.interrupt": {
230
+ case "app.interrupt":
253
231
  key.preventDefault();
254
- services.overlay.cancelBlockingPrompt();
255
- const now = Date.now();
256
- const doublePress = lastCtrlC.current > 0 &&
257
- now - lastCtrlC.current < CTRL_C_QUIT_WINDOW_MS;
258
- const outcome = services.cancel.abortForeground();
259
- if (outcome.turnAborted) {
260
- if (doublePress) {
261
- services.requestExit();
262
- break;
263
- }
264
- lastCtrlC.current = now;
265
- notifyWarn(services, "Turn aborted · Ctrl+C again to exit", {
266
- key: "interrupt",
267
- durationMs: 2200,
268
- });
269
- break;
270
- }
271
- if (outcome.interruptibleCancelled > 0) {
272
- if (doublePress) {
273
- services.requestExit();
274
- break;
275
- }
276
- lastCtrlC.current = now;
277
- notifyWarn(services, "Operation cancelled · Ctrl+C again to exit", {
278
- key: "interrupt",
279
- durationMs: 2200,
280
- });
281
- break;
282
- }
283
- if (doublePress) {
284
- services.requestExit();
285
- }
286
- else {
287
- lastCtrlC.current = now;
288
- notify(services, "Ctrl+C again to exit", {
289
- key: "interrupt",
290
- durationMs: 2200,
291
- });
292
- }
232
+ handleInterrupt();
293
233
  break;
294
- }
295
234
  case "app.quit":
296
235
  key.preventDefault();
297
236
  services.requestExit();
@@ -410,6 +349,32 @@ export function App() {
410
349
  setEscapeCancelArmed(false);
411
350
  }, ESC_CANCEL_WINDOW_MS);
412
351
  }
352
+ function handleInterrupt(dismissed = services.overlay.cancelBlockingPrompt()) {
353
+ const now = Date.now();
354
+ if (lastCtrlC.current > 0 && now - lastCtrlC.current < CTRL_C_QUIT_WINDOW_MS) {
355
+ services.requestExit();
356
+ return;
357
+ }
358
+ lastCtrlC.current = now;
359
+ const active = dismissed || services.cancel.hasCancelableWork();
360
+ const failed = () => notifyWarn(services, "Cancellation completed with job stop failures — open Jobs for details", { key: "interrupt-failed", durationMs: 3200 });
361
+ void services.cancel.cancelAll().then((outcome) => { if (!outcome.ok)
362
+ failed(); }, failed);
363
+ notify(services, active ? "Cancelling work · Ctrl+C again to exit" : "Ctrl+C again to exit", {
364
+ key: "interrupt",
365
+ level: active ? "warn" : "info",
366
+ durationMs: 2200,
367
+ });
368
+ }
369
+ const stopMainAgent = useCallback(() => {
370
+ clearEscapeCancellation();
371
+ services.overlay.cancelBlockingPrompt();
372
+ services.cancel.abortForeground();
373
+ notify(services, "Main agent stopped · Background work continues", {
374
+ key: "escape-foreground",
375
+ durationMs: 2400,
376
+ });
377
+ }, [services]);
413
378
  function handleEscapeCancellation(dismissed) {
414
379
  const now = Date.now();
415
380
  if (lastEscapeHandledAt.current > 0 &&
@@ -419,11 +384,10 @@ export function App() {
419
384
  lastEscapeHandledAt.current = now;
420
385
  const doublePress = lastEscape.current > 0 &&
421
386
  now - lastEscape.current < ESC_CANCEL_WINDOW_MS;
422
- const hasCancelableWork = services.cancel.hasCancelableWork();
423
387
  const action = escapeCancellationAction({
424
388
  dismissed,
425
389
  doublePress,
426
- hasCancelableWork,
390
+ hasForegroundWork: services.cancel.hasForegroundWork(),
427
391
  });
428
392
  if (action === "dismiss") {
429
393
  clearEscapeCancellation();
@@ -433,27 +397,8 @@ export function App() {
433
397
  });
434
398
  return;
435
399
  }
436
- if (action === "cancel-all") {
437
- clearEscapeCancellation();
438
- services.overlay.cancelBlockingPrompt();
439
- void services.cancel.cancelAll().then((outcome) => {
440
- clearEscapeCancellation();
441
- const text = outcome.ok
442
- ? "Cancelled turn and Responder jobs"
443
- : "Cancellation completed with job stop failures — open Jobs for details";
444
- if (outcome.ok) {
445
- notify(services, text, {
446
- key: "escape-cancel-all",
447
- durationMs: 2400,
448
- });
449
- }
450
- else {
451
- notifyWarn(services, text, {
452
- key: "escape-cancel-all",
453
- durationMs: 3200,
454
- });
455
- }
456
- });
400
+ if (action === "cancel-foreground") {
401
+ stopMainAgent();
457
402
  return;
458
403
  }
459
404
  if (action === "arm") {
@@ -589,7 +534,7 @@ export function App() {
589
534
  flexShrink: 0,
590
535
  borderColor: theme.inputBorder,
591
536
  backgroundColor: theme.statusBackground,
592
- }, onMouseScroll: onPlanWheel, children: planPanel })) : null] }), _jsx(OverlayHost, { services: services, theme: theme, width: contentInnerWidth, height: overlay.kind === "confirm" ? confirmHeight : height, docked: true }), _jsx(ComposerEditor, { services: services, theme: theme, width: contentInnerWidth, height: composerMaxTextRows, focused: composerFocused, maxSuggestions: completionRows, running: sessionRunning, inputSuspended: contextLimitEditing, onEscapeCancel: requestEscapeCancel, seedDraft: composerSeed }), _jsx(StatusLine, { session: services.session, mode: sessionMode, theme: theme, activity: runningStatus, width: contentInnerWidth, hasActivePlan: Boolean(plan), planVisible: planVisible, thinkingExpanded: thinkingExpanded, outputExpanded: outputExpanded, onToggleThinking: toggleThinking, onToggleOutput: toggleOutput, onTogglePlan: toggleTasksPane, onJumpTop: jumpChatTop, onJumpBottom: jumpChatBottom, allowJumpToLatest: overlay.kind === "none" && !contextLimitEditing, onCutDraft: composerActionPort.cut, onClearDraft: composerActionPort.clear, onOpenCommands: composerActionPort.openCommands, hasDraft: hasDraft, onCycleMode: cycleMode, cancelArmed: escapeCancelArmed, onRequestCancel: requestEscapeCancel, onContextLimitEditingStart: startContextLimitEditing, onFocusComposer: focusComposer })] }), layout.plan.placement === "overlay" &&
537
+ }, onMouseScroll: onPlanWheel, children: planPanel })) : null] }), _jsx(OverlayHost, { services: services, theme: theme, width: contentInnerWidth, height: overlay.kind === "confirm" ? confirmHeight : height, docked: true }), _jsx(ComposerEditor, { services: services, theme: theme, width: contentInnerWidth, height: composerMaxTextRows, focused: composerFocused, maxSuggestions: completionRows, running: sessionRunning, inputSuspended: contextLimitEditing, onEscapeCancel: requestEscapeCancel, seedDraft: composerSeed }), _jsx(StatusLine, { session: services.session, mode: sessionMode, theme: theme, activity: runningStatus, width: contentInnerWidth, hasActivePlan: Boolean(plan), planVisible: planVisible, thinkingExpanded: thinkingExpanded, outputExpanded: outputExpanded, onToggleThinking: toggleThinking, onToggleOutput: toggleOutput, onTogglePlan: toggleTasksPane, onJumpTop: jumpChatTop, onJumpBottom: jumpChatBottom, allowJumpToLatest: overlay.kind === "none" && !contextLimitEditing, onCutDraft: composerActionPort.cut, onClearDraft: composerActionPort.clear, onOpenCommands: composerActionPort.openCommands, hasDraft: hasDraft, cancelArmed: escapeCancelArmed, onRequestCancel: stopMainAgent, onContextLimitEditingStart: startContextLimitEditing, onFocusComposer: focusComposer })] }), layout.plan.placement === "overlay" &&
593
538
  widthBudget.showPlanOverlay ? (_jsx("box", { title: " Tasks ", titleColor: theme.inputBorder, border: true, borderStyle: "rounded", style: {
594
539
  position: "absolute",
595
540
  top: overlayAnimTop,