diff --git a/packages/core/src/prompts/promptProvider.ts b/packages/core/src/prompts/promptProvider.ts index 91b2ba2b00..23dcc4bcbe 100644 --- a/packages/core/src/prompts/promptProvider.ts +++ b/packages/core/src/prompts/promptProvider.ts @@ -119,6 +119,7 @@ export class PromptProvider { })), coreMandates: this.withSection('coreMandates', () => ({ interactive: interactiveMode, + isGemini3: isModernModel, hasSkills: skills.length > 0, hasHierarchicalMemory, contextFilenames, @@ -175,7 +176,6 @@ export class PromptProvider { 'operationalGuidelines', () => ({ interactive: interactiveMode, - isGemini3: isModernModel, enableShellEfficiency: config.getEnableShellOutputEfficiency(), interactiveShellEnabled: config.isInteractiveShellEnabled(), }), @@ -196,9 +196,13 @@ export class PromptProvider { : this.withSection('finalReminder', () => ({ readFileToolName: READ_FILE_TOOL_NAME, })), - }; + } as snippets.SystemPromptOptions; - basePrompt = activeSnippets.getCoreSystemPrompt(options); + // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion + const getCoreSystemPrompt = activeSnippets.getCoreSystemPrompt as ( + options: snippets.SystemPromptOptions, + ) => string; + basePrompt = getCoreSystemPrompt(options); } // --- Finalization (Shell) --- diff --git a/packages/core/src/prompts/snippets.ts b/packages/core/src/prompts/snippets.ts index 1d6d21a363..0a5c3ba27c 100644 --- a/packages/core/src/prompts/snippets.ts +++ b/packages/core/src/prompts/snippets.ts @@ -35,6 +35,7 @@ export interface SystemPromptOptions { sandbox?: SandboxMode; interactiveYoloMode?: boolean; gitRepo?: GitRepoOptions; + finalReminder?: FinalReminderOptions; } export interface PreambleOptions { @@ -60,7 +61,6 @@ export interface PrimaryWorkflowsOptions { export interface OperationalGuidelinesOptions { interactive: boolean; - isGemini3: boolean; enableShellEfficiency: boolean; interactiveShellEnabled: boolean; } @@ -71,6 +71,10 @@ export interface GitRepoOptions { interactive: boolean; } +export interface FinalReminderOptions { + readFileToolName: string; +} + export interface PlanningWorkflowOptions { planModeToolsList: string; plansDir: string;