From c730ad568e52fad7d29c0c93d92e60397b87672d Mon Sep 17 00:00:00 2001 From: Next2012 <32056251+Next2012@users.noreply.github.com> Date: Wed, 11 Mar 2026 09:17:55 +0800 Subject: [PATCH] feat: add gemini yolo mode (#280) --- cli/src/gemini/geminiRemoteLauncher.ts | 3 ++- cli/src/gemini/utils/geminiBackend.ts | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/cli/src/gemini/geminiRemoteLauncher.ts b/cli/src/gemini/geminiRemoteLauncher.ts index 71066aa8..660d5524 100644 --- a/cli/src/gemini/geminiRemoteLauncher.ts +++ b/cli/src/gemini/geminiRemoteLauncher.ts @@ -56,7 +56,8 @@ class GeminiRemoteLauncher extends RemoteLauncherBase { token: runtimeConfig.token, resumeSessionId: session.sessionId, hookSettingsPath: this.hookSettingsPath, - cwd: session.path + cwd: session.path, + permissionMode: session.getPermissionMode() as string | undefined }); this.backend = backend; diff --git a/cli/src/gemini/utils/geminiBackend.ts b/cli/src/gemini/utils/geminiBackend.ts index 5e2b946d..392f8fc9 100644 --- a/cli/src/gemini/utils/geminiBackend.ts +++ b/cli/src/gemini/utils/geminiBackend.ts @@ -17,6 +17,7 @@ export function createGeminiBackend(opts: { resumeSessionId?: string | null; hookSettingsPath?: string; cwd?: string; + permissionMode?: string; }): AcpSdkBackend { const { model, token } = resolveGeminiRuntimeConfig({ model: opts.model, @@ -30,6 +31,9 @@ export function createGeminiBackend(opts: { if (model) { args.push('--model', model); } + if (opts.permissionMode === 'yolo' || opts.permissionMode === 'safe-yolo') { + args.push('--yolo'); + } const env = buildGeminiEnv({ model,