summaryrefslogtreecommitdiff
path: root/packages/cli/src/config/config.ts
diff options
context:
space:
mode:
authorPyush Sinha <[email protected]>2025-07-20 00:55:33 -0700
committerGitHub <[email protected]>2025-07-20 07:55:33 +0000
commita01b1219a3e814c370f6827b81c9118f2cbc7a64 (patch)
treeb4b406518a04f3cc4fc054b3b86612bf9b1ade51 /packages/cli/src/config/config.ts
parent76b935d598b895240b9bc2b182eb9f1e1b24be0d (diff)
feat: full implementation for .geminiignore in settings and respective tool calls (#3727)
Diffstat (limited to 'packages/cli/src/config/config.ts')
-rw-r--r--packages/cli/src/config/config.ts13
1 files changed, 13 insertions, 0 deletions
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts
index 2d33daa3..fd4907d0 100644
--- a/packages/cli/src/config/config.ts
+++ b/packages/cli/src/config/config.ts
@@ -15,8 +15,10 @@ import {
ApprovalMode,
DEFAULT_GEMINI_MODEL,
DEFAULT_GEMINI_EMBEDDING_MODEL,
+ DEFAULT_MEMORY_FILE_FILTERING_OPTIONS,
FileDiscoveryService,
TelemetryTarget,
+ FileFilteringOptions,
MCPServerConfig,
IDE_SERVER_NAME,
} from '@google/gemini-cli-core';
@@ -219,12 +221,14 @@ export async function loadHierarchicalGeminiMemory(
debugMode: boolean,
fileService: FileDiscoveryService,
extensionContextFilePaths: string[] = [],
+ fileFilteringOptions?: FileFilteringOptions,
): Promise<{ memoryContent: string; fileCount: number }> {
if (debugMode) {
logger.debug(
`CLI: Delegating hierarchical memory load to server for CWD: ${currentWorkingDirectory}`,
);
}
+
// Directly call the server function.
// The server function will use its own homedir() for the global path.
return loadServerHierarchicalMemory(
@@ -232,6 +236,7 @@ export async function loadHierarchicalGeminiMemory(
debugMode,
fileService,
extensionContextFilePaths,
+ fileFilteringOptions,
);
}
@@ -277,12 +282,19 @@ export async function loadCliConfig(
);
const fileService = new FileDiscoveryService(process.cwd());
+
+ const fileFiltering = {
+ ...DEFAULT_MEMORY_FILE_FILTERING_OPTIONS,
+ ...settings.fileFiltering,
+ };
+
// Call the (now wrapper) loadHierarchicalGeminiMemory which calls the server's version
const { memoryContent, fileCount } = await loadHierarchicalGeminiMemory(
process.cwd(),
debugMode,
fileService,
extensionContextFilePaths,
+ fileFiltering,
);
let mcpServers = mergeMcpServers(settings, activeExtensions);
@@ -405,6 +417,7 @@ export async function loadCliConfig(
// Git-aware file filtering settings
fileFiltering: {
respectGitIgnore: settings.fileFiltering?.respectGitIgnore,
+ respectGeminiIgnore: settings.fileFiltering?.respectGeminiIgnore,
enableRecursiveFileSearch:
settings.fileFiltering?.enableRecursiveFileSearch,
},