Skip to content

fix: gemini platform global install now writes to ~/.gemini/config/skills/#1185

Open
matiasduartee wants to merge 10 commits into
Graphify-Labs:v8from
matiasduartee:fix-gemini-skill-dst
Open

fix: gemini platform global install now writes to ~/.gemini/config/skills/#1185
matiasduartee wants to merge 10 commits into
Graphify-Labs:v8from
matiasduartee:fix-gemini-skill-dst

Conversation

@matiasduartee

@matiasduartee matiasduartee commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

@safishamsi
Fixes the issue where graphify install --platform gemini writes to ~/.agents/ or ~/.gemini/skills/ instead of ~/.gemini/config/skills/ globally. This aligns it with the Agent Kit and Antigravity conventions, matching the fix introduced in #1079.

Additional changes in this PR:

  • Updated antigravity and antigravity-windows platforms to exclusively use the global ~/.gemini/config/skills/ path (ignoring --project), since the Antigravity CLI, IDE, and v2.0 all share this single global directory now.
  • Resolved a merge conflict in tests/test_install.py caused by recent upstream changes (codebuddy).
  • Updated the unit tests for antigravity install/uninstall to reflect the new global-only path behavior.

@matiasduartee matiasduartee changed the base branch from main to v8 June 7, 2026 19:45
@matiasduartee

Copy link
Copy Markdown
Contributor Author

Hi @safishamsi ! I've updated the PR to resolve the merge conflicts and fix the failing tests.

Here is a summary of the fixes applied:

Merge Conflicts: Resolved conflicts in graphify/main.py to properly integrate the new agent platform structures.
Bug Fix (UnboundLocalError): Fixed a scoping issue in the uninstall process that caused skill_dst to be referenced before assignment when uninstalling from a project directory.
Test Paths Adjustments: Updated test_install_roundtrip.py and test_install_references.py. The assertions were assuming all project installations would be scoped under the project directory, which caused false negatives for platforms like gemini and antigravity (since they are designed to always use the global config path).
Test Isolation: Added a mock for the %LOCALAPPDATA% environment variable during tests on Windows so that the hermes platform tests run safely inside the tmp_path without leaking into the host's actual AppData folder.
The CI is now fully green! Let me know if there's anything else needed for this to be merged.

@matiasduartee

Copy link
Copy Markdown
Contributor Author

@safishamsi could you take a look at this one when you get a chance? 🙏

Context — this reflects a real change on Google's side. Since the launch of Antigravity 2.0, the whole Gemini/Antigravity ecosystem consolidated its global config under ~/.gemini/config/:

  • Antigravity IDE, the Antigravity CLI, and the Gemini CLI all read global skills from ~/.gemini/config/skills/ — on every OS, for every workspace.
  • The previous ~/.gemini/skills/ path is no longer scanned, so a skill installed there is silently ignored.

I confirmed this on a live install (Windows): ~/.gemini/config/skills/ exists and holds the actually-loaded skills (agents, workflows, config.json all live under ~/.gemini/config/ too), while ~/.gemini/skills/ does not exist at all.

What this PR does

  • Route gemini (and antigravity / antigravity-windows) global installs to ~/.gemini/config/skills/graphify/SKILL.md, matching Google's current layout.
  • Guard _antigravity_uninstall with if not project: so a project-scope uninstall never deletes the shared global skill out from under other workspaces.

I've rebased/merged on top of the latest v8 (including the install.py extraction refactor), so it's up to date and the conflict is resolved. The current install path in main/v8 points at a directory Google no longer reads, so users on Antigravity 2.0 end up with a skill that never loads. Happy to adjust naming/structure if you'd prefer a different shape. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant