opencode-windsurf-codeium 0.1.25 → 0.1.27

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
@@ -34,7 +34,7 @@ Add the following to your OpenCode config (typically `~/.config/opencode/config.
34
34
  ```json
35
35
  {
36
36
  "$schema": "https://opencode.ai/config.json",
37
- "plugin": ["opencode-windsurf-codeium"],
37
+ "plugin": ["opencode-windsurf-codeium@beta"],
38
38
  "provider": {
39
39
  "windsurf": {
40
40
  "npm": "@ai-sdk/openai-compatible",
@@ -42,19 +42,59 @@ Add the following to your OpenCode config (typically `~/.config/opencode/config.
42
42
  "baseURL": "http://127.0.0.1:42100/v1"
43
43
  },
44
44
  "models": {
45
- "claude-4.5-opus": { "name": "Claude 4.5 Opus (Windsurf)", "limit": { "context": 200000, "output": 8192 } },
46
- "gpt-5.2": {
47
- "name": "GPT 5.2 (Windsurf)",
48
- "limit": { "context": 200000, "output": 8192 },
49
- "variants": { "low": {}, "medium": {}, "high": {}, "xhigh": {}, "priority": {}, "low-priority": {}, "high-priority": {}, "xhigh-priority": {} }
45
+ "claude-4.5-opus-thinking": {
46
+ "name": "Claude 4.5 Opus Thinking (Windsurf)",
47
+ "limit": {
48
+ "context": 200000,
49
+ "output": 8192
50
+ }
51
+ },
52
+ "gpt-5.1-codex-max": {
53
+ "name": "GPT 5.1 Codex Max (Windsurf)",
54
+ "limit": {
55
+ "context": 200000,
56
+ "output": 8192
57
+ },
58
+ "variants": {
59
+ "low": {},
60
+ "medium": {},
61
+ "high": {}
62
+ }
50
63
  },
51
64
  "gemini-3.0-pro": {
52
65
  "name": "Gemini 3.0 Pro (Windsurf)",
53
- "limit": { "context": 200000, "output": 8192 },
54
- "variants": { "minimal": {}, "low": {}, "medium": {}, "high": {} }
66
+ "limit": {
67
+ "context": 200000,
68
+ "output": 8192
69
+ },
70
+ "variants": {
71
+ "minimal": {},
72
+ "low": {},
73
+ "medium": {},
74
+ "high": {}
75
+ }
76
+ },
77
+ "minimax-m2.1": {
78
+ "name": "Minimax M2.1 (Windsurf)",
79
+ "limit": {
80
+ "context": 200000,
81
+ "output": 8192
82
+ }
83
+ },
84
+ "glm-4.7": {
85
+ "name": "GLM 4.7 (Windsurf)",
86
+ "limit": {
87
+ "context": 200000,
88
+ "output": 8192
89
+ }
55
90
  },
56
- "deepseek-r1": { "name": "DeepSeek R1 (Windsurf)", "limit": { "context": 64000, "output": 8192 } },
57
- "swe-1.5": { "name": "SWE 1.5 (Windsurf)", "limit": { "context": 128000, "output": 32000 } }
91
+ "glm-4.7-fast": {
92
+ "name": "GLM 4.7 Fast (Windsurf)",
93
+ "limit": {
94
+ "context": 200000,
95
+ "output": 8192
96
+ }
97
+ }
58
98
  }
59
99
  }
60
100
  }
@@ -15,6 +15,7 @@ export interface StreamChatOptions {
15
15
  onChunk?: (text: string) => void;
16
16
  onComplete?: (fullText: string) => void;
17
17
  onError?: (error: Error) => void;
18
+ variantOverride?: string;
18
19
  }
19
20
  /**
20
21
  * Stream chat completion using Promise-based API
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-client.d.ts","sourceRoot":"","sources":["../../../src/plugin/grpc-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,mBAAmB,EAAoC,MAAM,WAAW,CAAC;AAMlF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAybD;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,WAAW,EAAE,mBAAmB,EAChC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,CA6EjB;AAED;;;;;;;;GAQG;AACH,wBAAuB,mBAAmB,CACxC,WAAW,EAAE,mBAAmB,EAChC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,UAAU,CAAC,GACrD,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAoFvC"}
1
+ {"version":3,"file":"grpc-client.d.ts","sourceRoot":"","sources":["../../../src/plugin/grpc-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,mBAAmB,EAAoC,MAAM,WAAW,CAAC;AAMlF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAybD;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,WAAW,EAAE,mBAAmB,EAChC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,CA+EjB;AAED;;;;;;;;GAQG;AACH,wBAAuB,mBAAmB,CACxC,WAAW,EAAE,mBAAmB,EAChC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,UAAU,CAAC,GACrD,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAsFvC"}
@@ -7,7 +7,7 @@
7
7
  import * as http2 from 'http2';
8
8
  import * as crypto from 'crypto';
9
9
  import { ChatMessageSource } from './types.js';
10
- import { modelNameToEnum } from './models.js';
10
+ import { resolveModel } from './models.js';
11
11
  import { WindsurfError, WindsurfErrorCode } from './auth.js';
12
12
  // ============================================================================
13
13
  // Protobuf Encoding Helpers
@@ -388,8 +388,10 @@ function extractTextHeuristic(_chunk) {
388
388
  */
389
389
  export function streamChat(credentials, options) {
390
390
  const { csrfToken, port, apiKey, version } = credentials;
391
- const modelEnum = modelNameToEnum(options.model);
392
- const body = buildChatRequest(apiKey, version, modelEnum, options.messages, options.model);
391
+ const resolved = resolveModel(options.model);
392
+ const modelEnum = resolved.enumValue;
393
+ const modelName = resolved.variant ? `${resolved.modelId}:${resolved.variant}` : resolved.modelId;
394
+ const body = buildChatRequest(apiKey, version, modelEnum, options.messages, modelName);
393
395
  return new Promise((resolve, reject) => {
394
396
  const client = http2.connect(`http://localhost:${port}`);
395
397
  const chunks = [];
@@ -455,8 +457,10 @@ export function streamChat(credentials, options) {
455
457
  */
456
458
  export async function* streamChatGenerator(credentials, options) {
457
459
  const { csrfToken, port, apiKey, version } = credentials;
458
- const modelEnum = modelNameToEnum(options.model);
459
- const body = buildChatRequest(apiKey, version, modelEnum, options.messages, options.model);
460
+ const resolved = resolveModel(options.model);
461
+ const modelEnum = resolved.enumValue;
462
+ const modelName = resolved.variant ? `${resolved.modelId}:${resolved.variant}` : resolved.modelId;
463
+ const body = buildChatRequest(apiKey, version, modelEnum, options.messages, modelName);
460
464
  const client = http2.connect(`http://localhost:${port}`);
461
465
  const chunkQueue = [];
462
466
  let done = false;
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-client.js","sourceRoot":"","sources":["../../../src/plugin/grpc-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc-client.js","sourceRoot":"","sources":["../../../src/plugin/grpc-client.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,21 @@
9
9
  * 2. Search: grep -oE 'CLAUDE[A-Z0-9_]+\s*=\s*[0-9]+' extension.js
10
10
  */
11
11
  import { type ModelEnumValue } from './types.js';
12
- /**
13
- * Convert a model name string to its protobuf enum value
14
- * @param modelName - Model name (e.g., "claude-4-sonnet", "gpt-4o")
15
- * @returns The corresponding enum value, defaults to CLAUDE_3_5_SONNET if unknown
16
- */
17
- export declare function modelNameToEnum(modelName: string): ModelEnumValue;
12
+ type VariantMeta = {
13
+ /** Human-oriented hint used in /v1/models variants payload */
14
+ description?: string;
15
+ /** Maps to Windsurf enum */
16
+ enumValue: ModelEnumValue;
17
+ };
18
+ export declare function resolveModel(modelName: string, variantOverride?: string): {
19
+ enumValue: ModelEnumValue;
20
+ modelId: string;
21
+ variant?: string;
22
+ };
23
+ /**
24
+ * Convert a model name string (optionally including variant) to enum
25
+ */
26
+ export declare function modelNameToEnum(modelName: string, variantOverride?: string): ModelEnumValue;
18
27
  /**
19
28
  * Convert a protobuf enum value to a canonical model name
20
29
  * @param enumValue - The enum value
@@ -22,29 +31,20 @@ export declare function modelNameToEnum(modelName: string): ModelEnumValue;
22
31
  */
23
32
  export declare function enumToModelName(enumValue: ModelEnumValue): string;
24
33
  /**
25
- * Get all supported model names
26
- * @returns Array of all supported model name strings
34
+ * Get all supported model names (includes legacy aliases)
27
35
  */
28
36
  export declare function getSupportedModels(): string[];
29
37
  /**
30
- * Check if a model name is supported
31
- * @param modelName - Model name to check
32
- * @returns True if the model is supported
38
+ * Check if a model name is supported (canonical or alias or variant)
33
39
  */
34
40
  export declare function isModelSupported(modelName: string): boolean;
35
- /**
36
- * Get the default model name
37
- * @returns The default model name
38
- */
41
+ /** Default canonical model */
39
42
  export declare function getDefaultModel(): string;
40
- /**
41
- * Get the default model enum value
42
- * @returns The default model enum value
43
- */
44
43
  export declare function getDefaultModelEnum(): ModelEnumValue;
45
44
  /**
46
- * Get canonical model names (one per enum value, no aliases)
47
- * @returns Array of canonical model names
45
+ * Canonical models (no variants), aligned with OpenCode listing
48
46
  */
49
47
  export declare function getCanonicalModels(): string[];
48
+ export declare function getModelVariants(modelId: string): Record<string, VariantMeta> | undefined;
49
+ export {};
50
50
  //# sourceMappingURL=models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/plugin/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AA4W5D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAGjE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,cAAc,GAAG,MAAM,CAEjE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAE7C;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,cAAc,CAEpD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAE7C"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/plugin/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAQ5D,KAAK,WAAW,GAAG;IACjB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,SAAS,EAAE,cAAc,CAAC;CAC3B,CAAC;AAmlBF,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG;IACzE,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAyBA;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,cAAc,CAE3F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,cAAc,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAe7C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAO3D;AAED,8BAA8B;AAC9B,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,mBAAmB,IAAI,cAAc,CAEpD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAW7C;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,SAAS,CAGzF"}
@@ -9,8 +9,216 @@
9
9
  * 2. Search: grep -oE 'CLAUDE[A-Z0-9_]+\s*=\s*[0-9]+' extension.js
10
10
  */
11
11
  import { ModelEnum } from './types.js';
12
+ // ==========================================================================
13
+ // Variant Catalog
14
+ // ==========================================================================
15
+ const VARIANT_CATALOG = {
16
+ // Claude thinking variants
17
+ 'claude-3.7-sonnet': {
18
+ id: 'claude-3.7-sonnet',
19
+ defaultEnum: ModelEnum.CLAUDE_3_7_SONNET_20250219,
20
+ variants: {
21
+ thinking: { enumValue: ModelEnum.CLAUDE_3_7_SONNET_20250219_THINKING, description: 'Thinking mode' },
22
+ },
23
+ },
24
+ 'claude-4.5-sonnet': {
25
+ id: 'claude-4.5-sonnet',
26
+ defaultEnum: ModelEnum.CLAUDE_4_5_SONNET,
27
+ variants: {
28
+ thinking: { enumValue: ModelEnum.CLAUDE_4_5_SONNET_THINKING, description: 'Thinking mode' },
29
+ },
30
+ },
31
+ 'claude-4.5-opus': {
32
+ id: 'claude-4.5-opus',
33
+ defaultEnum: ModelEnum.CLAUDE_4_5_OPUS,
34
+ variants: {
35
+ thinking: { enumValue: ModelEnum.CLAUDE_4_5_OPUS_THINKING, description: 'Thinking mode' },
36
+ },
37
+ },
38
+ 'claude-4.1-opus': {
39
+ id: 'claude-4.1-opus',
40
+ defaultEnum: ModelEnum.CLAUDE_4_1_OPUS,
41
+ variants: {
42
+ thinking: { enumValue: ModelEnum.CLAUDE_4_1_OPUS_THINKING, description: 'Thinking mode' },
43
+ },
44
+ aliases: ['claude-4-1-opus'],
45
+ },
46
+ 'claude-4-opus': {
47
+ id: 'claude-4-opus',
48
+ defaultEnum: ModelEnum.CLAUDE_4_OPUS,
49
+ variants: {
50
+ thinking: { enumValue: ModelEnum.CLAUDE_4_OPUS_THINKING, description: 'Thinking mode' },
51
+ },
52
+ },
53
+ 'claude-4-sonnet': {
54
+ id: 'claude-4-sonnet',
55
+ defaultEnum: ModelEnum.CLAUDE_4_SONNET,
56
+ variants: {
57
+ thinking: { enumValue: ModelEnum.CLAUDE_4_SONNET_THINKING, description: 'Thinking mode' },
58
+ },
59
+ },
60
+ // Google Gemini 2.5 / 3.0
61
+ 'gemini-2.5-flash': {
62
+ id: 'gemini-2.5-flash',
63
+ defaultEnum: ModelEnum.GEMINI_2_5_FLASH,
64
+ variants: {
65
+ thinking: { enumValue: ModelEnum.GEMINI_2_5_FLASH_THINKING, description: 'Thinking budget enabled' },
66
+ lite: { enumValue: ModelEnum.GEMINI_2_5_FLASH_LITE, description: 'Lite / lower cost' },
67
+ },
68
+ aliases: ['gemini-2-5-flash'],
69
+ },
70
+ // Google Gemini 3.0 Pro
71
+ 'gemini-3.0-pro': {
72
+ id: 'gemini-3.0-pro',
73
+ defaultEnum: ModelEnum.GEMINI_3_0_PRO_MEDIUM,
74
+ variants: {
75
+ minimal: { enumValue: ModelEnum.GEMINI_3_0_PRO_MINIMAL, description: 'Cheaper, least reasoning' },
76
+ low: { enumValue: ModelEnum.GEMINI_3_0_PRO_LOW, description: 'Lower cost / speed' },
77
+ medium: { enumValue: ModelEnum.GEMINI_3_0_PRO_MEDIUM, description: 'Balanced (default)' },
78
+ high: { enumValue: ModelEnum.GEMINI_3_0_PRO_HIGH, description: 'Higher reasoning budget' },
79
+ },
80
+ aliases: ['gemini-3-0-pro'],
81
+ },
82
+ // Google Gemini 3.0 Flash
83
+ 'gemini-3.0-flash': {
84
+ id: 'gemini-3.0-flash',
85
+ defaultEnum: ModelEnum.GEMINI_3_0_FLASH_MEDIUM,
86
+ variants: {
87
+ minimal: { enumValue: ModelEnum.GEMINI_3_0_FLASH_MINIMAL, description: 'Cheapest, lowest latency' },
88
+ low: { enumValue: ModelEnum.GEMINI_3_0_FLASH_LOW, description: 'Low thinking budget' },
89
+ medium: { enumValue: ModelEnum.GEMINI_3_0_FLASH_MEDIUM, description: 'Balanced (default)' },
90
+ high: { enumValue: ModelEnum.GEMINI_3_0_FLASH_HIGH, description: 'Higher reasoning budget' },
91
+ },
92
+ aliases: ['gemini-3-0-flash'],
93
+ },
94
+ // GPT 5.2
95
+ 'gpt-5.2': {
96
+ id: 'gpt-5.2',
97
+ defaultEnum: ModelEnum.GPT_5_2_MEDIUM,
98
+ variants: {
99
+ low: { enumValue: ModelEnum.GPT_5_2_LOW, description: 'Lower cost' },
100
+ medium: { enumValue: ModelEnum.GPT_5_2_MEDIUM, description: 'Balanced (default)' },
101
+ high: { enumValue: ModelEnum.GPT_5_2_HIGH, description: 'Higher capability' },
102
+ xhigh: { enumValue: ModelEnum.GPT_5_2_XHIGH, description: 'Maximum capability' },
103
+ priority: { enumValue: ModelEnum.GPT_5_2_MEDIUM_PRIORITY, description: 'Priority routing (medium)' },
104
+ 'low-priority': { enumValue: ModelEnum.GPT_5_2_LOW_PRIORITY, description: 'Priority routing (low)' },
105
+ 'high-priority': { enumValue: ModelEnum.GPT_5_2_HIGH_PRIORITY, description: 'Priority routing (high)' },
106
+ 'xhigh-priority': { enumValue: ModelEnum.GPT_5_2_XHIGH_PRIORITY, description: 'Priority routing (xhigh)' },
107
+ },
108
+ aliases: ['gpt-5-2'],
109
+ },
110
+ // GPT 5
111
+ 'gpt-5': {
112
+ id: 'gpt-5',
113
+ defaultEnum: ModelEnum.GPT_5,
114
+ variants: {
115
+ low: { enumValue: ModelEnum.GPT_5_LOW, description: 'Lower cost' },
116
+ high: { enumValue: ModelEnum.GPT_5_HIGH, description: 'Higher capability' },
117
+ nano: { enumValue: ModelEnum.GPT_5_NANO, description: 'Small footprint' },
118
+ },
119
+ },
120
+ // GPT 5.1 Codex families
121
+ 'gpt-5.1-codex-mini': {
122
+ id: 'gpt-5.1-codex-mini',
123
+ defaultEnum: ModelEnum.GPT_5_1_CODEX_MINI_MEDIUM,
124
+ variants: {
125
+ low: { enumValue: ModelEnum.GPT_5_1_CODEX_MINI_LOW },
126
+ medium: { enumValue: ModelEnum.GPT_5_1_CODEX_MINI_MEDIUM },
127
+ high: { enumValue: ModelEnum.GPT_5_1_CODEX_MINI_HIGH },
128
+ },
129
+ aliases: ['gpt-5-1-codex-mini'],
130
+ },
131
+ 'gpt-5.1-codex': {
132
+ id: 'gpt-5.1-codex',
133
+ defaultEnum: ModelEnum.GPT_5_1_CODEX_MEDIUM,
134
+ variants: {
135
+ low: { enumValue: ModelEnum.GPT_5_1_CODEX_LOW },
136
+ medium: { enumValue: ModelEnum.GPT_5_1_CODEX_MEDIUM },
137
+ high: { enumValue: ModelEnum.GPT_5_1_CODEX_HIGH },
138
+ },
139
+ aliases: ['gpt-5-1-codex'],
140
+ },
141
+ 'gpt-5.1-codex-max': {
142
+ id: 'gpt-5.1-codex-max',
143
+ defaultEnum: ModelEnum.GPT_5_1_CODEX_MAX_MEDIUM,
144
+ variants: {
145
+ low: { enumValue: ModelEnum.GPT_5_1_CODEX_MAX_LOW },
146
+ medium: { enumValue: ModelEnum.GPT_5_1_CODEX_MAX_MEDIUM },
147
+ high: { enumValue: ModelEnum.GPT_5_1_CODEX_MAX_HIGH },
148
+ },
149
+ aliases: ['gpt-5-1-codex-max'],
150
+ },
151
+ // O series
152
+ o3: {
153
+ id: 'o3',
154
+ defaultEnum: ModelEnum.O3,
155
+ variants: {
156
+ low: { enumValue: ModelEnum.O3_LOW },
157
+ high: { enumValue: ModelEnum.O3_HIGH },
158
+ },
159
+ },
160
+ 'o3-pro': {
161
+ id: 'o3-pro',
162
+ defaultEnum: ModelEnum.O3_PRO,
163
+ variants: {
164
+ low: { enumValue: ModelEnum.O3_PRO_LOW },
165
+ high: { enumValue: ModelEnum.O3_PRO_HIGH },
166
+ },
167
+ },
168
+ 'o4-mini': {
169
+ id: 'o4-mini',
170
+ defaultEnum: ModelEnum.O4_MINI,
171
+ variants: {
172
+ low: { enumValue: ModelEnum.O4_MINI_LOW },
173
+ high: { enumValue: ModelEnum.O4_MINI_HIGH },
174
+ },
175
+ },
176
+ };
177
+ const VARIANT_NAME_SET = new Set();
178
+ for (const entry of Object.values(VARIANT_CATALOG)) {
179
+ if (entry.variants) {
180
+ for (const variantKey of Object.keys(entry.variants)) {
181
+ VARIANT_NAME_SET.add(`${entry.id}-${variantKey}`);
182
+ if (entry.aliases) {
183
+ for (const alias of entry.aliases) {
184
+ VARIANT_NAME_SET.add(`${alias}-${variantKey}`);
185
+ }
186
+ }
187
+ }
188
+ }
189
+ }
190
+ // Mapping of alias -> canonical id for quick lookup
191
+ const ALIAS_TO_ID = Object.values(VARIANT_CATALOG).reduce((acc, entry) => {
192
+ acc[entry.id] = entry.id;
193
+ for (const alias of entry.aliases || []) {
194
+ acc[alias] = entry.id;
195
+ }
196
+ return acc;
197
+ }, {});
198
+ function normalizeModelId(modelName) {
199
+ return modelName.toLowerCase().trim();
200
+ }
201
+ function splitModelAndVariant(raw) {
202
+ const normalized = normalizeModelId(raw);
203
+ // Allow colon-delimited (opencode variants) or suffix "-<variant>"
204
+ const colonIdx = normalized.indexOf(':');
205
+ if (colonIdx !== -1) {
206
+ const base = normalized.slice(0, colonIdx);
207
+ const variant = normalized.slice(colonIdx + 1).trim();
208
+ return { base, variant: variant || undefined };
209
+ }
210
+ const parts = normalized.split('-');
211
+ if (parts.length > 1) {
212
+ const maybeVariant = parts[parts.length - 1];
213
+ const base = parts.slice(0, -1).join('-');
214
+ if (VARIANT_CATALOG[ALIAS_TO_ID[base] || base]?.variants?.[maybeVariant]) {
215
+ return { base, variant: maybeVariant };
216
+ }
217
+ }
218
+ return { base: normalized };
219
+ }
12
220
  // ============================================================================
13
- // Model Name Mappings
221
+ // Model Name Mappings (legacy fallback)
14
222
  // ============================================================================
15
223
  /**
16
224
  * Map of model name strings to their protobuf enum values
@@ -334,14 +542,34 @@ const ENUM_TO_MODEL_NAME = {
334
542
  // ============================================================================
335
543
  // Public API
336
544
  // ============================================================================
545
+ export function resolveModel(modelName, variantOverride) {
546
+ const { base, variant } = splitModelAndVariant(modelName);
547
+ const baseId = ALIAS_TO_ID[base] || base;
548
+ const entry = VARIANT_CATALOG[baseId];
549
+ if (entry) {
550
+ const effectiveVariant = (variantOverride || variant || '').trim().toLowerCase();
551
+ if (effectiveVariant && entry.variants?.[effectiveVariant]) {
552
+ return {
553
+ enumValue: entry.variants[effectiveVariant].enumValue,
554
+ modelId: entry.id,
555
+ variant: effectiveVariant,
556
+ };
557
+ }
558
+ return { enumValue: entry.defaultEnum, modelId: entry.id };
559
+ }
560
+ // Fallback to legacy map
561
+ const normalized = normalizeModelId(modelName);
562
+ const enumValue = MODEL_NAME_TO_ENUM[normalized];
563
+ if (enumValue) {
564
+ return { enumValue, modelId: normalized };
565
+ }
566
+ return { enumValue: ModelEnum.CLAUDE_3_5_SONNET_20241022, modelId: 'claude-3.5-sonnet' };
567
+ }
337
568
  /**
338
- * Convert a model name string to its protobuf enum value
339
- * @param modelName - Model name (e.g., "claude-4-sonnet", "gpt-4o")
340
- * @returns The corresponding enum value, defaults to CLAUDE_3_5_SONNET if unknown
569
+ * Convert a model name string (optionally including variant) to enum
341
570
  */
342
- export function modelNameToEnum(modelName) {
343
- const normalized = modelName.toLowerCase().trim();
344
- return MODEL_NAME_TO_ENUM[normalized] ?? ModelEnum.CLAUDE_3_5_SONNET_20241022;
571
+ export function modelNameToEnum(modelName, variantOverride) {
572
+ return resolveModel(modelName, variantOverride).enumValue;
345
573
  }
346
574
  /**
347
575
  * Convert a protobuf enum value to a canonical model name
@@ -352,39 +580,63 @@ export function enumToModelName(enumValue) {
352
580
  return ENUM_TO_MODEL_NAME[enumValue] ?? 'claude-3.5-sonnet';
353
581
  }
354
582
  /**
355
- * Get all supported model names
356
- * @returns Array of all supported model name strings
583
+ * Get all supported model names (includes legacy aliases)
357
584
  */
358
585
  export function getSupportedModels() {
359
- return Object.keys(MODEL_NAME_TO_ENUM);
586
+ const fromVariants = Object.keys(VARIANT_CATALOG);
587
+ const aliases = [];
588
+ for (const entry of Object.values(VARIANT_CATALOG)) {
589
+ if (entry.aliases)
590
+ aliases.push(...entry.aliases);
591
+ if (entry.variants) {
592
+ for (const variantKey of Object.keys(entry.variants)) {
593
+ aliases.push(`${entry.id}-${variantKey}`);
594
+ for (const alias of entry.aliases || []) {
595
+ aliases.push(`${alias}-${variantKey}`);
596
+ }
597
+ }
598
+ }
599
+ }
600
+ return Array.from(new Set([...fromVariants, ...aliases, ...Object.keys(MODEL_NAME_TO_ENUM)]));
360
601
  }
361
602
  /**
362
- * Check if a model name is supported
363
- * @param modelName - Model name to check
364
- * @returns True if the model is supported
603
+ * Check if a model name is supported (canonical or alias or variant)
365
604
  */
366
605
  export function isModelSupported(modelName) {
367
- return modelName.toLowerCase().trim() in MODEL_NAME_TO_ENUM;
606
+ const normalized = normalizeModelId(modelName);
607
+ const { base, variant } = splitModelAndVariant(normalized);
608
+ const baseId = ALIAS_TO_ID[base] || base;
609
+ if (variant && VARIANT_CATALOG[baseId]?.variants?.[variant])
610
+ return true;
611
+ if (VARIANT_CATALOG[baseId])
612
+ return true;
613
+ return normalized in MODEL_NAME_TO_ENUM;
368
614
  }
369
- /**
370
- * Get the default model name
371
- * @returns The default model name
372
- */
615
+ /** Default canonical model */
373
616
  export function getDefaultModel() {
374
617
  return 'claude-3.5-sonnet';
375
618
  }
376
- /**
377
- * Get the default model enum value
378
- * @returns The default model enum value
379
- */
380
619
  export function getDefaultModelEnum() {
381
620
  return ModelEnum.CLAUDE_3_5_SONNET_20241022;
382
621
  }
383
622
  /**
384
- * Get canonical model names (one per enum value, no aliases)
385
- * @returns Array of canonical model names
623
+ * Canonical models (no variants), aligned with OpenCode listing
386
624
  */
387
625
  export function getCanonicalModels() {
388
- return Object.values(ENUM_TO_MODEL_NAME).filter((v) => v !== undefined);
626
+ const bases = new Set(Object.keys(VARIANT_CATALOG));
627
+ // Add non-variant canonical names derived from enum mapping
628
+ for (const name of Object.values(ENUM_TO_MODEL_NAME)) {
629
+ if (!name)
630
+ continue;
631
+ if (VARIANT_NAME_SET.has(name))
632
+ continue; // skip variant entries
633
+ if (!bases.has(name))
634
+ bases.add(name);
635
+ }
636
+ return Array.from(bases).sort();
637
+ }
638
+ export function getModelVariants(modelId) {
639
+ const baseId = ALIAS_TO_ID[normalizeModelId(modelId)] || normalizeModelId(modelId);
640
+ return VARIANT_CATALOG[baseId]?.variants;
389
641
  }
390
642
  //# sourceMappingURL=models.js.map