@@ -24,6 +24,7 @@ import {
2424 vscodeLlmModels ,
2525 xaiModels ,
2626 internationalZAiModels ,
27+ minimaxModels ,
2728} from "./providers/index.js"
2829
2930/**
@@ -131,6 +132,7 @@ export const providerNames = [
131132 "groq" ,
132133 "mistral" ,
133134 "moonshot" ,
135+ "minimax" ,
134136 "openai-native" ,
135137 "qwen-code" ,
136138 "roo" ,
@@ -327,6 +329,13 @@ const moonshotSchema = apiModelIdProviderModelSchema.extend({
327329 moonshotApiKey : z . string ( ) . optional ( ) ,
328330} )
329331
332+ const minimaxSchema = apiModelIdProviderModelSchema . extend ( {
333+ minimaxBaseUrl : z
334+ . union ( [ z . literal ( "https://api.minimax.io/v1" ) , z . literal ( "https://api.minimaxi.com/v1" ) ] )
335+ . optional ( ) ,
336+ minimaxApiKey : z . string ( ) . optional ( ) ,
337+ } )
338+
330339const unboundSchema = baseProviderSettingsSchema . extend ( {
331340 unboundApiKey : z . string ( ) . optional ( ) ,
332341 unboundModelId : z . string ( ) . optional ( ) ,
@@ -435,6 +444,7 @@ export const providerSettingsSchemaDiscriminated = z.discriminatedUnion("apiProv
435444 deepInfraSchema . merge ( z . object ( { apiProvider : z . literal ( "deepinfra" ) } ) ) ,
436445 doubaoSchema . merge ( z . object ( { apiProvider : z . literal ( "doubao" ) } ) ) ,
437446 moonshotSchema . merge ( z . object ( { apiProvider : z . literal ( "moonshot" ) } ) ) ,
447+ minimaxSchema . merge ( z . object ( { apiProvider : z . literal ( "minimax" ) } ) ) ,
438448 unboundSchema . merge ( z . object ( { apiProvider : z . literal ( "unbound" ) } ) ) ,
439449 requestySchema . merge ( z . object ( { apiProvider : z . literal ( "requesty" ) } ) ) ,
440450 humanRelaySchema . merge ( z . object ( { apiProvider : z . literal ( "human-relay" ) } ) ) ,
@@ -476,6 +486,7 @@ export const providerSettingsSchema = z.object({
476486 ...deepInfraSchema . shape ,
477487 ...doubaoSchema . shape ,
478488 ...moonshotSchema . shape ,
489+ ...minimaxSchema . shape ,
479490 ...unboundSchema . shape ,
480491 ...requestySchema . shape ,
481492 ...humanRelaySchema . shape ,
@@ -560,6 +571,7 @@ export const modelIdKeysByProvider: Record<TypicalProvider, ModelIdKey> = {
560571 "gemini-cli" : "apiModelId" ,
561572 mistral : "apiModelId" ,
562573 moonshot : "apiModelId" ,
574+ minimax : "apiModelId" ,
563575 deepseek : "apiModelId" ,
564576 deepinfra : "deepInfraModelId" ,
565577 doubao : "apiModelId" ,
@@ -676,6 +688,11 @@ export const MODELS_BY_PROVIDER: Record<
676688 label : "Moonshot" ,
677689 models : Object . keys ( moonshotModels ) ,
678690 } ,
691+ minimax : {
692+ id : "minimax" ,
693+ label : "MiniMax" ,
694+ models : Object . keys ( minimaxModels ) ,
695+ } ,
679696 "openai-native" : {
680697 id : "openai-native" ,
681698 label : "OpenAI" ,
0 commit comments