@syntero/orca-cli 1.1.15 → 1.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/assistant.d.ts +41 -3
  2. package/dist/assistant.d.ts.map +1 -1
  3. package/dist/assistant.js +143 -16
  4. package/dist/assistant.js.map +1 -1
  5. package/dist/autocomplete.d.ts.map +1 -1
  6. package/dist/autocomplete.js +2 -0
  7. package/dist/autocomplete.js.map +1 -1
  8. package/dist/components/ChatApp.d.ts.map +1 -1
  9. package/dist/components/ChatApp.js +172 -9
  10. package/dist/components/ChatApp.js.map +1 -1
  11. package/dist/components/CommandConfirmation.d.ts +44 -0
  12. package/dist/components/CommandConfirmation.d.ts.map +1 -0
  13. package/dist/components/CommandConfirmation.js +184 -0
  14. package/dist/components/CommandConfirmation.js.map +1 -0
  15. package/dist/components/InputFooter.d.ts +3 -1
  16. package/dist/components/InputFooter.d.ts.map +1 -1
  17. package/dist/components/InputFooter.js +44 -2
  18. package/dist/components/InputFooter.js.map +1 -1
  19. package/dist/components/ResumeMenu.d.ts +23 -0
  20. package/dist/components/ResumeMenu.d.ts.map +1 -0
  21. package/dist/components/ResumeMenu.js +134 -0
  22. package/dist/components/ResumeMenu.js.map +1 -0
  23. package/dist/confirmation/index.d.ts +8 -0
  24. package/dist/confirmation/index.d.ts.map +1 -0
  25. package/dist/confirmation/index.js +8 -0
  26. package/dist/confirmation/index.js.map +1 -0
  27. package/dist/confirmation/patterns.d.ts +58 -0
  28. package/dist/confirmation/patterns.d.ts.map +1 -0
  29. package/dist/confirmation/patterns.js +107 -0
  30. package/dist/confirmation/patterns.js.map +1 -0
  31. package/dist/conversations/index.d.ts +8 -0
  32. package/dist/conversations/index.d.ts.map +1 -0
  33. package/dist/conversations/index.js +8 -0
  34. package/dist/conversations/index.js.map +1 -0
  35. package/dist/conversations/storage.d.ts +80 -0
  36. package/dist/conversations/storage.d.ts.map +1 -0
  37. package/dist/conversations/storage.js +296 -0
  38. package/dist/conversations/storage.js.map +1 -0
  39. package/dist/conversations/types.d.ts +50 -0
  40. package/dist/conversations/types.d.ts.map +1 -0
  41. package/dist/conversations/types.js +5 -0
  42. package/dist/conversations/types.js.map +1 -0
  43. package/dist/index.js +4 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/terminalTitle.d.ts +28 -0
  46. package/dist/terminalTitle.d.ts.map +1 -0
  47. package/dist/terminalTitle.js +70 -0
  48. package/dist/terminalTitle.js.map +1 -0
  49. package/dist/tools.d.ts +6 -0
  50. package/dist/tools.d.ts.map +1 -1
  51. package/dist/tools.js +7 -6
  52. package/dist/tools.js.map +1 -1
  53. package/package.json +1 -1
@@ -1,7 +1,26 @@
1
1
  import Anthropic from '@anthropic-ai/sdk';
2
2
  import OpenAI from 'openai';
3
3
  import { Settings } from './settings.js';
4
+ import { type DangerCheckResult } from './tools.js';
4
5
  import type { LLMClient } from './providers.js';
6
+ /**
7
+ * Result of command confirmation callback.
8
+ */
9
+ export interface CommandConfirmResult {
10
+ /** Whether to proceed with the command */
11
+ confirmed: boolean;
12
+ /** Categories to add to session approvals (if user chose "allow category") */
13
+ approveCategories?: string[];
14
+ }
15
+ /**
16
+ * Callback type for confirming dangerous commands.
17
+ * Called before executing potentially dangerous shell commands.
18
+ *
19
+ * @param command - The shell command to confirm
20
+ * @param dangerCheck - Details about why the command is considered dangerous
21
+ * @returns Promise resolving to the confirmation result
22
+ */
23
+ export type ConfirmCommandCallback = (command: string, dangerCheck: DangerCheckResult) => Promise<CommandConfirmResult>;
5
24
  export interface AnthropicMessage {
6
25
  role: 'user' | 'assistant';
7
26
  content: string | AnthropicContentBlock[];
@@ -18,18 +37,24 @@ interface AnthropicContentBlock {
18
37
  /**
19
38
  * Run assistant with Anthropic API with streaming.
20
39
  * @param getQueuedMessage - Optional callback to check for queued messages at each iteration
40
+ * @param confirmCommand - Optional callback to confirm dangerous commands
41
+ * @param approvedCategories - Set of command categories approved for the session
21
42
  */
22
- export declare function runAssistantAnthropic(client: Anthropic, settings: Settings, userMessage: string, messages: AnthropicMessage[], signal?: AbortSignal, getQueuedMessage?: () => string | null): AsyncGenerator<string, AnthropicMessage[], void>;
43
+ export declare function runAssistantAnthropic(client: Anthropic, settings: Settings, userMessage: string, messages: AnthropicMessage[], signal?: AbortSignal, getQueuedMessage?: () => string | null, confirmCommand?: ConfirmCommandCallback, approvedCategories?: Set<string>): AsyncGenerator<string, AnthropicMessage[], void>;
23
44
  /**
24
45
  * Run assistant with OpenAI/Azure API with streaming.
25
46
  * @param getQueuedMessage - Optional callback to check for queued messages at each iteration
47
+ * @param confirmCommand - Optional callback to confirm dangerous commands
48
+ * @param approvedCategories - Set of command categories approved for the session
26
49
  */
27
- export declare function runAssistantOpenAI(client: OpenAI, settings: Settings, userMessage: string, messages: AnthropicMessage[], isAzure?: boolean, signal?: AbortSignal, getQueuedMessage?: () => string | null): AsyncGenerator<string, AnthropicMessage[], void>;
50
+ export declare function runAssistantOpenAI(client: OpenAI, settings: Settings, userMessage: string, messages: AnthropicMessage[], isAzure?: boolean, signal?: AbortSignal, getQueuedMessage?: () => string | null, confirmCommand?: ConfirmCommandCallback, approvedCategories?: Set<string>): AsyncGenerator<string, AnthropicMessage[], void>;
28
51
  /**
29
52
  * Run the assistant with the appropriate provider.
30
53
  * @param getQueuedMessage - Optional callback to check for queued messages at each iteration
54
+ * @param confirmCommand - Optional callback to confirm dangerous commands
55
+ * @param approvedCategories - Set of command categories approved for the session
31
56
  */
32
- export declare function runAssistant(client: LLMClient, settings: Settings, userMessage: string, messages?: AnthropicMessage[], signal?: AbortSignal, getQueuedMessage?: () => string | null): AsyncGenerator<string, AnthropicMessage[], void>;
57
+ export declare function runAssistant(client: LLMClient, settings: Settings, userMessage: string, messages?: AnthropicMessage[], signal?: AbortSignal, getQueuedMessage?: () => string | null, confirmCommand?: ConfirmCommandCallback, approvedCategories?: Set<string>): AsyncGenerator<string, AnthropicMessage[], void>;
33
58
  /**
34
59
  * Summarize a conversation history.
35
60
  * Uses the configured LLM provider to generate a concise summary.
@@ -41,5 +66,18 @@ export declare function runAssistant(client: LLMClient, settings: Settings, user
41
66
  * @returns A summary string to use as context for a new conversation
42
67
  */
43
68
  export declare function summarizeConversation(client: LLMClient, settings: Settings, messages: AnthropicMessage[], customInstructions?: string): Promise<string>;
69
+ /**
70
+ * Generate an AI-based title for a conversation.
71
+ * Uses the LLM to create a concise, descriptive title based on the conversation content.
72
+ *
73
+ * @param client - The LLM client
74
+ * @param settings - Current settings
75
+ * @param messages - The conversation messages (ChatMessage format)
76
+ * @returns A short title string, or null if generation fails
77
+ */
78
+ export declare function generateAITitle(client: LLMClient, settings: Settings, messages: Array<{
79
+ role: string;
80
+ content: string;
81
+ }>): Promise<string | null>;
44
82
  export {};
45
83
  //# sourceMappingURL=assistant.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assistant.d.ts","sourceRoot":"","sources":["../src/assistant.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAY,MAAM,eAAe,CAAC;AAGnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAsGhD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAAC;CAC3C;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,aAAa,CAAC;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAwBD;;;GAGG;AACH,wBAAuB,qBAAqB,CAC1C,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,MAAM,CAAC,EAAE,WAAW,EACpB,gBAAgB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GACrC,cAAc,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,IAAI,CAAC,CA6FlD;AAED;;;GAGG;AACH,wBAAuB,kBAAkB,CACvC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,OAAO,UAAQ,EACf,MAAM,CAAC,EAAE,WAAW,EACpB,gBAAgB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GACrC,cAAc,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,IAAI,CAAC,CAyLlD;AAED;;;GAGG;AACH,wBAAuB,YAAY,CACjC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,gBAAgB,EAAO,EACjC,MAAM,CAAC,EAAE,WAAW,EACpB,gBAAgB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GACrC,cAAc,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,IAAI,CAAC,CAUlD;AA6HD;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,MAAM,CAAC,CAqBjB"}
1
+ {"version":3,"file":"assistant.d.ts","sourceRoot":"","sources":["../src/assistant.ts"],"names":[],"mappings":"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"}
package/dist/assistant.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Provider } from './settings.js';
2
- import { TOOLS_ANTHROPIC, TOOLS_OPENAI, handleToolCall } from './tools.js';
2
+ import { TOOLS_ANTHROPIC, TOOLS_OPENAI, handleToolCall, checkCommand, allCategoriesApproved, } from './tools.js';
3
3
  import { Colors, color } from './utils.js';
4
4
  import { ModelRegistry } from './models.js';
5
5
  const SYSTEM_PROMPT = `You are an expert deployment assistant for Orca, a workflow automation application.
@@ -19,7 +19,7 @@ You CAN and SHOULD:
19
19
  - Edit configuration files
20
20
  - Execute any shell command needed to help the user
21
21
 
22
- Only these dangerous patterns are blocked: rm -rf /, mkfs, dd if=, fork bombs.
22
+ Note: Potentially dangerous commands (rm, git reset --hard, docker rm, etc.) will prompt the user for confirmation before execution. The user can approve individual commands or allow entire categories for the session.
23
23
 
24
24
  ## Fresh Installation
25
25
  When a user asks to "install" Orca on a fresh machine:
@@ -33,8 +33,6 @@ When a user asks to "install" Orca on a fresh machine:
33
33
  - NEO4J_PASSWORD (required)
34
34
  - SOLUTION_POSTGRES_PASSWORD (required)
35
35
  - Auto-detect DOCKER_GID: stat -c '%g' /var/run/docker.sock
36
- - Ask user for REGISTRATION_PASSCODE (users need this to register)
37
- - Optionally ask about ANTHROPIC_API_KEY / OPENAI_API_KEY for AI features
38
36
  5. cd to deployment directory and run: docker compose pull
39
37
  6. Start services: docker compose up -d
40
38
  7. Wait for services to become healthy
@@ -103,8 +101,10 @@ When diagnosing issues:
103
101
  /**
104
102
  * Run assistant with Anthropic API with streaming.
105
103
  * @param getQueuedMessage - Optional callback to check for queued messages at each iteration
104
+ * @param confirmCommand - Optional callback to confirm dangerous commands
105
+ * @param approvedCategories - Set of command categories approved for the session
106
106
  */
107
- export async function* runAssistantAnthropic(client, settings, userMessage, messages, signal, getQueuedMessage) {
107
+ export async function* runAssistantAnthropic(client, settings, userMessage, messages, signal, getQueuedMessage, confirmCommand, approvedCategories) {
108
108
  messages.push({ role: 'user', content: userMessage });
109
109
  while (true) {
110
110
  // Check for queued messages at the start of each iteration
@@ -173,9 +173,39 @@ export async function* runAssistantAnthropic(client, settings, userMessage, mess
173
173
  const toolResults = [];
174
174
  for (const tc of toolCalls) {
175
175
  yield color(`\n\n[${tc.name}]\n`, Colors.dim);
176
- const result = await handleToolCall(tc.name, tc.input);
177
- const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
178
- yield color(`${preview}\n`, Colors.dim);
176
+ let result;
177
+ // Check for dangerous commands that need confirmation
178
+ if (tc.name === 'run_command' && confirmCommand) {
179
+ const command = tc.input.command;
180
+ const dangerCheck = checkCommand(command);
181
+ if (dangerCheck.isDangerous && !allCategoriesApproved(dangerCheck, approvedCategories || new Set())) {
182
+ // Request confirmation from user
183
+ yield color(`Dangerous command detected. Waiting for confirmation...\n`, Colors.yellow);
184
+ const confirmResult = await confirmCommand(command, dangerCheck);
185
+ if (!confirmResult.confirmed) {
186
+ result = 'Command cancelled by user.';
187
+ yield color(`${result}\n`, Colors.dim);
188
+ }
189
+ else {
190
+ // User confirmed - execute the command
191
+ result = await handleToolCall(tc.name, tc.input);
192
+ const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
193
+ yield color(`${preview}\n`, Colors.dim);
194
+ }
195
+ }
196
+ else {
197
+ // Not dangerous or already approved - execute normally
198
+ result = await handleToolCall(tc.name, tc.input);
199
+ const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
200
+ yield color(`${preview}\n`, Colors.dim);
201
+ }
202
+ }
203
+ else {
204
+ // Not run_command or no confirmation callback - execute normally
205
+ result = await handleToolCall(tc.name, tc.input);
206
+ const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
207
+ yield color(`${preview}\n`, Colors.dim);
208
+ }
179
209
  toolResults.push({
180
210
  type: 'tool_result',
181
211
  tool_use_id: tc.id,
@@ -193,8 +223,10 @@ export async function* runAssistantAnthropic(client, settings, userMessage, mess
193
223
  /**
194
224
  * Run assistant with OpenAI/Azure API with streaming.
195
225
  * @param getQueuedMessage - Optional callback to check for queued messages at each iteration
226
+ * @param confirmCommand - Optional callback to confirm dangerous commands
227
+ * @param approvedCategories - Set of command categories approved for the session
196
228
  */
197
- export async function* runAssistantOpenAI(client, settings, userMessage, messages, isAzure = false, signal, getQueuedMessage) {
229
+ export async function* runAssistantOpenAI(client, settings, userMessage, messages, isAzure = false, signal, getQueuedMessage, confirmCommand, approvedCategories) {
198
230
  const model = isAzure ? settings.azure.deployment : settings.openai.model;
199
231
  // Convert messages format for OpenAI
200
232
  const openaiMessages = [{ role: 'system', content: SYSTEM_PROMPT }];
@@ -340,9 +372,39 @@ export async function* runAssistantOpenAI(client, settings, userMessage, message
340
372
  const toolResults = [];
341
373
  for (const tc of Object.values(toolCalls)) {
342
374
  yield color(`\n\n[${tc.name}]\n`, Colors.dim);
343
- const result = await handleToolCall(tc.name, tc.input);
344
- const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
345
- yield color(`${preview}\n`, Colors.dim);
375
+ let result;
376
+ // Check for dangerous commands that need confirmation
377
+ if (tc.name === 'run_command' && confirmCommand) {
378
+ const command = tc.input.command;
379
+ const dangerCheck = checkCommand(command);
380
+ if (dangerCheck.isDangerous && !allCategoriesApproved(dangerCheck, approvedCategories || new Set())) {
381
+ // Request confirmation from user
382
+ yield color(`Dangerous command detected. Waiting for confirmation...\n`, Colors.yellow);
383
+ const confirmResult = await confirmCommand(command, dangerCheck);
384
+ if (!confirmResult.confirmed) {
385
+ result = 'Command cancelled by user.';
386
+ yield color(`${result}\n`, Colors.dim);
387
+ }
388
+ else {
389
+ // User confirmed - execute the command
390
+ result = await handleToolCall(tc.name, tc.input);
391
+ const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
392
+ yield color(`${preview}\n`, Colors.dim);
393
+ }
394
+ }
395
+ else {
396
+ // Not dangerous or already approved - execute normally
397
+ result = await handleToolCall(tc.name, tc.input);
398
+ const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
399
+ yield color(`${preview}\n`, Colors.dim);
400
+ }
401
+ }
402
+ else {
403
+ // Not run_command or no confirmation callback - execute normally
404
+ result = await handleToolCall(tc.name, tc.input);
405
+ const preview = result.length > 500 ? result.slice(0, 500) + '...' : result;
406
+ yield color(`${preview}\n`, Colors.dim);
407
+ }
346
408
  openaiMessages.push({
347
409
  role: 'tool',
348
410
  tool_call_id: tc.id,
@@ -365,16 +427,18 @@ export async function* runAssistantOpenAI(client, settings, userMessage, message
365
427
  /**
366
428
  * Run the assistant with the appropriate provider.
367
429
  * @param getQueuedMessage - Optional callback to check for queued messages at each iteration
430
+ * @param confirmCommand - Optional callback to confirm dangerous commands
431
+ * @param approvedCategories - Set of command categories approved for the session
368
432
  */
369
- export async function* runAssistant(client, settings, userMessage, messages = [], signal, getQueuedMessage) {
433
+ export async function* runAssistant(client, settings, userMessage, messages = [], signal, getQueuedMessage, confirmCommand, approvedCategories) {
370
434
  if (settings.provider === Provider.ANTHROPIC) {
371
- return yield* runAssistantAnthropic(client, settings, userMessage, messages, signal, getQueuedMessage);
435
+ return yield* runAssistantAnthropic(client, settings, userMessage, messages, signal, getQueuedMessage, confirmCommand, approvedCategories);
372
436
  }
373
437
  else if (settings.provider === Provider.OPENAI) {
374
- return yield* runAssistantOpenAI(client, settings, userMessage, messages, false, signal, getQueuedMessage);
438
+ return yield* runAssistantOpenAI(client, settings, userMessage, messages, false, signal, getQueuedMessage, confirmCommand, approvedCategories);
375
439
  }
376
440
  else if (settings.provider === Provider.AZURE) {
377
- return yield* runAssistantOpenAI(client, settings, userMessage, messages, true, signal, getQueuedMessage);
441
+ return yield* runAssistantOpenAI(client, settings, userMessage, messages, true, signal, getQueuedMessage, confirmCommand, approvedCategories);
378
442
  }
379
443
  throw new Error(`Unknown provider: ${settings.provider}`);
380
444
  }
@@ -512,4 +576,67 @@ export async function summarizeConversation(client, settings, messages, customIn
512
576
  }
513
577
  throw new Error(`Unknown provider: ${settings.provider}`);
514
578
  }
579
+ /**
580
+ * System prompt for generating conversation titles.
581
+ */
582
+ const TITLE_GENERATION_PROMPT = `Generate a short title (3-6 words) for this conversation. Return only the title, nothing else. No quotes, no punctuation at the end.`;
583
+ /**
584
+ * Generate an AI-based title for a conversation.
585
+ * Uses the LLM to create a concise, descriptive title based on the conversation content.
586
+ *
587
+ * @param client - The LLM client
588
+ * @param settings - Current settings
589
+ * @param messages - The conversation messages (ChatMessage format)
590
+ * @returns A short title string, or null if generation fails
591
+ */
592
+ export async function generateAITitle(client, settings, messages) {
593
+ try {
594
+ // Extract first few messages for context (limit to save tokens)
595
+ const relevantMessages = messages
596
+ .filter(m => m.role === 'user' || m.role === 'assistant')
597
+ .slice(0, 4); // First 2 exchanges max
598
+ if (relevantMessages.length === 0) {
599
+ return null;
600
+ }
601
+ // Format messages for the prompt
602
+ const conversationSnippet = relevantMessages
603
+ .map(m => `${m.role === 'user' ? 'User' : 'Assistant'}: ${m.content.slice(0, 200)}${m.content.length > 200 ? '...' : ''}`)
604
+ .join('\n');
605
+ const prompt = `${TITLE_GENERATION_PROMPT}\n\nConversation:\n${conversationSnippet}`;
606
+ if (settings.provider === Provider.ANTHROPIC) {
607
+ const anthropicClient = client;
608
+ const response = await anthropicClient.messages.create({
609
+ model: settings.anthropic.model,
610
+ max_tokens: 50,
611
+ messages: [{ role: 'user', content: prompt }],
612
+ });
613
+ // Extract text from response
614
+ for (const block of response.content) {
615
+ if (block.type === 'text') {
616
+ return block.text.trim();
617
+ }
618
+ }
619
+ }
620
+ else if (settings.provider === Provider.OPENAI || settings.provider === Provider.AZURE) {
621
+ const openaiClient = client;
622
+ const model = settings.provider === Provider.AZURE
623
+ ? settings.azure.deployment
624
+ : settings.openai.model;
625
+ const response = await openaiClient.chat.completions.create({
626
+ model,
627
+ max_tokens: 50,
628
+ messages: [{ role: 'user', content: prompt }],
629
+ });
630
+ const content = response.choices[0]?.message?.content;
631
+ if (content) {
632
+ return content.trim();
633
+ }
634
+ }
635
+ return null;
636
+ }
637
+ catch {
638
+ // Silently fail - title generation is non-critical
639
+ return null;
640
+ }
641
+ }
515
642
  //# sourceMappingURL=assistant.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assistant.js","sourceRoot":"","sources":["../src/assistant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assistant.js","sourceRoot":"","sources":["../src/assistant.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../src/autocomplete.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,iBAAiB,EAcvC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAajE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
1
+ {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../src/autocomplete.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,iBAAiB,EAgBvC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAajE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
@@ -13,6 +13,8 @@ export const COMMANDS = [
13
13
  { name: '/compact', description: 'Compact conversation (summarize and reset)' },
14
14
  { name: '/context', description: 'Show token usage breakdown' },
15
15
  { name: '/sync', description: 'Sync library from cloud' },
16
+ { name: '/resume', description: 'Resume a previous conversation' },
17
+ { name: '/rename', description: 'Rename current conversation' },
16
18
  { name: '/version', description: 'Show CLI version' },
17
19
  { name: '/help', description: 'Show help' },
18
20
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../src/autocomplete.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAwB;IAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAClD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6BAA6B,EAAE;IAC/D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC9D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE;IAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAClD,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC3D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE;IAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACrD,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,4CAA4C,EAAE;IAC/E,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC/D,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,yBAAyB,EAAE;IACzD,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE;IACrD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE;CAC5C,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAE5C,yCAAyC;IACzC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qEAAqE;IACrE,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;QAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,2BAA2B;QAC5E,OAAO,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../src/autocomplete.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAwB;IAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAClD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6BAA6B,EAAE;IAC/D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC9D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE;IAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAClD,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC3D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE;IAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACrD,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,4CAA4C,EAAE;IAC/E,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC/D,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,yBAAyB,EAAE;IACzD,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gCAAgC,EAAE;IAClE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6BAA6B,EAAE;IAC/D,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE;IACrD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE;CAC5C,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAE5C,yCAAyC;IACzC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qEAAqE;IACrE,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;QAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,2BAA2B;QAC5E,OAAO,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChatApp.d.ts","sourceRoot":"","sources":["../../src/components/ChatApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAIxE,OAAO,EAAE,QAAQ,EAA8B,MAAM,gBAAgB,CAAC;AAOtE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAmB5C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAWD,UAAU,YAAY;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtG,eAAe,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE,YAAY,GAAG,KAAK,CAAC,YAAY,CAokBtH"}
1
+ {"version":3,"file":"ChatApp.d.ts","sourceRoot":"","sources":["../../src/components/ChatApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,OAAO,EAAE,QAAQ,EAA8B,MAAM,gBAAgB,CAAC;AAetE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AA4B5C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAWD,UAAU,YAAY;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtG,eAAe,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE,YAAY,GAAG,KAAK,CAAC,YAAY,CAowBtH"}