@@ -168,34 +168,41 @@ async function configureAI(config: any) {
168168 console . log ( chalk . yellow ( "Note: This updates the primary provider only.\n" ) ) ;
169169 console . log ( chalk . gray ( "To reconfigure all providers, run: txtcode auth\n" ) ) ;
170170
171- const answers = await inquirer . prompt ( [
171+ // Get list of already configured providers
172+ const configuredProviders = config . providers || { } ;
173+ const providerList = Object . keys ( configuredProviders ) ;
174+
175+ if ( providerList . length === 0 ) {
176+ console . log ( chalk . red ( "\n[ERROR] No providers configured.\n" ) ) ;
177+ console . log ( chalk . yellow ( "Please run 'txtcode auth' first to configure providers.\n" ) ) ;
178+ return ;
179+ }
180+
181+ // Show configured providers
182+ const providerChoices = providerList . map ( providerId => ( {
183+ name : `${ providerId } (${ configuredProviders [ providerId ] . model } )` ,
184+ value : providerId ,
185+ } ) ) ;
186+
187+ const { selectedProvider } = await inquirer . prompt ( [
172188 {
173189 type : "list" ,
174- name : "aiProvider" ,
175- message : "Select AI provider for general chat:" ,
176- choices : [
177- { name : "Anthropic (Claude)" , value : "anthropic" } ,
178- { name : "OpenAI (GPT)" , value : "openai" } ,
179- { name : "Google (Gemini)" , value : "gemini" } ,
180- { name : "OpenRouter" , value : "openrouter" } ,
181- ] ,
190+ name : "selectedProvider" ,
191+ message : "Select primary provider:" ,
192+ choices : providerChoices ,
182193 default : config . aiProvider ,
183194 } ,
184- {
185- type : "password" ,
186- name : "aiApiKey" ,
187- message : "Enter AI API Key:" ,
188- mask : "*" ,
189- } ,
190195 ] ) ;
191196
192- config . aiProvider = answers . aiProvider ;
193-
194- // Store API key in keychain
195- await setApiKey ( answers . aiProvider , answers . aiApiKey ) ;
197+ // Update top-level fields to match selected provider
198+ config . aiProvider = selectedProvider ;
199+ config . aiModel = configuredProviders [ selectedProvider ] . model ;
200+ config . updatedAt = new Date ( ) . toISOString ( ) ;
196201
197202 saveConfig ( config ) ;
198- console . log ( chalk . green ( "\n✅ AI provider configuration updated!\n" ) ) ;
203+ console . log ( chalk . green ( "\n✅ Primary provider updated!\n" ) ) ;
204+ console . log ( chalk . white ( `Active: ${ selectedProvider } (${ config . aiModel } )\n` ) ) ;
205+ console . log ( chalk . gray ( "Note: To change API key or add/remove providers, run: txtcode auth\n" ) ) ;
199206}
200207
201208async function configureProject ( config : any ) {
0 commit comments