From d7a304bcffc7d2340f3de762f14286596954ce4e Mon Sep 17 00:00:00 2001 From: Brandon Keiji Date: Wed, 23 Jul 2025 14:48:35 -0700 Subject: feat(memory): make directory search limit on memory discovery configurable with settings.json (#4460) --- packages/cli/src/config/config.test.ts | 3 ++- packages/cli/src/config/config.ts | 3 +++ packages/cli/src/config/settings.ts | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) (limited to 'packages/cli/src/config') diff --git a/packages/cli/src/config/config.test.ts b/packages/cli/src/config/config.test.ts index 0c0761cc..c0e9c215 100644 --- a/packages/cli/src/config/config.test.ts +++ b/packages/cli/src/config/config.test.ts @@ -37,7 +37,7 @@ vi.mock('@google/gemini-cli-core', async () => { ...actualServer, loadEnvironment: vi.fn(), loadServerHierarchicalMemory: vi.fn( - (cwd, debug, fileService, extensionPaths) => + (cwd, debug, fileService, extensionPaths, _maxDirs) => Promise.resolve({ memoryContent: extensionPaths?.join(',') || '', fileCount: extensionPaths?.length || 0, @@ -491,6 +491,7 @@ describe('Hierarchical Memory Loading (config.ts) - Placeholder Suite', () => { respectGitIgnore: false, respectGeminiIgnore: true, }, + undefined, // maxDirs ); }); diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts index ec84db52..650f3aa2 100644 --- a/packages/cli/src/config/config.ts +++ b/packages/cli/src/config/config.ts @@ -225,6 +225,7 @@ export async function loadHierarchicalGeminiMemory( currentWorkingDirectory: string, debugMode: boolean, fileService: FileDiscoveryService, + settings: Settings, extensionContextFilePaths: string[] = [], fileFilteringOptions?: FileFilteringOptions, ): Promise<{ memoryContent: string; fileCount: number }> { @@ -242,6 +243,7 @@ export async function loadHierarchicalGeminiMemory( fileService, extensionContextFilePaths, fileFilteringOptions, + settings.memoryDiscoveryMaxDirs, ); } @@ -298,6 +300,7 @@ export async function loadCliConfig( process.cwd(), debugMode, fileService, + settings, extensionContextFilePaths, fileFiltering, ); diff --git a/packages/cli/src/config/settings.ts b/packages/cli/src/config/settings.ts index bc2206a7..c8885d48 100644 --- a/packages/cli/src/config/settings.ts +++ b/packages/cli/src/config/settings.ts @@ -100,6 +100,7 @@ export interface Settings { // Add other settings here. ideMode?: boolean; + memoryDiscoveryMaxDirs?: number; } export interface SettingsError { -- cgit v1.2.3