egaki 0.11.0 → 0.12.0

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/CHANGELOG.md CHANGED
@@ -2,6 +2,42 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## 0.12.0
6
+
7
+ 1. **New GPT Image 2.5 models** — `gpt-image-2.5-flare` (fast, everyday generation and editing) and `gpt-image-2.5-sunburst` (most capable, best editing precision and reference fidelity). Both add the new `xhigh` and `max` quality levels:
8
+
9
+ ```bash
10
+ egaki image "a ceramic vase on linen, studio light" \
11
+ -m gpt-image-2.5-sunburst --quality max -o vase.png
12
+ ```
13
+
14
+ 2. **New `grok-imagine-image-2.0` model** — $0.04 per image at low quality. `--quality` accepts `auto`, `low` and `medium`; default is `auto`. It replaces `grok-imagine-image-quality` in the model picker. xAI retires `grok-imagine-image-quality` on 2026-11-02:
15
+
16
+ ```bash
17
+ egaki image "a fox wearing armor in a misty forest" \
18
+ -m grok-imagine-image-2.0 --quality medium --resolution 2k -o fox.png
19
+ ```
20
+
21
+ 3. **New `grok-imagine-video-1.5-lite` model** — cheap text-to-video and image-to-video at 480p, 720p or 1080p (1080p is upscaled from 720p). From $0.02 per second:
22
+
23
+ ```bash
24
+ egaki video "a paper boat drifting on a rainy street" \
25
+ -m grok-imagine-video-1.5-lite --resolution 720p -o boat.mp4
26
+ ```
27
+
28
+ 4. **`grok-imagine-video-1.5` supports text-to-video, 1080p and up to 14 reference images.** It also adds the `21:9` and `5:2` aspect ratios. Reference-to-video is capped at 720p:
29
+
30
+ ```bash
31
+ egaki video "the model walks down a white runway" \
32
+ -m grok-imagine-video-1.5 \
33
+ --mode reference-to-video \
34
+ --reference-images ./model-face.jpg \
35
+ --reference-images ./outfit.jpg \
36
+ -o runway.mp4
37
+ ```
38
+
39
+ Thanks @itstamhn for #10 and #11!
40
+
5
41
  ## 0.11.0
6
42
 
7
43
  1. **Background OAuth login for agents and non-TTY shells.** `egaki login --provider chatgpt` and `egaki login --provider xai-oauth` start the browser login and return. An interactive terminal still stays attached until login finishes.
package/dist/cli/cli.js CHANGED
@@ -384,7 +384,7 @@ cli
384
384
  .describe(`Video operation mode. ${describeProviderValues('mode', [VIDEO_CATALOG])}`))
385
385
  .option('--reference-images [path]', z
386
386
  .array(z.string())
387
- .describe('Reference images for R2V generation, repeatable. xAI: 1-7 images. Seedance: 1-9 images (use @Image1 etc. in prompt)'))
387
+ .describe('Reference images for R2V generation, repeatable. xAI: 1-7 images (1-14 on grok-imagine-video-1.5). Seedance: 1-9 images (use @Image1 etc. in prompt)'))
388
388
  .option('--negative-prompt [text]', z
389
389
  .string()
390
390
  .describe('Describe what to avoid in the generated video (Fal models)'))
@@ -1223,6 +1223,8 @@ const FEATURED_IMAGE_MODELS = [
1223
1223
  'gemini-2.5-flash-image',
1224
1224
  'gemini-3.1-flash-image-preview',
1225
1225
  'nano-banana-pro-preview',
1226
+ 'gpt-image-2.5-sunburst',
1227
+ 'gpt-image-2.5-flare',
1226
1228
  'gpt-image-2',
1227
1229
  'gpt-image-1.5',
1228
1230
  'chatgpt-image-latest',
@@ -1231,7 +1233,7 @@ const FEATURED_IMAGE_MODELS = [
1231
1233
  'flux-pro-1.1-ultra',
1232
1234
  'recraft-v4',
1233
1235
  'dall-e-3',
1234
- 'grok-imagine-image-quality',
1236
+ 'grok-imagine-image-2.0',
1235
1237
  ];
1236
1238
  /**
1237
1239
  * Resolve the image model: show interactive picker in TTY, use default otherwise.
@@ -1,9 +1,9 @@
1
1
  import { ValidationError } from './models.js';
2
2
  export { ValidationError };
3
3
  /** Image model IDs from the catalog. Accepts arbitrary strings too. */
4
- export type ImageModelId = 'imagen-4.0-generate-001' | 'imagen-4.0-ultra-generate-001' | 'imagen-4.0-fast-generate-001' | 'gemini-2.0-flash-exp-image-generation' | 'gemini-2.5-flash-image' | 'gemini-3-pro-image-preview' | 'gemini-3.1-flash-image-preview' | 'vertex/imagen-4.0-generate-001' | 'vertex/imagen-4.0-ultra-generate-001' | 'vertex/imagen-4.0-fast-generate-001' | 'vertex/gemini-2.5-flash-image' | 'vertex/gemini-3-pro-image-preview' | 'vertex/gemini-3.1-flash-image-preview' | 'flux-kontext-max' | 'flux-kontext-pro' | 'flux-pro-1.0-fill' | 'flux-pro-1.1' | 'flux-pro-1.1-ultra' | 'flux-2-pro' | 'flux-2-max' | 'flux-2-flex' | 'flux-2-klein-9b' | 'flux-2-klein-4b' | 'recraft-v2' | 'recraft-v3' | 'recraft-v4' | 'recraft-v4-pro' | 'recraft-v4.1' | 'recraft-v4.1-pro' | 'recraft-v4.1-utility' | 'recraft-v4.1-utility-pro' | 'seedream-5.0-lite' | 'seedream-4.5' | 'seedream-4.0' | 'grok-imagine-image' | 'grok-imagine-image-quality' | 'dall-e-2' | 'dall-e-3' | 'gpt-image-1' | 'gpt-image-1-mini' | 'gpt-image-1.5' | 'gpt-image-2' | 'chatgpt-image-latest' | (string & {});
4
+ export type ImageModelId = 'imagen-4.0-generate-001' | 'imagen-4.0-ultra-generate-001' | 'imagen-4.0-fast-generate-001' | 'gemini-2.0-flash-exp-image-generation' | 'gemini-2.5-flash-image' | 'gemini-3-pro-image-preview' | 'gemini-3.1-flash-image-preview' | 'vertex/imagen-4.0-generate-001' | 'vertex/imagen-4.0-ultra-generate-001' | 'vertex/imagen-4.0-fast-generate-001' | 'vertex/gemini-2.5-flash-image' | 'vertex/gemini-3-pro-image-preview' | 'vertex/gemini-3.1-flash-image-preview' | 'flux-kontext-max' | 'flux-kontext-pro' | 'flux-pro-1.0-fill' | 'flux-pro-1.1' | 'flux-pro-1.1-ultra' | 'flux-2-pro' | 'flux-2-max' | 'flux-2-flex' | 'flux-2-klein-9b' | 'flux-2-klein-4b' | 'recraft-v2' | 'recraft-v3' | 'recraft-v4' | 'recraft-v4-pro' | 'recraft-v4.1' | 'recraft-v4.1-pro' | 'recraft-v4.1-utility' | 'recraft-v4.1-utility-pro' | 'seedream-5.0-lite' | 'seedream-4.5' | 'seedream-4.0' | 'grok-imagine-image' | 'grok-imagine-image-2.0' | 'grok-imagine-image-quality' | 'dall-e-2' | 'dall-e-3' | 'gpt-image-1' | 'gpt-image-1-mini' | 'gpt-image-1.5' | 'gpt-image-2' | 'gpt-image-2.5-flare' | 'gpt-image-2.5-sunburst' | 'chatgpt-image-latest' | (string & {});
5
5
  /** Video model IDs from the catalog. Accepts arbitrary strings too. */
6
- export type VideoModelId = 'veo-3.1-generate-001' | 'veo-3.1-fast-generate-001' | 'veo-3.0-generate-001' | 'veo-3.0-fast-generate-001' | 'vertex/veo-3.1-generate-001' | 'vertex/veo-3.1-fast-generate-001' | 'grok-imagine-video' | 'grok-imagine-video-1.5' | 'kling-v3.0-t2v' | 'kling-v3.0-i2v' | 'kling-v3.0-motion-control' | 'kling-v2.6-t2v' | 'kling-v2.6-i2v' | 'kling-v2.6-motion-control' | 'kling-v2.5-turbo-t2v' | 'kling-v2.5-turbo-i2v' | 'wan-v2.6-t2v' | 'wan-v2.6-i2v' | 'wan-v2.6-i2v-flash' | 'wan-v2.6-r2v' | 'wan-v2.6-r2v-flash' | 'wan-v2.5-t2v-preview' | 'seedance-2.0' | 'seedance-2.0-fast' | 'seedance-v1.5-pro' | 'seedance-v1.0-pro' | 'seedance-v1.0-pro-fast' | 'seedance-v1.0-lite-t2v' | 'seedance-v1.0-lite-i2v' | 'luma-ray-2' | 'minimax-video' | 'hunyuan-video' | (string & {});
6
+ export type VideoModelId = 'veo-3.1-generate-001' | 'veo-3.1-fast-generate-001' | 'veo-3.0-generate-001' | 'veo-3.0-fast-generate-001' | 'vertex/veo-3.1-generate-001' | 'vertex/veo-3.1-fast-generate-001' | 'grok-imagine-video' | 'grok-imagine-video-1.5' | 'grok-imagine-video-1.5-lite' | 'kling-v3.0-t2v' | 'kling-v3.0-i2v' | 'kling-v3.0-motion-control' | 'kling-v2.6-t2v' | 'kling-v2.6-i2v' | 'kling-v2.6-motion-control' | 'kling-v2.5-turbo-t2v' | 'kling-v2.5-turbo-i2v' | 'wan-v2.6-t2v' | 'wan-v2.6-i2v' | 'wan-v2.6-i2v-flash' | 'wan-v2.6-r2v' | 'wan-v2.6-r2v-flash' | 'wan-v2.5-t2v-preview' | 'seedance-2.0' | 'seedance-2.0-fast' | 'seedance-v1.5-pro' | 'seedance-v1.0-pro' | 'seedance-v1.0-pro-fast' | 'seedance-v1.0-lite-t2v' | 'seedance-v1.0-lite-i2v' | 'luma-ray-2' | 'minimax-video' | 'hunyuan-video' | (string & {});
7
7
  /** Common aspect ratios across providers. */
8
8
  export type AspectRatio = '1:1' | '3:4' | '4:3' | '9:16' | '16:9' | '2:3' | '3:2' | '4:5' | '5:4' | '9:21' | '21:9' | (string & {});
9
9
  /** Image quality presets (varies by provider). */
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,8 @@ export function buildImageProviderOptions(provider, opts) {
38
38
  }
39
39
  case 'xai': {
40
40
  const xaiOpts = {
41
- ...(opts.quality ? { quality: opts.quality } : {}),
41
+ // 'auto' is xAI's server default; @ai-sdk/xai does not accept it, so omit the field.
42
+ ...(opts.quality && opts.quality !== 'auto' ? { quality: opts.quality } : {}),
42
43
  ...(opts.resolution ? { resolution: opts.resolution } : {}),
43
44
  ...(opts.outputFormat ? { output_format: opts.outputFormat } : {}),
44
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"model-catalog.d.ts","sourceRoot":"","sources":["../../src/cli/model-catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-catalog.d.ts","sourceRoot":"","sources":["../../src/cli/model-catalog.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,16 @@ const openaiImage = {
56
56
  strategy: 'image',
57
57
  providerOptions: openaiImageProviderOptions,
58
58
  };
59
+ // GPT Image 2.5 models add `xhigh` and `max` quality levels.
60
+ // Docs: https://developers.openai.com/api/docs/models/gpt-image-2.5-sunburst
61
+ const openaiImage25ProviderOptions = [
62
+ { flag: 'quality', providerKey: 'quality', description: 'Image quality', values: ['auto', 'low', 'medium', 'high', 'xhigh', 'max'], defaultValue: 'auto', type: 'string' },
63
+ { flag: 'output-format', providerKey: 'outputFormat', description: 'Output format', values: ['png', 'jpeg', 'webp'], defaultValue: 'png', type: 'string' },
64
+ ];
65
+ const openaiImage25 = {
66
+ ...openaiImage,
67
+ providerOptions: openaiImage25ProviderOptions,
68
+ };
59
69
  const replicateImage = {
60
70
  provider: 'replicate',
61
71
  strategy: 'image',
@@ -91,6 +101,14 @@ const xaiImage = {
91
101
  strategy: 'image',
92
102
  providerOptions: xaiImageProviderOptions,
93
103
  };
104
+ // Docs: https://docs.x.ai/developers/model-capabilities/images/generation
105
+ // quality is only honored by grok-imagine-image-2.0. 'auto' is the server default
106
+ // (low for generation, medium for editing), so egaki omits the field for 'auto'.
107
+ const xaiImage2ProviderOptions = [
108
+ { flag: 'quality', providerKey: 'quality', description: 'Image quality', values: ['auto', 'low', 'medium'], defaultValue: 'auto', type: 'string' },
109
+ { flag: 'resolution', providerKey: 'resolution', description: 'Output resolution', values: ['1k', '2k'], defaultValue: '1k', type: 'string' },
110
+ { flag: 'output-format', providerKey: 'output_format', description: 'Output format', values: ['png', 'jpeg'], defaultValue: 'png', type: 'string' },
111
+ ];
94
112
  // Source: node_modules/@ai-sdk/xai/dist/index.d.ts → XaiVideoModelOptions
95
113
  // Docs: https://docs.x.ai/docs/api-reference#create-video
96
114
  const xaiVideoProviderOptions = [
@@ -101,6 +119,19 @@ const xaiVideoProviderOptions = [
101
119
  { flag: 'video-url', providerKey: 'videoUrl', description: 'Source video URL for editing or extension (internal)', type: 'string' },
102
120
  { flag: 'reference-images', providerKey: 'referenceImageUrls', description: 'Reference images for R2V (1-7 files or URLs)', type: 'string', array: true },
103
121
  ];
122
+ // Docs: https://docs.x.ai/developers/model-capabilities/video/overview
123
+ // grok-imagine-video-1.5: T2V/I2V at native 1080p, R2V up to 720p with up to 14 references.
124
+ // No editing or extension. Preset voices (reference_audios), last_frame and keyframes exist
125
+ // on the REST API but are not exposed by @ai-sdk/xai yet.
126
+ const xaiVideo15ProviderOptions = [
127
+ { flag: 'resolution', providerKey: 'resolution', description: 'Output resolution (R2V is capped at 720p)', values: ['480p', '720p', '1080p'], defaultValue: '720p', type: 'string' },
128
+ { flag: 'mode', providerKey: 'mode', description: 'Video operation mode', values: ['reference-to-video'], type: 'string' },
129
+ { flag: 'reference-images', providerKey: 'referenceImageUrls', description: 'Reference images for R2V (1-14 files or URLs)', type: 'string', array: true },
130
+ ];
131
+ // grok-imagine-video-1.5-lite: T2V/I2V only. 1080p is upscaled from 720p.
132
+ const xaiVideo15LiteProviderOptions = [
133
+ { flag: 'resolution', providerKey: 'resolution', description: 'Output resolution (1080p is upscaled from 720p)', values: ['480p', '720p', '1080p'], defaultValue: '720p', type: 'string' },
134
+ ];
104
135
  // Source: node_modules/@ai-sdk/bytedance/dist/index.d.ts → ByteDanceVideoProviderOptions
105
136
  // Docs: https://sdk.vercel.ai/docs/providers/bytedance
106
137
  const bytedanceVideoProviderOptions = [
@@ -580,6 +611,24 @@ export const CATALOG = [
580
611
  multipleImages: true,
581
612
  },
582
613
  },
614
+ {
615
+ id: 'grok-imagine-image-2.0',
616
+ name: 'Grok Imagine Image 2.0',
617
+ released: '2026-08',
618
+ ...xaiImage,
619
+ providerOptions: xaiImage2ProviderOptions,
620
+ // $0.04 at low quality (what 'auto' serves for generation); medium is $0.06, 2k costs more.
621
+ cost: { type: 'per-image', perImage: 0.04 },
622
+ features: {
623
+ editing: true,
624
+ inpainting: false,
625
+ aspectRatios: ['1:1', '3:4', '4:3', '9:16', '16:9', '2:3', '3:2', '21:9', '5:2'],
626
+ seed: false,
627
+ multipleImages: true,
628
+ },
629
+ },
630
+ // xAI retires grok-imagine-image-quality on 2026-11-02. After that date, requests to
631
+ // this slug are served by grok-imagine-image-2.0 with quality 'low'.
583
632
  {
584
633
  id: 'grok-imagine-image-quality',
585
634
  name: 'Grok Imagine Image Quality',
@@ -688,6 +737,43 @@ export const CATALOG = [
688
737
  multipleImages: true,
689
738
  },
690
739
  },
740
+ {
741
+ id: 'gpt-image-2.5-flare',
742
+ name: 'GPT Image 2.5 Flare',
743
+ description: 'Fastest GPT Image 2.5 model for high-quality everyday generation and editing. ' +
744
+ 'Token rates match gpt-image-2; $0.053 is the medium-quality 1024×1024 estimate.',
745
+ released: '2026-09-08',
746
+ ...openaiImage25,
747
+ // Token-based pricing: $30/1M output image tokens, same rates as gpt-image-2.
748
+ cost: { type: 'per-image', perImage: 0.053 },
749
+ features: {
750
+ editing: true,
751
+ inpainting: true,
752
+ aspectRatios: [],
753
+ sizes: ['1024x1024', '1536x1024', '1024x1536'],
754
+ seed: false,
755
+ multipleImages: true,
756
+ },
757
+ },
758
+ {
759
+ id: 'gpt-image-2.5-sunburst',
760
+ name: 'GPT Image 2.5 Sunburst',
761
+ description: 'Most capable GPT Image 2.5 model, for work where editing precision and reference ' +
762
+ 'fidelity matter most. Slower than Flare. Token rates match gpt-image-2; actual cost ' +
763
+ 'is usually higher because it spends more tokens per image.',
764
+ released: '2026-09-08',
765
+ ...openaiImage25,
766
+ // Token-based pricing: $30/1M output image tokens, same rates as gpt-image-2.
767
+ cost: { type: 'per-image', perImage: 0.053 },
768
+ features: {
769
+ editing: true,
770
+ inpainting: true,
771
+ aspectRatios: [],
772
+ sizes: ['1024x1024', '1536x1024', '1024x1536'],
773
+ seed: false,
774
+ multipleImages: true,
775
+ },
776
+ },
691
777
  {
692
778
  id: 'chatgpt-image-latest',
693
779
  name: 'ChatGPT Image',
@@ -1433,25 +1519,55 @@ export const VIDEO_CATALOG = [
1433
1519
  provider: 'xai',
1434
1520
  strategy: 'video',
1435
1521
  released: '2026-05',
1522
+ // Source: https://ai-gateway.vercel.sh/v1/models (spacexai/grok-imagine-video-1.5)
1436
1523
  cost: {
1437
1524
  type: 'per-video-second',
1438
1525
  defaultDurationSec: 5,
1439
1526
  tiers: [
1440
1527
  { resolution: '480p', costPerSecond: 0.08 },
1441
1528
  { resolution: '720p', costPerSecond: 0.14 },
1529
+ { resolution: '1080p', costPerSecond: 0.25 },
1442
1530
  ],
1443
1531
  },
1444
1532
  features: {
1445
- textToVideo: false,
1533
+ textToVideo: true,
1446
1534
  imageToVideo: true,
1447
- capabilities: ['i2v'],
1448
- aspectRatios: ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3'],
1449
- resolutions: ['480p', '720p'],
1535
+ capabilities: ['t2v', 'i2v', 'r2v'],
1536
+ aspectRatios: ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3', '21:9', '5:2'],
1537
+ resolutions: ['480p', '720p', '1080p'],
1450
1538
  durationRangeSec: { min: 1, max: 15 },
1451
1539
  seed: false,
1452
1540
  multipleVideos: false,
1453
1541
  },
1454
- providerOptions: xaiVideoProviderOptions,
1542
+ providerOptions: xaiVideo15ProviderOptions,
1543
+ },
1544
+ {
1545
+ id: 'grok-imagine-video-1.5-lite',
1546
+ name: 'Grok Imagine Video 1.5 Lite',
1547
+ provider: 'xai',
1548
+ strategy: 'video',
1549
+ released: '2026-10-08',
1550
+ // Source: https://ai-gateway.vercel.sh/v1/models (spacexai/grok-imagine-video-1.5-lite)
1551
+ cost: {
1552
+ type: 'per-video-second',
1553
+ defaultDurationSec: 5,
1554
+ tiers: [
1555
+ { resolution: '480p', costPerSecond: 0.02 },
1556
+ { resolution: '720p', costPerSecond: 0.03 },
1557
+ { resolution: '1080p', costPerSecond: 0.14 },
1558
+ ],
1559
+ },
1560
+ features: {
1561
+ textToVideo: true,
1562
+ imageToVideo: true,
1563
+ capabilities: ['t2v', 'i2v'],
1564
+ aspectRatios: ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3', '21:9', '5:2'],
1565
+ resolutions: ['480p', '720p', '1080p'],
1566
+ durationRangeSec: { min: 1, max: 15 },
1567
+ seed: false,
1568
+ multipleVideos: false,
1569
+ },
1570
+ providerOptions: xaiVideo15LiteProviderOptions,
1455
1571
  },
1456
1572
  // ── Kling (AI Gateway) ──────────────────────────────────────────────
1457
1573
  // Source: https://ai-gateway.vercel.sh/v1/models (klingai/* entries)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "egaki",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "type": "module",
5
5
  "description": "AI image, video, and speech generation CLI with MDX-to-video framework",
6
6
  "main": "./dist/cli/main.js",
@@ -85,7 +85,7 @@
85
85
  "@ai-sdk/google-vertex": "^4.0.137",
86
86
  "@ai-sdk/openai": "3.0.36",
87
87
  "@ai-sdk/replicate": "2.0.20",
88
- "@ai-sdk/xai": "^3.0.92",
88
+ "@ai-sdk/xai": "^3.0.139",
89
89
  "@clack/prompts": "^1.0.1",
90
90
  "@fal-ai/client": "^1.10.1",
91
91
  "@remotion/media": "4.0.494",
package/src/cli/cli.ts CHANGED
@@ -635,7 +635,7 @@ cli
635
635
  z
636
636
  .array(z.string())
637
637
  .describe(
638
- 'Reference images for R2V generation, repeatable. xAI: 1-7 images. Seedance: 1-9 images (use @Image1 etc. in prompt)',
638
+ 'Reference images for R2V generation, repeatable. xAI: 1-7 images (1-14 on grok-imagine-video-1.5). Seedance: 1-9 images (use @Image1 etc. in prompt)',
639
639
  ),
640
640
  )
641
641
  .option(
@@ -1714,6 +1714,8 @@ const FEATURED_IMAGE_MODELS = [
1714
1714
  'gemini-2.5-flash-image',
1715
1715
  'gemini-3.1-flash-image-preview',
1716
1716
  'nano-banana-pro-preview',
1717
+ 'gpt-image-2.5-sunburst',
1718
+ 'gpt-image-2.5-flare',
1717
1719
  'gpt-image-2',
1718
1720
  'gpt-image-1.5',
1719
1721
  'chatgpt-image-latest',
@@ -1722,7 +1724,7 @@ const FEATURED_IMAGE_MODELS = [
1722
1724
  'flux-pro-1.1-ultra',
1723
1725
  'recraft-v4',
1724
1726
  'dall-e-3',
1725
- 'grok-imagine-image-quality',
1727
+ 'grok-imagine-image-2.0',
1726
1728
  ]
1727
1729
 
1728
1730
  /**
@@ -64,15 +64,15 @@ export type ImageModelId =
64
64
  | 'flux-2-pro' | 'flux-2-max' | 'flux-2-flex' | 'flux-2-klein-9b' | 'flux-2-klein-4b'
65
65
  | 'recraft-v2' | 'recraft-v3' | 'recraft-v4' | 'recraft-v4-pro' | 'recraft-v4.1' | 'recraft-v4.1-pro' | 'recraft-v4.1-utility' | 'recraft-v4.1-utility-pro'
66
66
  | 'seedream-5.0-lite' | 'seedream-4.5' | 'seedream-4.0'
67
- | 'grok-imagine-image' | 'grok-imagine-image-quality'
68
- | 'dall-e-2' | 'dall-e-3' | 'gpt-image-1' | 'gpt-image-1-mini' | 'gpt-image-1.5' | 'gpt-image-2' | 'chatgpt-image-latest'
67
+ | 'grok-imagine-image' | 'grok-imagine-image-2.0' | 'grok-imagine-image-quality'
68
+ | 'dall-e-2' | 'dall-e-3' | 'gpt-image-1' | 'gpt-image-1-mini' | 'gpt-image-1.5' | 'gpt-image-2' | 'gpt-image-2.5-flare' | 'gpt-image-2.5-sunburst' | 'chatgpt-image-latest'
69
69
  | (string & {})
70
70
 
71
71
  /** Video model IDs from the catalog. Accepts arbitrary strings too. */
72
72
  export type VideoModelId =
73
73
  | 'veo-3.1-generate-001' | 'veo-3.1-fast-generate-001' | 'veo-3.0-generate-001' | 'veo-3.0-fast-generate-001'
74
74
  | 'vertex/veo-3.1-generate-001' | 'vertex/veo-3.1-fast-generate-001'
75
- | 'grok-imagine-video' | 'grok-imagine-video-1.5'
75
+ | 'grok-imagine-video' | 'grok-imagine-video-1.5' | 'grok-imagine-video-1.5-lite'
76
76
  | 'kling-v3.0-t2v' | 'kling-v3.0-i2v' | 'kling-v3.0-motion-control' | 'kling-v2.6-t2v' | 'kling-v2.6-i2v' | 'kling-v2.6-motion-control'
77
77
  | 'kling-v2.5-turbo-t2v' | 'kling-v2.5-turbo-i2v'
78
78
  | 'wan-v2.6-t2v' | 'wan-v2.6-i2v' | 'wan-v2.6-i2v-flash' | 'wan-v2.6-r2v' | 'wan-v2.6-r2v-flash' | 'wan-v2.5-t2v-preview'
@@ -159,7 +159,7 @@ export interface GenerateVideoResult {
159
159
  // ─── OpenAI provider options type (not exported by @ai-sdk/openai) ───────────
160
160
 
161
161
  type OpenAIImageProviderOptions = {
162
- quality?: 'standard' | 'low' | 'medium' | 'high' | 'auto'
162
+ quality?: 'standard' | 'low' | 'medium' | 'high' | 'xhigh' | 'max' | 'auto'
163
163
  outputFormat?: 'png' | 'jpeg' | 'webp'
164
164
  outputCompression?: number
165
165
  size?: `${number}x${number}`
@@ -199,7 +199,8 @@ export function buildImageProviderOptions(
199
199
  }
200
200
  case 'xai': {
201
201
  const xaiOpts = {
202
- ...(opts.quality ? { quality: opts.quality as XaiImageModelOptions['quality'] } : {}),
202
+ // 'auto' is xAI's server default; @ai-sdk/xai does not accept it, so omit the field.
203
+ ...(opts.quality && opts.quality !== 'auto' ? { quality: opts.quality as XaiImageModelOptions['quality'] } : {}),
203
204
  ...(opts.resolution ? { resolution: opts.resolution as XaiImageModelOptions['resolution'] } : {}),
204
205
  ...(opts.outputFormat ? { output_format: opts.outputFormat } : {}),
205
206
  } satisfies XaiImageModelOptions
@@ -238,7 +239,7 @@ export function buildVideoProviderOptions(
238
239
  switch (provider) {
239
240
  case 'xai': {
240
241
  const base = {
241
- ...(opts.resolution ? { resolution: opts.resolution as '480p' | '720p' } : {}),
242
+ ...(opts.resolution ? { resolution: opts.resolution as '480p' | '720p' | '1080p' } : {}),
242
243
  }
243
244
  if (opts.mode === 'edit-video' && opts.videoUrl) {
244
245
  const xaiOpts = { ...base, mode: 'edit-video' as const, videoUrl: opts.videoUrl } satisfies XaiVideoModelOptions
@@ -198,6 +198,18 @@ const openaiImage = {
198
198
  providerOptions: openaiImageProviderOptions,
199
199
  }
200
200
 
201
+ // GPT Image 2.5 models add `xhigh` and `max` quality levels.
202
+ // Docs: https://developers.openai.com/api/docs/models/gpt-image-2.5-sunburst
203
+ const openaiImage25ProviderOptions: ProviderOption[] = [
204
+ { flag: 'quality', providerKey: 'quality', description: 'Image quality', values: ['auto', 'low', 'medium', 'high', 'xhigh', 'max'], defaultValue: 'auto', type: 'string' },
205
+ { flag: 'output-format', providerKey: 'outputFormat', description: 'Output format', values: ['png', 'jpeg', 'webp'], defaultValue: 'png', type: 'string' },
206
+ ]
207
+
208
+ const openaiImage25 = {
209
+ ...openaiImage,
210
+ providerOptions: openaiImage25ProviderOptions,
211
+ }
212
+
201
213
  const replicateImage = {
202
214
  provider: 'replicate',
203
215
  strategy: 'image' as const,
@@ -240,6 +252,15 @@ const xaiImage = {
240
252
  providerOptions: xaiImageProviderOptions,
241
253
  }
242
254
 
255
+ // Docs: https://docs.x.ai/developers/model-capabilities/images/generation
256
+ // quality is only honored by grok-imagine-image-2.0. 'auto' is the server default
257
+ // (low for generation, medium for editing), so egaki omits the field for 'auto'.
258
+ const xaiImage2ProviderOptions: ProviderOption[] = [
259
+ { flag: 'quality', providerKey: 'quality', description: 'Image quality', values: ['auto', 'low', 'medium'], defaultValue: 'auto', type: 'string' },
260
+ { flag: 'resolution', providerKey: 'resolution', description: 'Output resolution', values: ['1k', '2k'], defaultValue: '1k', type: 'string' },
261
+ { flag: 'output-format', providerKey: 'output_format', description: 'Output format', values: ['png', 'jpeg'], defaultValue: 'png', type: 'string' },
262
+ ]
263
+
243
264
  // Source: node_modules/@ai-sdk/xai/dist/index.d.ts → XaiVideoModelOptions
244
265
  // Docs: https://docs.x.ai/docs/api-reference#create-video
245
266
  const xaiVideoProviderOptions: ProviderOption[] = [
@@ -251,6 +272,21 @@ const xaiVideoProviderOptions: ProviderOption[] = [
251
272
  { flag: 'reference-images', providerKey: 'referenceImageUrls', description: 'Reference images for R2V (1-7 files or URLs)', type: 'string', array: true },
252
273
  ]
253
274
 
275
+ // Docs: https://docs.x.ai/developers/model-capabilities/video/overview
276
+ // grok-imagine-video-1.5: T2V/I2V at native 1080p, R2V up to 720p with up to 14 references.
277
+ // No editing or extension. Preset voices (reference_audios), last_frame and keyframes exist
278
+ // on the REST API but are not exposed by @ai-sdk/xai yet.
279
+ const xaiVideo15ProviderOptions: ProviderOption[] = [
280
+ { flag: 'resolution', providerKey: 'resolution', description: 'Output resolution (R2V is capped at 720p)', values: ['480p', '720p', '1080p'], defaultValue: '720p', type: 'string' },
281
+ { flag: 'mode', providerKey: 'mode', description: 'Video operation mode', values: ['reference-to-video'], type: 'string' },
282
+ { flag: 'reference-images', providerKey: 'referenceImageUrls', description: 'Reference images for R2V (1-14 files or URLs)', type: 'string', array: true },
283
+ ]
284
+
285
+ // grok-imagine-video-1.5-lite: T2V/I2V only. 1080p is upscaled from 720p.
286
+ const xaiVideo15LiteProviderOptions: ProviderOption[] = [
287
+ { flag: 'resolution', providerKey: 'resolution', description: 'Output resolution (1080p is upscaled from 720p)', values: ['480p', '720p', '1080p'], defaultValue: '720p', type: 'string' },
288
+ ]
289
+
254
290
  // Source: node_modules/@ai-sdk/bytedance/dist/index.d.ts → ByteDanceVideoProviderOptions
255
291
  // Docs: https://sdk.vercel.ai/docs/providers/bytedance
256
292
  const bytedanceVideoProviderOptions: ProviderOption[] = [
@@ -747,6 +783,24 @@ export const CATALOG: ModelEntry[] = [
747
783
  multipleImages: true,
748
784
  },
749
785
  },
786
+ {
787
+ id: 'grok-imagine-image-2.0',
788
+ name: 'Grok Imagine Image 2.0',
789
+ released: '2026-08',
790
+ ...xaiImage,
791
+ providerOptions: xaiImage2ProviderOptions,
792
+ // $0.04 at low quality (what 'auto' serves for generation); medium is $0.06, 2k costs more.
793
+ cost: { type: 'per-image', perImage: 0.04 },
794
+ features: {
795
+ editing: true,
796
+ inpainting: false,
797
+ aspectRatios: ['1:1', '3:4', '4:3', '9:16', '16:9', '2:3', '3:2', '21:9', '5:2'],
798
+ seed: false,
799
+ multipleImages: true,
800
+ },
801
+ },
802
+ // xAI retires grok-imagine-image-quality on 2026-11-02. After that date, requests to
803
+ // this slug are served by grok-imagine-image-2.0 with quality 'low'.
750
804
  {
751
805
  id: 'grok-imagine-image-quality',
752
806
  name: 'Grok Imagine Image Quality',
@@ -857,6 +911,45 @@ export const CATALOG: ModelEntry[] = [
857
911
  multipleImages: true,
858
912
  },
859
913
  },
914
+ {
915
+ id: 'gpt-image-2.5-flare',
916
+ name: 'GPT Image 2.5 Flare',
917
+ description:
918
+ 'Fastest GPT Image 2.5 model for high-quality everyday generation and editing. ' +
919
+ 'Token rates match gpt-image-2; $0.053 is the medium-quality 1024×1024 estimate.',
920
+ released: '2026-09-08',
921
+ ...openaiImage25,
922
+ // Token-based pricing: $30/1M output image tokens, same rates as gpt-image-2.
923
+ cost: { type: 'per-image', perImage: 0.053 },
924
+ features: {
925
+ editing: true,
926
+ inpainting: true,
927
+ aspectRatios: [],
928
+ sizes: ['1024x1024', '1536x1024', '1024x1536'],
929
+ seed: false,
930
+ multipleImages: true,
931
+ },
932
+ },
933
+ {
934
+ id: 'gpt-image-2.5-sunburst',
935
+ name: 'GPT Image 2.5 Sunburst',
936
+ description:
937
+ 'Most capable GPT Image 2.5 model, for work where editing precision and reference ' +
938
+ 'fidelity matter most. Slower than Flare. Token rates match gpt-image-2; actual cost ' +
939
+ 'is usually higher because it spends more tokens per image.',
940
+ released: '2026-09-08',
941
+ ...openaiImage25,
942
+ // Token-based pricing: $30/1M output image tokens, same rates as gpt-image-2.
943
+ cost: { type: 'per-image', perImage: 0.053 },
944
+ features: {
945
+ editing: true,
946
+ inpainting: true,
947
+ aspectRatios: [],
948
+ sizes: ['1024x1024', '1536x1024', '1024x1536'],
949
+ seed: false,
950
+ multipleImages: true,
951
+ },
952
+ },
860
953
  {
861
954
  id: 'chatgpt-image-latest',
862
955
  name: 'ChatGPT Image',
@@ -1608,25 +1701,55 @@ export const VIDEO_CATALOG: VideoModelEntry[] = [
1608
1701
  provider: 'xai',
1609
1702
  strategy: 'video',
1610
1703
  released: '2026-05',
1704
+ // Source: https://ai-gateway.vercel.sh/v1/models (spacexai/grok-imagine-video-1.5)
1611
1705
  cost: {
1612
1706
  type: 'per-video-second',
1613
1707
  defaultDurationSec: 5,
1614
1708
  tiers: [
1615
1709
  { resolution: '480p', costPerSecond: 0.08 },
1616
1710
  { resolution: '720p', costPerSecond: 0.14 },
1711
+ { resolution: '1080p', costPerSecond: 0.25 },
1617
1712
  ],
1618
1713
  },
1619
1714
  features: {
1620
- textToVideo: false,
1715
+ textToVideo: true,
1621
1716
  imageToVideo: true,
1622
- capabilities: ['i2v'],
1623
- aspectRatios: ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3'],
1624
- resolutions: ['480p', '720p'],
1717
+ capabilities: ['t2v', 'i2v', 'r2v'],
1718
+ aspectRatios: ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3', '21:9', '5:2'],
1719
+ resolutions: ['480p', '720p', '1080p'],
1625
1720
  durationRangeSec: { min: 1, max: 15 },
1626
1721
  seed: false,
1627
1722
  multipleVideos: false,
1628
1723
  },
1629
- providerOptions: xaiVideoProviderOptions,
1724
+ providerOptions: xaiVideo15ProviderOptions,
1725
+ },
1726
+ {
1727
+ id: 'grok-imagine-video-1.5-lite',
1728
+ name: 'Grok Imagine Video 1.5 Lite',
1729
+ provider: 'xai',
1730
+ strategy: 'video',
1731
+ released: '2026-10-08',
1732
+ // Source: https://ai-gateway.vercel.sh/v1/models (spacexai/grok-imagine-video-1.5-lite)
1733
+ cost: {
1734
+ type: 'per-video-second',
1735
+ defaultDurationSec: 5,
1736
+ tiers: [
1737
+ { resolution: '480p', costPerSecond: 0.02 },
1738
+ { resolution: '720p', costPerSecond: 0.03 },
1739
+ { resolution: '1080p', costPerSecond: 0.14 },
1740
+ ],
1741
+ },
1742
+ features: {
1743
+ textToVideo: true,
1744
+ imageToVideo: true,
1745
+ capabilities: ['t2v', 'i2v'],
1746
+ aspectRatios: ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3', '21:9', '5:2'],
1747
+ resolutions: ['480p', '720p', '1080p'],
1748
+ durationRangeSec: { min: 1, max: 15 },
1749
+ seed: false,
1750
+ multipleVideos: false,
1751
+ },
1752
+ providerOptions: xaiVideo15LiteProviderOptions,
1630
1753
  },
1631
1754
  // ── Kling (AI Gateway) ──────────────────────────────────────────────
1632
1755
  // Source: https://ai-gateway.vercel.sh/v1/models (klingai/* entries)