@sumicom/quicksave 0.8.5 → 0.8.7

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 (193) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +31 -93
  3. package/dist/ai/asyncQueue.d.ts.map +1 -1
  4. package/dist/ai/asyncQueue.js +2 -0
  5. package/dist/ai/asyncQueue.js.map +1 -1
  6. package/dist/ai/attachmentStaging.d.ts +71 -0
  7. package/dist/ai/attachmentStaging.d.ts.map +1 -0
  8. package/dist/ai/attachmentStaging.js +243 -0
  9. package/dist/ai/attachmentStaging.js.map +1 -0
  10. package/dist/ai/attachmentStore.d.ts +40 -0
  11. package/dist/ai/attachmentStore.d.ts.map +1 -0
  12. package/dist/ai/attachmentStore.js +173 -0
  13. package/dist/ai/attachmentStore.js.map +1 -0
  14. package/dist/ai/cardBuilder.d.ts +6 -6
  15. package/dist/ai/cardBuilder.d.ts.map +1 -1
  16. package/dist/ai/cardBuilder.js +164 -16
  17. package/dist/ai/cardBuilder.js.map +1 -1
  18. package/dist/ai/claudeCliProvider.d.ts +34 -15
  19. package/dist/ai/claudeCliProvider.d.ts.map +1 -1
  20. package/dist/ai/claudeCliProvider.js +108 -64
  21. package/dist/ai/claudeCliProvider.js.map +1 -1
  22. package/dist/ai/claudeCodeProvider.d.ts.map +1 -1
  23. package/dist/ai/claudeCodeProvider.js +2 -0
  24. package/dist/ai/claudeCodeProvider.js.map +1 -1
  25. package/dist/ai/claudeSdkProvider.d.ts +6 -3
  26. package/dist/ai/claudeSdkProvider.d.ts.map +1 -1
  27. package/dist/ai/claudeSdkProvider.js +97 -29
  28. package/dist/ai/claudeSdkProvider.js.map +1 -1
  29. package/dist/ai/codexAppServer/approvalMapping.d.ts.map +1 -1
  30. package/dist/ai/codexAppServer/approvalMapping.js.map +1 -1
  31. package/dist/ai/codexAppServer/cardAdapter.d.ts +0 -3
  32. package/dist/ai/codexAppServer/cardAdapter.d.ts.map +1 -1
  33. package/dist/ai/codexAppServer/cardAdapter.js +40 -5
  34. package/dist/ai/codexAppServer/cardAdapter.js.map +1 -1
  35. package/dist/ai/codexAppServer/index.d.ts.map +1 -1
  36. package/dist/ai/codexAppServer/index.js +2 -0
  37. package/dist/ai/codexAppServer/index.js.map +1 -1
  38. package/dist/ai/codexAppServer/overrideStore.d.ts.map +1 -1
  39. package/dist/ai/codexAppServer/overrideStore.js.map +1 -1
  40. package/dist/ai/codexAppServer/permissionMapping.d.ts.map +1 -1
  41. package/dist/ai/codexAppServer/permissionMapping.js.map +1 -1
  42. package/dist/ai/codexAppServer/processManager.d.ts.map +1 -1
  43. package/dist/ai/codexAppServer/processManager.js +2 -0
  44. package/dist/ai/codexAppServer/processManager.js.map +1 -1
  45. package/dist/ai/codexAppServer/provider.d.ts.map +1 -1
  46. package/dist/ai/codexAppServer/provider.js +9 -24
  47. package/dist/ai/codexAppServer/provider.js.map +1 -1
  48. package/dist/ai/codexAppServer/rpcClient.d.ts.map +1 -1
  49. package/dist/ai/codexAppServer/rpcClient.js.map +1 -1
  50. package/dist/ai/codexAppServer/schema/index.d.ts.map +1 -1
  51. package/dist/ai/codexAppServer/schema/index.js +2 -0
  52. package/dist/ai/codexAppServer/schema/index.js.map +1 -1
  53. package/dist/ai/codexAppServer/stdioTransport.d.ts.map +1 -1
  54. package/dist/ai/codexAppServer/stdioTransport.js.map +1 -1
  55. package/dist/ai/codexAppServer/tokenAccounting.d.ts.map +1 -1
  56. package/dist/ai/codexAppServer/tokenAccounting.js.map +1 -1
  57. package/dist/ai/codexAppServer/version.d.ts.map +1 -1
  58. package/dist/ai/codexAppServer/version.js +2 -0
  59. package/dist/ai/codexAppServer/version.js.map +1 -1
  60. package/dist/ai/codexLogin.d.ts.map +1 -1
  61. package/dist/ai/codexLogin.js +2 -0
  62. package/dist/ai/codexLogin.js.map +1 -1
  63. package/dist/ai/codexMcpProvider.d.ts.map +1 -1
  64. package/dist/ai/codexMcpProvider.js +7 -10
  65. package/dist/ai/codexMcpProvider.js.map +1 -1
  66. package/dist/ai/commitSummary.d.ts.map +1 -1
  67. package/dist/ai/commitSummary.js +2 -0
  68. package/dist/ai/commitSummary.js.map +1 -1
  69. package/dist/ai/commitSummaryCli.d.ts.map +1 -1
  70. package/dist/ai/commitSummaryCli.js +2 -0
  71. package/dist/ai/commitSummaryCli.js.map +1 -1
  72. package/dist/ai/commitSummaryStore.d.ts.map +1 -1
  73. package/dist/ai/commitSummaryStore.js +2 -0
  74. package/dist/ai/commitSummaryStore.js.map +1 -1
  75. package/dist/ai/contentBlocks.d.ts +9 -0
  76. package/dist/ai/contentBlocks.d.ts.map +1 -0
  77. package/dist/ai/contentBlocks.js +86 -0
  78. package/dist/ai/contentBlocks.js.map +1 -0
  79. package/dist/ai/debugLogger.d.ts.map +1 -1
  80. package/dist/ai/debugLogger.js +2 -0
  81. package/dist/ai/debugLogger.js.map +1 -1
  82. package/dist/ai/enrichEntry.d.ts.map +1 -1
  83. package/dist/ai/enrichEntry.js.map +1 -1
  84. package/dist/ai/pdfMeta.d.ts +8 -0
  85. package/dist/ai/pdfMeta.d.ts.map +1 -0
  86. package/dist/ai/pdfMeta.js +51 -0
  87. package/dist/ai/pdfMeta.js.map +1 -0
  88. package/dist/ai/provider.d.ts +21 -8
  89. package/dist/ai/provider.d.ts.map +1 -1
  90. package/dist/ai/provider.js.map +1 -1
  91. package/dist/ai/sandboxMcp.d.ts.map +1 -1
  92. package/dist/ai/sandboxMcp.js +2 -0
  93. package/dist/ai/sandboxMcp.js.map +1 -1
  94. package/dist/ai/sandboxMcpStdio.d.ts.map +1 -1
  95. package/dist/ai/sandboxMcpStdio.js +2 -0
  96. package/dist/ai/sandboxMcpStdio.js.map +1 -1
  97. package/dist/ai/sessionManager.d.ts +19 -7
  98. package/dist/ai/sessionManager.d.ts.map +1 -1
  99. package/dist/ai/sessionManager.js +81 -23
  100. package/dist/ai/sessionManager.js.map +1 -1
  101. package/dist/ai/sessionRegistry.d.ts.map +1 -1
  102. package/dist/ai/sessionRegistry.js +2 -0
  103. package/dist/ai/sessionRegistry.js.map +1 -1
  104. package/dist/ai/sessionStore.d.ts.map +1 -1
  105. package/dist/ai/sessionStore.js +2 -0
  106. package/dist/ai/sessionStore.js.map +1 -1
  107. package/dist/ai/systemPrompt.d.ts.map +1 -1
  108. package/dist/ai/systemPrompt.js +3 -0
  109. package/dist/ai/systemPrompt.js.map +1 -1
  110. package/dist/config.d.ts.map +1 -1
  111. package/dist/config.js +2 -0
  112. package/dist/config.js.map +1 -1
  113. package/dist/connection/connection.d.ts.map +1 -1
  114. package/dist/connection/connection.js +2 -0
  115. package/dist/connection/connection.js.map +1 -1
  116. package/dist/connection/e2eHarness.d.ts +1 -1
  117. package/dist/connection/e2eHarness.d.ts.map +1 -1
  118. package/dist/connection/e2eHarness.js +26 -8
  119. package/dist/connection/e2eHarness.js.map +1 -1
  120. package/dist/connection/fakeRelay.d.ts.map +1 -1
  121. package/dist/connection/fakeRelay.js +2 -0
  122. package/dist/connection/fakeRelay.js.map +1 -1
  123. package/dist/connection/pubsub.d.ts.map +1 -1
  124. package/dist/connection/pubsub.js +2 -0
  125. package/dist/connection/pubsub.js.map +1 -1
  126. package/dist/connection/relay.d.ts.map +1 -1
  127. package/dist/connection/relay.js +2 -0
  128. package/dist/connection/relay.js.map +1 -1
  129. package/dist/files/fileBrowser.d.ts.map +1 -1
  130. package/dist/files/fileBrowser.js +44 -2
  131. package/dist/files/fileBrowser.js.map +1 -1
  132. package/dist/git/operations.d.ts.map +1 -1
  133. package/dist/git/operations.js +2 -0
  134. package/dist/git/operations.js.map +1 -1
  135. package/dist/handlers/legacyBusAdapter.d.ts +1 -1
  136. package/dist/handlers/legacyBusAdapter.d.ts.map +1 -1
  137. package/dist/handlers/legacyBusAdapter.js +13 -1
  138. package/dist/handlers/legacyBusAdapter.js.map +1 -1
  139. package/dist/handlers/messageHandler.d.ts +23 -0
  140. package/dist/handlers/messageHandler.d.ts.map +1 -1
  141. package/dist/handlers/messageHandler.js +226 -14
  142. package/dist/handlers/messageHandler.js.map +1 -1
  143. package/dist/index.js +42 -2
  144. package/dist/index.js.map +1 -1
  145. package/dist/messageBus/busServerTransport.d.ts.map +1 -1
  146. package/dist/messageBus/busServerTransport.js +2 -0
  147. package/dist/messageBus/busServerTransport.js.map +1 -1
  148. package/dist/service/debugHttpServer.d.ts.map +1 -1
  149. package/dist/service/debugHttpServer.js +2 -0
  150. package/dist/service/debugHttpServer.js.map +1 -1
  151. package/dist/service/ensureDaemon.d.ts.map +1 -1
  152. package/dist/service/ensureDaemon.js +27 -2
  153. package/dist/service/ensureDaemon.js.map +1 -1
  154. package/dist/service/index.d.ts.map +1 -1
  155. package/dist/service/index.js +2 -0
  156. package/dist/service/index.js.map +1 -1
  157. package/dist/service/ipcClient.d.ts.map +1 -1
  158. package/dist/service/ipcClient.js +3 -1
  159. package/dist/service/ipcClient.js.map +1 -1
  160. package/dist/service/ipcServer.d.ts.map +1 -1
  161. package/dist/service/ipcServer.js +2 -0
  162. package/dist/service/ipcServer.js.map +1 -1
  163. package/dist/service/pushClient.d.ts.map +1 -1
  164. package/dist/service/pushClient.js +2 -0
  165. package/dist/service/pushClient.js.map +1 -1
  166. package/dist/service/run.d.ts.map +1 -1
  167. package/dist/service/run.js +14 -1
  168. package/dist/service/run.js.map +1 -1
  169. package/dist/service/singleton.d.ts +1 -0
  170. package/dist/service/singleton.d.ts.map +1 -1
  171. package/dist/service/singleton.js +5 -0
  172. package/dist/service/singleton.js.map +1 -1
  173. package/dist/service/stateStore.d.ts.map +1 -1
  174. package/dist/service/stateStore.js +2 -0
  175. package/dist/service/stateStore.js.map +1 -1
  176. package/dist/service/systemdUnit.d.ts +149 -0
  177. package/dist/service/systemdUnit.d.ts.map +1 -0
  178. package/dist/service/systemdUnit.js +322 -0
  179. package/dist/service/systemdUnit.js.map +1 -0
  180. package/dist/service/types.d.ts +6 -0
  181. package/dist/service/types.d.ts.map +1 -1
  182. package/dist/service/types.js +3 -1
  183. package/dist/service/types.js.map +1 -1
  184. package/dist/storage/eventStore.d.ts.map +1 -1
  185. package/dist/storage/eventStore.js +2 -0
  186. package/dist/storage/eventStore.js.map +1 -1
  187. package/dist/terminal/terminalManager.d.ts.map +1 -1
  188. package/dist/terminal/terminalManager.js +2 -0
  189. package/dist/terminal/terminalManager.js.map +1 -1
  190. package/dist/tombstoneCheck.d.ts.map +1 -1
  191. package/dist/tombstoneCheck.js +2 -0
  192. package/dist/tombstoneCheck.js.map +1 -1
  193. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"cardBuilder.js","sourceRoot":"","sources":["../../src/ai/cardBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cardBuilder.js","sourceRoot":"","sources":["../../src/ai/cardBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ChildProcess } from 'child_process';
2
- import type { ContextUsageBreakdown } from '@sumicom/quicksave-shared';
2
+ import type { Attachment, ContextUsageBreakdown } from '@sumicom/quicksave-shared';
3
3
  import { StreamCardBuilder } from './cardBuilder.js';
4
4
  import { DebugLogger } from './debugLogger.js';
5
5
  import type { CodingAgentProvider, ProviderSession, ProviderCallbacks, StartSessionOpts, ResumeSessionOpts, PermissionLevel } from './provider.js';
@@ -34,22 +34,20 @@ export declare function buildClaudeCliArgs(opts: {
34
34
  sandboxed?: boolean;
35
35
  bypassFlagPath?: string;
36
36
  /** Auto-compact ceiling. >200k triggers the `[1m]` model suffix so the API
37
- * accepts the larger window; `CLAUDE_CODE_AUTO_COMPACT_WINDOW` is set on
38
- * the spawn env (see `spawnAndConsume`) so the CLI compacts at this value. */
37
+ * accepts the larger window; the actual CLAUDE_CODE_AUTO_COMPACT_WINDOW
38
+ * value is pushed into the CLI's env via a stdin
39
+ * `update_environment_variables` frame in `spawnAndConsume` (and again on
40
+ * every live change via `CliProviderSession.updateContextWindow`). */
39
41
  contextWindow?: number;
42
+ /** Per-session reasoning depth. Maps to the CLI's `--effort` flag, which
43
+ * accepts `low | medium | high | xhigh | max`. `max` is Opus-only — the
44
+ * CLI rejects/ignores it on other models, so let the daemon pass through
45
+ * whatever the UI chose and surface CLI errors back to the user. */
46
+ reasoningEffort?: string;
40
47
  }): string[];
41
48
  export declare function getClaudeBin(): string;
42
49
  export declare class CliProviderSession implements ProviderSession {
43
50
  process: ChildProcess | null;
44
- /** StreamIds queued by hot resume during an active turn — consumeStream
45
- * pops after each result to start the next turn. Idle hot resume (CLI
46
- * alive but between turns) bypasses this queue and writes `currentStreamId`
47
- * directly before `sendUserMessage`. */
48
- pendingStreamIds: string[];
49
- /** The streamId used to tag card events and stream-end for the current
50
- * turn. Shared with consumeStream so the SessionManager can swap it in for
51
- * idle hot resume without waiting for the next `result` event. */
52
- currentStreamId: string;
53
51
  /** Debug logger — attached after spawn so stdin writes are captured too. */
54
52
  debugLog?: DebugLogger;
55
53
  /** Pending control_requests awaiting a control_response from the CLI. */
@@ -59,8 +57,8 @@ export declare class CliProviderSession implements ProviderSession {
59
57
  }>;
60
58
  /** True while a turn (prompt/compaction/tool loop) is in flight — control_requests may be queued by CLI. */
61
59
  activeTurn: boolean;
62
- /** True once a `result` event has been processed for the current turn's
63
- * streamId. Consumed by consumeStream's finally block to decide whether the
60
+ /** True once a `result` event has been processed for the current turn.
61
+ * Consumed by consumeStream's finally block to decide whether the
64
62
  * process death counts as an unexpected exit. Reset externally on idle hot
65
63
  * resume (the new turn hasn't seen its result yet). */
66
64
  resultEmitted: boolean;
@@ -68,6 +66,10 @@ export declare class CliProviderSession implements ProviderSession {
68
66
  * follow-up prompt in streamingCards so getCards on refresh returns it
69
67
  * before the CLI has flushed it to the session JSONL. */
70
68
  cardBuilder: StreamCardBuilder | null;
69
+ /** Callbacks for this session — used by sendUserMessage to emit a
70
+ * user-message card-event so other PWA tabs subscribed to this session
71
+ * see follow-up prompts in real time. */
72
+ callbacks: ProviderCallbacks | null;
71
73
  constructor(proc: ChildProcess);
72
74
  /**
73
75
  * Send a generic control_request and await the response from the CLI.
@@ -75,9 +77,26 @@ export declare class CliProviderSession implements ProviderSession {
75
77
  * paused, so a compaction or long tool loop will not expire the request.
76
78
  */
77
79
  sendControlRequest(subtype: string, params?: Record<string, unknown>, idleTimeoutMs?: number): Promise<unknown>;
78
- sendUserMessage(prompt: string): void;
80
+ sendUserMessage(prompt: string, attachments?: readonly Attachment[]): void;
79
81
  interrupt(): void;
80
82
  getContextUsage(): Promise<ContextUsageBreakdown | null>;
83
+ /**
84
+ * Live-switch the auto-compact threshold without respawning the CLI.
85
+ *
86
+ * The CLI accepts a top-level `{type:"update_environment_variables"}` stdin
87
+ * message and patches its own `process.env`. The auto-compact computation
88
+ * reads `process.env.CLAUDE_CODE_AUTO_COMPACT_WINDOW` on every turn (no
89
+ * caching), so the next turn picks up the new threshold.
90
+ *
91
+ * If `decoratedModel` is provided AND differs from what's running, we also
92
+ * fire `set_model` so the CLI flips the API's `[1m]` beta header on/off in
93
+ * sync — required when crossing the 200k boundary, otherwise the API would
94
+ * keep rejecting tokens above 200k regardless of the env-side change.
95
+ *
96
+ * Note: `update_environment_variables` is NOT a `control_request` and there
97
+ * is no ack from the CLI — we just write and return.
98
+ */
99
+ updateContextWindow(window: number, decoratedModel?: string): Promise<void>;
81
100
  kill(): void;
82
101
  get alive(): boolean;
83
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"claudeCliProvider.d.ts","sourceRoot":"","sources":["../../src/ai/claudeCliProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claudeCliProvider.d.ts","sourceRoot":"","sources":["../../src/ai/claudeCliProvider.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: 2026 King Young Technology
2
+ // SPDX-License-Identifier: MIT
1
3
  import { spawn, execSync } from 'child_process';
2
4
  import { createInterface } from 'readline';
3
5
  import { join, dirname } from 'path';
@@ -5,6 +7,8 @@ import { existsSync, readdirSync } from 'fs';
5
7
  import { fileURLToPath } from 'url';
6
8
  import { SANDBOX_MCP_NAME, SANDBOX_BASH_TOOL, buildSandboxMcpServerConfig } from './sandboxMcp.js';
7
9
  import { DebugLogger } from './debugLogger.js';
10
+ import { attachmentsToContentBlocks } from './contentBlocks.js';
11
+ import { persistAttachments } from './attachmentStore.js';
8
12
  const __ownDir = dirname(fileURLToPath(import.meta.url));
9
13
  /**
10
14
  * Models that don't support the `context-1m-2025-08-07` beta. Today only
@@ -61,6 +65,9 @@ export function buildClaudeCliArgs(opts) {
61
65
  if (opts.model) {
62
66
  args.push('--model', decorateModelWithContextWindow(opts.model, opts.contextWindow) ?? opts.model);
63
67
  }
68
+ if (opts.reasoningEffort) {
69
+ args.push('--effort', opts.reasoningEffort);
70
+ }
64
71
  if (opts.permissionMode) {
65
72
  const cliMode = opts.permissionMode === 'bypassPermissions' ? 'default'
66
73
  : opts.permissionMode === 'acceptEdits' ? 'acceptEdits'
@@ -171,23 +178,14 @@ function extractToolResultText(content) {
171
178
  // ============================================================================
172
179
  export class CliProviderSession {
173
180
  process;
174
- /** StreamIds queued by hot resume during an active turn — consumeStream
175
- * pops after each result to start the next turn. Idle hot resume (CLI
176
- * alive but between turns) bypasses this queue and writes `currentStreamId`
177
- * directly before `sendUserMessage`. */
178
- pendingStreamIds = [];
179
- /** The streamId used to tag card events and stream-end for the current
180
- * turn. Shared with consumeStream so the SessionManager can swap it in for
181
- * idle hot resume without waiting for the next `result` event. */
182
- currentStreamId = '';
183
181
  /** Debug logger — attached after spawn so stdin writes are captured too. */
184
182
  debugLog;
185
183
  /** Pending control_requests awaiting a control_response from the CLI. */
186
184
  pendingControlResponses = new Map();
187
185
  /** True while a turn (prompt/compaction/tool loop) is in flight — control_requests may be queued by CLI. */
188
186
  activeTurn = false;
189
- /** True once a `result` event has been processed for the current turn's
190
- * streamId. Consumed by consumeStream's finally block to decide whether the
187
+ /** True once a `result` event has been processed for the current turn.
188
+ * Consumed by consumeStream's finally block to decide whether the
191
189
  * process death counts as an unexpected exit. Reset externally on idle hot
192
190
  * resume (the new turn hasn't seen its result yet). */
193
191
  resultEmitted = false;
@@ -195,6 +193,10 @@ export class CliProviderSession {
195
193
  * follow-up prompt in streamingCards so getCards on refresh returns it
196
194
  * before the CLI has flushed it to the session JSONL. */
197
195
  cardBuilder = null;
196
+ /** Callbacks for this session — used by sendUserMessage to emit a
197
+ * user-message card-event so other PWA tabs subscribed to this session
198
+ * see follow-up prompts in real time. */
199
+ callbacks = null;
198
200
  constructor(proc) {
199
201
  this.process = proc;
200
202
  }
@@ -237,22 +239,27 @@ export class CliProviderSession {
237
239
  }
238
240
  });
239
241
  }
240
- sendUserMessage(prompt) {
242
+ sendUserMessage(prompt, attachments) {
241
243
  if (!this.process || this.process.killed)
242
244
  return;
243
245
  // Record the prompt in the cardBuilder so getCards on reconnect/refresh
244
- // returns it before the CLI has flushed it to the session JSONL. The PWA
245
- // already shows an optimistic user card, so we don't emit a card-event.
246
+ // returns it before the CLI has flushed it to the session JSONL.
246
247
  // (--replay-user-messages will echo this prompt back to us; the
247
248
  // `isReplay` filter in routeMessage relies on this entry already
248
249
  // existing to dedupe.)
249
- this.cardBuilder?.userMessage(prompt);
250
+ const userEvent = this.cardBuilder?.userMessage(prompt, attachments);
251
+ // Emit the card-event so other PWA tabs subscribed to this session see
252
+ // the follow-up prompt in real time. The sending tab already rendered an
253
+ // optimistic user card; claudeStore.handleCardEvent dedupes by text +
254
+ // recent timestamp so the duplicate does not stack.
255
+ if (userEvent)
256
+ this.callbacks?.emitCardEvent(userEvent);
250
257
  // Pause the idle clock immediately — CLI will start a new turn once it
251
258
  // reads this stdin, even before it emits the first stream event.
252
259
  this.activeTurn = true;
253
260
  const userMsg = {
254
261
  type: 'user',
255
- message: { role: 'user', content: prompt },
262
+ message: { role: 'user', content: attachmentsToContentBlocks(prompt, attachments) },
256
263
  };
257
264
  this.debugLog?.logRawEvent({ ...userMsg, _direction: 'stdin' });
258
265
  this.process.stdin.write(JSON.stringify(userMsg) + '\n');
@@ -292,6 +299,41 @@ export class CliProviderSession {
292
299
  return null;
293
300
  }
294
301
  }
302
+ /**
303
+ * Live-switch the auto-compact threshold without respawning the CLI.
304
+ *
305
+ * The CLI accepts a top-level `{type:"update_environment_variables"}` stdin
306
+ * message and patches its own `process.env`. The auto-compact computation
307
+ * reads `process.env.CLAUDE_CODE_AUTO_COMPACT_WINDOW` on every turn (no
308
+ * caching), so the next turn picks up the new threshold.
309
+ *
310
+ * If `decoratedModel` is provided AND differs from what's running, we also
311
+ * fire `set_model` so the CLI flips the API's `[1m]` beta header on/off in
312
+ * sync — required when crossing the 200k boundary, otherwise the API would
313
+ * keep rejecting tokens above 200k regardless of the env-side change.
314
+ *
315
+ * Note: `update_environment_variables` is NOT a `control_request` and there
316
+ * is no ack from the CLI — we just write and return.
317
+ */
318
+ async updateContextWindow(window, decoratedModel) {
319
+ if (!this.process || this.process.killed)
320
+ return;
321
+ const envMsg = {
322
+ type: 'update_environment_variables',
323
+ variables: { CLAUDE_CODE_AUTO_COMPACT_WINDOW: String(window) },
324
+ };
325
+ this.debugLog?.logRawEvent({ ...envMsg, _direction: 'stdin' });
326
+ this.process.stdin.write(JSON.stringify(envMsg) + '\n');
327
+ if (decoratedModel) {
328
+ // 5s wall-clock — set_model normally returns in <100ms; if the CLI is
329
+ // mid-turn the idle clock pauses, so the wall cap is the real ceiling.
330
+ const wallTimeout = new Promise((resolve) => setTimeout(() => resolve(), 5_000));
331
+ await Promise.race([
332
+ this.sendControlRequest('set_model', { model: decoratedModel }, 5_000).then(() => undefined).catch(() => undefined),
333
+ wallTimeout,
334
+ ]);
335
+ }
336
+ }
295
337
  kill() {
296
338
  if (this.process) {
297
339
  this.process.kill('SIGTERM');
@@ -318,8 +360,9 @@ export class ClaudeCliProvider {
318
360
  sandboxed: opts.sandboxed,
319
361
  bypassFlagPath: opts.bypassFlagPath,
320
362
  contextWindow: opts.contextWindow,
363
+ reasoningEffort: opts.reasoningEffort,
321
364
  });
322
- return this.spawnAndConsume(args, opts.cwd, opts.streamId, opts.permissionLevel, opts.sandboxed, opts.prompt, cardBuilder, callbacks, opts.model, opts.contextWindow);
365
+ return this.spawnAndConsume(args, opts.cwd, opts.permissionLevel, opts.sandboxed, opts.prompt, cardBuilder, callbacks, opts.model, opts.contextWindow, opts.attachments);
323
366
  }
324
367
  async resumeSession(opts, cardBuilder, callbacks) {
325
368
  const args = this.buildCliArgs({
@@ -332,33 +375,44 @@ export class ClaudeCliProvider {
332
375
  sandboxed: opts.sandboxed,
333
376
  bypassFlagPath: opts.bypassFlagPath,
334
377
  contextWindow: opts.contextWindow,
378
+ reasoningEffort: opts.reasoningEffort,
335
379
  });
336
- return this.spawnAndConsume(args, opts.cwd, opts.streamId, opts.permissionLevel, opts.sandboxed, opts.prompt, cardBuilder, callbacks, opts.model, opts.contextWindow);
380
+ return this.spawnAndConsume(args, opts.cwd, opts.permissionLevel, opts.sandboxed, opts.prompt, cardBuilder, callbacks, opts.model, opts.contextWindow, opts.attachments);
337
381
  }
338
382
  // ── Private: CLI Args ──
339
383
  buildCliArgs(opts) {
340
384
  return buildClaudeCliArgs({ ...opts, ownDir: __ownDir });
341
385
  }
342
386
  // ── Private: Spawn & Consume ──
343
- async spawnAndConsume(args, cwd, streamId, _level, _sandboxed, prompt, cardBuilder, callbacks, _model, contextWindow) {
387
+ async spawnAndConsume(args, cwd, _level, _sandboxed, prompt, cardBuilder, callbacks, _model, contextWindow, attachments) {
344
388
  const claudeBin = getClaudeBin();
345
- // The CLI auto-promotes Sonnet/Opus to 1M context unless told otherwise.
346
- // Pin the auto-compact window to the user's chosen tier so usage stays
347
- // predictable across model switches and 200k/500k/1M presets all behave
348
- // the way the picker says they will.
349
- const env = { ...process.env };
350
- if (contextWindow && contextWindow > 0) {
351
- env.CLAUDE_CODE_AUTO_COMPACT_WINDOW = String(contextWindow);
352
- }
353
389
  const proc = spawn(claudeBin, args, {
354
390
  cwd,
355
391
  stdio: ['pipe', 'pipe', 'pipe'],
356
- env,
357
392
  });
393
+ // Pin the auto-compact threshold via a top-level
394
+ // `update_environment_variables` stdin frame BEFORE the first user
395
+ // prompt. The CLI's structured-IO handler patches `process.env` as soon
396
+ // as a frame arrives (binary v2.1.119 confirmed:
397
+ // `for(...) process.env[K]=_;`), and the auto-compact computation reads
398
+ // `process.env.CLAUDE_CODE_AUTO_COMPACT_WINDOW` per-turn — so the very
399
+ // first turn picks up the value.
400
+ //
401
+ // Using stdin instead of the spawn-time env var unifies the startup and
402
+ // mid-session paths: every change goes through `updateContextWindow`
403
+ // (here for the initial set, and via `setSessionConfig` for live
404
+ // changes). One source of truth, no respawn-on-tier-change drift.
405
+ if (contextWindow && contextWindow > 0) {
406
+ const envFrame = {
407
+ type: 'update_environment_variables',
408
+ variables: { CLAUDE_CODE_AUTO_COMPACT_WINDOW: String(contextWindow) },
409
+ };
410
+ proc.stdin.write(JSON.stringify(envFrame) + '\n');
411
+ }
358
412
  // Send user message immediately — CLI needs stdin before emitting init
359
413
  const userMsg = {
360
414
  type: 'user',
361
- message: { role: 'user', content: prompt },
415
+ message: { role: 'user', content: attachmentsToContentBlocks(prompt, attachments) },
362
416
  };
363
417
  proc.stdin.write(JSON.stringify(userMsg) + '\n');
364
418
  // Buffer all stdout lines until init is received, then replay them into consumeStream.
@@ -403,19 +457,28 @@ export class ClaudeCliProvider {
403
457
  });
404
458
  const cliSession = new CliProviderSession(proc);
405
459
  cliSession.cardBuilder = cardBuilder;
460
+ cliSession.callbacks = callbacks;
406
461
  const debugLog = new DebugLogger(sessionId);
407
462
  cliSession.debugLog = debugLog;
408
463
  // Log the initial stdin prompt that was sent before init
409
464
  debugLog.logRawEvent({ ...userMsg, _direction: 'stdin' });
410
465
  // Update the cardBuilder sessionId (it may have been created with a placeholder)
411
466
  cardBuilder.updateSessionId(sessionId);
467
+ // Persist attachments to disk BEFORE the stream consumer fires the
468
+ // userMessage card with real attachment UUIDs. See claudeSdkProvider
469
+ // for the full reasoning — short version: chips on other tabs (and our
470
+ // own that miss the local cache prime) issue `attachment:fetch` as
471
+ // soon as they see the card; if persistence is in-flight, the agent
472
+ // returns `attachment_not_found` and the chip renders as "Unavailable".
473
+ if (attachments && attachments.length > 0) {
474
+ await persistAttachments(sessionId, attachments);
475
+ }
412
476
  // Fire and forget the stream consumer — pass the same readline interface
413
- this.consumeStream(sessionId, streamId, rl, bufferedLines, cliSession, cardBuilder, callbacks, prompt, debugLog);
477
+ this.consumeStream(sessionId, rl, bufferedLines, cliSession, cardBuilder, callbacks, prompt, debugLog, attachments);
414
478
  return { sessionId, session: cliSession };
415
479
  }
416
480
  // ── Private: Stream Consumer ──
417
- async consumeStream(sessionId, initialStreamId, rl, bufferedLines, cliSession, cb, callbacks, prompt, debugLog) {
418
- cliSession.currentStreamId = initialStreamId;
481
+ async consumeStream(sessionId, rl, bufferedLines, cliSession, cb, callbacks, prompt, debugLog, attachments) {
419
482
  cliSession.resultEmitted = false;
420
483
  let textBuffer = '';
421
484
  let bufferTimer = null;
@@ -423,13 +486,14 @@ export class ClaudeCliProvider {
423
486
  debugLog?.logCardEvent(event);
424
487
  callbacks.emitCardEvent(event);
425
488
  };
426
- cb.startNewTurn(cliSession.currentStreamId);
489
+ cb.startNewTurn();
427
490
  cliSession.activeTurn = true;
428
- // Add user prompt to cardBuilder (for getCards on reconnect) but don't emit
429
- // as a card-event the PWA already shows an optimistic user card.
430
- if (prompt) {
431
- const userCardEvent = cb.userMessage(prompt);
432
- debugLog?.logCardEvent(userCardEvent); // log to debug cards JSONL even though not emitted to PWA
491
+ // Record + emit the initial user prompt so other PWA tabs subscribed to
492
+ // this session see it in real time. The sending tab dedupes the
493
+ // optimistic card it already rendered (by text + recent timestamp).
494
+ if (prompt || (attachments && attachments.length > 0)) {
495
+ const userCardEvent = cb.userMessage(prompt ?? '', attachments);
496
+ emitCard(userCardEvent);
433
497
  }
434
498
  const flushText = () => {
435
499
  if (textBuffer) {
@@ -459,30 +523,11 @@ export class ClaudeCliProvider {
459
523
  return;
460
524
  }
461
525
  debugLog?.logRawEvent(msg);
462
- const emittedResult = await this.routeMessage(sessionId, cliSession.currentStreamId, msg, cliSession, cb, callbacks, emitCard, flushText, bufferText, debugLog);
526
+ const emittedResult = await this.routeMessage(sessionId, msg, cliSession, cb, callbacks, emitCard, flushText, bufferText, debugLog);
463
527
  if (emittedResult) {
464
528
  cliSession.resultEmitted = true;
465
- // Hot resume: if there's a pending streamId, start a new turn for it.
466
- // This must live here (not in routeMessage) so the outer
467
- // `cliSession.currentStreamId` is updated — routeMessage receives it
468
- // by value.
469
- const nextStreamId = cliSession.pendingStreamIds.shift();
470
- if (nextStreamId) {
471
- // Hot resume: cancel the prior turn's deferred clear so the pending
472
- // poll doesn't wipe the next turn. Do NOT snapshotCutoff or clearCards
473
- // here — the prior turn's messages may not be flushed to JSONL yet,
474
- // and advancing cutoff past them while they're already in JSONL
475
- // produces duplicates. Keep streamingCards as-is; the final turn's
476
- // scheduleDeferredClear sweeps everything once the chain commits.
477
- cb.cancelDeferredClear();
478
- cliSession.currentStreamId = nextStreamId;
479
- cb.startNewTurn(nextStreamId);
480
- cliSession.activeTurn = true;
481
- cliSession.resultEmitted = false; // Reset for next turn
482
- }
483
- else {
484
- cliSession.activeTurn = false;
485
- }
529
+ cb.startNewTurn();
530
+ cliSession.activeTurn = false;
486
531
  }
487
532
  };
488
533
  try {
@@ -498,7 +543,7 @@ export class ClaudeCliProvider {
498
543
  flushText();
499
544
  console.error(`[cli] stream error session=${sessionId.slice(0, 8)}:`, error);
500
545
  const msg = error instanceof Error ? error.message : 'Unknown error';
501
- callbacks.emitStreamEnd({ streamId: cliSession.currentStreamId, sessionId, success: false, error: msg });
546
+ callbacks.emitStreamEnd({ sessionId, success: false, error: msg });
502
547
  cliSession.resultEmitted = true;
503
548
  }
504
549
  finally {
@@ -513,7 +558,7 @@ export class ClaudeCliProvider {
513
558
  pending.reject(new Error('CLI process exited before control_response'));
514
559
  }
515
560
  if (!cliSession.resultEmitted) {
516
- callbacks.emitStreamEnd({ streamId: cliSession.currentStreamId, sessionId, success: false, error: 'Process exited unexpectedly' });
561
+ callbacks.emitStreamEnd({ sessionId, success: false, error: 'Process exited unexpectedly' });
517
562
  }
518
563
  // Notify SessionManager so it can remove the entry and emit
519
564
  // `session-updated { isActive: false }`. Without this the badge stays
@@ -523,7 +568,7 @@ export class ClaudeCliProvider {
523
568
  }
524
569
  // ── Private: Route a single stream-json message ──
525
570
  // Returns true if a result/stream-end was emitted.
526
- async routeMessage(sessionId, streamId, msg, cliSession, cb, callbacks, emitCard, flushText, bufferText, debugLog) {
571
+ async routeMessage(sessionId, msg, cliSession, cb, callbacks, emitCard, flushText, bufferText, debugLog) {
527
572
  // ── Control requests (permissions) ──
528
573
  if (msg.type === 'control_request' && msg.request?.subtype === 'can_use_tool') {
529
574
  await this.handleControlRequest(sessionId, msg, cliSession, callbacks);
@@ -726,7 +771,6 @@ export class ClaudeCliProvider {
726
771
  callbacks.onCacheTouch?.(sessionId);
727
772
  }
728
773
  const streamEnd = {
729
- streamId,
730
774
  sessionId,
731
775
  success: msg.subtype === 'success' && !interrupted,
732
776
  error: (msg.subtype !== 'success' && !interrupted)