summaryrefslogtreecommitdiff
path: root/packages/cli/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src')
-rw-r--r--packages/cli/src/config/config.test.ts12
-rw-r--r--packages/cli/src/config/config.ts9
-rw-r--r--packages/cli/src/ui/App.tsx1
3 files changed, 17 insertions, 5 deletions
diff --git a/packages/cli/src/config/config.test.ts b/packages/cli/src/config/config.test.ts
index 313deedf..1d8c486a 100644
--- a/packages/cli/src/config/config.test.ts
+++ b/packages/cli/src/config/config.test.ts
@@ -33,11 +33,12 @@ vi.mock('@gemini-cli/core', async () => {
return {
...actualServer,
loadEnvironment: vi.fn(),
- loadServerHierarchicalMemory: vi.fn((cwd, debug, extensionPaths) =>
- Promise.resolve({
- memoryContent: extensionPaths?.join(',') || '',
- fileCount: extensionPaths?.length || 0,
- }),
+ loadServerHierarchicalMemory: vi.fn(
+ (cwd, debug, fileService, extensionPaths) =>
+ Promise.resolve({
+ memoryContent: extensionPaths?.join(',') || '',
+ fileCount: extensionPaths?.length || 0,
+ }),
),
};
});
@@ -239,6 +240,7 @@ describe('Hierarchical Memory Loading (config.ts) - Placeholder Suite', () => {
expect(ServerConfig.loadServerHierarchicalMemory).toHaveBeenCalledWith(
expect.any(String),
false,
+ expect.any(Object),
[
'/path/to/ext1/GEMINI.md',
'/path/to/ext3/context1.md',
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts
index 9534f403..eef3c0f3 100644
--- a/packages/cli/src/config/config.ts
+++ b/packages/cli/src/config/config.ts
@@ -17,6 +17,7 @@ import {
GEMINI_CONFIG_DIR as GEMINI_DIR,
DEFAULT_GEMINI_MODEL,
DEFAULT_GEMINI_EMBEDDING_MODEL,
+ FileDiscoveryService,
} from '@gemini-cli/core';
import { Settings } from './settings.js';
import { getEffectiveModel } from '../utils/modelCheck.js';
@@ -114,6 +115,7 @@ async function parseArguments(): Promise<CliArgs> {
export async function loadHierarchicalGeminiMemory(
currentWorkingDirectory: string,
debugMode: boolean,
+ fileService: FileDiscoveryService,
extensionContextFilePaths: string[] = [],
): Promise<{ memoryContent: string; fileCount: number }> {
if (debugMode) {
@@ -126,6 +128,7 @@ export async function loadHierarchicalGeminiMemory(
return loadServerHierarchicalMemory(
currentWorkingDirectory,
debugMode,
+ fileService,
extensionContextFilePaths,
);
}
@@ -154,10 +157,15 @@ export async function loadCliConfig(
const extensionContextFilePaths = extensions.flatMap((e) => e.contextFiles);
+ const fileService = new FileDiscoveryService(process.cwd());
+ await fileService.initialize({
+ respectGitIgnore: settings.fileFiltering?.respectGitIgnore,
+ });
// Call the (now wrapper) loadHierarchicalGeminiMemory which calls the server's version
const { memoryContent, fileCount } = await loadHierarchicalGeminiMemory(
process.cwd(),
debugMode,
+ fileService,
extensionContextFilePaths,
);
@@ -201,6 +209,7 @@ export async function loadCliConfig(
process.env.http_proxy,
cwd: process.cwd(),
telemetryOtlpEndpoint: process.env.OTEL_EXPORTER_OTLP_ENDPOINT,
+ fileDiscoveryService: fileService,
});
}
diff --git a/packages/cli/src/ui/App.tsx b/packages/cli/src/ui/App.tsx
index c022fb31..7d8ef463 100644
--- a/packages/cli/src/ui/App.tsx
+++ b/packages/cli/src/ui/App.tsx
@@ -139,6 +139,7 @@ const App = ({ config, settings, startupWarnings = [] }: AppProps) => {
const { memoryContent, fileCount } = await loadHierarchicalGeminiMemory(
process.cwd(),
config.getDebugMode(),
+ await config.getFileService(),
);
config.setUserMemory(memoryContent);
config.setGeminiMdFileCount(fileCount);