@@ -127,6 +127,7 @@ type GlobalStateKey =
127127 | "requestyModelInfo"
128128 | "unboundModelInfo"
129129 | "modelTemperature"
130+ | "maxOpenTabsContext"
130131
131132export const GlobalFileNames = {
132133 apiConversationHistory : "api_conversation_history.json" ,
@@ -1207,6 +1208,11 @@ export class ClineProvider implements vscode.WebviewViewProvider {
12071208 await this . updateGlobalState ( "screenshotQuality" , message . value )
12081209 await this . postStateToWebview ( )
12091210 break
1211+ case "maxOpenTabsContext" :
1212+ const tabCount = Math . min ( Math . max ( 0 , message . value ?? 20 ) , 500 )
1213+ await this . updateGlobalState ( "maxOpenTabsContext" , tabCount )
1214+ await this . postStateToWebview ( )
1215+ break
12101216 case "enhancementApiConfigId" :
12111217 await this . updateGlobalState ( "enhancementApiConfigId" , message . text )
12121218 await this . postStateToWebview ( )
@@ -2378,6 +2384,7 @@ export class ClineProvider implements vscode.WebviewViewProvider {
23782384 enhancementApiConfigId,
23792385 autoApprovalEnabled,
23802386 experiments,
2387+ maxOpenTabsContext,
23812388 } = await this . getState ( )
23822389
23832390 const allowedCommands = vscode . workspace . getConfiguration ( "roo-cline" ) . get < string [ ] > ( "allowedCommands" ) || [ ]
@@ -2427,6 +2434,7 @@ export class ClineProvider implements vscode.WebviewViewProvider {
24272434 customModes : await this . customModesManager . getCustomModes ( ) ,
24282435 experiments : experiments ?? experimentDefault ,
24292436 mcpServers : this . mcpHub ?. getAllServers ( ) ?? [ ] ,
2437+ maxOpenTabsContext : maxOpenTabsContext ?? 20 ,
24302438 }
24312439 }
24322440
@@ -2562,6 +2570,7 @@ export class ClineProvider implements vscode.WebviewViewProvider {
25622570 requestyModelId ,
25632571 requestyModelInfo ,
25642572 modelTemperature ,
2573+ maxOpenTabsContext ,
25652574 ] = await Promise . all ( [
25662575 this . getGlobalState ( "apiProvider" ) as Promise < ApiProvider | undefined > ,
25672576 this . getGlobalState ( "apiModelId" ) as Promise < string | undefined > ,
@@ -2642,6 +2651,7 @@ export class ClineProvider implements vscode.WebviewViewProvider {
26422651 this . getGlobalState ( "requestyModelId" ) as Promise < string | undefined > ,
26432652 this . getGlobalState ( "requestyModelInfo" ) as Promise < ModelInfo | undefined > ,
26442653 this . getGlobalState ( "modelTemperature" ) as Promise < number | undefined > ,
2654+ this . getGlobalState ( "maxOpenTabsContext" ) as Promise < number | undefined > ,
26452655 ] )
26462656
26472657 let apiProvider : ApiProvider
@@ -2768,6 +2778,7 @@ export class ClineProvider implements vscode.WebviewViewProvider {
27682778 experiments : experiments ?? experimentDefault ,
27692779 autoApprovalEnabled : autoApprovalEnabled ?? false ,
27702780 customModes,
2781+ maxOpenTabsContext : maxOpenTabsContext ?? 20 ,
27712782 }
27722783 }
27732784
0 commit comments