WIP: upgrade gemini-cli to v0.37.1 + multimodal & model switching#7
Draft
e-mon wants to merge 4 commits into
Draft
WIP: upgrade gemini-cli to v0.37.1 + multimodal & model switching#7e-mon wants to merge 4 commits into
e-mon wants to merge 4 commits into
Conversation
Discord does not send push notifications for message edits, so editing the progress message into the final reply left users unnotified for long-running tasks. Always delete and repost instead. Closes #6 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Upgrade from 0.34.0-nightly to 0.35.1 stable with patch reduction (5 → 4, patch 2 resolved upstream) and three new features: - Multimodal ACP prompts: images/audio sent inline as base64 prompt parts instead of @filepath references, eliminating tool call overhead - Dynamic model switching: unstable_setSessionModel ACP method exposed via geminiclaw_switch_model admin tool for mid-session model changes - Session info: parse available models/modes from session/new response Breaking change adaptations: - Package structure: bundle/gemini.js → dist/src/ split files - assertSandboxPatchApplied: simplified path resolution + full read - MCP tool FQN: activate_skill matching uses endsWith for mcp_ prefix - Patch 1: var → let (split files resolve scoping issue) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Gemini CLI v0.35.0 introduced network isolation for Docker sandbox (--internal flag on custom network). This blocks OAuth token exchange and MCP HTTP server access, causing EAI_AGAIN DNS failures. Set tools.sandbox.networkAccess=true in .gemini/settings.json when Docker sandbox is active to restore external network access. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bump @google/gemini-cli 0.35.1 → 0.37.1 with patch recreation for the new bundle/gemini.js single-file layout (v0.37+ re-bundles dist/src/*). Patch changes: - Patches 1,3,4,5 recreated against bundle/gemini.js (was dist/src/) - Patch 1 (usageMetadata) now coexists with upstream's native _meta.quota while preserving thoughtsTokenCount and cachedContentTokenCount tracking - Patch 2 (sub-agent MCP tool registration) stays resolved upstream GeminiClaw-side fixes: - assertSandboxPatchApplied: target path updated for bundle/ layout - Remove unused `join` import from node:path - Revert d1b597a networkAccess workaround (fixed upstream via #24055, cherry-picked into v0.35.3+, default is now networkAccess=true) - Exclude Playwright integration test from default vitest suite (requires browser binaries, flaky under concurrent test load) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
GitHatake
approved these changes
May 23, 2026
GitHatake
reviewed
May 23, 2026
GitHatake
left a comment
There was a problem hiding this comment.
Sorry, I approved by mistake! Please ignore my approval.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@google/gemini-clifrom0.34.0-nightly.20260307to0.35.1stablenetworkAccesstofalse, breaking OAuth and API calls (google-gemini/gemini-cli#23875)geminiclaw_switch_modeladmin tool viaunstable_setSessionModelsession/newresponsePatch changes
dist/src/split file structurevar→let(split files resolve scoping issue)Breaking change adaptations
assertSandboxPatchApplied: path resolution updated fordist/src/gemini.jsactivate_skillmatching:endsWith('_activate_skill')for MCP FQN prefixnetworkAccess: v0.35.0 introduced--internalnetwork isolation by default, which blocks all external traffic including Gemini API and OAuth. This is an upstream bug (google-gemini/gemini-cli#23875). Workaround: settools.sandbox.networkAccess=truein.gemini/settings.jsonviaensureGeminiSettings().Test plan
bun run buildpassesbun vitest run— 551 tests passtask start→ ACP connection + streaming responsegeminiclaw_switch_modeltool invocation🤖 Generated with Claude Code