Skip to main content
See your Google Antigravity sessions on your iPhone — on the Lock Screen and in the Dynamic Island. When Antigravity wants to run a command or change a file, your phone asks you to Allow or Deny it. You can also stop a session, or send it a message, from your phone. It works with the Antigravity desktop app and with the agy command-line tool.
Sessions is part of Nomo Pro. You need Nomo 2.3.5 or later on your phone and plugin 2.3.5 or later on your Mac.

Set it up

1

Open Terminal

On your Mac, open the Terminal app. It’s in Applications → Utilities.
2

Run the installer

Copy this line, paste it into Terminal, and press Return:
No bunx? Use npx nomo-ai --antigravity instead.You should see:
3

Restart Antigravity

Quit Antigravity completely, then open it again. If you use agy, close it and start it again too.
Don’t skip this. Nomo stays off until Antigravity restarts.
4

Type /nomo-pair

In an Antigravity chat, type this and send it:
5

Choose Allow

Antigravity asks before it runs a Nomo command. Choose Allow.You should see a page with a QR code open in your browser.In the Antigravity desktop app, the first Nomo command may show one line that says operation not permitted. That’s normal — Antigravity tries again outside its sandbox by itself. Just wait.
6

Scan the QR code

On your iPhone, open Nomo → Sessions → Pair a Computer, and scan the QR code.You should see, in Antigravity: “Done! This computer is connected to your phone.”
7

Send a message in Antigravity

Start a chat and send anything.You should see the session appear in Nomo, under the Antigravity tab of your computer. No Antigravity tab? Tap the + button (Choose agents) and turn Antigravity on.
The Choose agents menu with Claude Code, Codex and Antigravity ticked, and OpenCode and Cursor untickedThe Choose agents menu with Claude Code, Codex and Antigravity ticked, and OpenCode and Cursor unticked

Choose agents, from the + button. Antigravity is ticked, so it gets its own tab.

Already paired from Claude Code, Codex, OpenCode or Cursor? One pairing covers the whole computer. Skip steps 4–6 — the installer says “type /nomo-status to check” instead.
No browser on this computer? Type /nomo-pair code instead. Antigravity shows a short code. On your iPhone, open Nomo → Sessions → Pair a Computer → Enter Code, and type it. The code expires in 10 minutes.
Don’t import Nomo’s Claude Code plugin into Antigravity (for example with agy plugin import claude). Every session would show up twice. If you did, the installer warns you:
To fix it, run this in Terminal, then restart Antigravity:

Commands

Type these in an Antigravity chat. Each time, Antigravity asks first — choose Allow. When everything is fine, /nomo-status shows one line like this:
If something is wrong, it adds a line that says what to do. These commands only ask in Antigravity. They never put a card on your phone. The connection and the approvals switch are shared by every coding app on this computer. Turning approvals off here turns them off for Claude Code and Codex too.

What you see

  • A session appears when you send your first message, not when you open a chat.
  • It shows Running while Antigravity works, and Done when it finishes.
  • Its name is Antigravity’s own chat title. Until Antigravity has made one, it uses your first message, or else the folder name.
  • The badge shows the model Antigravity is using.
  • The Dynamic Island works as it does for the other agents.

Answering from your phone

When Antigravity wants to run a command or create or change a file, your phone asks you. Reading and searching files never reach your phone. Touch and hold the session, or use the island, and choose:
An approval card for the Antigravity session Fix token refresh race, asking to run npm test, with Deny, Allow and Deny with note buttonsAn approval card for the Antigravity session Fix token refresh race, asking to run npm test, with Deny, Allow and Deny with note buttons

An Antigravity session asking to run a command.

  • Allow — Antigravity goes ahead.
  • Deny — Antigravity skips it and carries on.
  • Deny with note… — skips it, and tells Antigravity why in your own words.
More in Answering from your phone. Good to know:
  • Your own Antigravity rules come first. Anything your rules block stays blocked — tapping Allow on your phone can never override it. In agy, commands your rules already allow run without asking your phone.
  • In the desktop app, everything asks your phone. Nomo can’t see the desktop app’s permission settings, so every command and file change comes to your phone.
  • No phone? No problem. If your phone can’t be reached, or approvals are paused, Antigravity asks on the computer, just as it would without Nomo.
  • Stopped the chat on the computer? The card disappears from your phone by itself.
  • The terminal stays quiet while it waits. While a request waits for your phone, the terminal shows nothing. That’s expected — the request is on your phone.
  • Reply sheet open? The request also shows up in the chat, and you can answer it there — see Approving from the chat.

Interrupt

Tap Interrupt on a Running Antigravity session to stop it. It needs the green ⚡ Local chip. Antigravity finishes the step it’s on, then stops, and the session shows Done. The chat stays open — send a new message to carry on.

Reply from your phone

Send a message to an Antigravity session from your iPhone — a correction, a next step, or “carry on”. It reaches Antigravity as if you’d typed it at the Mac. The reply screen is a chat: your messages are on the right, and Antigravity’s requests appear on the left.
For now, your iPhone and your Mac must be on the same Wi-Fi, with Local network turned on in Nomo. This changes with an upcoming server update, after which replies work from anywhere.
1

Open the session

In Nomo, open your computer and choose the Antigravity tab. Tap the session’s name.You should see the session open up, with a blue Reply button under its details. A running session also has a red Interrupt button.
An open Antigravity session row called Fix token refresh race, showing its model, folder, agy CLI, and two buttons: Interrupt and ReplyAn open Antigravity session row called Fix token refresh race, showing its model, folder, agy CLI, and two buttons: Interrupt and Reply

A running Antigravity session, opened, with Interrupt and Reply under its details.

2

Tap Reply

You should see a sheet slide up with the session’s name at the top and a box that says Message this session.To close the sheet at any time, tap ✕ at the top right.
3

Type your message and send it

Type your message, then tap the arrow.You should see your message as a bubble on the right, with a short status line under it. The status tells you where the message is — see the list below.
The reply sheet for Fix token refresh race, with one message marked Delivered and one marked Queued for the next stepThe reply sheet for Fix token refresh race, with one message marked Delivered and one marked Queued for the next step

Two messages: the first has reached Antigravity, the second waits for its next step and can still be cancelled.

Approving from the chat

When Antigravity asks to run a command while the reply sheet is open, you can answer right there in the chat.
1

Find the request

Look for a bubble on the left, from Antigravity. It says Wants to run:, then the command, then two buttons: Deny and Allow.
The reply sheet for Fix token refresh race showing Waiting for your approval, with a bubble from Antigravity: Wants to run: npm test -- auth/refresh.test.ts, with Deny and Allow buttonsThe reply sheet for Fix token refresh race showing Waiting for your approval, with a bubble from Antigravity: Wants to run: npm test -- auth/refresh.test.ts, with Deny and Allow buttons

Antigravity asks to run a command, inside the reply chat.

2

Tap Allow or Deny

Tap Allow to let Antigravity run it. Tap Deny to skip it.You should see the bubble shrink to one line that says what happened — see What an answered request looks like.
The Deny and Allow buttons in the bubble never send what you typed in the box. Your typed text stays in the box.

Deny & send

Want to say no and tell Antigravity what to do instead? Do both with one button.
1

Type your reason

While the request is waiting, type in the box what Antigravity should do instead — for example, “Use bun, not npm”.You should see the send arrow turn into a red Deny & send button, and the line Sends as the reason for Deny above the box.
The reply sheet with a pending request to run npm test, the text Use bun, not npm, and only run the refresh tests. typed in the box, a red Deny & send button, and the line Sends as the reason for DenyThe reply sheet with a pending request to run npm test, the text Use bun, not npm, and only run the refresh tests. typed in the box, a red Deny & send button, and the line Sends as the reason for Deny

Text typed while a request waits: the send button becomes Deny & send.

2

Tap Deny & send

Antigravity skips the command and reads your text as the reason.You should see the request change to ✕ Denied, with your reason quoted under it.
A reason can be up to 500 characters. If you type more, the button stays a normal send arrow. Your message waits, and goes in right after you answer the request.

What an answered request looks like

What the status under a message means

Where it works

It depends on where you run Antigravity. With the agy command-line tool:
  • While it’s working — your message arrives at its next step.
  • Finished, and agy is closed — your Mac starts the session again with your message. You’ll see Waking your Mac…, then Resumed on your Mac.
  • Finished, but agy is still open — your message waits. It shows Queued for the next step until you send your next message in agy on the Mac; then Antigravity reads both.
With the Antigravity desktop app:
  • While it’s working — your message arrives at its next step.
  • Finished — only the Mac can continue it. Reply is greyed out, and the line under it says Antigravity app sessions can only continue on your Mac.
An open Antigravity app session marked Done, with a greyed-out Reply button and the line Antigravity app sessions can only continue on your MacAn open Antigravity app session marked Done, with a greyed-out Reply button and the line Antigravity app sessions can only continue on your Mac

A finished session from the desktop app: Reply is greyed out, and the line under it explains why.

Good to know:
  • Up to 4,000 characters per message. The box stops taking text there.
  • Stop always wins. If you tap Interrupt while a message is queued, Antigravity stops first. The message is never handed to the turn you stopped.
  • Your messages stay while Nomo is open. If you close Nomo completely, the sheet starts empty next time. Messages your Mac already has still arrive.

What this version doesn’t do

  • No questions or plans. Antigravity’s questions and plan reviews don’t show on your phone.
  • No “Open on Mac”. The button isn’t available for Antigravity sessions.
  • No “Always allow”. Every answer is a one-time Allow or Deny.

Something’s not working

  1. Restart Antigravity.
  2. Type /nomo-status and choose Allow.
  3. Do what the line starting with ⚠️ or ❌ says.
Still nothing? In Nomo, tap the + button (Choose agents) and turn Antigravity on.If the Antigravity tab says No Antigravity sessions yet, send a message in Antigravity first — a session appears only after your first message.
A computer's Antigravity tab showing No Antigravity sessions yetA computer's Antigravity tab showing No Antigravity sessions yet

The Antigravity tab before any session has arrived.

Your Mac has the message. If Antigravity is working, it reads it at its next step — a long command can take a while.If the session has finished and agy is still open on the Mac, the message waits for your next message there. Send something in agy, and Antigravity reads both. Or tap × on the bubble to cancel it.
This can happen the first time you use a Nomo command in the Antigravity desktop app. It’s normal: Antigravity tries again outside its sandbox by itself. Wait for it to finish — you don’t need to do anything.
The session is from the Antigravity desktop app, and it has finished. Only the Mac can continue it. Send your next message in the app.
Nomo’s Claude Code plugin is imported into Antigravity. Run this in Terminal, then restart Antigravity:
The Nomo folder was moved or deleted. Antigravity keeps working, but nothing reaches your phone. Run the installer again, then restart Antigravity:
Type /nomo-approvals on. If approvals were already on, check Answer on iPhone in Settings.
Wait a few seconds — Nomo notices a stopped chat on its own. Still stuck? Type /nomo-reset.
More help in Troubleshooting.

Updating

Run the installer again, then restart Antigravity:

Uninstalling

1

Run this in Terminal

You should see:
2

Restart Antigravity

Quit Antigravity and open it again.
To disconnect this computer from your phone as well, type /nomo-unpair in Antigravity before you uninstall.

Advanced

The same commands, run from Terminal instead of an Antigravity chat:Add --verbose to the installer to see what it changes.
  • What the installer changes. It clones the plugin to ~/.nomo, adds one block named nomo to ~/.gemini/config/hooks.json (every other block is left alone), and copies a small Antigravity plugin, nomo, with the five /nomo-* commands to ~/.gemini/config/plugins/nomo. It refuses, and changes nothing, if hooks.json isn’t valid JSON or a nomo plugin folder there isn’t its own. Uninstalling removes only that block and that folder.
  • Hooks. SessionStart, PreInvocation, PostInvocation, Stop and PostToolUse report status. They answer {} at once and do their work in the background, so Antigravity never waits on Nomo. A row starts at the first PreInvocation, not at SessionStart.
  • Approvals. A PreToolUse hook is matched only to shell commands and file writes and edits (run_command, write_file, write_to_file, edit_file, replace_file_content, multi_replace_file_content), with a 24-hour timeout. Allow answers auto_approve; Deny answers deny with your note as the reason. Every other outcome answers allow, which leaves the decision to Antigravity’s own settings and prompt. Anything a deny rule in agy’s ~/.gemini/antigravity-cli/settings.json may match never reaches the phone; a call a plain-prefix allow rule covers, and no ask rule touches, passes straight through.
  • Fail-safe. Each hook command first checks that its script still exists. If ~/.nomo was moved or deleted, it answers on its own, so nothing is ever blocked. Any error in the approval hook also falls back to Antigravity’s own prompt.
  • Interrupt. Your phone sets a one-time flag; the next PostInvocation ends the turn. A shell command or file write waiting on the phone while the flag is set is denied with “Stopped from phone”. An unused flag is dropped after 10 minutes. Nomo never signals the agy process.
  • Turns that end with no event. When you cancel a turn, or a run exits, Nomo watches the process that ran the hook and Antigravity’s own conversation index, and marks the row done. A session quiet for 30 minutes is cleared as a last resort. Cancelling while a card is on your phone withdraws the card.
  • Reply. Your phone seals a send-message command (a message id and up to 4,000 characters) and sends it over the local link and the relay. The Mac writes one owner-only file per message (<conversation>.<id>.agy-inbox). The next PreInvocation hands every queued message to the agent as a user message; a message that arrives during the turn’s last step makes that turn’s Stop continue once. Receipts come back in the session’s encrypted update: queued, waking, delivered, resumed, cancelled or refused. For a finished agy conversation whose agy has exited, Nomo runs agy --conversation <id> --print=<message> in that conversation’s folder (the message is one argument, never parsed by a shell). A finished agy that is still open keeps the message for its next turn — Nomo never starts a second agy on one conversation. An Interrupt flag always wins: a message is never handed to a turn being stopped. Messages nobody picks up are deleted after a day. Nomo’s own /nomo-* commands never put a card on the phone.
  • Title. Read-only, from Antigravity’s conversation_summaries.db with the system sqlite3. Before it exists: the first line of the conversation’s transcript, then the workspace folder name.
  • Commands. The /nomo-* commands run only Nomo’s own local commands — pair, status, the approvals switch, reset, unpair — each behind Antigravity’s own run-command prompt. They never print the pairing link or QR secret.
The full details are in the plugin’s README.