@agent-link/agent 0.1.70 → 0.1.72

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.
package/dist/claude.d.ts CHANGED
@@ -4,6 +4,10 @@
4
4
  * Spawns `claude` as a child process with --output-format stream-json
5
5
  * and --input-format stream-json for persistent bidirectional communication.
6
6
  *
7
+ * Supports multiple concurrent conversations, each with its own Claude process.
8
+ * Conversations are keyed by conversationId (a UUID generated by the web client).
9
+ * When no conversationId is provided (backward compat), uses 'default' as the key.
10
+ *
7
11
  * Lifecycle:
8
12
  * 1. Web user sends first message → startQuery() spawns Claude process
9
13
  * 2. Each user message is enqueued into the inputStream
@@ -31,28 +35,59 @@ export interface ConversationState {
31
35
  workDir: string;
32
36
  turnActive: boolean;
33
37
  turnResultReceived: boolean;
38
+ conversationId: string;
39
+ lastClaudeSessionId: string | null;
40
+ isCompacting: boolean;
41
+ createdAt: number;
34
42
  }
35
43
  type SendFn = (msg: Record<string, unknown>) => void;
44
+ export declare const MAX_CONVERSATIONS = 5;
36
45
  export declare function setSendFn(fn: SendFn): void;
37
- export declare function getConversation(): ConversationState | null;
38
- /** Whether context compaction is currently in progress. */
39
- export declare function getIsCompacting(): boolean;
40
- export declare function clearSessionId(): void;
46
+ /**
47
+ * Get a conversation by its conversationId.
48
+ * If no conversationId is provided, returns the 'default' conversation (backward compat).
49
+ */
50
+ export declare function getConversation(conversationId?: string): ConversationState | null;
51
+ /** Get all active conversations. */
52
+ export declare function getConversations(): Map<string, ConversationState>;
53
+ /**
54
+ * Evict any idle conversation that holds the given claudeSessionId.
55
+ * Returns true if a busy (turnActive) conversation blocked the eviction.
56
+ */
57
+ export declare function evictByClaudeSessionId(claudeSessionId: string): boolean;
58
+ /**
59
+ * Rebind a running conversation to a new conversationId.
60
+ * Finds the conversation by claudeSessionId and remaps its key in the Map.
61
+ * Used when the web client reconnects (page refresh) with a new conversationId.
62
+ */
63
+ export declare function rebindConversation(claudeSessionId: string, newConvId: string): boolean;
64
+ /** Whether context compaction is currently in progress for a conversation. */
65
+ export declare function getIsCompacting(conversationId?: string): boolean;
66
+ /**
67
+ * Clear the saved session ID for a conversation.
68
+ * If no conversationId is provided, clears all (backward compat).
69
+ */
70
+ export declare function clearSessionId(conversationId?: string): void;
41
71
  /**
42
72
  * Handle a chat message from the web client.
43
73
  * Lazily starts the Claude process on the first message.
44
74
  * If resumeSessionId is provided, resumes that Claude session.
45
75
  */
46
- export declare function handleChat(prompt: string, workDir: string, resumeSessionId?: string, files?: ChatFile[]): void;
76
+ export declare function handleChat(conversationId: string | undefined, prompt: string, workDir: string, resumeSessionId?: string, files?: ChatFile[]): void;
77
+ /**
78
+ * Abort a specific conversation's Claude process.
79
+ * If no conversationId, aborts the 'default' conversation (backward compat).
80
+ */
81
+ export declare function abort(conversationId?: string): void;
47
82
  /**
48
- * Abort the current Claude process (e.g. on agent disconnect).
83
+ * Abort all conversations (used on agent shutdown).
49
84
  */
50
- export declare function abort(): void;
85
+ export declare function abortAll(): void;
51
86
  /**
52
- * Cancel the current execution (user pressed stop button).
87
+ * Cancel the current execution for a conversation (user pressed stop button).
53
88
  * Kills the process and notifies the web client.
54
89
  */
55
- export declare function cancelExecution(): void;
90
+ export declare function cancelExecution(conversationId?: string): void;
56
91
  /**
57
92
  * Handle the user's answer to an AskUserQuestion control request.
58
93
  * Writes a control_response back to Claude's stdin.
package/dist/claude.js CHANGED
@@ -4,6 +4,10 @@
4
4
  * Spawns `claude` as a child process with --output-format stream-json
5
5
  * and --input-format stream-json for persistent bidirectional communication.
6
6
  *
7
+ * Supports multiple concurrent conversations, each with its own Claude process.
8
+ * Conversations are keyed by conversationId (a UUID generated by the web client).
9
+ * When no conversationId is provided (backward compat), uses 'default' as the key.
10
+ *
7
11
  * Lifecycle:
8
12
  * 1. Web user sends first message → startQuery() spawns Claude process
9
13
  * 2. Each user message is enqueued into the inputStream
@@ -18,24 +22,89 @@ import { join } from 'path';
18
22
  import { Stream } from './stream.js';
19
23
  import { resolveClaudeCommand, getCleanEnv, streamToStdin, } from './sdk.js';
20
24
  import { CONFIG_DIR } from './config.js';
25
+ // ── Constants ─────────────────────────────────────────────────────────────
26
+ const DEFAULT_CONVERSATION_ID = 'default';
27
+ export const MAX_CONVERSATIONS = 5;
21
28
  // ── Module state ───────────────────────────────────────────────────────────
22
- let conversation = null;
23
- let lastClaudeSessionId = null;
24
- let isCompacting = false;
29
+ const conversations = new Map();
25
30
  let sendFn = () => { };
26
31
  const pendingControlRequests = new Map();
27
32
  export function setSendFn(fn) {
28
33
  sendFn = fn;
29
34
  }
30
- export function getConversation() {
31
- return conversation;
35
+ /**
36
+ * Get a conversation by its conversationId.
37
+ * If no conversationId is provided, returns the 'default' conversation (backward compat).
38
+ */
39
+ export function getConversation(conversationId) {
40
+ return conversations.get(conversationId || DEFAULT_CONVERSATION_ID) || null;
32
41
  }
33
- /** Whether context compaction is currently in progress. */
34
- export function getIsCompacting() {
35
- return isCompacting;
42
+ /** Get all active conversations. */
43
+ export function getConversations() {
44
+ return conversations;
36
45
  }
37
- export function clearSessionId() {
38
- lastClaudeSessionId = null;
46
+ /**
47
+ * Evict any idle conversation that holds the given claudeSessionId.
48
+ * Returns true if a busy (turnActive) conversation blocked the eviction.
49
+ */
50
+ export function evictByClaudeSessionId(claudeSessionId) {
51
+ for (const [convId, conv] of conversations) {
52
+ if (conv.claudeSessionId === claudeSessionId || conv.lastClaudeSessionId === claudeSessionId) {
53
+ if (conv.turnActive)
54
+ return true; // busy — caller should block
55
+ cleanupConversation(convId);
56
+ }
57
+ }
58
+ return false;
59
+ }
60
+ /**
61
+ * Rebind a running conversation to a new conversationId.
62
+ * Finds the conversation by claudeSessionId and remaps its key in the Map.
63
+ * Used when the web client reconnects (page refresh) with a new conversationId.
64
+ */
65
+ export function rebindConversation(claudeSessionId, newConvId) {
66
+ if (conversations.has(newConvId)) {
67
+ return false;
68
+ }
69
+ for (const [oldConvId, conv] of conversations) {
70
+ if ((conv.claudeSessionId === claudeSessionId || conv.lastClaudeSessionId === claudeSessionId)
71
+ && oldConvId !== newConvId) {
72
+ conversations.delete(oldConvId);
73
+ conv.conversationId = newConvId;
74
+ conversations.set(newConvId, conv);
75
+ // Update pending control requests that reference the old conversationId
76
+ for (const pending of pendingControlRequests.values()) {
77
+ if (pending.conversationId === oldConvId) {
78
+ pending.conversationId = newConvId;
79
+ }
80
+ }
81
+ console.log(`[Claude] Rebound conversation ${oldConvId.slice(0, 8)} → ${newConvId.slice(0, 8)} (session ${claudeSessionId.slice(0, 8)})`);
82
+ return true;
83
+ }
84
+ }
85
+ return false;
86
+ }
87
+ /** Whether context compaction is currently in progress for a conversation. */
88
+ export function getIsCompacting(conversationId) {
89
+ const conv = conversations.get(conversationId || DEFAULT_CONVERSATION_ID);
90
+ return conv?.isCompacting ?? false;
91
+ }
92
+ /**
93
+ * Clear the saved session ID for a conversation.
94
+ * If no conversationId is provided, clears all (backward compat).
95
+ */
96
+ export function clearSessionId(conversationId) {
97
+ if (conversationId) {
98
+ const conv = conversations.get(conversationId);
99
+ if (conv) {
100
+ conv.lastClaudeSessionId = null;
101
+ }
102
+ }
103
+ else {
104
+ for (const conv of conversations.values()) {
105
+ conv.lastClaudeSessionId = null;
106
+ }
107
+ }
39
108
  }
40
109
  // ── Public API ─────────────────────────────────────────────────────────────
41
110
  /**
@@ -43,16 +112,18 @@ export function clearSessionId() {
43
112
  * Lazily starts the Claude process on the first message.
44
113
  * If resumeSessionId is provided, resumes that Claude session.
45
114
  */
46
- export function handleChat(prompt, workDir, resumeSessionId, files) {
47
- if (!conversation || !conversation.inputStream) {
115
+ export function handleChat(conversationId, prompt, workDir, resumeSessionId, files) {
116
+ const convId = conversationId || DEFAULT_CONVERSATION_ID;
117
+ const existing = conversations.get(convId);
118
+ if (!existing || !existing.inputStream) {
48
119
  // If the process exited but we still know the session ID, resume it
49
- const sessionToResume = resumeSessionId || conversation?.claudeSessionId || lastClaudeSessionId || undefined;
50
- startQuery(workDir, sessionToResume);
120
+ const sessionToResume = resumeSessionId || existing?.claudeSessionId || existing?.lastClaudeSessionId || undefined;
121
+ startQuery(convId, workDir, sessionToResume);
51
122
  }
52
- const state = conversation;
123
+ const state = conversations.get(convId);
53
124
  state.turnActive = true;
54
125
  state.turnResultReceived = false;
55
- console.log(`[Claude] Sending: ${prompt.substring(0, 100)}${prompt.length > 100 ? '...' : ''}`);
126
+ console.log(`[Claude:${convId.slice(0, 8)}] Sending: ${prompt.substring(0, 100)}${prompt.length > 100 ? '...' : ''}`);
56
127
  if (files && files.length > 0) {
57
128
  const content = processFilesForClaude(files, workDir, prompt);
58
129
  state.inputStream.enqueue({
@@ -68,28 +139,43 @@ export function handleChat(prompt, workDir, resumeSessionId, files) {
68
139
  }
69
140
  }
70
141
  /**
71
- * Abort the current Claude process (e.g. on agent disconnect).
142
+ * Abort a specific conversation's Claude process.
143
+ * If no conversationId, aborts the 'default' conversation (backward compat).
72
144
  */
73
- export function abort() {
74
- if (conversation?.abortController) {
75
- conversation.abortController.abort();
145
+ export function abort(conversationId) {
146
+ const convId = conversationId || DEFAULT_CONVERSATION_ID;
147
+ const conv = conversations.get(convId);
148
+ if (!conv)
149
+ return;
150
+ if (conv.abortController) {
151
+ conv.abortController.abort();
76
152
  }
77
- cleanup();
153
+ cleanupConversation(convId);
78
154
  }
79
155
  /**
80
- * Cancel the current execution (user pressed stop button).
156
+ * Abort all conversations (used on agent shutdown).
157
+ */
158
+ export function abortAll() {
159
+ for (const convId of [...conversations.keys()]) {
160
+ abort(convId);
161
+ }
162
+ }
163
+ /**
164
+ * Cancel the current execution for a conversation (user pressed stop button).
81
165
  * Kills the process and notifies the web client.
82
166
  */
83
- export function cancelExecution() {
84
- if (!conversation)
167
+ export function cancelExecution(conversationId) {
168
+ const convId = conversationId || DEFAULT_CONVERSATION_ID;
169
+ const conv = conversations.get(convId);
170
+ if (!conv)
85
171
  return;
86
- console.log('[Claude] Cancelling execution');
87
- conversation.turnActive = false;
88
- if (conversation.abortController) {
89
- conversation.abortController.abort();
172
+ console.log(`[Claude:${convId.slice(0, 8)}] Cancelling execution`);
173
+ conv.turnActive = false;
174
+ if (conv.abortController) {
175
+ conv.abortController.abort();
90
176
  }
91
- cleanup();
92
- sendFn({ type: 'execution_cancelled' });
177
+ cleanupConversation(convId);
178
+ sendFn({ type: 'execution_cancelled', conversationId: convId });
93
179
  }
94
180
  /**
95
181
  * Handle the user's answer to an AskUserQuestion control request.
@@ -161,10 +247,15 @@ function processFilesForClaude(files, workDir, prompt) {
161
247
  content.push({ type: 'text', text: textContent });
162
248
  return content;
163
249
  }
164
- function startQuery(workDir, resumeSessionId) {
165
- // Tear down previous process if any
166
- if (conversation) {
167
- abort();
250
+ function startQuery(conversationId, workDir, resumeSessionId) {
251
+ // Tear down previous process for THIS conversation only (not others)
252
+ const existing = conversations.get(conversationId);
253
+ if (existing) {
254
+ abort(conversationId);
255
+ }
256
+ // Evict oldest idle conversation if at capacity
257
+ if (conversations.size >= MAX_CONVERSATIONS) {
258
+ evictOldestIdle(conversationId);
168
259
  }
169
260
  const inputStream = new Stream();
170
261
  const abortController = new AbortController();
@@ -176,8 +267,12 @@ function startQuery(workDir, resumeSessionId) {
176
267
  workDir,
177
268
  turnActive: false,
178
269
  turnResultReceived: false,
270
+ conversationId,
271
+ lastClaudeSessionId: existing?.lastClaudeSessionId || null,
272
+ isCompacting: false,
273
+ createdAt: Date.now(),
179
274
  };
180
- conversation = state;
275
+ conversations.set(conversationId, state);
181
276
  // Build args
182
277
  // bypassPermissions auto-approves all regular tool calls.
183
278
  // --permission-prompt-tool stdio tells Claude CLI to send control_request
@@ -193,12 +288,12 @@ function startQuery(workDir, resumeSessionId) {
193
288
  ];
194
289
  if (resumeSessionId) {
195
290
  args.push('--resume', resumeSessionId);
196
- console.log(`[Claude] Resuming session: ${resumeSessionId}`);
291
+ console.log(`[Claude:${conversationId.slice(0, 8)}] Resuming session: ${resumeSessionId}`);
197
292
  }
198
293
  const { command, prefixArgs, spawnOpts } = resolveClaudeCommand();
199
294
  const env = getCleanEnv();
200
- console.log(`[Claude] Spawning: ${command} ${[...prefixArgs, ...args].join(' ')}`);
201
- console.log(`[Claude] cwd: ${workDir}`);
295
+ console.log(`[Claude:${conversationId.slice(0, 8)}] Spawning: ${command} ${[...prefixArgs, ...args].join(' ')}`);
296
+ console.log(`[Claude:${conversationId.slice(0, 8)}] cwd: ${workDir}`);
202
297
  const child = spawn(command, [...prefixArgs, ...args], {
203
298
  cwd: workDir,
204
299
  stdio: ['pipe', 'pipe', 'pipe'],
@@ -226,15 +321,39 @@ function startQuery(workDir, resumeSessionId) {
226
321
  const msg = stderr.buf
227
322
  ? `Claude process exited with code ${code}: ${stderr.buf.trim()}`
228
323
  : `Claude process exited with code ${code}`;
229
- console.error(`[Claude] ${msg}`);
324
+ console.error(`[Claude:${conversationId.slice(0, 8)}] ${msg}`);
230
325
  }
231
326
  });
232
327
  child.on('error', (err) => {
233
328
  if (!abortController.signal.aborted) {
234
- console.error(`[Claude] Process error: ${err.message}`);
329
+ console.error(`[Claude:${conversationId.slice(0, 8)}] Process error: ${err.message}`);
235
330
  }
236
331
  });
237
332
  }
333
+ /**
334
+ * Evict the oldest idle conversation to make room for a new one.
335
+ * Only evicts conversations that are NOT actively processing (turnActive === false).
336
+ * If all conversations are active, evicts the oldest one regardless.
337
+ */
338
+ function evictOldestIdle(excludeId) {
339
+ let oldest = null;
340
+ let oldestIdle = null;
341
+ for (const [id, conv] of conversations) {
342
+ if (id === excludeId)
343
+ continue;
344
+ if (!oldest || conv.createdAt < oldest.createdAt) {
345
+ oldest = { id, createdAt: conv.createdAt };
346
+ }
347
+ if (!conv.turnActive && (!oldestIdle || conv.createdAt < oldestIdle.createdAt)) {
348
+ oldestIdle = { id, createdAt: conv.createdAt };
349
+ }
350
+ }
351
+ const target = oldestIdle || oldest;
352
+ if (target) {
353
+ console.log(`[Claude] Evicting conversation ${target.id.slice(0, 8)} (capacity: ${conversations.size}/${MAX_CONVERSATIONS})`);
354
+ abort(target.id);
355
+ }
356
+ }
238
357
  async function processOutput(child, state, stderr) {
239
358
  const rl = createInterface({ input: child.stdout });
240
359
  const messageStream = new Stream();
@@ -249,19 +368,21 @@ async function processOutput(child, state, stderr) {
249
368
  // Capture session ID from system init
250
369
  if (msg.type === 'system' && msg.session_id) {
251
370
  state.claudeSessionId = msg.session_id;
252
- lastClaudeSessionId = state.claudeSessionId;
253
- console.log(`[Claude] Session ID: ${state.claudeSessionId}`);
371
+ state.lastClaudeSessionId = state.claudeSessionId;
372
+ console.log(`[Claude:${state.conversationId.slice(0, 8)}] Session ID: ${state.claudeSessionId}`);
373
+ // Notify web client so sidebar can refresh session list
374
+ sendWithConvId({ type: 'session_started', claudeSessionId: state.claudeSessionId });
254
375
  }
255
376
  // Handle control_request (tool permission checks)
256
377
  if (msg.type === 'control_request') {
257
- handleControlRequest(msg, child);
378
+ handleControlRequest(msg, child, state.conversationId);
258
379
  continue;
259
380
  }
260
381
  // Handle control_cancel_request (abort pending questions)
261
382
  if (msg.type === 'control_cancel_request') {
262
383
  const reqId = msg.request_id;
263
384
  if (pendingControlRequests.has(reqId)) {
264
- console.log(`[Claude] Control request cancelled: ${reqId}`);
385
+ console.log(`[Claude:${state.conversationId.slice(0, 8)}] Control request cancelled: ${reqId}`);
265
386
  pendingControlRequests.delete(reqId);
266
387
  }
267
388
  continue;
@@ -285,6 +406,10 @@ async function processOutput(child, state, stderr) {
285
406
  rl.close();
286
407
  }
287
408
  })();
409
+ // Helper: send message with conversationId
410
+ function sendWithConvId(msg) {
411
+ sendFn({ ...msg, conversationId: state.conversationId });
412
+ }
288
413
  // Consumer: iterate messages and forward to web client
289
414
  let resultHandled = false;
290
415
  // Track accumulated text for streaming delta computation
@@ -308,12 +433,12 @@ async function processOutput(child, state, stderr) {
308
433
  : typeof msg.error === 'string' ? msg.error
309
434
  : '';
310
435
  if (errorText) {
311
- sendFn({ type: 'error', message: errorText });
436
+ sendWithConvId({ type: 'error', message: errorText });
312
437
  }
313
438
  }
314
439
  // Forward the result, then signal turn_completed
315
- sendOutput(msg);
316
- sendFn({ type: 'turn_completed' });
440
+ sendWithConvId({ type: 'claude_output', data: msg });
441
+ sendWithConvId({ type: 'turn_completed' });
317
442
  continue;
318
443
  }
319
444
  // ── assistant message → extract delta and forward incrementally ──
@@ -330,7 +455,7 @@ async function processOutput(child, state, stderr) {
330
455
  if (fullText.length > lastSentText.length) {
331
456
  const delta = fullText.slice(lastSentText.length);
332
457
  lastSentText = fullText;
333
- sendFn({
458
+ sendWithConvId({
334
459
  type: 'claude_output',
335
460
  data: { type: 'content_block_delta', delta },
336
461
  });
@@ -339,7 +464,7 @@ async function processOutput(child, state, stderr) {
339
464
  // Filter out AskUserQuestion — handled via control_request path
340
465
  const toolBlocks = content.filter((b) => b.type === 'tool_use' && b.name !== 'AskUserQuestion');
341
466
  if (toolBlocks.length > 0) {
342
- sendFn({
467
+ sendWithConvId({
343
468
  type: 'claude_output',
344
469
  data: { type: 'tool_use', tools: toolBlocks },
345
470
  });
@@ -366,36 +491,36 @@ async function processOutput(child, state, stderr) {
366
491
  const stderrMatch = raw.match(/<local-command-stderr>([\s\S]*?)<\/local-command-stderr>/);
367
492
  const cmdOutput = (stdoutMatch && stdoutMatch[1].trim()) || (stderrMatch && stderrMatch[1].trim());
368
493
  if (cmdOutput) {
369
- sendFn({ type: 'command_output', content: cmdOutput });
494
+ sendWithConvId({ type: 'command_output', content: cmdOutput });
370
495
  continue;
371
496
  }
372
497
  }
373
- sendOutput(msg);
498
+ sendWithConvId({ type: 'claude_output', data: msg });
374
499
  continue;
375
500
  }
376
501
  // ── system messages (init, compact, etc.) ──
377
502
  if (msg.type === 'system') {
378
503
  const sub = (msg.subtype || '');
379
- console.log(`[Claude] system/${sub}`);
504
+ console.log(`[Claude:${state.conversationId.slice(0, 8)}] system/${sub}`);
380
505
  // Forward context compaction events to web client
381
506
  // New format: subtype='status', status='compacting'
382
507
  if (sub === 'status' && msg.status === 'compacting') {
383
- isCompacting = true;
384
- sendFn({ type: 'context_compaction', status: 'started' });
508
+ state.isCompacting = true;
509
+ sendWithConvId({ type: 'context_compaction', status: 'started' });
385
510
  }
386
511
  // Compact boundary = compaction completed
387
512
  else if (sub === 'compact_boundary') {
388
- isCompacting = false;
389
- sendFn({ type: 'context_compaction', status: 'completed' });
513
+ state.isCompacting = false;
514
+ sendWithConvId({ type: 'context_compaction', status: 'completed' });
390
515
  }
391
516
  // Legacy subtypes
392
517
  else if (sub === 'compact_start') {
393
- isCompacting = true;
394
- sendFn({ type: 'context_compaction', status: 'started' });
518
+ state.isCompacting = true;
519
+ sendWithConvId({ type: 'context_compaction', status: 'started' });
395
520
  }
396
521
  else if (sub === 'compact_complete' || sub === 'compact_end') {
397
- isCompacting = false;
398
- sendFn({ type: 'context_compaction', status: 'completed' });
522
+ state.isCompacting = false;
523
+ sendWithConvId({ type: 'context_compaction', status: 'completed' });
399
524
  }
400
525
  continue;
401
526
  }
@@ -404,15 +529,15 @@ async function processOutput(child, state, stderr) {
404
529
  catch (err) {
405
530
  const error = err;
406
531
  if (error.name === 'AbortError') {
407
- console.log('[Claude] Query aborted');
532
+ console.log(`[Claude:${state.conversationId.slice(0, 8)}] Query aborted`);
408
533
  }
409
534
  else if (resultHandled) {
410
535
  // Ignore post-turn errors
411
- console.warn(`[Claude] Ignoring post-result error: ${error.message}`);
536
+ console.warn(`[Claude:${state.conversationId.slice(0, 8)}] Ignoring post-result error: ${error.message}`);
412
537
  }
413
538
  else {
414
- console.error(`[Claude] Error: ${error.message}`);
415
- sendFn({
539
+ console.error(`[Claude:${state.conversationId.slice(0, 8)}] Error: ${error.message}`);
540
+ sendWithConvId({
416
541
  type: 'error',
417
542
  message: `Claude error: ${error.message}`,
418
543
  });
@@ -422,35 +547,33 @@ async function processOutput(child, state, stderr) {
422
547
  // If the process exited mid-turn without a result, notify web client with error
423
548
  if (!resultHandled && state.turnActive) {
424
549
  if (stderr.buf.trim()) {
425
- sendFn({ type: 'error', message: stderr.buf.trim() });
550
+ sendWithConvId({ type: 'error', message: stderr.buf.trim() });
426
551
  }
427
- sendFn({ type: 'turn_completed' });
552
+ sendWithConvId({ type: 'turn_completed' });
428
553
  }
429
554
  state.turnActive = false;
430
- // Only clean up if this is still the active conversation
431
- if (conversation === state) {
555
+ // Only clean up if this conversation is still in the map with the same state
556
+ if (conversations.get(state.conversationId) === state) {
432
557
  state.child = null;
433
558
  state.inputStream = null;
434
559
  }
435
560
  }
436
561
  }
437
- function sendOutput(data) {
438
- sendFn({ type: 'claude_output', data });
439
- }
440
562
  /**
441
563
  * Handle an incoming control_request from Claude's stdout.
442
564
  * For AskUserQuestion: forward to web UI and wait for user answer.
443
565
  * For other tools: auto-approve immediately.
444
566
  */
445
- function handleControlRequest(request, child) {
567
+ function handleControlRequest(request, child, conversationId) {
446
568
  const requestId = request.request_id;
447
569
  const subtype = request.request?.subtype;
448
570
  if (subtype === 'can_use_tool' && request.request.tool_name === 'AskUserQuestion') {
449
- console.log(`[Claude] AskUserQuestion control_request: ${requestId}`);
450
- pendingControlRequests.set(requestId, { request, child });
571
+ console.log(`[Claude:${conversationId.slice(0, 8)}] AskUserQuestion control_request: ${requestId}`);
572
+ pendingControlRequests.set(requestId, { request, child, conversationId });
451
573
  // Forward to web UI
452
574
  sendFn({
453
575
  type: 'ask_user_question',
576
+ conversationId,
454
577
  requestId,
455
578
  questions: request.request.input?.questions || [],
456
579
  });
@@ -472,32 +595,40 @@ function handleControlRequest(request, child) {
472
595
  child.stdin.write(JSON.stringify(autoApproveResponse) + '\n');
473
596
  }
474
597
  }
475
- function cleanup() {
476
- // Clear any pending control requests
477
- pendingControlRequests.clear();
478
- isCompacting = false;
479
- if (conversation) {
480
- // Preserve session ID so the next message can resume
481
- if (conversation.claudeSessionId) {
482
- lastClaudeSessionId = conversation.claudeSessionId;
598
+ /**
599
+ * Clean up a specific conversation: kill process, clear pending requests, remove from map.
600
+ */
601
+ function cleanupConversation(conversationId) {
602
+ const conv = conversations.get(conversationId);
603
+ if (!conv)
604
+ return;
605
+ // Clear pending control requests belonging to this conversation
606
+ for (const [reqId, pending] of pendingControlRequests) {
607
+ if (pending.conversationId === conversationId) {
608
+ pendingControlRequests.delete(reqId);
483
609
  }
484
- if (conversation.child && !conversation.child.killed) {
485
- const pid = conversation.child.pid;
486
- // On Windows, kill the entire process tree (child.kill() won't kill grandchildren)
487
- if (pid && process.platform === 'win32') {
488
- try {
489
- execSync(`taskkill /pid ${pid} /t /f`, { stdio: 'ignore', windowsHide: true });
490
- }
491
- catch { /* process may have already exited */ }
492
- }
493
- else {
494
- conversation.child.kill();
610
+ }
611
+ conv.isCompacting = false;
612
+ // Preserve session ID so the next message can resume
613
+ if (conv.claudeSessionId) {
614
+ conv.lastClaudeSessionId = conv.claudeSessionId;
615
+ }
616
+ if (conv.child && !conv.child.killed) {
617
+ const pid = conv.child.pid;
618
+ // On Windows, kill the entire process tree (child.kill() won't kill grandchildren)
619
+ if (pid && process.platform === 'win32') {
620
+ try {
621
+ execSync(`taskkill /pid ${pid} /t /f`, { stdio: 'ignore', windowsHide: true });
495
622
  }
623
+ catch { /* process may have already exited */ }
496
624
  }
497
- if (conversation.inputStream) {
498
- conversation.inputStream.done();
625
+ else {
626
+ conv.child.kill();
499
627
  }
500
- conversation = null;
501
628
  }
629
+ if (conv.inputStream) {
630
+ conv.inputStream.done();
631
+ }
632
+ conversations.delete(conversationId);
502
633
  }
503
634
  //# sourceMappingURL=claude.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../src/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../src/claude.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { createRequire } from 'module';
7
7
  import { loadRuntimeState, saveRuntimeState } from './config.js';
8
8
  const require = createRequire(import.meta.url);
9
9
  const pkg = require('../package.json');
10
- import { handleChat as claudeHandleChat, setSendFn, abort as abortClaude, cancelExecution as claudeCancelExecution, handleUserAnswer, getConversation, getIsCompacting, clearSessionId } from './claude.js';
10
+ import { handleChat as claudeHandleChat, setSendFn, abort as abortClaude, abortAll as abortAllClaude, cancelExecution as claudeCancelExecution, handleUserAnswer, getConversation, getIsCompacting, clearSessionId, evictByClaudeSessionId, rebindConversation } from './claude.js';
11
11
  import { listSessions, readSessionMessages, deleteSession, renameSession } from './history.js';
12
12
  import { decodeKey, parseMessage, encryptAndSend } from './encryption.js';
13
13
  const RECONNECT_BASE_DELAY = 1000;
@@ -122,7 +122,7 @@ function doConnect(config, onRegistered, onError) {
122
122
  }
123
123
  export function disconnect() {
124
124
  state.shouldReconnect = false;
125
- abortClaude();
125
+ abortAllClaude();
126
126
  if (state.ws) {
127
127
  state.ws.close();
128
128
  state.ws = null;
@@ -181,11 +181,14 @@ function scheduleReconnect(config) {
181
181
  function handleServerMessage(msg) {
182
182
  console.log(`[AgentLink] ← ${msg.type}`);
183
183
  switch (msg.type) {
184
- case 'chat':
185
- claudeHandleChat(msg.prompt, state.workDir, msg.resumeSessionId, msg.files);
184
+ case 'chat': {
185
+ const chatConvId = msg.conversationId;
186
+ const existingConv = chatConvId ? getConversation(chatConvId) : getConversation();
187
+ claudeHandleChat(chatConvId, msg.prompt, existingConv?.workDir || state.workDir, msg.resumeSessionId, msg.files);
186
188
  break;
189
+ }
187
190
  case 'cancel_execution':
188
- claudeCancelExecution();
191
+ claudeCancelExecution(msg.conversationId);
189
192
  break;
190
193
  case 'list_sessions':
191
194
  handleListSessions();
@@ -197,27 +200,38 @@ function handleServerMessage(msg) {
197
200
  handleChangeWorkDir(msg);
198
201
  break;
199
202
  case 'new_conversation':
203
+ // Backward compat: old web client sends this to reset the single conversation
200
204
  abortClaude();
201
- clearSessionId();
205
+ clearSessionId('default');
202
206
  console.log('[AgentLink] New conversation — session cleared');
203
207
  break;
204
208
  case 'resume_conversation': {
205
209
  const m = msg;
206
- const conv = getConversation();
207
- // Only kill Claude if switching to a different session
208
- if (!conv || conv.claudeSessionId !== m.claudeSessionId) {
209
- abortClaude();
210
+ const convId = m.conversationId;
211
+ if (!convId) {
212
+ // Backward compat: single-session mode
213
+ const conv = getConversation();
214
+ if (!conv || conv.claudeSessionId !== m.claudeSessionId) {
215
+ abortClaude();
216
+ }
217
+ }
218
+ else {
219
+ // Multi-session: rebind running conversation to new conversationId
220
+ // (handles page refresh where web client generates a new UUID)
221
+ rebindConversation(m.claudeSessionId, convId);
210
222
  }
211
223
  const history = readSessionMessages(state.workDir, m.claudeSessionId);
212
224
  console.log(`[AgentLink] → conversation_resumed (${history.length} messages, session ${m.claudeSessionId.slice(0, 8)})`);
213
225
  // Include live status so the web client can restore compacting/processing state
214
- const currentConv = getConversation();
226
+ // In multi-session mode, look up by conversationId; in single-session mode, use default
227
+ const currentConv = convId ? getConversation(convId) : getConversation();
215
228
  const isSameSession = currentConv?.claudeSessionId === m.claudeSessionId;
216
229
  send({
217
230
  type: 'conversation_resumed',
231
+ conversationId: convId,
218
232
  claudeSessionId: m.claudeSessionId,
219
233
  history,
220
- isCompacting: isSameSession && getIsCompacting(),
234
+ isCompacting: isSameSession && (convId ? getIsCompacting(convId) : getIsCompacting()),
221
235
  isProcessing: isSameSession && currentConv?.turnActive === true,
222
236
  });
223
237
  break;
@@ -256,9 +270,9 @@ function handleListSessions() {
256
270
  }
257
271
  }
258
272
  function handleDeleteSession(sessionId) {
259
- const conv = getConversation();
260
- if (conv && conv.claudeSessionId === sessionId) {
261
- send({ type: 'error', message: 'Cannot delete the active session.' });
273
+ // Evict any idle conversation holding this session; block if busy
274
+ if (evictByClaudeSessionId(sessionId)) {
275
+ send({ type: 'error', message: 'Cannot delete a session while it is processing.' });
262
276
  return;
263
277
  }
264
278
  const deleted = deleteSession(state.workDir, sessionId);
@@ -334,10 +348,7 @@ function handleChangeWorkDir(msg) {
334
348
  send({ type: 'error', message: `Directory does not exist: ${newDir}` });
335
349
  return;
336
350
  }
337
- // Kill any existing Claude process and clear session
338
- abortClaude();
339
- clearSessionId();
340
- // Update agent-side workDir
351
+ // Only update agent-side workDir — existing conversations keep running in their own workDir
341
352
  state.workDir = newDir;
342
353
  console.log(`[AgentLink] Working directory changed to: ${newDir}`);
343
354
  // Notify web client (server intercepts to update its state)
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-link/agent",
3
- "version": "0.1.70",
3
+ "version": "0.1.72",
4
4
  "description": "AgentLink local agent CLI",
5
5
  "license": "MIT",
6
6
  "repository": {