@syntero/orca-cli 1.1.16 → 1.1.18

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 -14
  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 +40 -0
  50. package/dist/tools.d.ts.map +1 -1
  51. package/dist/tools.js +33 -7
  52. package/dist/tools.js.map +1 -1
  53. package/package.json +1 -1
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Conversation storage functions.
3
+ *
4
+ * Handles persisting and loading conversations from ~/.orca/conversations/
5
+ */
6
+ import type { ChatMessage } from '../components/ChatApp.js';
7
+ import type { AnthropicMessage } from '../assistant.js';
8
+ import type { Conversation, ConversationMeta, ConversationsIndex } from './types.js';
9
+ /**
10
+ * Ensure the conversations directory exists.
11
+ */
12
+ export declare function ensureConversationsDir(): void;
13
+ /**
14
+ * Load the conversations index from disk.
15
+ * Returns an empty index if file doesn't exist or is corrupted.
16
+ */
17
+ export declare function loadIndex(): ConversationsIndex;
18
+ /**
19
+ * Save the conversations index to disk.
20
+ */
21
+ export declare function saveIndex(index: ConversationsIndex): void;
22
+ /**
23
+ * Generate a title from the first user message.
24
+ * Takes first 50 chars, cuts at word boundary, appends "..." if truncated.
25
+ */
26
+ export declare function generateTitle(firstMessage: string): string;
27
+ /**
28
+ * Generate a preview from the first user message.
29
+ * Takes first 50 chars for display.
30
+ */
31
+ export declare function generatePreview(firstMessage: string): string;
32
+ /**
33
+ * Create a new conversation from messages.
34
+ */
35
+ export declare function createConversation(messages: ChatMessage[], conversationHistory: AnthropicMessage[]): Conversation;
36
+ /**
37
+ * Save a conversation to disk (creates or updates).
38
+ * Also updates the index with metadata.
39
+ */
40
+ export declare function saveConversation(conversation: Conversation): void;
41
+ /**
42
+ * Load a conversation by ID.
43
+ * Returns null if not found or corrupted.
44
+ */
45
+ export declare function loadConversation(id: string): Conversation | null;
46
+ /**
47
+ * List all conversations from the index.
48
+ * Returns sorted by updatedAt descending (most recent first).
49
+ */
50
+ export declare function listConversations(): ConversationMeta[];
51
+ /**
52
+ * Delete a conversation by ID.
53
+ * Returns true if deleted, false if not found.
54
+ */
55
+ export declare function deleteConversation(id: string): boolean;
56
+ /**
57
+ * Update an existing conversation with new messages.
58
+ * Updates the updatedAt timestamp.
59
+ */
60
+ export declare function updateConversation(id: string, messages: ChatMessage[], conversationHistory: AnthropicMessage[]): void;
61
+ /**
62
+ * Rename an existing conversation.
63
+ * Updates the title in both the conversation file and the index.
64
+ *
65
+ * @param id - The conversation ID
66
+ * @param newTitle - The new title for the conversation
67
+ * @returns true if renamed successfully, false if conversation not found
68
+ */
69
+ export declare function renameConversation(id: string, newTitle: string): boolean;
70
+ /**
71
+ * Update the title of a conversation.
72
+ * This is a lower-level function that only updates the title without changing updatedAt.
73
+ * Used for background AI title updates.
74
+ *
75
+ * @param id - The conversation ID
76
+ * @param newTitle - The new title for the conversation
77
+ * @returns true if updated successfully, false if conversation not found
78
+ */
79
+ export declare function updateConversationTitle(id: string, newTitle: string): boolean;
80
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/conversations/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAkBrF;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAO7C;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,kBAAkB,CAa9C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAQzD;AASD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAiB1D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAS5D;AAUD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,WAAW,EAAE,EACvB,mBAAmB,EAAE,gBAAgB,EAAE,GACtC,YAAY,CAYd;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,CAkDjE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAoBhE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,gBAAgB,EAAE,CAItD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAuBtD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,WAAW,EAAE,EACvB,mBAAmB,EAAE,gBAAgB,EAAE,GACtC,IAAI,CAkBN;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAexE;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAc7E"}
@@ -0,0 +1,296 @@
1
+ /**
2
+ * Conversation storage functions.
3
+ *
4
+ * Handles persisting and loading conversations from ~/.orca/conversations/
5
+ */
6
+ import * as fs from 'fs';
7
+ import * as path from 'path';
8
+ import * as os from 'os';
9
+ import * as crypto from 'crypto';
10
+ // Storage paths
11
+ const ORCA_DIR = path.join(os.homedir(), '.orca');
12
+ const CONVERSATIONS_DIR = path.join(ORCA_DIR, 'conversations');
13
+ const INDEX_FILE = path.join(CONVERSATIONS_DIR, 'index.json');
14
+ // Constants
15
+ const MAX_CONVERSATIONS = 50;
16
+ const CURRENT_VERSION = 1;
17
+ /**
18
+ * Generate a UUID v4 using crypto.
19
+ */
20
+ function generateUUID() {
21
+ return crypto.randomUUID();
22
+ }
23
+ /**
24
+ * Ensure the conversations directory exists.
25
+ */
26
+ export function ensureConversationsDir() {
27
+ if (!fs.existsSync(ORCA_DIR)) {
28
+ fs.mkdirSync(ORCA_DIR, { mode: 0o700 });
29
+ }
30
+ if (!fs.existsSync(CONVERSATIONS_DIR)) {
31
+ fs.mkdirSync(CONVERSATIONS_DIR, { mode: 0o700 });
32
+ }
33
+ }
34
+ /**
35
+ * Load the conversations index from disk.
36
+ * Returns an empty index if file doesn't exist or is corrupted.
37
+ */
38
+ export function loadIndex() {
39
+ try {
40
+ if (fs.existsSync(INDEX_FILE)) {
41
+ const data = JSON.parse(fs.readFileSync(INDEX_FILE, 'utf-8'));
42
+ // Validate basic structure
43
+ if (data && typeof data.version === 'number' && Array.isArray(data.conversations)) {
44
+ return data;
45
+ }
46
+ }
47
+ }
48
+ catch {
49
+ // If corrupted, return empty index
50
+ }
51
+ return { version: CURRENT_VERSION, conversations: [] };
52
+ }
53
+ /**
54
+ * Save the conversations index to disk.
55
+ */
56
+ export function saveIndex(index) {
57
+ ensureConversationsDir();
58
+ fs.writeFileSync(INDEX_FILE, JSON.stringify(index, null, 2));
59
+ try {
60
+ fs.chmodSync(INDEX_FILE, 0o600);
61
+ }
62
+ catch {
63
+ // Ignore chmod errors on Windows
64
+ }
65
+ }
66
+ /**
67
+ * Get the file path for a conversation.
68
+ */
69
+ function getConversationPath(id) {
70
+ return path.join(CONVERSATIONS_DIR, `conv_${id}.json`);
71
+ }
72
+ /**
73
+ * Generate a title from the first user message.
74
+ * Takes first 50 chars, cuts at word boundary, appends "..." if truncated.
75
+ */
76
+ export function generateTitle(firstMessage) {
77
+ const maxLength = 50;
78
+ const cleaned = firstMessage.trim().replace(/\n/g, ' ').replace(/\s+/g, ' ');
79
+ if (cleaned.length <= maxLength) {
80
+ return cleaned;
81
+ }
82
+ // Find the last space before maxLength
83
+ const truncated = cleaned.slice(0, maxLength);
84
+ const lastSpace = truncated.lastIndexOf(' ');
85
+ if (lastSpace > maxLength / 2) {
86
+ return truncated.slice(0, lastSpace) + '...';
87
+ }
88
+ return truncated + '...';
89
+ }
90
+ /**
91
+ * Generate a preview from the first user message.
92
+ * Takes first 50 chars for display.
93
+ */
94
+ export function generatePreview(firstMessage) {
95
+ const maxLength = 50;
96
+ const cleaned = firstMessage.trim().replace(/\n/g, ' ').replace(/\s+/g, ' ');
97
+ if (cleaned.length <= maxLength) {
98
+ return cleaned;
99
+ }
100
+ return cleaned.slice(0, maxLength) + '...';
101
+ }
102
+ /**
103
+ * Find the first user message in the messages array.
104
+ */
105
+ function findFirstUserMessage(messages) {
106
+ const userMsg = messages.find(m => m.role === 'user');
107
+ return userMsg?.content || 'Untitled conversation';
108
+ }
109
+ /**
110
+ * Create a new conversation from messages.
111
+ */
112
+ export function createConversation(messages, conversationHistory) {
113
+ const now = Date.now();
114
+ const firstMessage = findFirstUserMessage(messages);
115
+ return {
116
+ id: generateUUID(),
117
+ title: generateTitle(firstMessage),
118
+ createdAt: now,
119
+ updatedAt: now,
120
+ messages,
121
+ conversationHistory,
122
+ };
123
+ }
124
+ /**
125
+ * Save a conversation to disk (creates or updates).
126
+ * Also updates the index with metadata.
127
+ */
128
+ export function saveConversation(conversation) {
129
+ ensureConversationsDir();
130
+ // Save the full conversation file
131
+ const filePath = getConversationPath(conversation.id);
132
+ fs.writeFileSync(filePath, JSON.stringify(conversation, null, 2));
133
+ try {
134
+ fs.chmodSync(filePath, 0o600);
135
+ }
136
+ catch {
137
+ // Ignore chmod errors on Windows
138
+ }
139
+ // Update the index
140
+ const index = loadIndex();
141
+ // Create metadata
142
+ const meta = {
143
+ id: conversation.id,
144
+ title: conversation.title,
145
+ createdAt: conversation.createdAt,
146
+ updatedAt: conversation.updatedAt,
147
+ messageCount: conversation.messages.length,
148
+ preview: generatePreview(findFirstUserMessage(conversation.messages)),
149
+ };
150
+ // Remove existing entry if present
151
+ index.conversations = index.conversations.filter(c => c.id !== conversation.id);
152
+ // Add new/updated entry at the beginning
153
+ index.conversations.unshift(meta);
154
+ // Enforce max conversations limit
155
+ if (index.conversations.length > MAX_CONVERSATIONS) {
156
+ const toRemove = index.conversations.slice(MAX_CONVERSATIONS);
157
+ index.conversations = index.conversations.slice(0, MAX_CONVERSATIONS);
158
+ // Delete old conversation files
159
+ for (const old of toRemove) {
160
+ try {
161
+ const oldPath = getConversationPath(old.id);
162
+ if (fs.existsSync(oldPath)) {
163
+ fs.unlinkSync(oldPath);
164
+ }
165
+ }
166
+ catch {
167
+ // Ignore deletion errors
168
+ }
169
+ }
170
+ }
171
+ saveIndex(index);
172
+ }
173
+ /**
174
+ * Load a conversation by ID.
175
+ * Returns null if not found or corrupted.
176
+ */
177
+ export function loadConversation(id) {
178
+ try {
179
+ const filePath = getConversationPath(id);
180
+ if (fs.existsSync(filePath)) {
181
+ const data = JSON.parse(fs.readFileSync(filePath, 'utf-8'));
182
+ // Validate basic structure
183
+ if (data &&
184
+ typeof data.id === 'string' &&
185
+ typeof data.title === 'string' &&
186
+ Array.isArray(data.messages) &&
187
+ Array.isArray(data.conversationHistory)) {
188
+ return data;
189
+ }
190
+ }
191
+ }
192
+ catch {
193
+ // If corrupted, return null
194
+ }
195
+ return null;
196
+ }
197
+ /**
198
+ * List all conversations from the index.
199
+ * Returns sorted by updatedAt descending (most recent first).
200
+ */
201
+ export function listConversations() {
202
+ const index = loadIndex();
203
+ // Sort by updatedAt descending
204
+ return [...index.conversations].sort((a, b) => b.updatedAt - a.updatedAt);
205
+ }
206
+ /**
207
+ * Delete a conversation by ID.
208
+ * Returns true if deleted, false if not found.
209
+ */
210
+ export function deleteConversation(id) {
211
+ // Remove from index
212
+ const index = loadIndex();
213
+ const originalLength = index.conversations.length;
214
+ index.conversations = index.conversations.filter(c => c.id !== id);
215
+ if (index.conversations.length === originalLength) {
216
+ return false; // Not found in index
217
+ }
218
+ saveIndex(index);
219
+ // Delete the conversation file
220
+ try {
221
+ const filePath = getConversationPath(id);
222
+ if (fs.existsSync(filePath)) {
223
+ fs.unlinkSync(filePath);
224
+ }
225
+ }
226
+ catch {
227
+ // Ignore deletion errors
228
+ }
229
+ return true;
230
+ }
231
+ /**
232
+ * Update an existing conversation with new messages.
233
+ * Updates the updatedAt timestamp.
234
+ */
235
+ export function updateConversation(id, messages, conversationHistory) {
236
+ const existing = loadConversation(id);
237
+ if (!existing) {
238
+ // If conversation doesn't exist, create a new one
239
+ const newConv = createConversation(messages, conversationHistory);
240
+ saveConversation({ ...newConv, id }); // Use the provided ID
241
+ return;
242
+ }
243
+ // Update the conversation
244
+ const updated = {
245
+ ...existing,
246
+ messages,
247
+ conversationHistory,
248
+ updatedAt: Date.now(),
249
+ };
250
+ saveConversation(updated);
251
+ }
252
+ /**
253
+ * Rename an existing conversation.
254
+ * Updates the title in both the conversation file and the index.
255
+ *
256
+ * @param id - The conversation ID
257
+ * @param newTitle - The new title for the conversation
258
+ * @returns true if renamed successfully, false if conversation not found
259
+ */
260
+ export function renameConversation(id, newTitle) {
261
+ const conversation = loadConversation(id);
262
+ if (!conversation) {
263
+ return false;
264
+ }
265
+ // Update the conversation with new title
266
+ const updated = {
267
+ ...conversation,
268
+ title: newTitle,
269
+ updatedAt: Date.now(),
270
+ };
271
+ saveConversation(updated);
272
+ return true;
273
+ }
274
+ /**
275
+ * Update the title of a conversation.
276
+ * This is a lower-level function that only updates the title without changing updatedAt.
277
+ * Used for background AI title updates.
278
+ *
279
+ * @param id - The conversation ID
280
+ * @param newTitle - The new title for the conversation
281
+ * @returns true if updated successfully, false if conversation not found
282
+ */
283
+ export function updateConversationTitle(id, newTitle) {
284
+ const conversation = loadConversation(id);
285
+ if (!conversation) {
286
+ return false;
287
+ }
288
+ // Update only the title, preserve updatedAt
289
+ const updated = {
290
+ ...conversation,
291
+ title: newTitle,
292
+ };
293
+ saveConversation(updated);
294
+ return true;
295
+ }
296
+ //# sourceMappingURL=storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/conversations/storage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Types for conversation persistence.
3
+ */
4
+ import type { ChatMessage } from '../components/ChatApp.js';
5
+ import type { AnthropicMessage } from '../assistant.js';
6
+ /**
7
+ * Metadata for a conversation, stored in the index file.
8
+ * Contains only the information needed for listing and display.
9
+ */
10
+ export interface ConversationMeta {
11
+ /** Unique identifier (UUID) */
12
+ id: string;
13
+ /** Auto-generated title from first user message */
14
+ title: string;
15
+ /** Unix timestamp when created */
16
+ createdAt: number;
17
+ /** Unix timestamp when last updated */
18
+ updatedAt: number;
19
+ /** Number of messages for display */
20
+ messageCount: number;
21
+ /** First ~50 chars of first user message for preview */
22
+ preview: string;
23
+ }
24
+ /**
25
+ * Full conversation data, stored in individual files.
26
+ */
27
+ export interface Conversation {
28
+ /** Unique identifier (UUID) */
29
+ id: string;
30
+ /** Auto-generated title from first user message */
31
+ title: string;
32
+ /** Unix timestamp when created */
33
+ createdAt: number;
34
+ /** Unix timestamp when last updated */
35
+ updatedAt: number;
36
+ /** UI messages array from ChatApp */
37
+ messages: ChatMessage[];
38
+ /** API format messages for context */
39
+ conversationHistory: AnthropicMessage[];
40
+ }
41
+ /**
42
+ * Index file structure containing metadata for all conversations.
43
+ */
44
+ export interface ConversationsIndex {
45
+ /** Schema version for future migrations */
46
+ version: number;
47
+ /** Array of conversation metadata, sorted by updatedAt desc */
48
+ conversations: ConversationMeta[];
49
+ }
50
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/conversations/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,sCAAsC;IACtC,mBAAmB,EAAE,gBAAgB,EAAE,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Types for conversation persistence.
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/conversations/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
package/dist/index.js CHANGED
@@ -10,6 +10,7 @@ import { runAssistant } from './assistant.js';
10
10
  import { Colors, color } from './utils.js';
11
11
  import { isAuthenticated, loadCredentials, getSelectedCloudProvider, } from './auth.js';
12
12
  import { ChatApp } from './components/ChatApp.js';
13
+ import { setupTerminalTitleCleanup, resetTerminalTitle } from './terminalTitle.js';
13
14
  // Debug logging to file
14
15
  import * as fs from 'fs';
15
16
  import * as path from 'path';
@@ -287,6 +288,9 @@ function createClient(settings) {
287
288
  * Run in interactive conversation mode using the persistent ChatApp.
288
289
  */
289
290
  async function interactiveMode(settings) {
291
+ // Initialize terminal title management
292
+ setupTerminalTitleCleanup();
293
+ resetTerminalTitle(); // Set initial "Orca" title
290
294
  console.log(color('\nOrca Deployment Assistant', Colors.bold));
291
295
  console.log(color('='.repeat(40), Colors.dim));
292
296
  // Show authentication status
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Terminal title management.
3
+ * Sets the terminal tab/window title using OSC escape sequences.
4
+ */
5
+ /**
6
+ * Set the terminal title.
7
+ * Uses OSC 0 escape sequence (sets both tab and window title).
8
+ */
9
+ export declare function setTerminalTitle(title: string): void;
10
+ /**
11
+ * Set title with app prefix.
12
+ * e.g., "Orca - My Conversation Title"
13
+ */
14
+ export declare function setConversationTitle(conversationTitle: string): void;
15
+ /**
16
+ * Reset to default app title.
17
+ */
18
+ export declare function resetTerminalTitle(): void;
19
+ /**
20
+ * Clear terminal title (restore terminal default).
21
+ */
22
+ export declare function clearTerminalTitle(): void;
23
+ /**
24
+ * Setup cleanup handlers to restore title on exit.
25
+ * Call this once at app startup.
26
+ */
27
+ export declare function setupTerminalTitleCleanup(): void;
28
+ //# sourceMappingURL=terminalTitle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminalTitle.d.ts","sourceRoot":"","sources":["../src/terminalTitle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAOpD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAEpE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAOzC;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAYhD"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Terminal title management.
3
+ * Sets the terminal tab/window title using OSC escape sequences.
4
+ */
5
+ const APP_NAME = 'Orca';
6
+ /**
7
+ * Check if terminal supports title changes.
8
+ */
9
+ function isSupported() {
10
+ return (process.stdout.isTTY === true &&
11
+ process.env.TERM !== 'dumb' &&
12
+ !process.env.NO_COLORS);
13
+ }
14
+ /**
15
+ * Set the terminal title.
16
+ * Uses OSC 0 escape sequence (sets both tab and window title).
17
+ */
18
+ export function setTerminalTitle(title) {
19
+ if (!isSupported())
20
+ return;
21
+ try {
22
+ process.stdout.write(`\x1b]0;${title}\x07`);
23
+ }
24
+ catch {
25
+ // Silent fail - title is not critical
26
+ }
27
+ }
28
+ /**
29
+ * Set title with app prefix.
30
+ * e.g., "Orca - My Conversation Title"
31
+ */
32
+ export function setConversationTitle(conversationTitle) {
33
+ setTerminalTitle(`${APP_NAME} - ${conversationTitle}`);
34
+ }
35
+ /**
36
+ * Reset to default app title.
37
+ */
38
+ export function resetTerminalTitle() {
39
+ setTerminalTitle(APP_NAME);
40
+ }
41
+ /**
42
+ * Clear terminal title (restore terminal default).
43
+ */
44
+ export function clearTerminalTitle() {
45
+ if (!isSupported())
46
+ return;
47
+ try {
48
+ process.stdout.write(`\x1b]0;\x07`);
49
+ }
50
+ catch {
51
+ // Silent fail
52
+ }
53
+ }
54
+ /**
55
+ * Setup cleanup handlers to restore title on exit.
56
+ * Call this once at app startup.
57
+ */
58
+ export function setupTerminalTitleCleanup() {
59
+ const cleanup = () => clearTerminalTitle();
60
+ process.on('exit', cleanup);
61
+ process.on('SIGINT', () => {
62
+ cleanup();
63
+ process.exit(0);
64
+ });
65
+ process.on('SIGTERM', () => {
66
+ cleanup();
67
+ process.exit(0);
68
+ });
69
+ }
70
+ //# sourceMappingURL=terminalTitle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminalTitle.js","sourceRoot":"","sources":["../src/terminalTitle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,QAAQ,GAAG,MAAM,CAAC;AAExB;;GAEG;AACH,SAAS,WAAW;IAClB,OAAO,CACL,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;QAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM;QAC3B,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CACvB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,IAAI,CAAC,WAAW,EAAE;QAAE,OAAO;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,iBAAyB;IAC5D,gBAAgB,CAAC,GAAG,QAAQ,MAAM,iBAAiB,EAAE,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,IAAI,CAAC,WAAW,EAAE;QAAE,OAAO;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,cAAc;IAChB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB;IACvC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC;IAE3C,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}