Skip to content

Commit 8061504

Browse files
committed
feat: add enable/disable toggle for code indexing feature
- Add checkbox to enable/disable code indexing in settings - Persist enabled state across sessions - Stop indexing service when feature is disabled - Move description to tooltip for consistent UI - Update translations to remove experimental status
1 parent b03d03d commit 8061504

File tree

24 files changed

+375
-1229
lines changed

24 files changed

+375
-1229
lines changed

src/core/webview/ClineProvider.ts

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1509,12 +1509,12 @@ export class ClineProvider
15091509
condensingApiConfigId,
15101510
customCondensingPrompt,
15111511
codebaseIndexModels: codebaseIndexModels ?? EMBEDDING_MODEL_PROFILES,
1512-
codebaseIndexConfig: codebaseIndexConfig ?? {
1513-
codebaseIndexEnabled: true,
1514-
codebaseIndexQdrantUrl: "http://localhost:6333",
1515-
codebaseIndexEmbedderProvider: "openai",
1516-
codebaseIndexEmbedderBaseUrl: "",
1517-
codebaseIndexEmbedderModelId: "",
1512+
codebaseIndexConfig: {
1513+
codebaseIndexEnabled: codebaseIndexConfig?.codebaseIndexEnabled ?? true,
1514+
codebaseIndexQdrantUrl: codebaseIndexConfig?.codebaseIndexQdrantUrl ?? "http://localhost:6333",
1515+
codebaseIndexEmbedderProvider: codebaseIndexConfig?.codebaseIndexEmbedderProvider ?? "openai",
1516+
codebaseIndexEmbedderBaseUrl: codebaseIndexConfig?.codebaseIndexEmbedderBaseUrl ?? "",
1517+
codebaseIndexEmbedderModelId: codebaseIndexConfig?.codebaseIndexEmbedderModelId ?? "",
15181518
},
15191519
mdmCompliant: this.checkMdmCompliance(),
15201520
profileThresholds: profileThresholds ?? {},
@@ -1667,12 +1667,14 @@ export class ClineProvider
16671667
condensingApiConfigId: stateValues.condensingApiConfigId,
16681668
customCondensingPrompt: stateValues.customCondensingPrompt,
16691669
codebaseIndexModels: stateValues.codebaseIndexModels ?? EMBEDDING_MODEL_PROFILES,
1670-
codebaseIndexConfig: stateValues.codebaseIndexConfig ?? {
1671-
codebaseIndexEnabled: true,
1672-
codebaseIndexQdrantUrl: "http://localhost:6333",
1673-
codebaseIndexEmbedderProvider: "openai",
1674-
codebaseIndexEmbedderBaseUrl: "",
1675-
codebaseIndexEmbedderModelId: "",
1670+
codebaseIndexConfig: {
1671+
codebaseIndexEnabled: stateValues.codebaseIndexConfig?.codebaseIndexEnabled ?? true,
1672+
codebaseIndexQdrantUrl:
1673+
stateValues.codebaseIndexConfig?.codebaseIndexQdrantUrl ?? "http://localhost:6333",
1674+
codebaseIndexEmbedderProvider:
1675+
stateValues.codebaseIndexConfig?.codebaseIndexEmbedderProvider ?? "openai",
1676+
codebaseIndexEmbedderBaseUrl: stateValues.codebaseIndexConfig?.codebaseIndexEmbedderBaseUrl ?? "",
1677+
codebaseIndexEmbedderModelId: stateValues.codebaseIndexConfig?.codebaseIndexEmbedderModelId ?? "",
16761678
},
16771679
profileThresholds: stateValues.profileThresholds ?? {},
16781680
}

src/core/webview/webviewMessageHandler.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1936,9 +1936,10 @@ export const webviewMessageHandler = async (
19361936
const embedderProviderChanged =
19371937
currentConfig.codebaseIndexEmbedderProvider !== settings.codebaseIndexEmbedderProvider
19381938

1939-
// Save global state settings atomically (without codebaseIndexEnabled which is now in global settings)
1939+
// Save global state settings atomically
19401940
const globalStateConfig = {
19411941
...currentConfig,
1942+
codebaseIndexEnabled: settings.codebaseIndexEnabled,
19421943
codebaseIndexQdrantUrl: settings.codebaseIndexQdrantUrl,
19431944
codebaseIndexEmbedderProvider: settings.codebaseIndexEmbedderProvider,
19441945
codebaseIndexEmbedderBaseUrl: settings.codebaseIndexEmbedderBaseUrl,

0 commit comments

Comments
 (0)