@genspark/cli 1.0.4 → 1.0.5

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,8 +1,50 @@
1
- # Genspark CLI (gsk)
2
-
3
- Command-line interface for [Genspark](https://www.genspark.ai) AI services. Provides web search, content crawling, image/video/audio generation, file management, and more.
4
-
5
- Results go to stdout as JSON, progress/debug info goes to stderrideal for integration with AI agents and automation pipelines.
1
+ # Genspark CLI (`gsk`)
2
+
3
+ **One CLI. Every AI capability.** Search, generate, analyze, communicate all from your terminal.
4
+
5
+ `gsk` is the command-line interface for the [Genspark](https://www.genspark.ai) AI platform. It unifies **30+ AI tools** behind a single binary: web search, image/video/audio generation with 40+ models, document analysis, media transcription, cloud file management, email, calendar, AI phone calls, stock data, and autonomous AI agents all with clean JSON output for seamless integration with AI coding assistants, automation pipelines, and scripts.
6
+
7
+ ### Capability Map
8
+
9
+ | Category | What You Get |
10
+ |----------|-------------|
11
+ | 🔍 **Search** | Web search, image search |
12
+ | 📄 **Documents** | Crawl pages, summarize PDFs/docs |
13
+ | 🎨 **Images** | 16 models: GPT Image, Gemini, Flux 2, Imagen 4, Recraft, Ideogram, Seedream ... |
14
+ | 🎬 **Videos** | 14 models: Kling V3, Veo 3.1, Sora 2, Hailuo, Wan, Runway, PixVerse, Seedance ... |
15
+ | 🎵 **Audio** | 14 models: Gemini TTS, ElevenLabs, MiniMax, Mureka, CassetteAI, Lyria 2 ... |
16
+ | 🧠 **Analysis** | Image/video/audio understanding, OCR, video style replication |
17
+ | 📝 **Transcribe** | Whisper, Gemini, ElevenLabs Scribe |
18
+ | ☁️ **AI Drive** | Cloud file storage, download, compress |
19
+ | 📧 **Email** | Gmail & Outlook: read, search, send |
20
+ | 📅 **Calendar** | Google & Outlook: list, create events |
21
+ | 📞 **Phone** | AI-powered phone calls to businesses |
22
+ | 📈 **Stocks** | Real-time stock prices |
23
+ | 🤖 **Agents** | Podcasts, docs, slides, deep research, websites, batch media generation |
24
+ | 🔊 **Voice** | Voice cloning, voice changer |
25
+
26
+ ## Table of Contents
27
+
28
+ - [Installation](#installation)
29
+ - [Quick Start](#quick-start)
30
+ - [Authentication](#authentication)
31
+ - [Commands](#commands)
32
+ - [Search & Crawl](#search--crawl)
33
+ - [Image Generation](#image-generation)
34
+ - [Video Generation](#video-generation)
35
+ - [Audio Generation](#audio-generation)
36
+ - [Media Analysis & Transcription](#media-analysis--transcription)
37
+ - [AI Drive (Cloud Storage)](#ai-drive-cloud-storage)
38
+ - [AI Agents & Tasks](#ai-agents--tasks)
39
+ - [Email](#email)
40
+ - [Calendar](#calendar)
41
+ - [AI Phone Calls](#ai-phone-calls)
42
+ - [Stock Prices](#stock-prices)
43
+ - [Utilities](#utilities)
44
+ - [Available Models](#available-models)
45
+ - [Configuration](#configuration)
46
+ - [Output Conventions](#output-conventions)
47
+ - [License](#license)
6
48
 
7
49
  ## Installation
8
50
 
@@ -137,39 +179,28 @@ Search the web.
137
179
 
138
180
  ```bash
139
181
  gsk search "latest AI news"
140
- gsk search "latest AI news" -n 5
141
- gsk search "最新のAIニュース" -l ja
142
182
  ```
143
183
 
144
- | Option | Default | Description |
145
- |--------|---------|-------------|
146
- | `-n, --num <count>` | `10` | Number of results (1-50) |
147
- | `-l, --language <code>` | — | Language code (e.g., `en`, `zh`, `ja`) |
148
-
149
184
  ### crawler (alias: `crawl`)
150
185
 
151
186
  Extract content from a web page or document.
152
187
 
153
188
  ```bash
154
189
  gsk crawl "https://example.com/article"
155
- gsk crawl "https://example.com/gallery" --images
156
- gsk crawl "https://example.com/page" --no-text --images
157
190
  ```
158
191
 
159
- | Option | Default | Description |
160
- |--------|---------|-------------|
161
- | `--no-text` | extract text | Skip text content extraction |
162
- | `-i, --images` | `false` | Include image URLs in response |
163
-
164
192
  ### summarize_large_document (alias: `summarize`)
165
193
 
166
194
  Analyze a document and answer questions about it.
167
195
 
168
196
  ```bash
169
- gsk summarize "https://example.com/report.pdf" "What are the key findings?"
197
+ gsk summarize "https://example.com/report.pdf" --question "What are the key findings?"
170
198
  ```
171
199
 
172
- Arguments: `<url>` `<question>`
200
+ | Option | Description |
201
+ |--------|-------------|
202
+ | `<url>` | Document URL (**required**, positional) |
203
+ | `--question <text>` | Question about the document |
173
204
 
174
205
  ### image_search (alias: `img-search`)
175
206
 
@@ -332,9 +363,15 @@ gsk drive move -p "/old-path/file.txt" --target_path "/new-path/file.txt"
332
363
  gsk drive download_video --video_url "https://example.com/video.mp4" --target_folder "/videos"
333
364
  gsk drive download_file --file_url "https://example.com/doc.pdf" --target_folder "/docs"
334
365
 
335
- # Upload content to AI-Drive
366
+ # Upload inline text content to AI-Drive
336
367
  gsk drive upload --file_content "Hello World" --upload_path "/notes/hello.txt"
337
368
 
369
+ # Upload a local file directly to AI-Drive (streaming, supports 100MB+ files)
370
+ gsk drive upload --local_file ./report.pdf --upload_path /docs/report.pdf
371
+ gsk drive upload --local_file ./video.mp4 --upload_path /videos/demo.mp4
372
+ gsk drive upload --local_file ./photo.png # upload_path defaults to /photo.png
373
+ gsk drive upload --local_file ./doc.pdf --upload_path /docs/doc.pdf --override # overwrite existing
374
+
338
375
  # Get readable URL for a file
339
376
  gsk drive get_readable_url -p "/documents/report.pdf"
340
377
 
@@ -354,8 +391,10 @@ gsk drive decompress -p "/archive.zip"
354
391
  | `--audio_url <url>` | — | Audio URL for download_audio action |
355
392
  | `--file_url <url>` | — | File URL for download_file action |
356
393
  | `--file_name <name>` | — | Custom file name for downloads |
357
- | `--file_content <text>` | — | Content to upload |
358
- | `--upload_path <path>` | — | Destination path for upload |
394
+ | `--file_content <text>` | — | Inline text content to upload |
395
+ | `--local_file <path>` | — | Local file path to upload directly to AI-Drive (streaming, no size limit) |
396
+ | `--upload_path <path>` | — | Destination path for upload (defaults to `/<filename>` for `--local_file`) |
397
+ | `--override` | `false` | Overwrite an existing file at the destination path |
359
398
 
360
399
  ### create_task (alias: `task`)
361
400
 
@@ -392,6 +431,189 @@ gsk stock AAPL
392
431
  gsk stock MSFT
393
432
  ```
394
433
 
434
+ ### email
435
+
436
+ Read and send emails from your connected Gmail or Outlook account.
437
+
438
+ > **Requirements:** Connect Gmail or Outlook in [Genspark Account Settings → Integrations](https://www.genspark.ai/settings/integrations).
439
+
440
+ #### email list
441
+
442
+ List emails from a folder.
443
+
444
+ ```bash
445
+ # List inbox (default)
446
+ gsk email list
447
+
448
+ # List sent folder, limit to 5 emails
449
+ gsk email list sent -n 5
450
+
451
+ # List only unread emails
452
+ gsk email list --unread_only
453
+
454
+ # List emails after a specific date
455
+ gsk email list --after_date 2026-03-01
456
+
457
+ # Use a specific account (when multiple accounts are connected)
458
+ gsk email list -a user@gmail.com
459
+ ```
460
+
461
+ | Option | Default | Description |
462
+ |--------|---------|-------------|
463
+ | `[folder]` | `inbox` | Folder: `inbox`, `sent`, `drafts`, `trash`, `spam`, `archive`, or a custom label |
464
+ | `-n, --limit <n>` | `20` | Maximum number of emails to return |
465
+ | `--unread_only` | `false` | Return only unread emails |
466
+ | `--after_date <YYYY-MM-DD>` | — | Return emails after this date |
467
+ | `--before_date <YYYY-MM-DD>` | — | Return emails before this date |
468
+ | `-a, --from_account <email>` | — | Account email address (for multi-account) |
469
+
470
+ #### email read
471
+
472
+ Read a specific email by ID.
473
+
474
+ ```bash
475
+ # Read a specific email (get ID from email list output)
476
+ gsk email read 19cbfecd7fb14d46
477
+
478
+ # Ask a specific question about the email
479
+ gsk email read 19cbfecd7fb14d46 "What action is required?"
480
+
481
+ # Specify account for multi-account setups
482
+ gsk email read 19cbfecd7fb14d46 -a user@gmail.com
483
+ ```
484
+
485
+ | Option | Default | Description |
486
+ |--------|---------|-------------|
487
+ | `<id>` | — | Email ID from `email list` or `email search` (**required**) |
488
+ | `-a, --from_account <email>` | — | Account email address (for multi-account) |
489
+
490
+ #### email search
491
+
492
+ Search emails using a query string.
493
+
494
+ ```bash
495
+ # Search by subject
496
+ gsk email search "meeting agenda"
497
+
498
+ # Gmail query syntax
499
+ gsk email search "from:boss@company.com subject:budget"
500
+
501
+ # Search with date range
502
+ gsk email search "invoice" --after_date 2026-01-01 --before_date 2026-03-01
503
+
504
+ # Limit results
505
+ gsk email search "quarterly report" -n 5
506
+ ```
507
+
508
+ | Option | Default | Description |
509
+ |--------|---------|-------------|
510
+ | `<query>` | — | Search query (Gmail GQL or Outlook KQL) (**required**) |
511
+ | `-n, --limit <n>` | `20` | Maximum number of results |
512
+ | `--after_date <YYYY-MM-DD>` | — | Return emails after this date |
513
+ | `--before_date <YYYY-MM-DD>` | — | Return emails before this date |
514
+ | `-a, --from_account <email>` | — | Account email address (for multi-account) |
515
+
516
+ #### email send
517
+
518
+ Send a new email.
519
+
520
+ ```bash
521
+ # Send a plain text email
522
+ gsk email send --to recipient@example.com --subject "Hello" --body "Hi there!"
523
+
524
+ # Send to multiple recipients
525
+ gsk email send --to "alice@example.com,bob@example.com" --subject "Team Update" --body "..."
526
+
527
+ # Send HTML email
528
+ gsk email send --to user@example.com --subject "Newsletter" --body "<h1>Title</h1><p>...</p>" --content_type text/html
529
+
530
+ # Send with CC and BCC
531
+ gsk email send --to recipient@example.com --subject "Meeting" --body "..." --cc manager@company.com --bcc archive@company.com
532
+
533
+ # Send from a specific account
534
+ gsk email send --to user@example.com --subject "Hi" --body "..." -a sender@gmail.com
535
+ ```
536
+
537
+ | Option | Default | Description |
538
+ |--------|---------|-------------|
539
+ | `--to <addresses>` | — | Recipient(s), comma-separated (**required**) |
540
+ | `--subject <text>` | — | Email subject (**required**) |
541
+ | `--body <text>` | — | Email body (**required**) |
542
+ | `--cc <addresses>` | — | CC recipient(s), comma-separated |
543
+ | `--bcc <addresses>` | — | BCC recipient(s), comma-separated |
544
+ | `--content_type <type>` | `text/plain` | Body content type: `text/plain` or `text/html` |
545
+ | `-a, --from_account <email>` | — | Account to send from (for multi-account) |
546
+
547
+ ### calendar
548
+
549
+ List and create calendar events from your connected Google Calendar or Outlook account.
550
+
551
+ > **Requirements:** Connect Google Calendar or Outlook in [Genspark Account Settings → Integrations](https://www.genspark.ai/settings/integrations).
552
+
553
+ #### calendar list
554
+
555
+ List upcoming calendar events.
556
+
557
+ ```bash
558
+ # List events in the next 7 days (default)
559
+ gsk calendar list
560
+
561
+ # List events in a specific time range
562
+ gsk calendar list --time_min 2026-03-10T00:00:00Z --time_max 2026-03-15T23:59:59Z
563
+
564
+ # Search for events by keyword
565
+ gsk calendar list --filter_query "standup"
566
+
567
+ # Use a specific calendar account
568
+ gsk calendar list -a user@gmail.com
569
+ ```
570
+
571
+ | Option | Default | Description |
572
+ |--------|---------|-------------|
573
+ | `--time_min <ISO8601>` | now | Start of time range (e.g., `2026-03-10T00:00:00Z`) |
574
+ | `--time_max <ISO8601>` | +7 days | End of time range |
575
+ | `--filter_query <text>` | — | Filter events by title/subject keyword |
576
+ | `-a, --from_account <email>` | — | Calendar account email (for multi-account) |
577
+
578
+ #### calendar create
579
+
580
+ Create a new calendar event.
581
+
582
+ ```bash
583
+ # Create a simple event
584
+ gsk calendar create --summary "Team Meeting" --start_time "2026-03-10T14:00:00-08:00" --end_time "2026-03-10T15:00:00-08:00"
585
+
586
+ # Create an event with details
587
+ gsk calendar create \
588
+ --summary "Q1 Planning" \
589
+ --start_time "2026-03-15T09:00:00-08:00" \
590
+ --end_time "2026-03-15T11:00:00-08:00" \
591
+ --description "Quarterly planning session" \
592
+ --location "Conference Room A" \
593
+ --time_zone "America/Los_Angeles"
594
+
595
+ # Create an event with attendees (sends invitations)
596
+ gsk calendar create \
597
+ --summary "Interview" \
598
+ --start_time "2026-03-12T10:00:00-08:00" \
599
+ --end_time "2026-03-12T11:00:00-08:00" \
600
+ --attendees candidate@example.com interviewer@company.com
601
+
602
+ # Create on a specific calendar account
603
+ gsk calendar create --summary "Personal Event" --start_time "..." --end_time "..." -a user@gmail.com
604
+ ```
605
+
606
+ | Option | Default | Description |
607
+ |--------|---------|-------------|
608
+ | `--summary <title>` | — | Event title (**required**) |
609
+ | `--start_time <ISO8601>` | — | Start time with timezone offset (**required**) |
610
+ | `--end_time <ISO8601>` | — | End time with timezone offset (**required**) |
611
+ | `--description <text>` | — | Event description |
612
+ | `--location <text>` | — | Event location |
613
+ | `--attendees <emails...>` | — | Attendee email address(es) (sends invitations) |
614
+ | `--time_zone <tz>` | `UTC` | Timezone name (e.g., `America/Los_Angeles`) |
615
+ | `-a, --from_account <email>` | — | Calendar account email (for multi-account) |
616
+
395
617
  ## Local File Handling
396
618
 
397
619
  Most commands that accept URLs also accept local file paths. The CLI automatically uploads local files before passing them to the API:
package/dist/client.d.ts CHANGED
@@ -43,5 +43,14 @@ export declare class ApiClient {
43
43
  * Get OpenCode configuration JSON
44
44
  */
45
45
  getOpencodeConfig(model?: string): Promise<Record<string, unknown>>;
46
+ /**
47
+ * Streaming NDJSON request that processes lines as they arrive.
48
+ * Calls onDebug for each debug/heartbeat message and returns the final result.
49
+ * Suitable for long-running operations like phone calls.
50
+ */
51
+ requestStreaming<T>(endpoint: string, body: unknown, onDebug: (msg: {
52
+ message: string;
53
+ [key: string]: unknown;
54
+ }) => void): Promise<ApiResponse<T>>;
46
55
  }
47
56
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,YAAY,CAAA;AAEnB;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,CAAC,EAC5C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,KAAK,GAAG,MAAc,EAC9B,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,CAAC,CAAC,CAoBZ;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAQ;gBAEd,OAAO,EAAE,aAAa;YAQpB,OAAO;IA+JrB;;OAEG;YACW,WAAW;IAoDzB;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAS5C;;OAEG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,WAAW,CAAC;IAIvB;;OAEG;IACG,YAAY,CAChB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAQ9C;;OAEG;IACG,cAAc,CAClB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAI7C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIhC;;OAEG;IACG,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAI1E"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,YAAY,CAAA;AAEnB;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,CAAC,EAC5C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,KAAK,GAAG,MAAc,EAC9B,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,CAAC,CAAC,CAoBZ;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAQ;gBAEd,OAAO,EAAE,aAAa;YAQpB,OAAO;IA+JrB;;OAEG;YACW,WAAW;IAoDzB;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAS5C;;OAEG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,WAAW,CAAC;IAIvB;;OAEG;IACG,YAAY,CAChB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAQ9C;;OAEG;IACG,cAAc,CAClB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAI7C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIhC;;OAEG;IACG,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAKzE;;;;OAIG;IACG,gBAAgB,CAAC,CAAC,EACtB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAAK,IAAI,GAClE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAmG3B"}
package/dist/client.js CHANGED
@@ -253,5 +253,102 @@ export class ApiClient {
253
253
  const query = model ? `?model=${encodeURIComponent(model)}` : '';
254
254
  return this.requestJson(`/opencode-config${query}`);
255
255
  }
256
+ /**
257
+ * Streaming NDJSON request that processes lines as they arrive.
258
+ * Calls onDebug for each debug/heartbeat message and returns the final result.
259
+ * Suitable for long-running operations like phone calls.
260
+ */
261
+ async requestStreaming(endpoint, body, onDebug) {
262
+ const url = `${this.baseUrl}/api/tool_cli${endpoint}`;
263
+ debug(`Streaming request: POST ${url}`);
264
+ const headers = {
265
+ 'Content-Type': 'application/json',
266
+ };
267
+ if (this.apiKey)
268
+ headers['X-Api-Key'] = this.apiKey;
269
+ if (this.projectId)
270
+ headers['X-Project-ID'] = this.projectId;
271
+ if (this.debugMode)
272
+ headers['X-Debug'] = 'true';
273
+ // Use a long timeout for phone calls (10 minutes)
274
+ const controller = new AbortController();
275
+ const timeoutId = setTimeout(() => controller.abort(), 600000);
276
+ try {
277
+ info(`Calling ${endpoint}...`);
278
+ const response = await fetch(url, {
279
+ method: 'POST',
280
+ headers,
281
+ body: JSON.stringify(body),
282
+ signal: controller.signal,
283
+ });
284
+ // Do NOT clearTimeout here — the timeout must remain active during
285
+ // streaming so a stalled mid-stream connection is still aborted.
286
+ if (!response.ok) {
287
+ clearTimeout(timeoutId);
288
+ const errorText = await response.text();
289
+ return { status: 'error', message: `HTTP ${response.status}: ${errorText}`, data: null };
290
+ }
291
+ if (!response.body) {
292
+ clearTimeout(timeoutId);
293
+ return { status: 'error', message: 'No response body', data: null };
294
+ }
295
+ const SUPPORTED_VERSION = 1;
296
+ let finalResult = null;
297
+ const reader = response.body.getReader();
298
+ const decoder = new TextDecoder();
299
+ let buffer = '';
300
+ while (true) {
301
+ const { done, value } = await reader.read();
302
+ if (done)
303
+ break;
304
+ buffer += decoder.decode(value, { stream: true });
305
+ // Process complete lines
306
+ let newlineIdx;
307
+ while ((newlineIdx = buffer.indexOf('\n')) !== -1) {
308
+ const line = buffer.substring(0, newlineIdx).trim();
309
+ buffer = buffer.substring(newlineIdx + 1);
310
+ if (!line || !line.startsWith('{'))
311
+ continue;
312
+ try {
313
+ const parsed = JSON.parse(line);
314
+ const ver = parsed.version ?? 1;
315
+ if (ver > SUPPORTED_VERSION)
316
+ continue;
317
+ if (parsed.debug === true) {
318
+ onDebug(parsed);
319
+ }
320
+ else {
321
+ finalResult = parsed;
322
+ }
323
+ }
324
+ catch {
325
+ debug(`Skipping malformed JSON line: ${line.substring(0, 100)}`);
326
+ }
327
+ }
328
+ }
329
+ // Process any remaining data in buffer
330
+ const remaining = buffer.trim();
331
+ if (remaining && remaining.startsWith('{')) {
332
+ try {
333
+ const parsed = JSON.parse(remaining);
334
+ if (parsed.debug !== true) {
335
+ finalResult = parsed;
336
+ }
337
+ }
338
+ catch {
339
+ // ignore
340
+ }
341
+ }
342
+ clearTimeout(timeoutId);
343
+ return finalResult || { status: 'error', message: 'No final result in stream', data: null };
344
+ }
345
+ catch (err) {
346
+ clearTimeout(timeoutId);
347
+ if (err instanceof Error && err.name === 'AbortError') {
348
+ return { status: 'error', message: 'Request timeout (phone call took too long)', data: null };
349
+ }
350
+ return { status: 'error', message: err.message, data: null };
351
+ }
352
+ }
256
353
  }
257
354
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -20,6 +20,8 @@
20
20
  */
21
21
  import { Command } from 'commander';
22
22
  import * as fs from 'fs';
23
+ import * as http from 'http';
24
+ import * as https from 'https';
23
25
  import * as pathModule from 'path';
24
26
  import { spawn } from 'child_process';
25
27
  import { ApiClient, unauthenticatedRequest } from './client.js';
@@ -118,12 +120,106 @@ const CONTENT_TYPE_MAP = {
118
120
  '.wav': 'audio/wav',
119
121
  '.webm': 'video/webm',
120
122
  };
123
+ /**
124
+ * Stream a local file to a URL using Node.js http/https.request +
125
+ * fs.createReadStream so the file is never fully buffered in memory.
126
+ * Suitable for files of any size.
127
+ *
128
+ * Reports upload progress to stderr for files larger than PROGRESS_THRESHOLD.
129
+ * Returns the response body as a string (empty for typical blob-storage PUTs).
130
+ */
131
+ async function streamFileUpload(filePath, uploadUrl, headers, fileSize, method = 'PUT') {
132
+ const PROGRESS_THRESHOLD = 5 * 1024 * 1024; // 5 MB
133
+ const showProgress = fileSize > PROGRESS_THRESHOLD;
134
+ return new Promise((resolve, reject) => {
135
+ const parsedUrl = new URL(uploadUrl);
136
+ const isHttps = parsedUrl.protocol === 'https:';
137
+ const transport = isHttps ? https : http;
138
+ // Declare before transport.request so closures below don't reference it
139
+ // in the temporal dead zone.
140
+ let progressTimer = null;
141
+ const req = transport.request({
142
+ hostname: parsedUrl.hostname,
143
+ port: parsedUrl.port
144
+ ? parseInt(parsedUrl.port, 10)
145
+ : isHttps
146
+ ? 443
147
+ : 80,
148
+ path: parsedUrl.pathname + parsedUrl.search,
149
+ method,
150
+ headers: { ...headers, 'Content-Length': String(fileSize) },
151
+ }, res => {
152
+ // Always collect the full response body before resolving/rejecting
153
+ let body = '';
154
+ res.on('data', (chunk) => {
155
+ body += chunk.toString();
156
+ });
157
+ res.on('end', () => {
158
+ if (progressTimer)
159
+ clearInterval(progressTimer);
160
+ if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
161
+ resolve(body);
162
+ }
163
+ else {
164
+ // Stop the file stream and close the request on non-2xx so we
165
+ // don't keep piping data into a request the server has rejected.
166
+ fileStream.destroy();
167
+ req.destroy();
168
+ reject(new Error(`Upload failed: HTTP ${res.statusCode}${body ? ': ' + body.substring(0, 200) : ''}`));
169
+ }
170
+ });
171
+ res.on('error', (err) => {
172
+ if (progressTimer)
173
+ clearInterval(progressTimer);
174
+ reject(err);
175
+ });
176
+ });
177
+ const fileStream = fs.createReadStream(filePath);
178
+ req.on('error', (err) => {
179
+ if (progressTimer)
180
+ clearInterval(progressTimer);
181
+ fileStream.destroy(); // prevent the readable from continuing to push data
182
+ reject(err);
183
+ });
184
+ let uploadedBytes = 0;
185
+ if (showProgress) {
186
+ const totalMB = (fileSize / (1024 * 1024)).toFixed(1);
187
+ progressTimer = setInterval(() => {
188
+ const pct = Math.floor((uploadedBytes / fileSize) * 100);
189
+ const doneMB = (uploadedBytes / (1024 * 1024)).toFixed(1);
190
+ process.stderr.write(`\r[INFO] Uploading... ${pct}% ${doneMB} / ${totalMB} MB `);
191
+ }, 1000);
192
+ }
193
+ fileStream.on('data', (chunk) => {
194
+ uploadedBytes +=
195
+ typeof chunk === 'string' ? Buffer.byteLength(chunk) : chunk.length;
196
+ });
197
+ fileStream.on('end', () => {
198
+ if (progressTimer) {
199
+ clearInterval(progressTimer);
200
+ process.stderr.write('\r\x1b[K'); // clear the progress line
201
+ }
202
+ });
203
+ fileStream.on('error', (err) => {
204
+ if (progressTimer)
205
+ clearInterval(progressTimer);
206
+ req.destroy(); // close the HTTP request so the TCP connection is not leaked
207
+ reject(err);
208
+ });
209
+ fileStream.pipe(req);
210
+ });
211
+ }
212
+ function formatFileSize(bytes) {
213
+ if (bytes >= 1024 * 1024)
214
+ return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
215
+ return `${(bytes / 1024).toFixed(1)} KB`;
216
+ }
121
217
  async function uploadLocalFile(filePath, client) {
122
218
  const fileName = pathModule.basename(filePath);
123
219
  const ext = pathModule.extname(filePath).toLowerCase();
124
220
  const contentType = CONTENT_TYPE_MAP[ext] || 'application/octet-stream';
125
- const stats = fs.statSync(filePath);
126
- info(`Uploading ${fileName} (${(stats.size / 1024).toFixed(1)} KB, ${contentType})...`);
221
+ const fileSize = fs.statSync(filePath).size;
222
+ info(`Uploading ${fileName} (${formatFileSize(fileSize)}, ${contentType})...`);
127
223
  const globalOpts = getGlobalOptions();
128
224
  const uploadUrlResult = await client.getUploadUrl({
129
225
  content_type: contentType,
@@ -135,17 +231,41 @@ async function uploadLocalFile(filePath, client) {
135
231
  }
136
232
  const { upload_url, file_wrapper_url } = uploadUrlResult.data;
137
233
  debug(`Upload URL: ${upload_url.substring(0, 80)}...`);
138
- const fileBuffer = fs.readFileSync(filePath);
139
- const uploadResponse = await fetch(upload_url, {
140
- method: 'PUT',
141
- headers: { 'Content-Type': contentType, 'x-ms-blob-type': 'BlockBlob' },
142
- body: fileBuffer,
143
- });
144
- if (!uploadResponse.ok)
145
- throw new Error(`Upload failed: HTTP ${uploadResponse.status}`);
234
+ // Stream the file directly to Azure Blob Storage — no full-file buffering
235
+ await streamFileUpload(filePath, upload_url, { 'Content-Type': contentType, 'x-ms-blob-type': 'BlockBlob' }, fileSize);
146
236
  info(`Uploaded → ${file_wrapper_url}`);
147
237
  return file_wrapper_url;
148
238
  }
239
+ /**
240
+ * Upload a local file directly to AI Drive using the dedicated tool_cli
241
+ * endpoint (POST /api/tool_cli/aidrive/upload). The file is streamed without
242
+ * buffering the whole content in memory, so large files (100 MB+) work fine.
243
+ *
244
+ * This avoids the roundabout blob-upload + download_file two-step approach.
245
+ */
246
+ async function uploadToAiDrive(filePath, uploadPath, override = false) {
247
+ const fileName = pathModule.basename(filePath);
248
+ const ext = pathModule.extname(filePath).toLowerCase();
249
+ const contentType = CONTENT_TYPE_MAP[ext] || 'application/octet-stream';
250
+ const fileSize = fs.statSync(filePath).size;
251
+ info(`Uploading ${fileName} (${formatFileSize(fileSize)}, ${contentType}) directly to AI Drive...`);
252
+ const globalOpts = getGlobalOptions();
253
+ const baseUrl = globalOpts.baseUrl.replace(/\/$/, '');
254
+ const uploadUrl = `${baseUrl}/api/tool_cli/aidrive/upload?upload_path=${encodeURIComponent(uploadPath)}${override ? '&override=true' : ''}`;
255
+ const headers = { 'Content-Type': contentType };
256
+ if (globalOpts.apiKey)
257
+ headers['X-Api-Key'] = globalOpts.apiKey;
258
+ if (globalOpts.projectId)
259
+ headers['X-Project-ID'] = globalOpts.projectId;
260
+ debug(`AI Drive upload URL: ${uploadUrl}`);
261
+ const responseBody = await streamFileUpload(filePath, uploadUrl, headers, fileSize, 'POST');
262
+ try {
263
+ return JSON.parse(responseBody);
264
+ }
265
+ catch {
266
+ throw new Error(`Unexpected response from AI Drive upload: ${responseBody.substring(0, 200)}`);
267
+ }
268
+ }
149
269
  async function downloadToFile(wrapperUrl, savePath, client) {
150
270
  info(`Downloading to ${savePath}...`);
151
271
  const result = await client.getDownloadUrl({ file_wrapper_url: wrapperUrl });
@@ -201,6 +321,9 @@ async function resolveLocalFiles(args, client) {
201
321
  }
202
322
  // ============================================
203
323
  // Dynamic tool command registration
324
+ // Map of group name -> parent Command for hierarchical subcommands
325
+ // (e.g., "email" -> Command for `gsk email [subcommand]`)
326
+ const _groupCommands = new Map();
204
327
  // ============================================
205
328
  /**
206
329
  * Extract a file URL from nested result data using dot-separated path keys.
@@ -225,7 +348,27 @@ function extractFileUrl(data, keys) {
225
348
  * Register a dynamic tool command from a server-provided schema
226
349
  */
227
350
  function registerToolCommand(parentProgram, tool, clientFactory) {
228
- const cmd = parentProgram.command(tool.name).description(tool.description);
351
+ // If the tool has a group, register as a subcommand under the group parent
352
+ // e.g., tool.name="email_list" with cli.group="email" creates `gsk email list`
353
+ let targetProgram = parentProgram;
354
+ let cmdName = tool.name;
355
+ if (tool.cli.group) {
356
+ const groupName = tool.cli.group;
357
+ if (!_groupCommands.has(groupName)) {
358
+ const groupCmd = parentProgram
359
+ .command(groupName)
360
+ .description(`Commands for ${groupName}`);
361
+ _groupCommands.set(groupName, groupCmd);
362
+ }
363
+ targetProgram = _groupCommands.get(groupName);
364
+ // Derive subcommand name: strip group prefix from tool name
365
+ // e.g., "email_list" with group "email" -> "list"
366
+ const prefix = groupName + '_';
367
+ cmdName = tool.name.startsWith(prefix)
368
+ ? tool.name.slice(prefix.length)
369
+ : tool.name;
370
+ }
371
+ const cmd = targetProgram.command(cmdName).description(tool.description);
229
372
  // Register aliases
230
373
  for (const alias of tool.cli.aliases) {
231
374
  cmd.alias(alias);
@@ -275,6 +418,11 @@ function registerToolCommand(parentProgram, tool, clientFactory) {
275
418
  if (outputFileKeys.length > 0) {
276
419
  cmd.option('-o, --output-file <path>', 'Download the generated file to a local path');
277
420
  }
421
+ // For the aidrive tool, add client-side options used with --local_file upload
422
+ if (tool.name === 'aidrive') {
423
+ cmd.option('--local_file <path>', 'Local file path to upload to AI Drive (supports files >5 MB; alternative to --file_content)');
424
+ cmd.option('--override', 'Overwrite an existing file at the destination path (used with --local_file)', false);
425
+ }
278
426
  // Generic action handler
279
427
  cmd.action(async (primaryArgValue, opts) => {
280
428
  // Commander passes opts as second arg when there's an argument,
@@ -307,6 +455,38 @@ function registerToolCommand(parentProgram, tool, clientFactory) {
307
455
  }
308
456
  }
309
457
  }
458
+ // aidrive: strip client-side-only options before sending to API.
459
+ // --local_file and --override are only meaningful to the CLI and must
460
+ // never be forwarded to the server (other aidrive actions like ls,
461
+ // mkdir, move don't know about them).
462
+ if (tool.name === 'aidrive') {
463
+ delete args.local_file;
464
+ delete args.override;
465
+ }
466
+ // aidrive: handle --local_file for the upload action.
467
+ // Stream the file directly to AI Drive via the dedicated tool_cli
468
+ // endpoint (POST /api/tool_cli/aidrive/upload) — no blob middleman.
469
+ if (tool.name === 'aidrive' &&
470
+ primaryArgValue === 'upload' &&
471
+ opts.local_file) {
472
+ const localFilePath = opts.local_file;
473
+ const override = !!opts.override;
474
+ if (!fs.existsSync(localFilePath)) {
475
+ logError(`File not found: ${localFilePath}`);
476
+ process.exit(1);
477
+ }
478
+ // args.upload_path is safe here: args = { ...opts } at line above, and
479
+ // only local_file/override were deleted from args — upload_path is intact.
480
+ const rawUploadPath = args.upload_path ||
481
+ `/${pathModule.basename(localFilePath)}`;
482
+ const uploadPath = rawUploadPath.startsWith('/')
483
+ ? rawUploadPath
484
+ : `/${rawUploadPath}`;
485
+ // Stream directly to AI Drive — single request, no blob middleman
486
+ const result = await uploadToAiDrive(localFilePath, uploadPath, override);
487
+ output(result);
488
+ return;
489
+ }
310
490
  // Resolve local file paths to uploaded URLs
311
491
  const resolvedArgs = await resolveLocalFiles(args, client);
312
492
  const result = await client.executeTool(tool.name, resolvedArgs);
@@ -594,6 +774,116 @@ program
594
774
  }
595
775
  });
596
776
  // ============================================
777
+ // Phone Call Command
778
+ // ============================================
779
+ program
780
+ .command('call')
781
+ .description('Make an AI phone call on your behalf. Validates prerequisites, resolves contact info, and initiates the call.')
782
+ .argument('<recipient>', 'Name of the person or business to call')
783
+ .requiredOption('-c, --contact_info <value>', 'Phone number (e.g. +1-555-123-4567) or Google Maps place_id')
784
+ .option('--is_place_id', 'Treat contact_info as a Google Maps place_id (for businesses)', false)
785
+ .requiredOption('-p, --purpose <value>', "Purpose of the call (e.g. 'Check reservation availability')")
786
+ .option('--dry-run', 'Only validate and resolve contact info, do not initiate the call')
787
+ .action(async (recipient, opts) => {
788
+ try {
789
+ const client = createClient();
790
+ if (opts.dryRun) {
791
+ // Dry run: just call the phone_call tool to validate and resolve
792
+ info('Dry run: validating prerequisites and resolving contact info...');
793
+ const result = await client.executeTool('phone_call', {
794
+ recipient,
795
+ contact_info: opts.contact_info,
796
+ is_place_id: opts.is_place_id,
797
+ purpose: opts.purpose,
798
+ });
799
+ if (result.status === 'ok' && result.session_state) {
800
+ const contacts = result.session_state.local_results;
801
+ if (contacts && contacts.length > 0) {
802
+ const c = contacts[0];
803
+ info('');
804
+ info('=== Contact Resolved ===');
805
+ info(` Name: ${c.title || recipient}`);
806
+ info(` Phone: ${c.phone || '(from place_id)'}`);
807
+ if (c.address)
808
+ info(` Address: ${c.address}`);
809
+ if (c.rating)
810
+ info(` Rating: ${c.rating}`);
811
+ info(` Purpose: ${opts.purpose}`);
812
+ info('');
813
+ info('Dry run complete. Use without --dry-run to initiate the call.');
814
+ }
815
+ }
816
+ output(result);
817
+ return;
818
+ }
819
+ // Full call: use the streaming initiate endpoint
820
+ info(`Initiating AI phone call to "${recipient}"...`);
821
+ info(` Purpose: ${opts.purpose}`);
822
+ info('');
823
+ const result = await client.requestStreaming('/phone_call/initiate', {
824
+ recipient,
825
+ contact_info: opts.contact_info,
826
+ is_place_id: opts.is_place_id,
827
+ purpose: opts.purpose,
828
+ }, (msg) => {
829
+ // Display streaming status updates to stderr
830
+ const step = msg.step || '';
831
+ if (step === 'resolved') {
832
+ const contact = msg.contact;
833
+ if (contact) {
834
+ info('Contact resolved:');
835
+ info(` Name: ${contact.title || recipient}`);
836
+ info(` Phone: ${contact.phone || '(from place_id)'}`);
837
+ if (contact.address)
838
+ info(` Address: ${contact.address}`);
839
+ }
840
+ }
841
+ else if (step === 'calling') {
842
+ info(`Dialing... (project: ${msg.project_id || 'unknown'})`);
843
+ }
844
+ else if (msg.heartbeat) {
845
+ const elapsed = msg.elapsed_seconds;
846
+ const callStep = msg.call_step;
847
+ info(` Call in progress... ${elapsed ? `(${elapsed}s)` : ''}${callStep && callStep !== 'in_progress' ? ` [${callStep}]` : ''}`);
848
+ }
849
+ else if (msg.message) {
850
+ info(` ${msg.message}`);
851
+ }
852
+ });
853
+ // Display final result
854
+ const data = (result.data || {});
855
+ const callStatus = data.call_status || 'unknown';
856
+ const callSummary = data.call_summary || '';
857
+ const isFailure = result.status === 'error' ||
858
+ ['failed', 'canceled', 'busy', 'no-answer'].includes(callStatus);
859
+ info('');
860
+ info(isFailure ? '=== Call Failed ===' : '=== Call Complete ===');
861
+ info(` Recipient: ${data.recipient || recipient}`);
862
+ info(` Status: ${callStatus}`);
863
+ if (data.duration_seconds)
864
+ info(` Duration: ${data.duration_seconds}s`);
865
+ info('');
866
+ info('=== Call Summary ===');
867
+ if (callSummary) {
868
+ info(callSummary);
869
+ }
870
+ else if (isFailure) {
871
+ info(result.message && result.message !== `Phone call completed (${callStatus})`
872
+ ? result.message
873
+ : 'Call failed. The call could not be completed.');
874
+ }
875
+ else {
876
+ info('Call completed. No summary available.');
877
+ }
878
+ info('');
879
+ output(result);
880
+ }
881
+ catch (err) {
882
+ logError(err.message);
883
+ process.exit(1);
884
+ }
885
+ });
886
+ // ============================================
597
887
  // Dynamic Tool Registration & Startup
598
888
  // ============================================
599
889
  async function main() {
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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"}
package/dist/types.d.ts CHANGED
@@ -39,6 +39,7 @@ export interface ToolSchema {
39
39
  primary_arg?: string | null;
40
40
  parameter_aliases?: Record<string, string>;
41
41
  output_file_keys?: string[];
42
+ group?: string | null;
42
43
  };
43
44
  }
44
45
  export interface ToolListResponse {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAC/C;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACxB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ,CAAA;QACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACzC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KACpB,CAAA;IACD,GAAG,EAAE;QACH,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC1C,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;KAC5B,CAAA;CACF;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAGD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAGD,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAGD,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAC/C;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACxB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ,CAAA;QACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACzC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KACpB,CAAA;IACD,GAAG,EAAE;QACH,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC1C,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;QAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KACtB,CAAA;CACF;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAGD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAGD,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAGD,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@genspark/cli",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "CLI tool for Genspark Tool API - search, crawl, analyze images, generate media",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",