diff options
Diffstat (limited to 'packages/cli')
| -rw-r--r-- | packages/cli/src/config/config.ts | 2 | ||||
| -rw-r--r-- | packages/cli/src/gemini.tsx | 3 | ||||
| -rw-r--r-- | packages/cli/src/ui/App.test.tsx | 1 | ||||
| -rw-r--r-- | packages/cli/src/ui/hooks/slashCommandProcessor.ts | 4 | ||||
| -rw-r--r-- | packages/cli/src/ui/hooks/useLogger.ts | 3 |
5 files changed, 10 insertions, 3 deletions
diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts index c5788a67..0f7174fd 100644 --- a/packages/cli/src/config/config.ts +++ b/packages/cli/src/config/config.ts @@ -120,6 +120,7 @@ export async function loadCliConfig( settings: Settings, extensions: ExtensionConfig[], geminiIgnorePatterns: string[], + sessionId: string, ): Promise<Config> { loadEnvironment(); @@ -148,6 +149,7 @@ export async function loadCliConfig( const mcpServers = mergeMcpServers(settings, extensions); return new Config({ + sessionId, contentGeneratorConfig, embeddingModel: DEFAULT_GEMINI_EMBEDDING_MODEL, sandbox: argv.sandbox ?? settings.sandbox, diff --git a/packages/cli/src/gemini.tsx b/packages/cli/src/gemini.tsx index f0044780..eb4f6bb6 100644 --- a/packages/cli/src/gemini.tsx +++ b/packages/cli/src/gemini.tsx @@ -31,6 +31,7 @@ import { WebFetchTool, WebSearchTool, WriteFileTool, + sessionId, } from '@gemini-cli/core'; export async function main() { @@ -57,6 +58,7 @@ export async function main() { settings.merged, extensions, geminiIgnorePatterns, + sessionId, ); // Initialize centralized FileDiscoveryService @@ -180,5 +182,6 @@ async function loadNonInteractiveConfig( nonInteractiveSettings, extensions, config.getGeminiIgnorePatterns(), + config.getSessionId(), ); } diff --git a/packages/cli/src/ui/App.test.tsx b/packages/cli/src/ui/App.test.tsx index 0fcb0e61..fefb2fe2 100644 --- a/packages/cli/src/ui/App.test.tsx +++ b/packages/cli/src/ui/App.test.tsx @@ -190,6 +190,7 @@ describe('App UI', () => { userMemory: '', geminiMdFileCount: 0, showMemoryUsage: false, + sessionId: 'test-session-id', // Provide other required fields for ConfigParameters if necessary }) as unknown as MockServerConfig; diff --git a/packages/cli/src/ui/hooks/slashCommandProcessor.ts b/packages/cli/src/ui/hooks/slashCommandProcessor.ts index 4d677f1e..69fb6d06 100644 --- a/packages/cli/src/ui/hooks/slashCommandProcessor.ts +++ b/packages/cli/src/ui/hooks/slashCommandProcessor.ts @@ -493,7 +493,7 @@ Add any other context about the problem here. description: 'save conversation checkpoint. Usage: /save [tag]', action: async (_mainCommand, subCommand, _args) => { const tag = (subCommand || '').trim(); - const logger = new Logger(); + const logger = new Logger(config?.getSessionId() || ''); await logger.initialize(); const chat = await config?.getGeminiClient()?.getChat(); const history = chat?.getHistory() || []; @@ -519,7 +519,7 @@ Add any other context about the problem here. 'resume from conversation checkpoint. Usage: /resume [tag]', action: async (_mainCommand, subCommand, _args) => { const tag = (subCommand || '').trim(); - const logger = new Logger(); + const logger = new Logger(config?.getSessionId() || ''); await logger.initialize(); const conversation = await logger.loadCheckpoint(tag); if (conversation.length === 0) { diff --git a/packages/cli/src/ui/hooks/useLogger.ts b/packages/cli/src/ui/hooks/useLogger.ts index ea6227ce..ea6d6057 100644 --- a/packages/cli/src/ui/hooks/useLogger.ts +++ b/packages/cli/src/ui/hooks/useLogger.ts @@ -5,6 +5,7 @@ */ import { useState, useEffect } from 'react'; +import { sessionId } from '@gemini-cli/core'; import { Logger } from '@gemini-cli/core'; /** @@ -14,7 +15,7 @@ export const useLogger = () => { const [logger, setLogger] = useState<Logger | null>(null); useEffect(() => { - const newLogger = new Logger(); + const newLogger = new Logger(sessionId); /** * Start async initialization, no need to await. Using await slows down the * time from launch to see the gemini-cli prompt and it's better to not save |
