Repository navigation
feat: v2.8.3 – Antigravity multi-account launcher, terminal links in Chrome - #1
Merged
Merged
Conversation
…in Chrome Home gets an "Antigravity starten" button that opens one agy terminal per account saved in Settings (up to 6, grid up to 3x2). Each account runs with its own home folder; SSH env markers make agy keep its OAuth token in a file there instead of the shared Windows credential entry, so logins stay separate and persistent. Terminal links (e.g. the agy Google login) and window.open popups now open in Chrome (default browser as fallback) instead of an app window. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Removing an account no longer drops the entry when deleting its profile folder failed, so the stored token cannot be orphaned. A failed Chrome spawn now falls back to the default browser instead of raising an unhandled 'error' event in the main process. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
codeforge opens a menu: 1 starts agy with the main login, 2 starts one of the saved accounts, 3 adds an account, 4 deletes one. Each account runs with its own HOME under ~/.codeforge/agy-accounts, like the desktop app, and agy always starts with --dangerously-skip-permissions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Menu: 1 pick an account, 2 settings (add, rename, log out, delete), 3 all accounts in a tiled grid, 4 running sessions. Every start runs in a tmux session, so agy keeps running when the SSH connection drops and only ends when it is closed. Co-Authored-By: Claude Opus 5.5 <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.
What changed
Antigravity multi-account launcher
src/components/AgyAccounts.tsx): add, rename and remove up to 6 accounts. Each row shows the signed-in e-mail (read from the agy log in that profile) and has buttons to start only that account or log it out.agytab per account. The terminal grid now holds up to 6 panes (3×2 for 5–6).TerminalTab.agyAccountIdis passed throughshell:create. The main process then runs that PTY with:USERPROFILE/HOMEset touserData/agy-accounts/<id>SSH_CONNECTION/SSH_CLIENT/SSH_TTYvariables, so agy stores its token in a file belowHOMEGIT_CONFIG_GLOBAL/NPM_CONFIG_USERCONFIGpointing back to the real config filesagy-accounts:statusandagy-accounts:remove-profile. Logout kills that account's PTYs, waits for them to exit, then deletes the profile folder.Terminal links open in Chrome
linkHandler(OSC 8 links, which is how agy prints its login URL) and the main window'ssetWindowOpenHandlernow send http(s) URLs to Chrome viashell:open-in-chrome, falling back to the default browser. Before, they opened as an extra Electron window.Version bumped to 2.8.3.
Why
agy keeps its OAuth token in one fixed Windows credential entry (
gemini:antigravity). Only one account can be signed in at a time, so switching accounts after hitting a rate limit means logging out and in again. When agy sees an SSH session, it logs "Using file-based token storage because SSH session detected" and stores the token as a file belowHOME. That gives each account its own persistent login without touching the user's main agy login.Notes for reviewers
/^[a-z0-9][a-z0-9-]{0,63}$/i) and the resolved path must stay inside the accounts root. Tested:..,../../x,a/b,C:and''are all rejected.icaclsACL that grants the current user only.settings.jsonandGEMINI.md, never login data.maincommit6c30262(ssh2 dependency safeguard).Testing
tsc --noEmitandnode --check electron/main.cjspass.--user-data-dir), driven over CDP:🤖 Generated with Claude Code