feat: Gemini CLI port, native skill architecture with single source of truth#73
Open
RemiAJR wants to merge 2 commits intogarrytan:mainfrom
Open
feat: Gemini CLI port, native skill architecture with single source of truth#73RemiAJR wants to merge 2 commits intogarrytan:mainfrom
RemiAJR wants to merge 2 commits intogarrytan:mainfrom
Conversation
Architecture: - install.sh generates Gemini-adapted skills from main repo SKILL.md at install time via Python transforms (strip Claude frontmatter, remove update-check block, replace $B discovery with Gemini path) - removes 6 duplicated skill dirs (ceo, eng-lead, ship, reviewer, qa, retro) — main repo is now the single source of truth, no manual sync needed - generated/ added to .gitignore (build artifact, not source) gstack-browse: - full rewrite: 14 commands (snapshot, is, count, wait, scroll, viewport, js, console, network, cookie-import, hover, press, select, links) - @en ref selector system for chained element interactions - annotated screenshots (-a flag), snapshot diff mode (-D), interactive index (-i), element clipping (-C) - 50k char truncation on text/html to prevent context overflow - chained command architecture: single Node.js process preserves DOM state gstack-setup-browser-cookies: - cookie attribute normalization (SameSite, Expires ms→s conversion) - MS_THRESHOLD extracted from magic number to named constant - removed placeholder asset/reference files TODOS.md: - Gemini port items marked completed - new TODO: Linux/Windows cookie decryption support Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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
Ports the gstack workflow suite to Gemini CLI using its native
.skillsystem.The key architectural decision: only the two Gemini-specific components
(
gstack-browseandgstack-setup-browser-cookies) live ingemini-port/. The 6 contentskills (
ship,reviewer,qa,retro,ceo,eng-lead) are generated at install timefrom the main repo's
SKILL.mdfiles viainstall.sh, avoiding duplication and keepingthe main repo as the single source of truth.
Changes
gemini-port/install.sh— strips Claude-specific frontmatter, removes update-checkblock, replaces
$Bbinary discovery, links all 8 skills viagemini skills linkgstack-browse/scripts/browse.js— full rewrite: 14 commands,@eNref selectors,annotated screenshots, diff mode, console/network capture, chained execution
preserving DOM state without a background daemon
gstack-setup-browser-cookies/scripts/setup-cookies.js— full cookie attributenormalization (
SameSite,HttpOnly,Expiresms→s)gemini-port/generated/gitignored (build artifact)Test plan
install.shtested end-to-end: npm deps, skill generation,gemini skills linkforall 8 skills
gemini -m gemini-2.5-flashgstack-browseverified on live sites (screenshot, navigation, DOM statepersistence)
gstack-setup-browser-cookiesverified with macOS Chrome cookie extractionbun testpasses,bun run skill:checkgreen