mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-05-12 21:03:05 -07:00
1.9 KiB
1.9 KiB
Mission: GCE Container-First Refactor 🚀
Current State
- Architecture: Persistent GCE VM (
gcli-offload-mattkorwel) with Fast-Path SSH (gcli-worker). - Logic: Decoupled scripts in
~/.offload/scripts, using Git Worktrees for concurrency. - Auth: Scoped GitHub PATs mirrored via setup.
The Goal (Container-OS Transition)
Shift from a "Manual VM" to an "Invisible VM" (Container-Optimized OS) that runs our Sandbox Docker image directly.
Planned Changes
- Multi-Stage Dockerfile: ✅ VERIFIED
- Optimize
.gcp/Dockerfile.maintainerto includetsx,vitest,gh, and system dependencies (libsecret,build-essential). - Verified locally: Node v20, GH CLI, Git, TSX, and Vitest are functional with required headers.
- Optimize
- Dedicated Pipeline:
- Use
.gcp/maintainer-worker.ymlfor isolated PR builds. - Tagging Strategy: Dual-tag images with
${SHORT_SHA}(immutable) and${CLEAN_BRANCH}(latest-on-branch).
- Use
- Setup Script (
setup.ts):- Refactor
provisionto usegcloud compute instances create-with-container. - Point to the new
maintainerimage in Artifact Registry.
- Refactor
- Orchestrator (
orchestrator.ts):- Update SSH logic to include the
--containerflag.
- Update SSH logic to include the
GCP Console Setup (Manual Action)
To enable the automatic maintainer image builds on PRs:
- Create Trigger: Go to Cloud Build > Triggers and create a new trigger.
- Event: Set to Pull Request.
- Source: Select the
google-gemini/gemini-clirepository. - Configuration: Point to
.gcp/maintainer-worker.ymlin the repo. - Filters: Set the base branch to
^main$. - Service Account: Ensure it has
Artifact Registry Writerpermissions.
How to Resume
- Load the checkpoint:
/checkpoint save offload-container-refactor(if available). - Tell Gemini: "Read .gemini/skills/offload/NEXT_MISSION.md and start Phase 3: Refactoring setup.ts for Container-OS."