diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index b3d94bfd5f2..7f6139281fd 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,13 +1 @@ -# By default, require reviews from the maintainers for all files. * @google-gemini/gemini-cli-maintainers - -# Require reviews from the release approvers for critical files. -# These patterns override the rule above. -/package.json @google-gemini/gemini-cli-askmode-approvers -/package-lock.json @google-gemini/gemini-cli-askmode-approvers -/GEMINI.md @google-gemini/gemini-cli-askmode-approvers -/SECURITY.md @google-gemini/gemini-cli-askmode-approvers -/LICENSE @google-gemini/gemini-cli-askmode-approvers -/.github/workflows/ @google-gemini/gemini-cli-askmode-approvers -/packages/cli/package.json @google-gemini/gemini-cli-askmode-approvers -/packages/core/package.json @google-gemini/gemini-cli-askmode-approvers diff --git a/packages/core/src/core/contentGenerator.ts b/packages/core/src/core/contentGenerator.ts index 8d6a8ad4ae0..39945abf31c 100644 --- a/packages/core/src/core/contentGenerator.ts +++ b/packages/core/src/core/contentGenerator.ts @@ -58,6 +58,8 @@ export type ContentGeneratorConfig = { vertexai?: boolean; authType?: AuthType; proxy?: string; + googleCloudProject?: string; + googleCloudLocation?: string; }; export async function createContentGeneratorConfig( @@ -65,7 +67,10 @@ export async function createContentGeneratorConfig( authType: AuthType | undefined, ): Promise { const geminiApiKey = - (await loadApiKey()) || process.env['GEMINI_API_KEY'] || undefined; + config?.geminiApiKey || + process.env['GEMINI_API_KEY'] || + (await loadApiKey()) || + undefined; const googleApiKey = process.env['GOOGLE_API_KEY'] || undefined; const googleCloudProject = process.env['GOOGLE_CLOUD_PROJECT'] || @@ -99,6 +104,8 @@ export async function createContentGeneratorConfig( ) { contentGeneratorConfig.apiKey = googleApiKey; contentGeneratorConfig.vertexai = true; + contentGeneratorConfig.googleCloudProject = googleCloudProject; + contentGeneratorConfig.googleCloudLocation = googleCloudLocation; return contentGeneratorConfig; } @@ -170,6 +177,8 @@ export async function createContentGenerator( const googleGenAI = new GoogleGenAI({ apiKey: config.apiKey === '' ? undefined : config.apiKey, vertexai: config.vertexai, + project: config.googleCloudProject, + location: config.googleCloudLocation, httpOptions, }); return new LoggingContentGenerator(googleGenAI.models, gcConfig);