takt 0.44.0 → 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. package/README.md +1 -0
  2. package/dist/agents/judge-status-usecase.d.ts +17 -7
  3. package/dist/agents/judge-status-usecase.d.ts.map +1 -1
  4. package/dist/agents/judge-status-usecase.js +25 -13
  5. package/dist/agents/judge-status-usecase.js.map +1 -1
  6. package/dist/agents/structured-caller/prompt-based-structured-caller.d.ts.map +1 -1
  7. package/dist/agents/structured-caller/prompt-based-structured-caller.js +7 -14
  8. package/dist/agents/structured-caller/prompt-based-structured-caller.js.map +1 -1
  9. package/dist/commands/analyze-usage.d.ts +26 -0
  10. package/dist/commands/analyze-usage.d.ts.map +1 -0
  11. package/dist/commands/analyze-usage.js +305 -0
  12. package/dist/commands/analyze-usage.js.map +1 -0
  13. package/dist/core/logging/contracts.d.ts +1 -0
  14. package/dist/core/logging/contracts.d.ts.map +1 -1
  15. package/dist/core/logging/contracts.js +1 -0
  16. package/dist/core/logging/contracts.js.map +1 -1
  17. package/dist/core/logging/phaseUsageEvent.d.ts +40 -0
  18. package/dist/core/logging/phaseUsageEvent.d.ts.map +1 -0
  19. package/dist/core/logging/phaseUsageEvent.js +195 -0
  20. package/dist/core/logging/phaseUsageEvent.js.map +1 -0
  21. package/dist/core/logging/providerEvent.d.ts +4 -0
  22. package/dist/core/logging/providerEvent.d.ts.map +1 -1
  23. package/dist/core/logging/providerEvent.js +31 -27
  24. package/dist/core/logging/providerEvent.js.map +1 -1
  25. package/dist/core/workflow/arpeggio/types.d.ts +3 -0
  26. package/dist/core/workflow/arpeggio/types.d.ts.map +1 -1
  27. package/dist/core/workflow/engine/ArpeggioRunner.d.ts.map +1 -1
  28. package/dist/core/workflow/engine/ArpeggioRunner.js +9 -0
  29. package/dist/core/workflow/engine/ArpeggioRunner.js.map +1 -1
  30. package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
  31. package/dist/core/workflow/engine/ParallelRunner.js +1 -0
  32. package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
  33. package/dist/core/workflow/engine/StepExecutor.d.ts.map +1 -1
  34. package/dist/core/workflow/engine/StepExecutor.js +1 -0
  35. package/dist/core/workflow/engine/StepExecutor.js.map +1 -1
  36. package/dist/core/workflow/engine/team-leader-part-runner.d.ts.map +1 -1
  37. package/dist/core/workflow/engine/team-leader-part-runner.js +1 -0
  38. package/dist/core/workflow/engine/team-leader-part-runner.js.map +1 -1
  39. package/dist/core/workflow/observability/workflowSpans.d.ts +3 -0
  40. package/dist/core/workflow/observability/workflowSpans.d.ts.map +1 -1
  41. package/dist/core/workflow/observability/workflowSpans.js +34 -1
  42. package/dist/core/workflow/observability/workflowSpans.js.map +1 -1
  43. package/dist/core/workflow/report-phase-runner.js +1 -0
  44. package/dist/core/workflow/report-phase-runner.js.map +1 -1
  45. package/dist/core/workflow/status-judgment-phase.d.ts.map +1 -1
  46. package/dist/core/workflow/status-judgment-phase.js +1 -0
  47. package/dist/core/workflow/status-judgment-phase.js.map +1 -1
  48. package/dist/core/workflow/types.d.ts +2 -0
  49. package/dist/core/workflow/types.d.ts.map +1 -1
  50. package/dist/features/interactive/aiCaller.d.ts +6 -1
  51. package/dist/features/interactive/aiCaller.d.ts.map +1 -1
  52. package/dist/features/interactive/aiCaller.js +10 -3
  53. package/dist/features/interactive/aiCaller.js.map +1 -1
  54. package/dist/features/interactive/clipboardImage.d.ts +3 -0
  55. package/dist/features/interactive/clipboardImage.d.ts.map +1 -0
  56. package/dist/features/interactive/clipboardImage.js +91 -0
  57. package/dist/features/interactive/clipboardImage.js.map +1 -0
  58. package/dist/features/interactive/clipboardImageFeedback.d.ts +2 -0
  59. package/dist/features/interactive/clipboardImageFeedback.d.ts.map +1 -0
  60. package/dist/features/interactive/clipboardImageFeedback.js +6 -0
  61. package/dist/features/interactive/clipboardImageFeedback.js.map +1 -0
  62. package/dist/features/interactive/conversationLoop.d.ts.map +1 -1
  63. package/dist/features/interactive/conversationLoop.js +8 -3
  64. package/dist/features/interactive/conversationLoop.js.map +1 -1
  65. package/dist/features/interactive/imageAttachments.d.ts +3 -0
  66. package/dist/features/interactive/imageAttachments.d.ts.map +1 -1
  67. package/dist/features/interactive/imageAttachments.js +18 -0
  68. package/dist/features/interactive/imageAttachments.js.map +1 -1
  69. package/dist/features/interactive/interactive.d.ts +1 -0
  70. package/dist/features/interactive/interactive.d.ts.map +1 -1
  71. package/dist/features/interactive/interactive.js.map +1 -1
  72. package/dist/features/interactive/interactiveInput.d.ts.map +1 -1
  73. package/dist/features/interactive/interactiveInput.js +4 -1
  74. package/dist/features/interactive/interactiveInput.js.map +1 -1
  75. package/dist/features/interactive/lineEditor.d.ts +18 -14
  76. package/dist/features/interactive/lineEditor.d.ts.map +1 -1
  77. package/dist/features/interactive/lineEditor.js +174 -80
  78. package/dist/features/interactive/lineEditor.js.map +1 -1
  79. package/dist/features/interactive/passthroughMode.d.ts.map +1 -1
  80. package/dist/features/interactive/passthroughMode.js +4 -1
  81. package/dist/features/interactive/passthroughMode.js.map +1 -1
  82. package/dist/features/interactive/quietMode.d.ts.map +1 -1
  83. package/dist/features/interactive/quietMode.js +5 -2
  84. package/dist/features/interactive/quietMode.js.map +1 -1
  85. package/dist/features/interactive/slashCommandRegistry.d.ts.map +1 -1
  86. package/dist/features/interactive/slashCommandRegistry.js +1 -0
  87. package/dist/features/interactive/slashCommandRegistry.js.map +1 -1
  88. package/dist/features/tasks/attachments.d.ts.map +1 -1
  89. package/dist/features/tasks/attachments.js +18 -1
  90. package/dist/features/tasks/attachments.js.map +1 -1
  91. package/dist/features/tasks/execute/runAllTasks.js +3 -3
  92. package/dist/features/tasks/execute/runAllTasks.js.map +1 -1
  93. package/dist/features/tasks/execute/selectAndExecute.d.ts.map +1 -1
  94. package/dist/features/tasks/execute/selectAndExecute.js +1 -2
  95. package/dist/features/tasks/execute/selectAndExecute.js.map +1 -1
  96. package/dist/features/tasks/execute/taskSpecContext.d.ts +1 -0
  97. package/dist/features/tasks/execute/taskSpecContext.d.ts.map +1 -1
  98. package/dist/features/tasks/execute/taskSpecContext.js +25 -1
  99. package/dist/features/tasks/execute/taskSpecContext.js.map +1 -1
  100. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts.map +1 -1
  101. package/dist/features/tasks/execute/workflowExecutionBootstrap.js +13 -1
  102. package/dist/features/tasks/execute/workflowExecutionBootstrap.js.map +1 -1
  103. package/dist/features/tasks/watch/index.js +3 -3
  104. package/dist/features/tasks/watch/index.js.map +1 -1
  105. package/dist/infra/claude/client.d.ts.map +1 -1
  106. package/dist/infra/claude/client.js +1 -0
  107. package/dist/infra/claude/client.js.map +1 -1
  108. package/dist/infra/claude/executor.d.ts.map +1 -1
  109. package/dist/infra/claude/executor.js +5 -35
  110. package/dist/infra/claude/executor.js.map +1 -1
  111. package/dist/infra/claude/image-input.d.ts +4 -0
  112. package/dist/infra/claude/image-input.d.ts.map +1 -0
  113. package/dist/infra/claude/image-input.js +63 -0
  114. package/dist/infra/claude/image-input.js.map +1 -0
  115. package/dist/infra/claude/types.d.ts +3 -0
  116. package/dist/infra/claude/types.d.ts.map +1 -1
  117. package/dist/infra/claude/usage.d.ts +3 -0
  118. package/dist/infra/claude/usage.d.ts.map +1 -0
  119. package/dist/infra/claude/usage.js +45 -0
  120. package/dist/infra/claude/usage.js.map +1 -0
  121. package/dist/infra/claude-headless/result-response.d.ts.map +1 -1
  122. package/dist/infra/claude-headless/result-response.js +1 -0
  123. package/dist/infra/claude-headless/result-response.js.map +1 -1
  124. package/dist/infra/claude-headless/stream-json-lines.d.ts +2 -0
  125. package/dist/infra/claude-headless/stream-json-lines.d.ts.map +1 -1
  126. package/dist/infra/claude-headless/stream-json-lines.js +4 -0
  127. package/dist/infra/claude-headless/stream-json-lines.js.map +1 -1
  128. package/dist/infra/codex/client.d.ts.map +1 -1
  129. package/dist/infra/codex/client.js +11 -1
  130. package/dist/infra/codex/client.js.map +1 -1
  131. package/dist/infra/codex/types.d.ts +2 -0
  132. package/dist/infra/codex/types.d.ts.map +1 -1
  133. package/dist/infra/codex/types.js.map +1 -1
  134. package/dist/infra/fs/index.d.ts +1 -0
  135. package/dist/infra/fs/index.d.ts.map +1 -1
  136. package/dist/infra/fs/index.js +1 -0
  137. package/dist/infra/fs/index.js.map +1 -1
  138. package/dist/infra/fs/jsonl.d.ts +2 -0
  139. package/dist/infra/fs/jsonl.d.ts.map +1 -0
  140. package/dist/infra/fs/jsonl.js +5 -0
  141. package/dist/infra/fs/jsonl.js.map +1 -0
  142. package/dist/infra/observability/otelFoundation.d.ts +2 -0
  143. package/dist/infra/observability/otelFoundation.d.ts.map +1 -1
  144. package/dist/infra/observability/otelFoundation.js +47 -7
  145. package/dist/infra/observability/otelFoundation.js.map +1 -1
  146. package/dist/infra/observability/usageEventsSpanProcessor.d.ts +19 -0
  147. package/dist/infra/observability/usageEventsSpanProcessor.d.ts.map +1 -0
  148. package/dist/infra/observability/usageEventsSpanProcessor.js +77 -0
  149. package/dist/infra/observability/usageEventsSpanProcessor.js.map +1 -0
  150. package/dist/infra/opencode/types.d.ts.map +1 -1
  151. package/dist/infra/opencode/types.js +8 -4
  152. package/dist/infra/opencode/types.js.map +1 -1
  153. package/dist/infra/providers/claude-headless.d.ts +1 -0
  154. package/dist/infra/providers/claude-headless.d.ts.map +1 -1
  155. package/dist/infra/providers/claude-headless.js +1 -0
  156. package/dist/infra/providers/claude-headless.js.map +1 -1
  157. package/dist/infra/providers/claude-terminal.d.ts +1 -0
  158. package/dist/infra/providers/claude-terminal.d.ts.map +1 -1
  159. package/dist/infra/providers/claude-terminal.js +1 -0
  160. package/dist/infra/providers/claude-terminal.js.map +1 -1
  161. package/dist/infra/providers/claude.d.ts +1 -0
  162. package/dist/infra/providers/claude.d.ts.map +1 -1
  163. package/dist/infra/providers/claude.js +2 -0
  164. package/dist/infra/providers/claude.js.map +1 -1
  165. package/dist/infra/providers/codex.d.ts +1 -0
  166. package/dist/infra/providers/codex.d.ts.map +1 -1
  167. package/dist/infra/providers/codex.js +2 -0
  168. package/dist/infra/providers/codex.js.map +1 -1
  169. package/dist/infra/providers/copilot.d.ts +1 -0
  170. package/dist/infra/providers/copilot.d.ts.map +1 -1
  171. package/dist/infra/providers/copilot.js +1 -0
  172. package/dist/infra/providers/copilot.js.map +1 -1
  173. package/dist/infra/providers/cursor.d.ts +1 -0
  174. package/dist/infra/providers/cursor.d.ts.map +1 -1
  175. package/dist/infra/providers/cursor.js +1 -0
  176. package/dist/infra/providers/cursor.js.map +1 -1
  177. package/dist/infra/providers/imageAttachmentPrompt.d.ts +4 -0
  178. package/dist/infra/providers/imageAttachmentPrompt.d.ts.map +1 -0
  179. package/dist/infra/providers/imageAttachmentPrompt.js +10 -0
  180. package/dist/infra/providers/imageAttachmentPrompt.js.map +1 -0
  181. package/dist/infra/providers/kiro.d.ts +1 -0
  182. package/dist/infra/providers/kiro.d.ts.map +1 -1
  183. package/dist/infra/providers/kiro.js +4 -0
  184. package/dist/infra/providers/kiro.js.map +1 -1
  185. package/dist/infra/providers/mock.d.ts +1 -0
  186. package/dist/infra/providers/mock.d.ts.map +1 -1
  187. package/dist/infra/providers/mock.js +1 -0
  188. package/dist/infra/providers/mock.js.map +1 -1
  189. package/dist/infra/providers/opencode.d.ts +1 -0
  190. package/dist/infra/providers/opencode.d.ts.map +1 -1
  191. package/dist/infra/providers/opencode.js +1 -0
  192. package/dist/infra/providers/opencode.js.map +1 -1
  193. package/dist/infra/providers/provider-capabilities.d.ts +1 -0
  194. package/dist/infra/providers/provider-capabilities.d.ts.map +1 -1
  195. package/dist/infra/providers/provider-capabilities.js +6 -1
  196. package/dist/infra/providers/provider-capabilities.js.map +1 -1
  197. package/dist/infra/providers/types.d.ts +6 -0
  198. package/dist/infra/providers/types.d.ts.map +1 -1
  199. package/dist/infra/task/clone-exec.d.ts +2 -0
  200. package/dist/infra/task/clone-exec.d.ts.map +1 -1
  201. package/dist/infra/task/clone-exec.js +29 -0
  202. package/dist/infra/task/clone-exec.js.map +1 -1
  203. package/dist/infra/task/clone.d.ts.map +1 -1
  204. package/dist/infra/task/clone.js +3 -1
  205. package/dist/infra/task/clone.js.map +1 -1
  206. package/dist/infra/task/runner.d.ts +1 -1
  207. package/dist/infra/task/runner.d.ts.map +1 -1
  208. package/dist/infra/task/runner.js +2 -2
  209. package/dist/infra/task/runner.js.map +1 -1
  210. package/dist/infra/task/taskLifecycleService.d.ts +1 -2
  211. package/dist/infra/task/taskLifecycleService.d.ts.map +1 -1
  212. package/dist/infra/task/taskLifecycleService.js +13 -19
  213. package/dist/infra/task/taskLifecycleService.js.map +1 -1
  214. package/dist/infra/task/taskRecordMutations.d.ts +0 -1
  215. package/dist/infra/task/taskRecordMutations.d.ts.map +1 -1
  216. package/dist/infra/task/taskRecordMutations.js +0 -12
  217. package/dist/infra/task/taskRecordMutations.js.map +1 -1
  218. package/dist/shared/constants.d.ts +1 -0
  219. package/dist/shared/constants.d.ts.map +1 -1
  220. package/dist/shared/constants.js +1 -0
  221. package/dist/shared/constants.js.map +1 -1
  222. package/dist/shared/i18n/labels_en.yaml +3 -1
  223. package/dist/shared/i18n/labels_ja.yaml +3 -1
  224. package/dist/shared/types/provider.d.ts +3 -1
  225. package/dist/shared/types/provider.d.ts.map +1 -1
  226. package/dist/shared/types/provider.js +15 -1
  227. package/dist/shared/types/provider.js.map +1 -1
  228. package/package.json +4 -3
@@ -10,6 +10,7 @@ import { createLogger, getErrorMessage } from '../../shared/utils/index.js';
10
10
  import { info, error, blankLine, StreamDisplay } from '../../shared/ui/index.js';
11
11
  import { getLabel } from '../../shared/i18n/index.js';
12
12
  import { EXIT_SIGINT } from '../../shared/exitCodes.js';
13
+ import { expandImageAttachmentPlaceholders } from '../../infra/providers/imageAttachmentPrompt.js';
13
14
  const log = createLogger('ai-caller');
14
15
  /**
15
16
  * Call AI with automatic retry on stale/invalid session.
@@ -17,7 +18,7 @@ const log = createLogger('ai-caller');
17
18
  * On session failure, clears sessionId and retries once without session.
18
19
  * Updates sessionId and persists it on success.
19
20
  */
20
- export async function callAIWithRetry(prompt, systemPrompt, allowedTools, cwd, ctx) {
21
+ export async function callAIWithRetry(prompt, systemPrompt, allowedTools, cwd, ctx, options = {}) {
21
22
  const display = new StreamDisplay('assistant', isQuietMode());
22
23
  const abortController = new AbortController();
23
24
  let sigintCount = 0;
@@ -37,13 +38,18 @@ export async function callAIWithRetry(prompt, systemPrompt, allowedTools, cwd, c
37
38
  let { sessionId } = ctx;
38
39
  try {
39
40
  const agent = ctx.provider.setup({ name: ctx.personaName, systemPrompt });
40
- const response = await agent.call(prompt, {
41
+ const promptForProvider = expandImageAttachmentPlaceholders(prompt, options.imageAttachments);
42
+ const nativeImageAttachments = ctx.provider.supportsNativeImageInput
43
+ ? options.imageAttachments
44
+ : undefined;
45
+ const response = await agent.call(promptForProvider, {
41
46
  cwd,
42
47
  model: ctx.model,
43
48
  sessionId,
44
49
  allowedTools,
45
50
  abortSignal: abortController.signal,
46
51
  onStream: display.createHandler(),
52
+ imageAttachments: nativeImageAttachments,
47
53
  });
48
54
  display.flush();
49
55
  const success = response.status !== 'blocked' && response.status !== 'error';
@@ -52,13 +58,14 @@ export async function callAIWithRetry(prompt, systemPrompt, allowedTools, cwd, c
52
58
  sessionId = undefined;
53
59
  const retryDisplay = new StreamDisplay('assistant', isQuietMode());
54
60
  const retryAgent = ctx.provider.setup({ name: ctx.personaName, systemPrompt });
55
- const retry = await retryAgent.call(prompt, {
61
+ const retry = await retryAgent.call(promptForProvider, {
56
62
  cwd,
57
63
  model: ctx.model,
58
64
  sessionId: undefined,
59
65
  allowedTools,
60
66
  abortSignal: abortController.signal,
61
67
  onStream: retryDisplay.createHandler(),
68
+ imageAttachments: nativeImageAttachments,
62
69
  });
63
70
  retryDisplay.flush();
64
71
  if (retry.sessionId) {
@@ -1 +1 @@
1
- {"version":3,"file":"aiCaller.js","sourceRoot":"","sources":["../../../src/features/interactive/aiCaller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aiCaller.js","sourceRoot":"","sources":["../../../src/features/interactive/aiCaller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type PastedImage } from './inlineImagePaste.js';
2
+ export declare function readClipboardImage(): Promise<PastedImage>;
3
+ //# sourceMappingURL=clipboardImage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboardImage.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/clipboardImage.ts"],"names":[],"mappings":"AAKA,OAAO,EAA0B,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AA6FjF,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CAM/D"}
@@ -0,0 +1,91 @@
1
+ import * as childProcess from 'node:child_process';
2
+ import { promisify } from 'node:util';
3
+ import { mkdtemp, readFile, rm, stat } from 'node:fs/promises';
4
+ import * as os from 'node:os';
5
+ import * as path from 'node:path';
6
+ import { MAX_INLINE_IMAGE_BYTES } from './inlineImagePaste.js';
7
+ const CLIPBOARD_COMMAND_TIMEOUT_MS = 10_000;
8
+ const CLIPBOARD_COMMAND_MAX_BUFFER = 1024 * 1024;
9
+ const MACOS_CLIPBOARD_IMAGE_SCRIPT = `
10
+ ObjC.import('AppKit');
11
+ ObjC.import('Foundation');
12
+
13
+ function writePasteboardData(type, outputPath) {
14
+ const data = $.NSPasteboard.generalPasteboard.dataForType($(type));
15
+ if (!data) {
16
+ return false;
17
+ }
18
+ if (!data.writeToFileAtomically($(outputPath), true)) {
19
+ throw new Error('Failed to write clipboard image data.');
20
+ }
21
+ return true;
22
+ }
23
+
24
+ function run(argv) {
25
+ const pngPath = argv[0];
26
+ const tiffPath = argv[1];
27
+ if (writePasteboardData('public.png', pngPath)) {
28
+ return 'png';
29
+ }
30
+ if (writePasteboardData('public.tiff', tiffPath)) {
31
+ return 'tiff';
32
+ }
33
+ throw new Error('Clipboard does not contain a PNG or TIFF image.');
34
+ }
35
+ `;
36
+ async function assertClipboardImageWithinLimit(filePath) {
37
+ const stats = await stat(filePath);
38
+ if (stats.size > MAX_INLINE_IMAGE_BYTES) {
39
+ throw new Error(`Clipboard image exceeds the ${MAX_INLINE_IMAGE_BYTES} byte limit.`);
40
+ }
41
+ }
42
+ async function execClipboardCommand(file, args) {
43
+ if (!childProcess.execFile) {
44
+ throw new Error('node:child_process.execFile is required to read clipboard images.');
45
+ }
46
+ const execFileAsync = promisify(childProcess.execFile);
47
+ return execFileAsync(file, args, {
48
+ timeout: CLIPBOARD_COMMAND_TIMEOUT_MS,
49
+ maxBuffer: CLIPBOARD_COMMAND_MAX_BUFFER,
50
+ });
51
+ }
52
+ async function readMacOSClipboardImage() {
53
+ const tempDir = await mkdtemp(path.join(os.tmpdir(), 'takt-clipboard-image-'));
54
+ const pngPath = path.join(tempDir, 'clipboard.png');
55
+ const tiffPath = path.join(tempDir, 'clipboard.tiff');
56
+ try {
57
+ const { stdout } = await execClipboardCommand('osascript', [
58
+ '-l',
59
+ 'JavaScript',
60
+ '-e',
61
+ MACOS_CLIPBOARD_IMAGE_SCRIPT,
62
+ pngPath,
63
+ tiffPath,
64
+ ]);
65
+ if (stdout.trim() === 'tiff') {
66
+ await execClipboardCommand('sips', [
67
+ '-s',
68
+ 'format',
69
+ 'png',
70
+ tiffPath,
71
+ '--out',
72
+ pngPath,
73
+ ]);
74
+ }
75
+ await assertClipboardImageWithinLimit(pngPath);
76
+ return {
77
+ mimeType: 'image/png',
78
+ data: await readFile(pngPath),
79
+ };
80
+ }
81
+ finally {
82
+ await rm(tempDir, { recursive: true, force: true });
83
+ }
84
+ }
85
+ export async function readClipboardImage() {
86
+ if (process.platform !== 'darwin') {
87
+ throw new Error('Clipboard image paste is currently supported only on macOS.');
88
+ }
89
+ return readMacOSClipboardImage();
90
+ }
91
+ //# sourceMappingURL=clipboardImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboardImage.js","sourceRoot":"","sources":["../../../src/features/interactive/clipboardImage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAoB,MAAM,uBAAuB,CAAC;AAEjF,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAC5C,MAAM,4BAA4B,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjD,MAAM,4BAA4B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BpC,CAAC;AAEF,KAAK,UAAU,+BAA+B,CAAC,QAAgB;IAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,IAAI,GAAG,sBAAsB,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,+BAA+B,sBAAsB,cAAc,CAAC,CAAC;IACvF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,IAAY,EAAE,IAAc;IAC9D,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,aAAa,GAAG,SAAS,CAAC,YAAY,CAAC,QAAQ,CAIL,CAAC;IAEjD,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE;QAC/B,OAAO,EAAE,4BAA4B;QACrC,SAAS,EAAE,4BAA4B;KACxC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,uBAAuB;IACpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAEtD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE;YACzD,IAAI;YACJ,YAAY;YACZ,IAAI;YACJ,4BAA4B;YAC5B,OAAO;YACP,QAAQ;SACT,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YAC7B,MAAM,oBAAoB,CAAC,MAAM,EAAE;gBACjC,IAAI;gBACJ,QAAQ;gBACR,KAAK;gBACL,QAAQ;gBACR,OAAO;gBACP,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QAED,MAAM,+BAA+B,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO;YACL,QAAQ,EAAE,WAAW;YACrB,IAAI,EAAE,MAAM,QAAQ,CAAC,OAAO,CAAC;SAC9B,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,uBAAuB,EAAE,CAAC;AACnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function reportClipboardImagePasteError(error: unknown): void;
2
+ //# sourceMappingURL=clipboardImageFeedback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboardImageFeedback.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/clipboardImageFeedback.ts"],"names":[],"mappings":"AAGA,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEnE"}
@@ -0,0 +1,6 @@
1
+ import { getErrorMessage } from '../../shared/utils/index.js';
2
+ import { warn } from '../../shared/ui/index.js';
3
+ export function reportClipboardImagePasteError(error) {
4
+ warn(`Clipboard image paste failed: ${getErrorMessage(error)}`);
5
+ }
6
+ //# sourceMappingURL=clipboardImageFeedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clipboardImageFeedback.js","sourceRoot":"","sources":["../../../src/features/interactive/clipboardImageFeedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEhD,MAAM,UAAU,8BAA8B,CAAC,KAAc;IAC3D,IAAI,CAAC,iCAAiC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAClE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"conversationLoop.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/conversationLoop.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAeH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAG1B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EAIvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAsC,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AASxF,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAiCxF;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAQhF;AAED,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,0DAA0D;AAC1D,MAAM,WAAW,oBAAoB;IACnC,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,2EAA2E;IAC3E,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACzE,uCAAuC;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,gGAAgG;IAChG,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACtF,0EAA0E;IAC1E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,oBAAoB,EAC9B,eAAe,EAAE,eAAe,GAAG,SAAS,EAC5C,YAAY,EAAE,oBAAoB,GAAG,SAAS,GAC7C,OAAO,CAAC,qBAAqB,CAAC,CA+MhC"}
1
+ {"version":3,"file":"conversationLoop.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/conversationLoop.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAeH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAG1B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EAIvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAsC,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAaxF,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAiCxF;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAQhF;AAED,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,0DAA0D;AAC1D,MAAM,WAAW,oBAAoB;IACnC,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,2EAA2E;IAC3E,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACzE,uCAAuC;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,gGAAgG;IAChG,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACtF,0EAA0E;IAC1E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,oBAAoB,EAC9B,eAAe,EAAE,eAAe,GAAG,SAAS,EAC5C,YAAY,EAAE,oBAAoB,GAAG,SAAS,GAC7C,OAAO,CAAC,qBAAqB,CAAC,CAsNhC"}
@@ -19,7 +19,7 @@ import { buildSummaryPrompt, selectPostSummaryAction, formatSessionStatus, } fro
19
19
  import { callAIWithRetry } from './aiCaller.js';
20
20
  import { createInputLogMeta, createPlayCommandLogMeta, createSessionLogMeta, } from './conversationLogMeta.js';
21
21
  import { prependInitialPromptContext } from './promptSections.js';
22
- import { buildInteractiveResultWithAttachments, createSessionImageAttachmentStore } from './imageAttachments.js';
22
+ import { buildInteractiveResultWithAttachments, createSessionImageAttachmentStore, resolvePromptImageAttachments, } from './imageAttachments.js';
23
23
  export { callAIWithRetry } from './aiCaller.js';
24
24
  const log = createLogger('conversation-loop');
25
25
  function resolveGoSummaryInput(history, hasSessionContext, hasSourceContext, inlineTaskText) {
@@ -79,7 +79,8 @@ export async function runConversationLoop(cwd, ctx, strategy, workflowContext, i
79
79
  blankLine();
80
80
  /** Helper: call AI with current session and update session state */
81
81
  async function doCallAI(prompt, sysPrompt, tools) {
82
- const { result, sessionId: newSessionId } = await callAIWithRetry(prompt, sysPrompt, tools, cwd, { ...ctx, sessionId });
82
+ const imageAttachments = resolvePromptImageAttachments(prompt, attachmentStore.listAttachments());
83
+ const { result, sessionId: newSessionId } = await callAIWithRetry(prompt, sysPrompt, tools, cwd, { ...ctx, sessionId }, { imageAttachments });
83
84
  sessionId = newSessionId;
84
85
  return result;
85
86
  }
@@ -188,7 +189,7 @@ export async function runConversationLoop(cwd, ctx, strategy, workflowContext, i
188
189
  process.stdin.pause();
189
190
  info(getLabel('interactive.ui.creatingInstruction', ctx.lang));
190
191
  // Summary AI must not inherit the conversation session to avoid chat-mode behavior.
191
- const { result: summaryResult } = await callAIWithRetry(summaryPrompt, summaryPrompt, strategy.allowedTools, cwd, { ...ctx, sessionId: undefined });
192
+ const { result: summaryResult } = await callAIWithRetry(summaryPrompt, summaryPrompt, strategy.allowedTools, cwd, { ...ctx, sessionId: undefined }, { imageAttachments: resolvePromptImageAttachments(summaryPrompt, attachmentStore.listAttachments()) });
192
193
  if (!summaryResult) {
193
194
  info(ui.summarizeFailed);
194
195
  continue;
@@ -226,6 +227,10 @@ export async function runConversationLoop(cwd, ctx, strategy, workflowContext, i
226
227
  }
227
228
  continue;
228
229
  }
230
+ case SlashCommand.PasteImage: {
231
+ info(ui.pasteImageUnavailable);
232
+ continue;
233
+ }
229
234
  }
230
235
  }
231
236
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conversationLoop.js","sourceRoot":"","sources":["../../../src/features/interactive/conversationLoop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversationLoop.js","sourceRoot":"","sources":["../../../src/features/interactive/conversationLoop.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ProviderImageAttachment } from '../../infra/providers/types.js';
1
2
  import type { InteractiveModeResult } from './interactive.js';
2
3
  import type { ImagePasteHandler } from './inlineImagePaste.js';
3
4
  export interface InteractiveImageAttachment {
@@ -17,4 +18,6 @@ export declare function buildInteractiveResultWithAttachments(result: Interactiv
17
18
  export declare function createImageAttachmentStore(options: ImageAttachmentStoreOptions): ImageAttachmentStore;
18
19
  export declare function createSessionImageAttachmentStore(): ImageAttachmentStore;
19
20
  export declare function createImagePasteHandler(attachmentStore: ImageAttachmentStore): ImagePasteHandler;
21
+ export declare function createClipboardImagePasteHandler(attachmentStore: ImageAttachmentStore): () => Promise<string>;
22
+ export declare function resolvePromptImageAttachments(prompt: string, attachments: readonly InteractiveImageAttachment[]): ProviderImageAttachment[];
20
23
  //# sourceMappingURL=imageAttachments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"imageAttachments.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/imageAttachments.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAC/E,eAAe,IAAI,0BAA0B,EAAE,CAAC;CACjD;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAyBD,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,qBAAqB,EAC7B,eAAe,EAAE,oBAAoB,GACpC,qBAAqB,CAMvB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,oBAAoB,CAkCtB;AAED,wBAAgB,iCAAiC,IAAI,oBAAoB,CAKxE;AAED,wBAAgB,uBAAuB,CAAC,eAAe,EAAE,oBAAoB,GAAG,iBAAiB,CAKhG"}
1
+ {"version":3,"file":"imageAttachments.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/imageAttachments.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG/D,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAC/E,eAAe,IAAI,0BAA0B,EAAE,CAAC;CACjD;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AA0BD,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,qBAAqB,EAC7B,eAAe,EAAE,oBAAoB,GACpC,qBAAqB,CAMvB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,oBAAoB,CAkCtB;AAED,wBAAgB,iCAAiC,IAAI,oBAAoB,CAKxE;AAED,wBAAgB,uBAAuB,CAAC,eAAe,EAAE,oBAAoB,GAAG,iBAAiB,CAKhG;AAED,wBAAgB,gCAAgC,CAAC,eAAe,EAAE,oBAAoB,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAM7G;AAED,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,SAAS,0BAA0B,EAAE,GACjD,uBAAuB,EAAE,CAQ3B"}
@@ -2,8 +2,10 @@ import { randomUUID } from 'node:crypto';
2
2
  import * as fs from 'node:fs';
3
3
  import * as os from 'node:os';
4
4
  import * as path from 'node:path';
5
+ import { readClipboardImage } from './clipboardImage.js';
5
6
  const PRIVATE_DIRECTORY_MODE = 0o700;
6
7
  const PRIVATE_FILE_MODE = 0o600;
8
+ const IMAGE_PLACEHOLDER_PATTERN = /\[Image #\d+\]/g;
7
9
  function extensionForMimeType(mimeType) {
8
10
  switch (mimeType) {
9
11
  case 'image/png':
@@ -72,4 +74,20 @@ export function createImagePasteHandler(attachmentStore) {
72
74
  return attachment.placeholder;
73
75
  };
74
76
  }
77
+ export function createClipboardImagePasteHandler(attachmentStore) {
78
+ return async () => {
79
+ const image = await readClipboardImage();
80
+ const attachment = await attachmentStore.saveImage(image.data, image.mimeType);
81
+ return attachment.placeholder;
82
+ };
83
+ }
84
+ export function resolvePromptImageAttachments(prompt, attachments) {
85
+ const referencedPlaceholders = new Set(prompt.match(IMAGE_PLACEHOLDER_PATTERN) ?? []);
86
+ return attachments
87
+ .filter((attachment) => referencedPlaceholders.has(attachment.placeholder))
88
+ .map((attachment) => ({
89
+ placeholder: attachment.placeholder,
90
+ path: attachment.tempPath,
91
+ }));
92
+ }
75
93
  //# sourceMappingURL=imageAttachments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"imageAttachments.js","sourceRoot":"","sources":["../../../src/features/interactive/imageAttachments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imageAttachments.js","sourceRoot":"","sources":["../../../src/features/interactive/imageAttachments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAkBzD,MAAM,sBAAsB,GAAG,KAAK,CAAC;AACrC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAChC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AAEpD,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,OAAO,KAAK,CAAC;QACf,KAAK,YAAY;YACf,OAAO,KAAK,CAAC;QACf,KAAK,WAAW;YACd,OAAO,KAAK,CAAC;QACf,KAAK,YAAY;YACf,OAAO,MAAM,CAAC;QAChB;YACE,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,aAAqB;IACnD,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;IAC/E,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,MAA6B,EAC7B,eAAqC;IAErC,MAAM,WAAW,GAAG,eAAe,CAAC,eAAe,EAAE,CAAC;IACtD,OAAO;QACL,GAAG,MAAM;QACT,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,OAAoC;IAEpC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,WAAW,GAAiC,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAE3D,OAAO;QACL,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,QAAgB;YAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,SAAS,KAAK,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,UAAU,GAA+B;gBAC7C,WAAW,EAAE,WAAW,KAAK,GAAG;gBAChC,QAAQ;gBACR,QAAQ;aACT,CAAC;YAEF,sBAAsB,CAAC,UAAU,CAAC,CAAC;YACnC,sBAAsB,CAAC,aAAa,CAAC,CAAC;YACtC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1E,WAAW,GAAG,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC;YAC3C,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,eAAe;YACb,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,OAAO,0BAA0B,CAAC;QAChC,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE;QACpB,SAAS,EAAE,UAAU,EAAE;KACxB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,eAAqC;IAC3E,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/E,OAAO,UAAU,CAAC,WAAW,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,eAAqC;IACpF,OAAO,KAAK,IAAI,EAAE;QAChB,MAAM,KAAK,GAAG,MAAM,kBAAkB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/E,OAAO,UAAU,CAAC,WAAW,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,MAAc,EACd,WAAkD;IAElD,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,OAAO,WAAW;SACf,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;SAC1E,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACpB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,IAAI,EAAE,UAAU,CAAC,QAAQ;KAC1B,CAAC,CAAC,CAAC;AACR,CAAC"}
@@ -35,6 +35,7 @@ export interface InteractiveUIText {
35
35
  playNoTask: string;
36
36
  retryNoOrder: string;
37
37
  retryUnavailable: string;
38
+ pasteImageUnavailable: string;
38
39
  }
39
40
  /**
40
41
  * Format session state for display
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/interactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/interactive.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../../src/features/interactive/interactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../../src/features/interactive/interactive.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interactiveInput.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/interactiveInput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGlE,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAqB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACtG,OAAO,EAA2B,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE3F;;GAEG;AACH,eAAO,MAAM,0BAA0B,GACrC,QAAQ,MAAM,EACd,MAAM,QAAQ,EACd,eAAe,mBAAmB,KACjC,SAAS,mBAAmB,EAK1B,CAAC;AAyBN;;GAEG;AACH,eAAO,MAAM,oCAAoC,GAC/C,MAAM,QAAQ,EACd,eAAe,mBAAmB,KACjC,kBAcA,CAAC;AAEJ;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,EACd,MAAM,QAAQ,EACd,eAAe,mBAAmB,EAClC,uBAAuB,oBAAoB,KAC1C,OAAO,CAAC,MAAM,GAAG,IAAI,CAMpB,CAAC"}
1
+ {"version":3,"file":"interactiveInput.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/interactiveInput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGlE,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAqB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACtG,OAAO,EAA6D,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7H;;GAEG;AACH,eAAO,MAAM,0BAA0B,GACrC,QAAQ,MAAM,EACd,MAAM,QAAQ,EACd,eAAe,mBAAmB,KACjC,SAAS,mBAAmB,EAK1B,CAAC;AAyBN;;GAEG;AACH,eAAO,MAAM,oCAAoC,GAC/C,MAAM,QAAQ,EACd,eAAe,mBAAmB,KACjC,kBAcA,CAAC;AAEJ;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,EACd,MAAM,QAAQ,EACd,eAAe,mBAAmB,EAClC,uBAAuB,oBAAoB,KAC1C,OAAO,CAAC,MAAM,GAAG,IAAI,CAQpB,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { getLabel } from '../../shared/i18n/index.js';
2
2
  import { readMultilineInput } from './lineEditor.js';
3
3
  import { filterSlashCommands } from './slashCommandRegistry.js';
4
- import { createImagePasteHandler } from './imageAttachments.js';
4
+ import { createClipboardImagePasteHandler, createImagePasteHandler } from './imageAttachments.js';
5
+ import { reportClipboardImagePasteError } from './clipboardImageFeedback.js';
5
6
  /**
6
7
  * Build localized slash-command completion candidates for the current input.
7
8
  */
@@ -54,6 +55,8 @@ export const readInteractiveInput = (prompt, lang, availability, imageAttachment
54
55
  completionProvider: createSlashCommandCompletionProvider(lang, availability),
55
56
  ...(imageAttachmentStore ? {
56
57
  onImagePaste: createImagePasteHandler(imageAttachmentStore),
58
+ onClipboardImagePaste: createClipboardImagePasteHandler(imageAttachmentStore),
59
+ onClipboardImagePasteError: reportClipboardImagePasteError,
57
60
  } : {}),
58
61
  });
59
62
  //# sourceMappingURL=interactiveInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interactiveInput.js","sourceRoot":"","sources":["../../../src/features/interactive/interactiveInput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactiveInput.js","sourceRoot":"","sources":["../../../src/features/interactive/interactiveInput.ts"],"names":[],"mappings":"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"}
@@ -8,21 +8,22 @@
8
8
  */
9
9
  import type { CompletionProvider } from './completionMenu.js';
10
10
  import { type ImagePasteHandler } from './inlineImagePaste.js';
11
+ type InputCallbackResult = void | Promise<void>;
11
12
  /** Callbacks for parsed input events */
12
13
  export interface InputCallbacks {
13
- onPasteStart: () => void;
14
- onPasteEnd: () => void;
15
- onShiftEnter: () => void;
16
- onArrowLeft: () => void;
17
- onArrowRight: () => void;
18
- onArrowUp: () => void;
19
- onArrowDown: () => void;
20
- onWordLeft: () => void;
21
- onWordRight: () => void;
22
- onHome: () => void;
23
- onEnd: () => void;
24
- onEsc: () => void;
25
- onChar: (ch: string) => void;
14
+ onPasteStart: () => InputCallbackResult;
15
+ onPasteEnd: () => InputCallbackResult;
16
+ onShiftEnter: () => InputCallbackResult;
17
+ onArrowLeft: () => InputCallbackResult;
18
+ onArrowRight: () => InputCallbackResult;
19
+ onArrowUp: () => InputCallbackResult;
20
+ onArrowDown: () => InputCallbackResult;
21
+ onWordLeft: () => InputCallbackResult;
22
+ onWordRight: () => InputCallbackResult;
23
+ onHome: () => InputCallbackResult;
24
+ onEnd: () => InputCallbackResult;
25
+ onEsc: () => InputCallbackResult;
26
+ onChar: (ch: string) => InputCallbackResult;
26
27
  }
27
28
  /**
28
29
  * Parse raw stdin data into semantic input events.
@@ -38,7 +39,7 @@ export declare function parseInputData(data: string, callbacks: InputCallbacks):
38
39
  * when the next chunk arrives or after a timeout.
39
40
  */
40
41
  export declare const createEscapeParser: (callbacks: InputCallbacks) => {
41
- feed: (data: string) => void;
42
+ feed: (data: string) => Promise<void>;
42
43
  flush: () => void;
43
44
  };
44
45
  /**
@@ -56,5 +57,8 @@ export declare const createEscapeParser: (callbacks: InputCallbacks) => {
56
57
  export declare function readMultilineInput(prompt: string, options?: {
57
58
  completionProvider?: CompletionProvider;
58
59
  onImagePaste?: ImagePasteHandler;
60
+ onClipboardImagePaste?: () => Promise<string>;
61
+ onClipboardImagePasteError?: (error: unknown) => void;
59
62
  }): Promise<string | null>;
63
+ export {};
60
64
  //# sourceMappingURL=lineEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lineEditor.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/lineEditor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAIL,KAAK,iBAAiB,EAEvB,MAAM,uBAAuB,CAAC;AAwE/B,wCAAwC;AACxC,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AA4ED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG,IAAI,CAuB5E;AAID;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC7B,WAAW,cAAc,KACxB;IAAE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,IAAI,CAAA;CA0DnD,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IACR,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,YAAY,CAAC,EAAE,iBAAiB,CAAC;CAClC,GACA,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAqsBxB"}
1
+ {"version":3,"file":"lineEditor.d.ts","sourceRoot":"","sources":["../../../src/features/interactive/lineEditor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAIL,KAAK,iBAAiB,EAEvB,MAAM,uBAAuB,CAAC;AAmB/B,KAAK,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAgEhD,wCAAwC;AACxC,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,mBAAmB,CAAC;IACxC,UAAU,EAAE,MAAM,mBAAmB,CAAC;IACtC,YAAY,EAAE,MAAM,mBAAmB,CAAC;IACxC,WAAW,EAAE,MAAM,mBAAmB,CAAC;IACvC,YAAY,EAAE,MAAM,mBAAmB,CAAC;IACxC,SAAS,EAAE,MAAM,mBAAmB,CAAC;IACrC,WAAW,EAAE,MAAM,mBAAmB,CAAC;IACvC,UAAU,EAAE,MAAM,mBAAmB,CAAC;IACtC,WAAW,EAAE,MAAM,mBAAmB,CAAC;IACvC,MAAM,EAAE,MAAM,mBAAmB,CAAC;IAClC,KAAK,EAAE,MAAM,mBAAmB,CAAC;IACjC,KAAK,EAAE,MAAM,mBAAmB,CAAC;IACjC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,mBAAmB,CAAC;CAC7C;AAkGD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG,IAAI,CAuB5E;AAID;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC7B,WAAW,cAAc,KACxB;IAAE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,IAAI,CAAA;CA0D5D,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IACR,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACvD,GACA,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAizBxB"}