Repository navigation
fix(cli): support Antigravity global config skills discovery and mirroring - #7023
davidcastilloc wants to merge 2 commits into
Conversation
miguel-heygen
left a comment
There was a problem hiding this comment.
Reviewed exact head 1a9910e1f93802067e25a28ffc44b15a6769d7a3 (base 6fd96ddd041964caa7459aa195259a9b5deea4c4).
packages/cli/src/utils/skillsMirror.ts:62,319: the Antigravity config path goes through the existing installed-agent marker, attributed-skill selection, protected-store checks and link/copy implementation.packages/cli/src/utils/skillsManifest.ts:289,315: multi-segment HOME registry paths are added only in global scope, deduplicated by joined path and sorted with the existing precedence. Explicit Antigravity--dirattribution is corrected; project scanning and the existing XDG resolution are preserved.
No code blocker found across all four changed files and the check/update consumers. All four changed file blobs were independently matched to GitHub's blob SHAs. Using the existing local Vitest environment and isolated temporary HOME, both exact-source test files passed: 82/82 (including the five added cases). Local oxlint passed. Formatting check passed with the existing tool's default configuration; this is not a claim of full repository CI.
CI qualification: GitHub currently reports WIP and Graphite checks successful, but hosted CI and the other workflows are action_required for this fork; they have not executed. This is source/focused-test approval, not a claim that hosted checks passed or authorization to bypass them. No dependency install, merge or deployment performed.
Verdict: APPROVE
Reasoning: The bounded directory additions reuse existing mirror safeguards and preserve discovery scope/precedence, with focused regressions passing locally. Hosted validation remains separate and must run through the normal fork workflow.
— Magi
Resumen
Corrige el descubrimiento y espejado global de skills en
@hyperframes/clipara soportar el directorio real de configuracion global de Antigravity (~/.gemini/config/skills) asi como las rutas globales multi-segmento definidas enAGENT_GLOBAL_DIRS.Problema
skillsMirror.ts):vercel-labs/skills(AGENT_GLOBAL_DIRS) registra.gemini/antigravity/skillsy.gemini/antigravity-cli/skills, pero el sistema de personalizacion global de Antigravity (agy) carga sus skills globales desde~/.gemini/config/skills.~/.gemini/configinicializado,mirrorGlobalSkills()no replicaba las skills hacia~/.gemini/config/skills.discoverSkillRoots(skillsManifest.ts):discoverSkillRoots(base, scope)escaneaba unicamente subdirectorios de un nivel (<base>/<host>/skillsy<base>/.config/<host>/skills).hyperframes skills checkno detectaba instalaciones globales alojadas en rutas de multiples segmentos bajo$HOMEcomo~/.gemini/config/skills,~/.gemini/antigravity/skills,~/.gemini/antigravity-cli/skillso~/.codeium/windsurf/skills.agentFromDir()inferia"config"en lugar de"antigravity"para rutas terminadas en.gemini/config/skills.Solucion
packages/cli/src/utils/skillsMirror.ts:EXTRA_GLOBAL_DIRSincluyendo{ agent: "antigravity", base: "home", sub: ".gemini/config/skills" }e incorpora estas entradas en el bucle demirrorGlobalSkills().packages/cli/src/utils/skillsManifest.ts:agentFromDir()para identificar.gemini/config/skillscomo"antigravity".discoverSkillRoots()cuandoscope === "global"para inspeccionar tambien las rutasbase === "home"de mas de dos segmentos definidas enAGENT_GLOBAL_DIRSyEXTRA_GLOBAL_DIRS, evitando duplicados mediante un conjunto de rutas visitadas.packages/cli/src/utils/skillsMirror.test.ts: Verifica quemirrorGlobalSkills()espeja correctamente hacia~/.gemini/config/skillscuando existe~/.gemini/config.packages/cli/src/utils/skillsManifest.test.ts: Verifica quecheckSkills()detecta instalaciones globales en.gemini/config/skills,.gemini/antigravity/skills,.gemini/antigravity-cli/skillsy.codeium/windsurf/skills.