diff --git a/packages/types/src/provider-settings.ts b/packages/types/src/provider-settings.ts
index e940ececd1..70fbc98587 100644
--- a/packages/types/src/provider-settings.ts
+++ b/packages/types/src/provider-settings.ts
@@ -161,6 +161,7 @@ const geminiSchema = apiModelIdProviderModelSchema.extend({
const geminiCliSchema = apiModelIdProviderModelSchema.extend({
geminiCliOAuthPath: z.string().optional(),
+ geminiCliDefaultProject: z.string().optional(),
geminiCliProjectId: z.string().optional(),
})
diff --git a/src/api/providers/gemini-cli.ts b/src/api/providers/gemini-cli.ts
index 6e265511e4..f11ef2aebb 100644
--- a/src/api/providers/gemini-cli.ts
+++ b/src/api/providers/gemini-cli.ts
@@ -140,7 +140,7 @@ export class GeminiCliHandler extends BaseProvider implements SingleCompletionHa
}
// Start with a default project ID (can be anything for personal OAuth)
- const initialProjectId = "default"
+ const initialProjectId = this.options.geminiCliDefaultProject || "default"
// Prepare client metadata
const clientMetadata = {
diff --git a/webview-ui/src/components/settings/providers/GeminiCli.tsx b/webview-ui/src/components/settings/providers/GeminiCli.tsx
index 9c1654e4bb..04e052e566 100644
--- a/webview-ui/src/components/settings/providers/GeminiCli.tsx
+++ b/webview-ui/src/components/settings/providers/GeminiCli.tsx
@@ -40,6 +40,18 @@ export const GeminiCli = ({ apiConfiguration, setApiConfigurationField }: Gemini
{t("settings:providers.geminiCli.oauthPathDescription")}
+