◉ANTIGRAVITY LABJP
Articles/Integrations
⬡ Integrations/2026-10-17Beginner

When Antigravity's Browser Agent Stops at the Login Screen: Four Things to Check

The browser agent came back with only a sign-in page. Here are four checks, built on the fact that it runs in a separate Chrome profile, to get its login state sorted.

antigravity466browser-agent3chrome-profiletroubleshooting116loginallowlist

One morning I asked the browser agent to read a number off an ad dashboard, and all it sent back was the word "Sign in." In my everyday Chrome I was logged in and the dashboard opened as usual. The agent, though, could only see the front door.

I assumed the agent was broken and rewrote my prompt three times. It didn't help. The problem wasn't the prompt: the Chrome the agent drives is not the Chrome I use every day.

So this is less a bug than a design decision. If you're stuck at the same spot, here are four things to check, in the order I'd check them.

Which Chrome is the agent actually touching?

According to the official docs, Antigravity's browser agent opens and controls a local Chrome, using a completely separate Chrome profile. That isolation is meant to protect your personal data, so cookies and sign-ins from your normal browsing are not shared.

Being logged in on your Chrome therefore says nothing about the agent. Polishing the prompt won't change that.

The good news is that sign-ins made inside the agent's profile persist. Per the docs, your accounts stay signed in the next time the browser opens.

Check 1: Are you looking at the separate-profile window?

If Chrome is already running when the agent launches its browser, it shows up as a separate app with its own Dock icon (on macOS). If Chrome isn't running, it looks almost the same as your default profile.

Looks can mislead, so I check the launch arguments instead.

# macOS / Linux: list the profile directories Chrome is using
# Output varies by environment. Two distinct --user-data-dir values means two profiles.
ps -axo command | grep -i "[u]ser-data-dir" | grep -o -- "--user-data-dir=[^ ]*" | sort -u

If you only see one value, the agent's browser may not be running yet. Have the agent open it, then run the command again.

I do this because I'd rather replace "which Chrome is it?" with a concrete directory name before touching any settings. One fact first, guesses later.

Check 2: Has a human signed in once inside that profile?

This fixes it most of the time. In the window the agent opened, sign in to the service yourself. If there is two-factor authentication, I'd rather walk through it by hand than hand it to the agent.

After that, you can ask for things assuming you're logged in. I start with a deliberately tiny request:

Open the dashboard URL for the service and tell me only the account name or email shown at the top of the page.
If a sign-in page appears, stop and report "not logged in".

It reads as little as possible and only tests the login state. Putting this step before any real extraction prevents the agent from reporting "nothing found" when it was simply logged out.

Check 3: Is the URL being blocked by access control?

The docs describe a two-layer model, a denylist and an allowlist, for which URLs the agent may visit. If pages after login won't open, you may be hitting this rather than a sign-in problem.

If the sign-in page loads but only the next domain fails, the service may bounce through a separate authentication domain, which large services often do. Check the official allowlist and denylist page and add only the domains you need. Not widening it too far is the main caution here.

Check 4: Did the profile location or a setting change?

The Browser section of the settings lets you change the profile location. If you moved it, you may be looking at a different profile from the one you signed in to earlier. If your login seems to have vanished, think back to whether you recently touched that setting.

The same section has a "Browser Tools" toggle. When it's off, the browser tools are disabled entirely, which is a problem before login even enters the picture.

What you seeSuspectFirst move
Only a sign-in page comes backNot signed in within the separate profileSign in by hand in the agent's window
Signed in, but one page won't openAllowlist / denylistFind the blocked domain and allow only that
Worked before, suddenly logged outProfile location changedCheck the location in the Browser section
Nothing browser-related runsBrowser Tools is offCheck the toggle

Where I draw the line

Once I understood it was a separate profile, my real worry was whether to sign in there with my main account. Using an admin account is the quick way.

I use an account limited to viewing instead. That keeps the damage small if the agent misreads something. What I hand the agent is the range it can see, not my login. I try to hold that line even on rushed days.

A page that looks empty because it hasn't finished rendering is a different problem. I wrote about that in Why Antigravity's Browser Sub-Agent Reads SPAs as Empty Pages, and about day-to-day use in Two Weeks of Letting Antigravity's Browser Sub-Agent Handle My Weekly AdMob Mediation Review.

One thing to do today

Have the agent open its browser, sign in to your service in that window yourself, then ask it for the account name only, using the short request above.

If it answers, your login state is in order. If not, work through Check 3 onward; as an indie developer running dashboards at Dolice, that's still the order I follow myself.

Share

Thank You for Reading

Antigravity Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • ✦Copy-paste ready implementation code
  • ✦New advanced guides published daily
  • ✦$5/mo or $10 for lifetime access
View Membership →

If you found this article helpful, a small tip ($1.50) would mean a lot to us. Your support helps keep this site ad-free and covers server and hosting costs.

Related Articles

⬡ Integrations2026-09-05
Pointing GOOGLE_GEMINI_BASE_URL at Your Own Gateway Does Not Change Who Holds the Key
I pointed the Antigravity CLI at a gateway of my own and recorded exactly which credentials travelled with it. Authorization is dropped across a cross-origin redirect, but the API key header survives every hop. Here is the measurement, and how I moved the key off my laptop.
⬡ Integrations2026-08-20
Find the one broken MCP entry before Antigravity starts, with a Node script under 60 lines
A single typo in your MCP settings can take every server down with it. Here is a small preflight script that catches the mistakes statically, the real output from a deliberately broken config, and the duplicate-key trap that JSON hides from you.
⬡ Integrations2026-05-24
Catching "Running but Doing Nothing" Antigravity Subagents — A 3-Layer Observability Pattern Across Six Production Apps
Running Antigravity subagents across six production apps surfaced more than ten silent failures every month — exits clean, logs green, but nothing actually happened. Here is the Heartbeat / Output Trace / Decision Log pattern I now use to catch them inside 60 seconds, with code, GCP costs, and four months of running numbers.