summaryrefslogtreecommitdiff
path: root/packages/cli/src/config/config.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/config/config.ts')
-rw-r--r--packages/cli/src/config/config.ts21
1 files changed, 16 insertions, 5 deletions
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts
index d650a9af..a147bca8 100644
--- a/packages/cli/src/config/config.ts
+++ b/packages/cli/src/config/config.ts
@@ -59,6 +59,7 @@ export interface CliArgs {
experimentalAcp: boolean | undefined;
extensions: string[] | undefined;
listExtensions: boolean | undefined;
+ ideMode?: boolean | undefined;
ideModeFeature: boolean | undefined;
proxy: string | undefined;
includeDirectories: string[] | undefined;
@@ -224,7 +225,11 @@ export async function parseArguments(): Promise<CliArgs> {
});
yargsInstance.wrap(yargsInstance.terminalWidth());
- return yargsInstance.argv;
+ const result = yargsInstance.parseSync();
+
+ // The import format is now only controlled by settings.memoryImportFormat
+ // We no longer accept it as a CLI argument
+ return result as CliArgs;
}
// This function is now a thin wrapper around the server's implementation.
@@ -236,11 +241,12 @@ export async function loadHierarchicalGeminiMemory(
fileService: FileDiscoveryService,
settings: Settings,
extensionContextFilePaths: string[] = [],
+ memoryImportFormat: 'flat' | 'tree' = 'tree',
fileFilteringOptions?: FileFilteringOptions,
): Promise<{ memoryContent: string; fileCount: number }> {
if (debugMode) {
logger.debug(
- `CLI: Delegating hierarchical memory load to server for CWD: ${currentWorkingDirectory}`,
+ `CLI: Delegating hierarchical memory load to server for CWD: ${currentWorkingDirectory} (memoryImportFormat: ${memoryImportFormat})`,
);
}
@@ -251,6 +257,7 @@ export async function loadHierarchicalGeminiMemory(
debugMode,
fileService,
extensionContextFilePaths,
+ memoryImportFormat,
fileFilteringOptions,
settings.memoryDiscoveryMaxDirs,
);
@@ -266,9 +273,12 @@ export async function loadCliConfig(
argv.debug ||
[process.env.DEBUG, process.env.DEBUG_MODE].some(
(v) => v === 'true' || v === '1',
- );
-
- const ideMode = settings.ideMode ?? false;
+ ) ||
+ false;
+ const memoryImportFormat = settings.memoryImportFormat || 'tree';
+ const ideMode =
+ (argv.ideMode ?? settings.ideMode ?? false) &&
+ process.env.TERM_PROGRAM === 'vscode';
const ideModeFeature =
(argv.ideModeFeature ?? settings.ideModeFeature ?? false) &&
@@ -314,6 +324,7 @@ export async function loadCliConfig(
fileService,
settings,
extensionContextFilePaths,
+ memoryImportFormat,
fileFiltering,
);