fix(brain): drop --approval-mode yolo from Gemini CLI search

yolo auto-approves every tool call, so a real-time search query could in
principle trigger write/shell tools. Default approval mode still auto-runs the
CLI's read-only web search in headless mode but never silently approves
destructive tools. Verified end-to-end: a grounded query returns a current
answer in ~23s with the account OAuth login. Test asserts yolo is absent;
specs and docs/llm_contexts.md updated.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
javis-bot
2026-06-11 00:58:46 +09:00
parent b88def6756
commit f54e2a46ae
5 changed files with 14 additions and 5 deletions

View File

@@ -17,7 +17,7 @@ Before the DuckDuckGo cascade, `run()` routes by the env flag `STREAM_BROWSER`
- **false**: Gemini answers, with the sub-mode chosen by `cfg.gemini_auth`
(env `GEMINI_AUTH`, default `oauth`):
- `oauth` (default): `gemini_cli_search()` shells out to the Gemini CLI
(`gemini -p <query> -o json --skip-trust --approval-mode yolo`) using the
(`gemini -p <query> -o json --skip-trust`, default approval mode) using the
user's Google-account login and the CLI's built-in web-search grounding.
`GEMINI_API_KEY` / `GOOGLE_API_KEY` are stripped from the child env so the
CLI uses the account login, not API-key auth. Requires a one-time