@agent-link/agent 0.1.120 → 0.1.122

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/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # AgentLink Client
1
+ # AgenticWorker Client
2
2
 
3
3
  [![npm](https://img.shields.io/npm/v/@agent-link/agent)](https://www.npmjs.com/package/@agent-link/agent)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
 
6
- Local agent CLI for [AgentLink](https://github.com/yilee/agentlink) — use Claude Code from any browser.
6
+ Local agent CLI for [AgenticWorker](https://github.com/yilee/agentlink) — use Claude Code from any browser.
7
7
 
8
- AgentLink lets you run Claude Code on your local machine and access it through a web interface. The client runs on your dev machine, connects to a relay server, and gives you a URL to open in any browser.
8
+ AgenticWorker lets you run Claude Code on your local machine and access it through a web interface. The client runs on your dev machine, connects to a relay server, and gives you a URL to open in any browser.
9
9
 
10
10
  ## Install
11
11
 
@@ -77,8 +77,8 @@ Valid keys: `server`, `dir`, `name`, `autoUpdate`, `password`. Config is stored
77
77
  ## How it works
78
78
 
79
79
  ```
80
- Browser ↔ AgentLink Server ↔ AgentLink Client ↔ Claude Code
81
- (web) (relay) (your machine) (CLI)
80
+ Browser ↔ AgenticWorker Server ↔ AgenticWorker Client ↔ Claude Code
81
+ (web) (relay) (your machine) (CLI)
82
82
  ```
83
83
 
84
84
  The client spawns Claude Code as a subprocess, streams its output through the relay server to your browser, and sends your messages back. All tool execution happens locally on your machine. Messages are encrypted end-to-end with XSalsa20-Poly1305.
package/dist/claude.d.ts CHANGED
@@ -17,6 +17,7 @@
17
17
  */
18
18
  import { type ChildProcess } from 'child_process';
19
19
  import { Stream } from './stream.js';
20
+ import { type HistoryMessage } from './history.js';
20
21
  export { buildControlResponse, handleResultMessage, handleAssistantMessage, isTaskNotification, handleUserMessage, } from './claude-message-helpers.js';
21
22
  export interface ClaudeMessage {
22
23
  type: string;
@@ -41,7 +42,9 @@ export interface ConversationState {
41
42
  isCompacting: boolean;
42
43
  createdAt: number;
43
44
  planMode: boolean;
45
+ planModeJustChanged: boolean;
44
46
  brainMode: boolean;
47
+ recapId: string | null;
45
48
  }
46
49
  export type SendFn = (msg: Record<string, unknown>) => void;
47
50
  export declare const MAX_CHAT_CONVERSATIONS = 15;
@@ -92,6 +95,7 @@ export declare function clearSessionId(conversationId?: string): void;
92
95
  export interface HandleChatOptions {
93
96
  resumeSessionId?: string;
94
97
  brainMode?: boolean;
98
+ recapId?: string;
95
99
  }
96
100
  /**
97
101
  * Handle a chat message from the web client.
@@ -124,9 +128,29 @@ export declare function handleUserAnswer(requestId: string, answers: Record<stri
124
128
  * --resume. Streams btw_answer deltas back to the web client.
125
129
  */
126
130
  export declare function handleBtwQuestion(question: string, conversationId: string | undefined, workDir: string, send: (msg: Record<string, unknown>) => void, fallbackClaudeSessionId?: string): Promise<void>;
131
+ export interface RestartOptions {
132
+ /** New plan mode. If undefined, preserves current value. */
133
+ planMode?: boolean;
134
+ /** If true, reads JSONL history and includes it in the returned result. */
135
+ reloadHistory?: boolean;
136
+ }
137
+ export interface RestartResult {
138
+ /** The claudeSessionId that can be used to resume. */
139
+ claudeSessionId: string | null;
140
+ /** Whether an active turn was interrupted. */
141
+ wasTurnActive: boolean;
142
+ /** Reloaded history messages (only if reloadHistory was true). */
143
+ history?: HistoryMessage[];
144
+ }
145
+ /**
146
+ * Shared primitive for restarting a conversation.
147
+ * Kills the current Claude process, preserves session ID, recreates state
148
+ * with updated parameters. Used by plan mode toggle and (future) reload.
149
+ */
150
+ export declare function restartConversation(conversationId: string | undefined, options?: RestartOptions): RestartResult;
127
151
  /**
128
- * Set the permission mode for a conversation.
129
- * Kills the current Claude process (if any) and stores the new mode so the
130
- * next `handleChat()` call spawns Claude with the correct `--permission-mode`.
152
+ * Create a placeholder conversation state (for toggling plan mode before first message).
131
153
  */
132
- export declare function setPermissionMode(conversationId: string | undefined, mode: 'bypassPermissions' | 'plan', claudeSessionId?: string): 'injected' | 'immediate';
154
+ export declare function createPlaceholderConversation(conversationId: string | undefined, options?: {
155
+ planMode?: boolean;
156
+ }): void;
package/dist/claude.js CHANGED
@@ -23,7 +23,7 @@ import { Stream } from './stream.js';
23
23
  import { resolveClaudeCommand, getCleanEnv, streamToStdin, } from './sdk.js';
24
24
  import { CONFIG_DIR } from './config.js';
25
25
  import { saveSessionMetadata } from './session-metadata.js';
26
- import { readConversationContext } from './history.js';
26
+ import { readConversationContext, readSessionMessages } from './history.js';
27
27
  import { buildControlResponse, handleResultMessage, handleAssistantMessage, isTaskNotification, handleUserMessage, } from './claude-message-helpers.js';
28
28
  export { buildControlResponse, handleResultMessage, handleAssistantMessage, isTaskNotification, handleUserMessage, } from './claude-message-helpers.js';
29
29
  // ── Constants ─────────────────────────────────────────────────────────────
@@ -180,9 +180,25 @@ export function handleChat(conversationId, prompt, workDir, options, files) {
180
180
  state.turnResultReceived = false;
181
181
  if (options?.brainMode)
182
182
  state.brainMode = true;
183
- console.log(`[Claude:${convId.slice(0, 8)}] Sending: ${prompt.substring(0, 100)}${prompt.length > 100 ? '...' : ''}`);
183
+ if (options?.recapId)
184
+ state.recapId = options.recapId;
185
+ // When plan mode was just toggled, prepend a notice to the user's message
186
+ // so Claude knows the mode changed (its old conversation history may say
187
+ // otherwise). The --permission-mode flag already changed the system prompt,
188
+ // but this explicit notice overrides any in-context confusion.
189
+ let effectivePrompt = prompt;
190
+ if (state.planModeJustChanged) {
191
+ const modeNotice = state.planMode
192
+ ? '[SYSTEM NOTICE: Plan mode has been activated. You are now in plan mode — only use read-only tools.]'
193
+ : '[SYSTEM NOTICE: Plan mode has been deactivated. You are now in normal mode — you can use all tools freely.]';
194
+ effectivePrompt = `${modeNotice}\n\n${prompt}`;
195
+ state.planModeJustChanged = false;
196
+ console.log(`[Claude:${convId.slice(0, 8)}] Prepended plan mode change notice`);
197
+ }
198
+ const logLen = state.recapId ? 500 : 100;
199
+ console.log(`[Claude:${convId.slice(0, 8)}] Sending (recapId=${state.recapId}): ${effectivePrompt.substring(0, logLen)}${effectivePrompt.length > logLen ? '...' : ''}`);
184
200
  if (files && files.length > 0) {
185
- const content = processFilesForClaude(files, workDir, prompt);
201
+ const content = processFilesForClaude(files, workDir, effectivePrompt);
186
202
  state.inputStream.enqueue({
187
203
  type: 'user',
188
204
  message: { role: 'user', content },
@@ -191,7 +207,7 @@ export function handleChat(conversationId, prompt, workDir, options, files) {
191
207
  else {
192
208
  state.inputStream.enqueue({
193
209
  type: 'user',
194
- message: { role: 'user', content: prompt },
210
+ message: { role: 'user', content: effectivePrompt },
195
211
  });
196
212
  }
197
213
  }
@@ -401,83 +417,76 @@ Question: ${question}`;
401
417
  send({ type: 'btw_answer', delta: '', done: true });
402
418
  }
403
419
  }
404
- // ── Internal ───────────────────────────────────────────────────────────────
405
420
  /**
406
- * Set the permission mode for a conversation.
407
- * Kills the current Claude process (if any) and stores the new mode so the
408
- * next `handleChat()` call spawns Claude with the correct `--permission-mode`.
421
+ * Shared primitive for restarting a conversation.
422
+ * Kills the current Claude process, preserves session ID, recreates state
423
+ * with updated parameters. Used by plan mode toggle and (future) reload.
409
424
  */
410
- export function setPermissionMode(conversationId, mode, claudeSessionId) {
425
+ export function restartConversation(conversationId, options = {}) {
411
426
  const convId = conversationId || DEFAULT_CONVERSATION_ID;
412
427
  const existing = conversations.get(convId);
413
- const enteringPlan = mode === 'plan';
414
- if (existing) {
415
- // If the process is alive and idle, inject a user message to make Claude
416
- // call EnterPlanMode / ExitPlanMode natively — this records the mode switch
417
- // in the JSONL history so Claude stays aware of the current mode across resumes.
418
- if (existing.child && !existing.child.killed && existing.inputStream && !existing.turnActive) {
419
- existing.planMode = enteringPlan;
420
- const instruction = enteringPlan
421
- ? 'Enter plan mode now.'
422
- : 'Exit plan mode now.';
423
- existing.turnActive = true;
424
- existing.turnResultReceived = false;
425
- existing.inputStream.enqueue({
426
- type: 'user',
427
- message: { role: 'user', content: instruction },
428
- });
429
- console.log(`[Claude:${convId.slice(0, 8)}] Injected ${enteringPlan ? 'EnterPlanMode' : 'ExitPlanMode'} instruction into running process`);
430
- return 'injected';
431
- }
432
- // Process is not running or turn is active — kill and recreate state.
433
- // The next handleChat() will start a fresh process with the correct --permission-mode.
434
- const wasTurnActive = existing.turnActive;
435
- const lastSession = existing.claudeSessionId || existing.lastClaudeSessionId;
436
- const workDir = existing.workDir;
437
- cleanupConversation(convId);
438
- // Notify UI if we interrupted an active turn
439
- if (wasTurnActive) {
440
- sendFn({ type: 'execution_cancelled', conversationId: convId });
441
- }
442
- const newState = {
443
- child: null,
444
- inputStream: null,
445
- abortController: null,
446
- claudeSessionId: null,
447
- workDir,
448
- turnActive: false,
449
- turnResultReceived: false,
450
- conversationId: convId,
451
- lastClaudeSessionId: lastSession || null,
452
- isCompacting: false,
453
- createdAt: Date.now(),
454
- planMode: enteringPlan,
455
- brainMode: false,
456
- };
457
- conversations.set(convId, newState);
458
- return 'immediate';
428
+ if (!existing) {
429
+ return { claudeSessionId: null, wasTurnActive: false };
430
+ }
431
+ const wasTurnActive = existing.turnActive;
432
+ const sessionId = existing.claudeSessionId || existing.lastClaudeSessionId;
433
+ const workDir = existing.workDir;
434
+ const newPlanMode = options.planMode ?? existing.planMode;
435
+ const planModeChanged = newPlanMode !== existing.planMode;
436
+ // Kill current process, cleanup resources
437
+ cleanupConversation(convId);
438
+ // Recreate state with updated parameters
439
+ const newState = {
440
+ child: null,
441
+ inputStream: null,
442
+ abortController: null,
443
+ claudeSessionId: null,
444
+ workDir,
445
+ turnActive: false,
446
+ turnResultReceived: false,
447
+ conversationId: convId,
448
+ lastClaudeSessionId: sessionId,
449
+ isCompacting: false,
450
+ createdAt: Date.now(),
451
+ planMode: newPlanMode,
452
+ planModeJustChanged: planModeChanged,
453
+ brainMode: existing.brainMode,
454
+ recapId: existing.recapId,
455
+ };
456
+ conversations.set(convId, newState);
457
+ // Optionally reload history from JSONL
458
+ let history;
459
+ if (options.reloadHistory && sessionId) {
460
+ history = readSessionMessages(workDir, sessionId);
459
461
  }
460
- else {
461
- // No existing conversation yet (e.g. user toggled plan mode before first message).
462
- // Create a placeholder so handleChat()/startQuery() picks up the plan mode.
463
- const placeholder = {
464
- child: null,
465
- inputStream: null,
466
- abortController: null,
467
- claudeSessionId: null,
468
- workDir: '', // will be overridden by handleChat's workDir param
469
- turnActive: false,
470
- turnResultReceived: false,
471
- conversationId: convId,
472
- lastClaudeSessionId: claudeSessionId || null,
473
- isCompacting: false,
474
- createdAt: Date.now(),
475
- planMode: enteringPlan,
476
- brainMode: false,
477
- };
478
- conversations.set(convId, placeholder);
479
- return 'immediate';
462
+ if (planModeChanged) {
463
+ console.log(`[Claude:${convId.slice(0, 8)}] Plan mode changed (${existing.planMode} ${newPlanMode}) will notify Claude on next message`);
480
464
  }
465
+ return { claudeSessionId: sessionId, wasTurnActive, history };
466
+ }
467
+ /**
468
+ * Create a placeholder conversation state (for toggling plan mode before first message).
469
+ */
470
+ export function createPlaceholderConversation(conversationId, options = {}) {
471
+ const convId = conversationId || DEFAULT_CONVERSATION_ID;
472
+ const placeholder = {
473
+ child: null,
474
+ inputStream: null,
475
+ abortController: null,
476
+ claudeSessionId: null,
477
+ workDir: '', // will be overridden by handleChat's workDir param
478
+ turnActive: false,
479
+ turnResultReceived: false,
480
+ conversationId: convId,
481
+ lastClaudeSessionId: null,
482
+ isCompacting: false,
483
+ createdAt: Date.now(),
484
+ planMode: options.planMode ?? false,
485
+ planModeJustChanged: false,
486
+ brainMode: false,
487
+ recapId: null,
488
+ };
489
+ conversations.set(convId, placeholder);
481
490
  }
482
491
  function processFilesForClaude(files, workDir, prompt) {
483
492
  const attachDir = join(CONFIG_DIR, 'tmp-attachments');
@@ -521,11 +530,9 @@ function processFilesForClaude(files, workDir, prompt) {
521
530
  function startQuery(conversationId, workDir, resumeSessionId, brainMode) {
522
531
  // Tear down previous process for THIS conversation only (not others)
523
532
  const existing = conversations.get(conversationId);
524
- console.log(`[Claude:${conversationId.slice(0, 8)}] startQuery: existing=${!!existing}, existing.planMode=${existing?.planMode}`);
525
533
  if (existing) {
526
534
  abort(conversationId);
527
535
  }
528
- console.log(`[Claude:${conversationId.slice(0, 8)}] startQuery after abort: existing.planMode=${existing?.planMode}`);
529
536
  // Evict oldest idle conversation if at capacity (quota-aware)
530
537
  const convType = isLoopConversation(conversationId) ? 'loop' : 'chat';
531
538
  const maxForType = convType === 'loop' ? MAX_LOOP_CONVERSATIONS : MAX_CHAT_CONVERSATIONS;
@@ -547,7 +554,9 @@ function startQuery(conversationId, workDir, resumeSessionId, brainMode) {
547
554
  isCompacting: false,
548
555
  createdAt: Date.now(),
549
556
  planMode: existing?.planMode || false,
557
+ planModeJustChanged: existing?.planModeJustChanged || false,
550
558
  brainMode: brainMode || existing?.brainMode || false,
559
+ recapId: existing?.recapId || null,
551
560
  };
552
561
  conversations.set(conversationId, state);
553
562
  // Build args
@@ -675,6 +684,10 @@ async function processOutput(child, state, stderr) {
675
684
  if (state.brainMode) {
676
685
  saveSessionMetadata(state.claudeSessionId, { brainMode: true });
677
686
  }
687
+ // Persist recap ID metadata to disk
688
+ if (state.recapId) {
689
+ saveSessionMetadata(state.claudeSessionId, { recapId: state.recapId });
690
+ }
678
691
  }
679
692
  // Handle control_request (tool permission checks)
680
693
  if (msg.type === 'control_request') {
@@ -749,21 +762,20 @@ async function processOutput(child, state, stderr) {
749
762
  if (silentTurn)
750
763
  continue;
751
764
  lastSentText = handleAssistantMessage(msg, lastSentText, sendWithConvId);
752
- // Detect EnterPlanMode/ExitPlanMode tool calls Claude is toggling
753
- // plan mode natively. Sync state and notify the web UI.
754
- const msgContent = msg.message.content;
755
- if (Array.isArray(msgContent)) {
756
- const hasExitPlan = msgContent.some((b) => b.type === 'tool_use' && b.name === 'ExitPlanMode');
757
- const hasEnterPlan = msgContent.some((b) => b.type === 'tool_use' && b.name === 'EnterPlanMode');
758
- if (hasExitPlan && state.planMode) {
759
- console.log(`[Claude:${state.conversationId.slice(0, 8)}] ExitPlanMode detected switching to normal mode`);
760
- state.planMode = false;
761
- sendWithConvId({ type: 'plan_mode_changed', enabled: false });
762
- }
763
- else if (hasEnterPlan && !state.planMode) {
764
- console.log(`[Claude:${state.conversationId.slice(0, 8)}] EnterPlanMode detected — switching to plan mode`);
765
- state.planMode = true;
766
- sendWithConvId({ type: 'plan_mode_changed', enabled: true });
765
+ // Detect EnterPlanMode / ExitPlanMode tool_use blocks in the assistant
766
+ // message. This is the reliable path control_request only fires when
767
+ // the tool needs permission (plan→bypass has it, bypass→plan may not).
768
+ const assistantContent = msg.message.content;
769
+ if (Array.isArray(assistantContent)) {
770
+ for (const block of assistantContent) {
771
+ if (block.type === 'tool_use' && (block.name === 'EnterPlanMode' || block.name === 'ExitPlanMode')) {
772
+ const entering = block.name === 'EnterPlanMode';
773
+ if (state.planMode !== entering) {
774
+ console.log(`[Claude:${state.conversationId.slice(0, 8)}] ${block.name} tool_use detected — syncing planMode=${entering}`);
775
+ state.planMode = entering;
776
+ sendWithConvId({ type: 'plan_mode_changed', enabled: entering });
777
+ }
778
+ }
767
779
  }
768
780
  }
769
781
  continue;
@@ -859,10 +871,9 @@ async function processOutput(child, state, stderr) {
859
871
  }
860
872
  /**
861
873
  * Handle an incoming control_request from Claude's stdout.
862
- * For AskUserQuestion: forward to web UI and wait for user answer.
863
- * For other tools: auto-approve immediately.
864
- * Note: plan mode tool restrictions are handled natively by Claude's
865
- * --permission-mode plan flag — no custom deny logic needed here.
874
+ * - AskUserQuestion: forward to web UI and wait for user answer.
875
+ * - ExitPlanMode / EnterPlanMode: sync agent + UI state, then approve.
876
+ * - Other tools: auto-approve immediately.
866
877
  */
867
878
  function handleControlRequest(request, child, conversationId) {
868
879
  const requestId = request.request_id;
@@ -880,7 +891,19 @@ function handleControlRequest(request, child, conversationId) {
880
891
  });
881
892
  return;
882
893
  }
883
- // Auto-approve all other tool calls
894
+ // Sync plan mode state when Claude exits/enters plan mode on its own
895
+ // (This is a fallback — the primary detection is in processOutput via tool_use blocks.
896
+ // Only send plan_mode_changed if state is actually changing, to avoid duplicates.)
897
+ if (subtype === 'can_use_tool' && (toolName === 'ExitPlanMode' || toolName === 'EnterPlanMode')) {
898
+ const entering = toolName === 'EnterPlanMode';
899
+ const conv = getConversation(conversationId);
900
+ if (conv && conv.planMode !== entering) {
901
+ console.log(`[Claude:${conversationId.slice(0, 8)}] ${toolName} control_request — syncing planMode=${entering}`);
902
+ conv.planMode = entering;
903
+ sendFn({ type: 'plan_mode_changed', enabled: entering, conversationId });
904
+ }
905
+ }
906
+ // Auto-approve all other tool calls (including plan mode tools)
884
907
  const response = buildControlResponse(requestId, request.request.input || {});
885
908
  if (child.stdin && !child.stdin.destroyed) {
886
909
  child.stdin.write(JSON.stringify(response) + '\n');
@@ -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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"}
@@ -8,9 +8,10 @@ import { handleGitStatus, handleGitDiff, handleGitStage, handleGitUnstage, handl
8
8
  import { handleCreateTeam, handleDissolveTeam, handleListTeams, handleGetTeam, handleGetTeamAgentHistory, handleDeleteTeam, handleRenameTeam } from './team-handlers.js';
9
9
  import { handleCreateLoop, handleUpdateLoop, handleDeleteLoop, handleListLoops, handleGetLoop, handleRunLoop, handleCancelLoopExecution, handleListLoopExecutions, handleGetLoopExecutionMessages, handleQueryLoopStatus } from './loop-handlers.js';
10
10
  import { loadSessionMetadata, loadAllSessionMetadata, deleteSessionMetadata } from './session-metadata.js';
11
+ import { listRecaps, getRecapDetail } from './recap.js';
11
12
  const require = createRequire(import.meta.url);
12
13
  const pkg = require('../package.json');
13
- import { handleChat as claudeHandleChat, setSendFn, abort as abortClaude, abortAll as abortAllClaude, cancelExecution as claudeCancelExecution, handleUserAnswer, handleBtwQuestion, getConversation, getConversations, getIsCompacting, clearSessionId, evictByClaudeSessionId, rebindConversation, addOutputObserver, removeOutputObserver, addCloseObserver, removeCloseObserver, setOutputObserver, clearOutputObserver, setCloseObserver, clearCloseObserver, setPermissionMode } from './claude.js';
14
+ import { handleChat as claudeHandleChat, setSendFn, abort as abortClaude, abortAll as abortAllClaude, cancelExecution as claudeCancelExecution, handleUserAnswer, handleBtwQuestion, getConversation, getConversations, getIsCompacting, clearSessionId, evictByClaudeSessionId, rebindConversation, addOutputObserver, removeOutputObserver, addCloseObserver, removeCloseObserver, setOutputObserver, clearOutputObserver, setCloseObserver, clearCloseObserver, restartConversation, createPlaceholderConversation } from './claude.js';
14
15
  import { listSessions, readSessionMessages, deleteSession, renameSession } from './history.js';
15
16
  import { listMemoryFiles, updateMemoryFile, deleteMemoryFile } from './memory.js';
16
17
  import { decodeKey, parseMessage, encryptAndSend } from './encryption.js';
@@ -209,6 +210,7 @@ function scheduleReconnect(config) {
209
210
  }, delay);
210
211
  }
211
212
  const BRAIN_HOME_DIR = path.resolve(os.homedir(), '.brain', 'BrainCore');
213
+ const BRAIN_DATA_DIR = path.resolve(os.homedir(), 'BrainData');
212
214
  function isBrainHomeDir(dir) {
213
215
  return path.resolve(dir) === BRAIN_HOME_DIR;
214
216
  }
@@ -219,6 +221,7 @@ function handleServerMessage(msg) {
219
221
  const chatConvId = msg.conversationId;
220
222
  const existingConv = chatConvId ? getConversation(chatConvId) : getConversation();
221
223
  const isBrainMode = msg.brainMode;
224
+ const recapId = msg.recapId;
222
225
  const chatWorkDir = existingConv?.workDir || state.workDir;
223
226
  const effectiveBrainMode = isBrainMode || isBrainHomeDir(chatWorkDir);
224
227
  console.log(`[AgentLink] chat: conversationId=${chatConvId}, existingConv.planMode=${existingConv?.planMode}, brainMode=${effectiveBrainMode} (explicit=${isBrainMode}, workDir=${isBrainHomeDir(chatWorkDir)})`);
@@ -228,7 +231,11 @@ function handleServerMessage(msg) {
228
231
  if (effectiveBrainMode) {
229
232
  chatOptions.brainMode = true;
230
233
  }
231
- claudeHandleChat(chatConvId, msg.prompt, existingConv?.workDir || state.workDir, chatOptions, msg.files);
234
+ if (recapId) {
235
+ chatOptions.recapId = recapId;
236
+ }
237
+ const chatDir = recapId ? BRAIN_DATA_DIR : (existingConv?.workDir || state.workDir);
238
+ claudeHandleChat(chatConvId, msg.prompt, chatDir, chatOptions, msg.files);
232
239
  break;
233
240
  }
234
241
  case 'cancel_execution':
@@ -279,27 +286,29 @@ function handleServerMessage(msg) {
279
286
  // (handles page refresh where web client generates a new UUID)
280
287
  rebindConversation(m.claudeSessionId, convId);
281
288
  }
282
- const history = readSessionMessages(state.workDir, m.claudeSessionId);
289
+ // Try current workDir first; fall back to BRAIN_DATA_DIR for recap chat sessions
290
+ let history = readSessionMessages(state.workDir, m.claudeSessionId);
291
+ if (history.length === 0) {
292
+ const sessionMeta_ = loadSessionMetadata(m.claudeSessionId);
293
+ if (sessionMeta_.recapId) {
294
+ history = readSessionMessages(BRAIN_DATA_DIR, m.claudeSessionId);
295
+ }
296
+ }
283
297
  console.log(`[AgentLink] → conversation_resumed (${history.length} messages, session ${m.claudeSessionId.slice(0, 8)})`);
284
298
  // Include live status so the web client can restore compacting/processing state
285
299
  // In multi-session mode, look up by conversationId; in single-session mode, use default
286
300
  const currentConv = convId ? getConversation(convId) : getConversation();
287
301
  const isSameSession = currentConv?.claudeSessionId === m.claudeSessionId
288
302
  || currentConv?.lastClaudeSessionId === m.claudeSessionId;
289
- // Determine plan mode: prefer in-memory state, fallback to history scan
290
- let planMode;
291
- if (isSameSession) {
292
- planMode = currentConv?.planMode === true;
303
+ // Plan mode always resets to false on resume — it's ephemeral and should
304
+ // not persist across page refreshes or sidebar navigation.
305
+ // If the Claude process was running with --permission-mode plan, we must
306
+ // kill it so the next message spawns a fresh process with bypassPermissions.
307
+ if (currentConv && currentConv.planMode) {
308
+ restartConversation(convId, { planMode: false });
293
309
  }
294
- else if (history.length > 0) {
295
- // No in-memory state — scan history for the last EnterPlanMode/ExitPlanMode tool
296
- for (let i = history.length - 1; i >= 0; i--) {
297
- const h = history[i];
298
- if (h.role === 'tool' && (h.toolName === 'EnterPlanMode' || h.toolName === 'ExitPlanMode')) {
299
- planMode = h.toolName === 'EnterPlanMode';
300
- break;
301
- }
302
- }
310
+ else if (currentConv) {
311
+ currentConv.planMode = false;
303
312
  }
304
313
  // Determine brain mode from persisted metadata or workDir
305
314
  const sessionMeta = loadSessionMetadata(m.claudeSessionId);
@@ -311,7 +320,7 @@ function handleServerMessage(msg) {
311
320
  history,
312
321
  isCompacting: isSameSession && (convId ? getIsCompacting(convId) : getIsCompacting()),
313
322
  isProcessing: isSameSession && currentConv?.turnActive === true,
314
- planMode,
323
+ planMode: false,
315
324
  brainMode: resumeBrainMode,
316
325
  });
317
326
  break;
@@ -436,28 +445,21 @@ function handleServerMessage(msg) {
436
445
  break;
437
446
  }
438
447
  case 'set_plan_mode': {
439
- const { enabled, conversationId, claudeSessionId } = msg;
440
- const mode = enabled ? 'plan' : 'bypassPermissions';
448
+ const { enabled, conversationId } = msg;
441
449
  console.log(`[AgentLink] set_plan_mode: enabled=${enabled}, conversationId=${conversationId}`);
442
- const result = setPermissionMode(conversationId, mode, claudeSessionId);
443
- if (result === 'injected') {
444
- // Process was idle — setPermissionMode already injected Enter/ExitPlanMode
445
- // into the running process. Output flows through normal pipeline.
446
- // Just tell UI right away.
447
- send({ type: 'plan_mode_changed', enabled, conversationId });
450
+ const conv = getConversation(conversationId);
451
+ if (conv) {
452
+ // Restart with new mode
453
+ const result = restartConversation(conversationId, { planMode: enabled });
454
+ if (result.wasTurnActive) {
455
+ send({ type: 'execution_cancelled', conversationId });
456
+ }
448
457
  }
449
458
  else {
450
- // Immediate pathprocess was killed/recreated or placeholder created.
451
- send({ type: 'plan_mode_changed', enabled, conversationId, immediate: true });
452
- // When exiting plan mode, spawn Claude to record ExitPlanMode in the
453
- // JSONL so it doesn't think it's still in plan mode on next resume.
454
- const convId = conversationId || 'default';
455
- const conv = getConversation(convId);
456
- const sessionToFix = conv?.lastClaudeSessionId || claudeSessionId;
457
- if (!enabled && sessionToFix) {
458
- claudeHandleChat(conversationId, 'Exit plan mode now.', conv?.workDir || state.workDir, { resumeSessionId: sessionToFix });
459
- }
459
+ // No conversation yet create placeholder
460
+ createPlaceholderConversation(conversationId, { planMode: enabled });
460
461
  }
462
+ send({ type: 'plan_mode_changed', enabled, conversationId });
461
463
  break;
462
464
  }
463
465
  case 'git_status':
@@ -478,11 +480,39 @@ function handleServerMessage(msg) {
478
480
  case 'git_commit':
479
481
  handleGitCommit(msg, state.workDir, send);
480
482
  break;
483
+ case 'list_recaps':
484
+ handleListRecaps();
485
+ break;
486
+ case 'get_recap_detail':
487
+ handleGetRecapDetailMsg(msg);
488
+ break;
481
489
  default:
482
490
  console.log(`[AgentLink] Unhandled server message: ${msg.type}`);
483
491
  send({ type: 'error', message: `Unsupported command: ${msg.type}. Please upgrade your agent: agentlink-client upgrade` });
484
492
  }
485
493
  }
494
+ async function handleListRecaps() {
495
+ try {
496
+ const recaps = await listRecaps(BRAIN_DATA_DIR);
497
+ console.log(`[AgentLink] → recaps_list (${recaps.length} recaps)`);
498
+ send({ type: 'recaps_list', recaps });
499
+ }
500
+ catch (err) {
501
+ console.error('[AgentLink] listRecaps failed:', err);
502
+ send({ type: 'recaps_list', recaps: [], error: String(err) });
503
+ }
504
+ }
505
+ async function handleGetRecapDetailMsg(msg) {
506
+ try {
507
+ const detail = await getRecapDetail(BRAIN_DATA_DIR, msg.sidecarPath);
508
+ console.log(`[AgentLink] → recap_detail (${msg.recapId})`);
509
+ send({ type: 'recap_detail', recapId: msg.recapId, detail });
510
+ }
511
+ catch (err) {
512
+ console.error(`[AgentLink] getRecapDetail failed for ${msg.recapId}:`, err);
513
+ send({ type: 'recap_detail', recapId: msg.recapId, detail: null, error: String(err) });
514
+ }
515
+ }
486
516
  function handleListSessions() {
487
517
  try {
488
518
  const sessions = listSessions(state.workDir);
@@ -494,7 +524,20 @@ function handleListSessions() {
494
524
  // All sessions under Brain Home are brain sessions
495
525
  ...(isBrainHome ? { brainMode: true } : {}),
496
526
  }));
497
- console.log(`[AgentLink] sessions_list (${sessions.length} sessions for ${state.workDir}, brainHome=${isBrainHome})`);
527
+ // Always merge recap chat sessions from BrainData directory — they live under a
528
+ // different Claude project folder, so listSessions(state.workDir) misses them.
529
+ // Recap history should be visible regardless of the current workDir.
530
+ const brainSessions = listSessions(BRAIN_DATA_DIR);
531
+ const existingIds = new Set(enriched.map(s => s.sessionId));
532
+ for (const bs of brainSessions) {
533
+ if (existingIds.has(bs.sessionId))
534
+ continue;
535
+ const meta = metaMap.get(bs.sessionId);
536
+ if (meta?.recapId) {
537
+ enriched.push({ ...bs, ...meta });
538
+ }
539
+ }
540
+ console.log(`[AgentLink] → sessions_list (${enriched.length} sessions for ${state.workDir}, brainHome=${isBrainHome})`);
498
541
  send({ type: 'sessions_list', sessions: enriched, workDir: state.workDir });
499
542
  }
500
543
  catch (err) {
@@ -508,7 +551,14 @@ function handleDeleteSession(sessionId) {
508
551
  send({ type: 'error', message: 'Cannot delete a session while it is processing.' });
509
552
  return;
510
553
  }
511
- const deleted = deleteSession(state.workDir, sessionId);
554
+ // Try current workDir first; if not found, check if it's a recap session in BrainData
555
+ let deleted = deleteSession(state.workDir, sessionId);
556
+ if (!deleted) {
557
+ const meta = loadSessionMetadata(sessionId);
558
+ if (meta.recapId) {
559
+ deleted = deleteSession(BRAIN_DATA_DIR, sessionId);
560
+ }
561
+ }
512
562
  if (deleted) {
513
563
  deleteSessionMetadata(sessionId);
514
564
  send({ type: 'session_deleted', sessionId });
@@ -518,7 +568,14 @@ function handleDeleteSession(sessionId) {
518
568
  }
519
569
  }
520
570
  function handleRenameSession(sessionId, newTitle) {
521
- const renamed = renameSession(state.workDir, sessionId, newTitle);
571
+ // Try current workDir first; if not found, check if it's a recap session in BrainData
572
+ let renamed = renameSession(state.workDir, sessionId, newTitle);
573
+ if (!renamed) {
574
+ const meta = loadSessionMetadata(sessionId);
575
+ if (meta.recapId) {
576
+ renamed = renameSession(BRAIN_DATA_DIR, sessionId, newTitle);
577
+ }
578
+ }
522
579
  if (renamed) {
523
580
  send({ type: 'session_renamed', sessionId, newTitle });
524
581
  }
@@ -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":"AAAA,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChL,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACxI,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzK,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACrP,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC3G,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAExD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACvC,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,SAAS,EAAE,KAAK,IAAI,WAAW,EAAE,QAAQ,IAAI,cAAc,EAAE,eAAe,IAAI,qBAAqB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,6BAA6B,EAAiB,MAAM,aAAa,CAAC;AAC1hB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1F,OAAO,EACL,aAAa,EAEb,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAClC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAYnC,MAAM,KAAK,GAAoB;IAC7B,EAAE,EAAE,IAAI;IACR,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,IAAI;IACrB,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE;IACtB,MAAM,EAAE,IAAI;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,MAAmB;IACzC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;IAC3B,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;IAE7B,uFAAuF;IACvF,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAC;IAChC,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;QACrD,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,kCAAkC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,mEAAmE;IACnE,SAAS,CAAC,IAAI,CAAC,CAAC;IAEhB,4DAA4D;IAC5D,aAAa,CAAC,IAAI,CAAC,CAAC;IACpB,gBAAgB,CAAC;QACf,UAAU,EAAE,gBAAgB;QAC5B,eAAe,EAAE,qBAAqB;QACtC,iBAAiB;QACjB,oBAAoB;QACpB,gBAAgB;QAChB,mBAAmB;QACnB,sDAAsD;QACtD,iBAAiB;QACjB,mBAAmB;QACnB,gBAAgB;QAChB,kBAAkB;KACnB,CAAC,CAAC;IAEH,gCAAgC;IAChC,aAAa,CAAC;QACZ,IAAI;QACJ,UAAU,EAAE,gBAAgB;QAC5B,eAAe,EAAE,qBAAqB;QACtC,iBAAiB;QACjB,oBAAoB;QACpB,gBAAgB;QAChB,mBAAmB;KACpB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,SAAS,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAChB,MAAmB,EACnB,YAAyC,EACzC,OAA6B;IAE7B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,CAAC,MAAM,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEvH,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;QACjB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,IAAI,MAA+B,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,MAAM,CAAC,SAAmB,CAAC;YAChD,MAAM,iBAAiB,GAAG,KAAK,CAAC,SAAS,CAAC;YAC1C,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;YAC/B,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC1C,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAClD,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,CAAC;gBACf,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAChC,CAAC;YACD,+DAA+D;YAC/D,IAAI,iBAAiB,IAAI,iBAAiB,KAAK,YAAY,EAAE,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,mCAAmC,iBAAiB,MAAM,YAAY,EAAE,CAAC,CAAC;gBACvF,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAC;gBAChC,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;yBAC1C,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;yBAC1B,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBAC5B,gBAAgB,CAAC;wBACf,GAAG,IAAI;wBACP,SAAS,EAAE,YAAY;wBACvB,UAAU,EAAE,GAAG,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,YAAY,EAAE;qBAC9E,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,oCAAoC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,GAAG,EAAE,CAAC;gBACR,mBAAmB,CAAC,GAA+C,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,8CAA8C,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9H,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,OAAO,GAAG,IAAI,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;IAC9B,cAAc,EAAE,CAAC;IACjB,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;QACb,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QACjB,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,SAAS,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;AAElC,MAAM,UAAU,IAAI,CAAC,GAA4B;IAC/C,IAAI,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;QACvD,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAC9B,cAAc,CAAC,KAAK,CAAC,EAAG,EAAE,GAAG,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,2BAA2B,GAAG,CAAC,IAAI,oCAAoC,KAAK,CAAC,EAAE,EAAE,UAAU,GAAG,CAAC,CAAC;IAC/G,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,MAAmB;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,IAAI,EAAE,OAAO;QACb,EAAE,EAAE,MAAM,CAAC,IAAI;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE;QACvB,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC,CAAC;IACH,+DAA+D;IAC/D,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;IAC/F,CAAC;IACD,oDAAoD;IACpD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IACD,6BAA6B;IAC7B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG,IAAI,KAAK,MAAM,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAmB;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAC7D,mBAAmB,CACpB,CAAC;IACF,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAE1B,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,KAAK,CAAC,iBAAiB,MAAM,CAAC,CAAC;IAEhH,UAAU,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,2CAA2C;QACpE,gFAAgF;QAChF,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACtD,CAAC,EAAE,GAAG,EAAE;YACN,8DAA8D;QAChE,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AACzE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;AAE/D,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,cAAc,CAAC;AAC9C,CAAC;AAED,SAAS,mBAAmB,CAAC,GAA6C;IACxE,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,UAAU,GAAI,GAA8C,CAAC,cAAc,CAAC;YAClF,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;YAClF,MAAM,WAAW,GAAI,GAA0C,CAAC,SAAS,CAAC;YAC1E,MAAM,OAAO,GAAI,GAAuC,CAAC,OAAO,CAAC;YACjE,MAAM,WAAW,GAAG,YAAY,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC;YAC3D,MAAM,kBAAkB,GAAG,WAAW,IAAI,cAAc,CAAC,WAAW,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,oCAAoC,UAAU,2BAA2B,YAAY,EAAE,QAAQ,eAAe,kBAAkB,cAAc,WAAW,aAAa,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAClN,MAAM,WAAW,GAAwE;gBACvF,eAAe,EAAG,GAA+C,CAAC,eAAe;aAClF,CAAC;YACF,IAAI,kBAAkB,EAAE,CAAC;gBACvB,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;YAC/B,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;YAChC,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YACpF,gBAAgB,CACd,UAAU,EACT,GAAqC,CAAC,MAAM,EAC7C,OAAO,EACP,WAAW,EACV,GAAyC,CAAC,KAAK,CACjD,CAAC;YACF,MAAM;QACR,CAAC;QACD,KAAK,kBAAkB;YACrB,qBAAqB,CAAE,GAA8C,CAAC,cAAc,CAAC,CAAC;YACtF,MAAM;QACR,KAAK,eAAe;YAClB,kBAAkB,EAAE,CAAC;YACrB,MAAM;QACR,KAAK,gBAAgB;YACnB,mBAAmB,CAAC,GAAsD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACjG,MAAM;QACR,KAAK,WAAW;YACd,cAAc,CAAC,GAAsC,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5E,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAuD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/F,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAuD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/F,MAAM;QACR,KAAK,kBAAkB;YACrB,qBAAqB,CAAC,GAAsD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACnG,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAsC,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC9E,MAAM;QACR,KAAK,gBAAgB;YACnB,mBAAmB,CAAC,GAAqC,EAAE,KAAK,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;YAC5F,MAAM;QACR,KAAK,kBAAkB;YACrB,8EAA8E;YAC9E,WAAW,EAAE,CAAC;YACd,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;YAC9D,MAAM;QACR,KAAK,qBAAqB,CAAC,CAAC,CAAC;YAC3B,MAAM,CAAC,GAAG,GAAsE,CAAC;YACjF,MAAM,MAAM,GAAG,CAAC,CAAC,cAAc,CAAC;YAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,uCAAuC;gBACvC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;gBAC/B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,KAAK,CAAC,CAAC,eAAe,EAAE,CAAC;oBACxD,WAAW,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,mEAAmE;gBACnE,+DAA+D;gBAC/D,kBAAkB,CAAC,CAAC,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YAChD,CAAC;YAED,iFAAiF;YACjF,IAAI,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;YACpE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,YAAY,GAAG,mBAAmB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;gBAC5D,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,OAAO,GAAG,mBAAmB,CAAC,cAAc,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,uCAAuC,OAAO,CAAC,MAAM,sBAAsB,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;YAEzH,gFAAgF;YAChF,wFAAwF;YACxF,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;YACzE,MAAM,aAAa,GAAG,WAAW,EAAE,eAAe,KAAK,CAAC,CAAC,eAAe;mBACnE,WAAW,EAAE,mBAAmB,KAAK,CAAC,CAAC,eAAe,CAAC;YAE5D,yEAAyE;YACzE,2DAA2D;YAC3D,yEAAyE;YACzE,6EAA6E;YAC7E,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACxC,mBAAmB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,WAAW,EAAE,CAAC;gBACvB,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;YAC/B,CAAC;YAED,0DAA0D;YAC1D,MAAM,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YAC3D,MAAM,eAAe,GAAG,WAAW,CAAC,SAAS,IAAI,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE/E,IAAI,CAAC;gBACH,IAAI,EAAE,sBAAsB;gBAC5B,cAAc,EAAE,MAAM;gBACtB,eAAe,EAAE,CAAC,CAAC,eAAe;gBAClC,OAAO;gBACP,YAAY,EAAE,aAAa,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;gBACrF,YAAY,EAAE,aAAa,IAAI,WAAW,EAAE,UAAU,KAAK,IAAI;gBAC/D,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,eAAe;aAC3B,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,GAAG,GAAyE,CAAC;YACpF,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM;QACR,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,GAAuC,CAAC;YAClD,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACjC,MAAM;QACR,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,GAAyD,CAAC;YACpE,mBAAmB,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC7C,MAAM;QACR,CAAC;QACD,KAAK,4BAA4B,CAAC,CAAC,CAAC;YAClC,MAAM,MAAM,GAAoH,EAAE,CAAC;YACnI,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,gBAAgB,EAAE,EAAE,CAAC;gBAChD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC;wBACV,cAAc,EAAE,MAAM;wBACtB,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,YAAY,EAAE,IAAI;wBAClB,YAAY,EAAE,eAAe,CAAC,MAAM,CAAC;qBACtC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,MAAM,eAAe,GAAG,aAAa,EAAE,CAAC;YACxC,sDAAsD;YACtD,MAAM,YAAY,GAA4E,EAAE,CAAC;YACjG,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,oBAAoB,EAAE,EAAE,CAAC;gBACpD,YAAY,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YACvG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,uCAAuC,MAAM,CAAC,MAAM,UAAU,CAAC,CAAC;YAC5E,IAAI,CAAC;gBACH,IAAI,EAAE,sBAAsB;gBAC5B,aAAa,EAAE,MAAM;gBACrB,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI;gBACnE,qBAAqB,EAAE,YAAY;aACpC,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QACD,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAmH,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3J,MAAM;QACR,KAAK,eAAe;YAClB,kBAAkB,EAAE,CAAC;YACrB,MAAM;QACR,KAAK,YAAY;YACf,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,UAAU;YACb,aAAa,CAAC,GAAoC,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM;QACR,KAAK,wBAAwB;YAC3B,yBAAyB,CAAC,GAAqD,EAAE,IAAI,CAAC,CAAC;YACvF,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAoC,EAAE,IAAI,CAAC,CAAC;YAC7D,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAsD,EAAE,IAAI,CAAC,CAAC;YAC/E,MAAM;QACR,sEAAsE;QACtE,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAuN,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/P,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAA8Q,EAAE,IAAI,CAAC,CAAC;YACvS,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAoC,EAAE,IAAI,CAAC,CAAC;YAC7D,MAAM;QACR,KAAK,YAAY;YACf,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,UAAU;YACb,aAAa,CAAC,GAAoC,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM;QACR,KAAK,UAAU;YACb,aAAa,CAAC,GAAoC,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM;QACR,KAAK,uBAAuB;YAC1B,yBAAyB,CAAC,GAAoC,CAAC,CAAC;YAChE,MAAM;QACR,KAAK,sBAAsB;YACzB,wBAAwB,CAAC,GAAoD,EAAE,IAAI,CAAC,CAAC;YACrF,MAAM;QACR,KAAK,6BAA6B;YAChC,8BAA8B,CAAC,GAAyD,EAAE,IAAI,CAAC,CAAC;YAChG,MAAM;QACR,KAAK,mBAAmB;YACtB,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM;QACR,KAAK,MAAM;YACT,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAG,GAAiC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClE,MAAM;QACR,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9C,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAChF,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAuD,CAAC;YACtF,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClE,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YACtD,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAsC,CAAC;YAC5D,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACzD,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YACtD,MAAM;QACR,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,GAAyF,CAAC;YAChJ,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;YAClF,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,GAGnC,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,sCAAsC,OAAO,oBAAoB,cAAc,EAAE,CAAC,CAAC;YAE/F,MAAM,IAAI,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;YAC7C,IAAI,IAAI,EAAE,CAAC;gBACT,wBAAwB;gBACxB,MAAM,MAAM,GAAG,mBAAmB,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC1E,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBACzB,IAAI,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,cAAc,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,2CAA2C;gBAC3C,6BAA6B,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YACvE,CAAC;YAED,IAAI,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;YAC7D,MAAM;QACR,CAAC;QACD,KAAK,YAAY;YACf,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,UAAU;YACb,aAAa,CAAC,GAA2F,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAChI,MAAM;QACR,KAAK,WAAW;YACd,cAAc,CAAC,GAAmD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACzF,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAmD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3F,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,CAAC,GAAmD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3F,MAAM;QACR,KAAK,YAAY;YACf,eAAe,CAAC,GAAmD,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC1F,MAAM;QACR,KAAK,aAAa;YAChB,gBAAgB,EAAE,CAAC;YACnB,MAAM;QACR,KAAK,kBAAkB;YACrB,uBAAuB,CAAC,GAA0D,CAAC,CAAC;YACpF,MAAM;QACR;YACE,OAAO,CAAC,GAAG,CAAC,yCAAyC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,wBAAwB,GAAG,CAAC,IAAI,uDAAuD,EAAE,CAAC,CAAC;IAC9H,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC7B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,MAAM,UAAU,CAAC,CAAC;QACnE,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,GAA6C;IAClF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,+BAA+B,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,yCAAyC,GAAG,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,sBAAsB,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClC,GAAG,CAAC;YACJ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3B,mDAAmD;YACnD,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAC,CAAC,CAAC;QAEJ,gFAAgF;QAChF,+EAA+E;QAC/E,qEAAqE;QACrE,MAAM,aAAa,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;YAC/B,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC;gBAAE,SAAS;YAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;gBAClB,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,gCAAgC,QAAQ,CAAC,MAAM,iBAAiB,KAAK,CAAC,OAAO,eAAe,WAAW,GAAG,CAAC,CAAC;QACxH,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAiB;IAC5C,kEAAkE;IAClE,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,iDAAiD,EAAE,CAAC,CAAC;QACpF,OAAO;IACT,CAAC;IACD,sFAAsF;IACtF,IAAI,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,GAAG,aAAa,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,4CAA4C,EAAE,CAAC,CAAC;IACjF,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAiB,EAAE,QAAgB;IAC9D,sFAAsF;IACtF,IAAI,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,GAAG,aAAa,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,4CAA4C,EAAE,CAAC,CAAC;IACjF,CAAC;AACH,CAAC"}
package/dist/history.d.ts CHANGED
@@ -7,6 +7,7 @@
7
7
  export interface SessionInfo {
8
8
  sessionId: string;
9
9
  title: string;
10
+ customTitle?: string;
10
11
  preview: string;
11
12
  lastModified: number;
12
13
  }
package/dist/history.js CHANGED
@@ -50,6 +50,67 @@ function extractCommandOutput(text) {
50
50
  return stderrMatch[1].trim();
51
51
  return null;
52
52
  }
53
+ // ── User message preprocessing pipeline ─────────────────────────────────────
54
+ // All special-case logic for transforming raw JSONL user messages into display
55
+ // entries lives here. Add new transformations as steps in processUserMessage().
56
+ const PLAN_MODE_NOTICE_RE = /^\[SYSTEM NOTICE: Plan mode has been (activated|deactivated)\.[^\]]*\]\s*/;
57
+ /**
58
+ * Process a raw user message text through the full cleanup pipeline.
59
+ * Each step can filter, transform, or emit synthetic prefix entries.
60
+ *
61
+ * Steps (in order):
62
+ * 1. Skip hidden CLI commands
63
+ * 2. Extract command output (e.g. /cost results)
64
+ * 3. Strip system-injected XML tags
65
+ * 4. Extract plan mode notices → synthetic EnterPlanMode/ExitPlanMode dividers
66
+ * (future steps go here)
67
+ */
68
+ function processUserMessage(text, ts) {
69
+ const none = { prefixEntries: [], userEntry: null };
70
+ // 1. Hidden command → skip entirely
71
+ if (isHiddenCommand(text))
72
+ return none;
73
+ // 2. Command output → return as-is with flag
74
+ const cmdOutput = extractCommandOutput(text);
75
+ if (cmdOutput) {
76
+ return { prefixEntries: [], userEntry: { role: 'user', content: cmdOutput, timestamp: ts, isCommandOutput: true } };
77
+ }
78
+ // 3. Strip system tags
79
+ let cleaned = stripSystemTags(text);
80
+ if (!cleaned)
81
+ return none;
82
+ // 4. Plan mode notice → synthetic tool divider + cleaned text
83
+ const prefixEntries = [];
84
+ const planMatch = cleaned.match(PLAN_MODE_NOTICE_RE);
85
+ if (planMatch) {
86
+ const planMode = planMatch[1] === 'activated' ? 'enter' : 'exit';
87
+ prefixEntries.push({
88
+ role: 'tool', content: '',
89
+ toolName: planMode === 'enter' ? 'EnterPlanMode' : 'ExitPlanMode',
90
+ toolInput: '{}', toolId: `plan-${ts || Date.now()}`,
91
+ timestamp: ts,
92
+ });
93
+ cleaned = cleaned.replace(PLAN_MODE_NOTICE_RE, '');
94
+ }
95
+ // (future preprocessing steps go here)
96
+ if (!cleaned)
97
+ return { prefixEntries, userEntry: null };
98
+ return { prefixEntries, userEntry: { role: 'user', content: cleaned, timestamp: ts } };
99
+ }
100
+ /**
101
+ * Clean user message text for display (title, preview, context).
102
+ * Strips all system artifacts without emitting synthetic entries.
103
+ */
104
+ function cleanUserText(text) {
105
+ if (isHiddenCommand(text))
106
+ return '';
107
+ if (extractCommandOutput(text))
108
+ return '';
109
+ let cleaned = stripSystemTags(text);
110
+ if (cleaned)
111
+ cleaned = cleaned.replace(PLAN_MODE_NOTICE_RE, '');
112
+ return cleaned;
113
+ }
53
114
  /**
54
115
  * List sessions for a given working directory by scanning JSONL files.
55
116
  * Returns sessions sorted by lastModified descending.
@@ -97,8 +158,9 @@ export function listSessions(workDir) {
97
158
  ? data.message.content
98
159
  : data.message.content[0]?.text || '';
99
160
  if (text.trim() && !isHiddenCommand(text) && !extractCommandOutput(text)) {
100
- preview = text.substring(0, 100);
101
- title = text.substring(0, 100);
161
+ const displayText = cleanUserText(text);
162
+ preview = displayText.substring(0, 100);
163
+ title = displayText.substring(0, 100);
102
164
  hasUserMessage = true;
103
165
  }
104
166
  }
@@ -117,6 +179,7 @@ export function listSessions(workDir) {
117
179
  sessions.push({
118
180
  sessionId,
119
181
  title: customTitle || summary || title || sessionId.slice(0, 8),
182
+ ...(customTitle ? { customTitle } : {}),
120
183
  preview,
121
184
  lastModified: stats.mtime.getTime(),
122
185
  });
@@ -153,20 +216,10 @@ export function readSessionMessages(workDir, sessionId) {
153
216
  .join('');
154
217
  if (!text.trim())
155
218
  continue;
156
- // Skip caveat and command-name metadata
157
- if (isHiddenCommand(text))
158
- continue;
159
- // Extract command output (e.g. /cost, /context results)
160
- const cmdOutput = extractCommandOutput(text);
161
- if (cmdOutput) {
162
- result.push({ role: 'user', content: cmdOutput, timestamp: ts, isCommandOutput: true });
163
- }
164
- else {
165
- const cleaned = stripSystemTags(text);
166
- if (cleaned) {
167
- result.push({ role: 'user', content: cleaned, timestamp: ts });
168
- }
169
- }
219
+ const processed = processUserMessage(text, ts);
220
+ result.push(...processed.prefixEntries);
221
+ if (processed.userEntry)
222
+ result.push(processed.userEntry);
170
223
  }
171
224
  if (data.type === 'assistant' && data.message?.content && Array.isArray(data.message.content)) {
172
225
  // Merge all text blocks within this assistant message into one entry
@@ -262,7 +315,7 @@ export function readConversationContext(workDir, sessionId) {
262
315
  continue;
263
316
  if (isHiddenCommand(text))
264
317
  continue;
265
- const cleaned = stripSystemTags(text);
318
+ const cleaned = cleanUserText(text);
266
319
  if (cleaned) {
267
320
  entries.push({ type: 'user', text: cleaned });
268
321
  }
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ export interface IndexEntry {
2
+ recap_id: string;
3
+ meeting_id: string;
4
+ meeting_name: string;
5
+ series_name: string;
6
+ date_utc: string;
7
+ date_local: string;
8
+ meeting_type: string;
9
+ project: string | null;
10
+ for_you_count: number;
11
+ tldr_snippet: string;
12
+ sidecar_path: string;
13
+ recap_path: string;
14
+ sharing_link: string | null;
15
+ }
16
+ export interface SidecarJSON {
17
+ schema_version: string;
18
+ meta: Record<string, unknown>;
19
+ feed: Record<string, unknown>;
20
+ detail: {
21
+ tldr: string;
22
+ for_you: Array<{
23
+ text: string;
24
+ reason: string;
25
+ kind: string;
26
+ }>;
27
+ hook_sections: Array<{
28
+ section_type: string;
29
+ title: string;
30
+ items: Array<{
31
+ text: string;
32
+ [key: string]: unknown;
33
+ }>;
34
+ omitted_count: number;
35
+ }>;
36
+ decisions_count: number;
37
+ action_items_count: number;
38
+ open_items_count: number;
39
+ };
40
+ decisions: Array<Record<string, unknown>>;
41
+ action_items: Array<Record<string, unknown>>;
42
+ open_items: Array<Record<string, unknown>>;
43
+ }
44
+ export declare function listRecaps(brainHome: string): Promise<IndexEntry[]>;
45
+ export declare function getRecapDetail(brainHome: string, sidecarPath: string): Promise<SidecarJSON>;
package/dist/recap.js ADDED
@@ -0,0 +1,32 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import yaml from 'js-yaml';
4
+ const RECAP_INDEX_PATH = 'reports/meeting-recap/recap_index.yaml';
5
+ export async function listRecaps(brainHome) {
6
+ const indexPath = path.join(brainHome, RECAP_INDEX_PATH);
7
+ try {
8
+ const content = fs.readFileSync(indexPath, 'utf-8');
9
+ const parsed = yaml.load(content);
10
+ if (!parsed)
11
+ return [];
12
+ // Support both bare array and { recaps: [...] } wrapper
13
+ const entries = Array.isArray(parsed) ? parsed : parsed.recaps;
14
+ if (!Array.isArray(entries))
15
+ return [];
16
+ return entries;
17
+ }
18
+ catch (err) {
19
+ const code = err.code;
20
+ if (code === 'ENOENT') {
21
+ console.log(`[AgentLink] recap_index.yaml not found at ${indexPath}`);
22
+ return [];
23
+ }
24
+ throw err;
25
+ }
26
+ }
27
+ export async function getRecapDetail(brainHome, sidecarPath) {
28
+ const fullPath = path.join(brainHome, sidecarPath);
29
+ const content = fs.readFileSync(fullPath, 'utf-8');
30
+ return JSON.parse(content);
31
+ }
32
+ //# sourceMappingURL=recap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recap.js","sourceRoot":"","sources":["../src/recap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,IAAI,MAAM,SAAS,CAAC;AAwC3B,MAAM,gBAAgB,GAAG,wCAAwC,CAAC;AAElE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,SAAiB;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAoD,CAAC;QACrF,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,wDAAwD;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;QACjD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,6CAA6C,SAAS,EAAE,CAAC,CAAC;YACtE,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB,EAAE,WAAmB;IACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAgB,CAAC;AAC5C,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export interface SessionMetadata {
2
2
  brainMode?: boolean;
3
+ recapId?: string;
3
4
  }
4
5
  /** Save (merge) metadata for a Claude session. */
5
6
  export declare function saveSessionMetadata(claudeSessionId: string, metadata: Partial<SessionMetadata>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"session-metadata.js","sourceRoot":"","sources":["../src/session-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AACjG,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AAMlD,SAAS,iBAAiB;IACxB,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,mBAAmB,CAAC,eAAuB,EAAE,QAAkC;IAC7F,iBAAiB,EAAE,CAAC;IACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,eAAe,OAAO,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACtD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACjG,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,mBAAmB,CAAC,eAAuB;IACzD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,eAAe,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1F,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AACxB,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,sBAAsB;IACpC,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/C,IAAI,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,SAAS;YACnC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC;gBAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,qBAAqB,CAAC,eAAuB;IAC3D,IAAI,CAAC;QAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,eAAe,OAAO,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;AAC3F,CAAC"}
1
+ {"version":3,"file":"session-metadata.js","sourceRoot":"","sources":["../src/session-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AACjG,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AAOlD,SAAS,iBAAiB;IACxB,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,mBAAmB,CAAC,eAAuB,EAAE,QAAkC;IAC7F,iBAAiB,EAAE,CAAC;IACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,eAAe,OAAO,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACtD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACjG,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,mBAAmB,CAAC,eAAuB;IACzD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,eAAe,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1F,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AACxB,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,sBAAsB;IACpC,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/C,IAAI,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,SAAS;YACnC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC;gBAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,qBAAqB,CAAC,eAAuB;IAC3D,IAAI,CAAC;QAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,eAAe,OAAO,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;AAC3F,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-link/agent",
3
- "version": "0.1.120",
3
+ "version": "0.1.122",
4
4
  "description": "AgentLink local agent CLI",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -40,6 +40,7 @@
40
40
  },
41
41
  "dependencies": {
42
42
  "commander": "^12.0.0",
43
+ "js-yaml": "^4.1.1",
43
44
  "node-cron": "^4.2.1",
44
45
  "qrcode-terminal": "^0.12.0",
45
46
  "tweetnacl": "^1.0.3",
@@ -47,6 +48,7 @@
47
48
  "ws": "^8.16.0"
48
49
  },
49
50
  "devDependencies": {
51
+ "@types/js-yaml": "^4.0.9",
50
52
  "@types/node-cron": "^3.0.11",
51
53
  "@types/ws": "^8.5.10",
52
54
  "tsx": "^4.7.0"