@@ -24,6 +24,7 @@ type ContextManagementSettingsProps = HTMLAttributes<HTMLDivElement> & {
2424 maxTotalImageSize ?: number
2525 maxConcurrentFileReads ?: number
2626 profileThresholds ?: Record < string , number >
27+ condensingApiConfigId ?: string
2728 includeDiagnosticMessages ?: boolean
2829 maxDiagnosticMessages ?: number
2930 writeDelayMs : number
@@ -40,6 +41,7 @@ type ContextManagementSettingsProps = HTMLAttributes<HTMLDivElement> & {
4041 | "maxTotalImageSize"
4142 | "maxConcurrentFileReads"
4243 | "profileThresholds"
44+ | "condensingApiConfigId"
4345 | "includeDiagnosticMessages"
4446 | "maxDiagnosticMessages"
4547 | "writeDelayMs"
@@ -61,6 +63,7 @@ export const ContextManagementSettings = ({
6163 maxTotalImageSize,
6264 maxConcurrentFileReads,
6365 profileThresholds = { } ,
66+ condensingApiConfigId,
6467 includeDiagnosticMessages,
6568 maxDiagnosticMessages,
6669 writeDelayMs,
@@ -398,6 +401,40 @@ export const ContextManagementSettings = ({
398401 data-testid = "auto-condense-context-checkbox" >
399402 < span className = "font-medium" > { t ( "settings:contextManagement.autoCondenseContext.name" ) } </ span >
400403 </ VSCodeCheckbox >
404+
405+ { /* API Configuration dropdown - shown regardless of auto-condense state */ }
406+ < div className = "mt-4" >
407+ < label className = "block font-medium mb-1" >
408+ { t ( "prompts:supportPrompts.condense.apiConfiguration" ) }
409+ </ label >
410+ < Select
411+ value = { condensingApiConfigId || "-" }
412+ onValueChange = { ( value ) => {
413+ const newConfigId = value === "-" ? "" : value
414+ setCachedStateField ( "condensingApiConfigId" , newConfigId )
415+ vscode . postMessage ( {
416+ type : "condensingApiConfigId" ,
417+ text : newConfigId ,
418+ } )
419+ } }
420+ data-testid = "condensing-api-config-select" >
421+ < SelectTrigger className = "w-full" >
422+ < SelectValue placeholder = { t ( "prompts:supportPrompts.condense.useCurrentConfig" ) } />
423+ </ SelectTrigger >
424+ < SelectContent >
425+ < SelectItem value = "-" > { t ( "prompts:supportPrompts.condense.useCurrentConfig" ) } </ SelectItem >
426+ { ( listApiConfigMeta || [ ] ) . map ( ( config ) => (
427+ < SelectItem key = { config . id } value = { config . id } >
428+ { config . name }
429+ </ SelectItem >
430+ ) ) }
431+ </ SelectContent >
432+ </ Select >
433+ < div className = "text-sm text-vscode-descriptionForeground mt-1" >
434+ { t ( "prompts:supportPrompts.condense.apiConfigDescription" ) }
435+ </ div >
436+ </ div >
437+
401438 { autoCondenseContext && (
402439 < div className = "flex flex-col gap-3 pl-3 border-l-2 border-vscode-button-background" >
403440 < div className = "flex items-center gap-4 font-bold" >
0 commit comments