Welcome to the tutorial on Antigravity 2.0, Google’s command center that helps in managing AI agents that execute complex knowledge and coding tasks.
Article updates
– May 25, 2026: Initial version
Antigravity is an agentic development platform that is designed to help you develop in this era of agents. As the document states “Antigravity 2.0 serves as your AI agents’ central command center, providing a unified platform to launch, monitor, and orchestrate their activities. Unlike its predecessor, the Agent Manager, Antigravity 2.0 is a standalone application that functions independently of an IDE.”

Antigravity 2.0 was announced on May 19 at Google I/O, the flagship Google developer event. You can read about the announcement here.
Google Antigravity
Antigravity 2.0 is a major iteration over Antigravity 1.x.x version, which was first announced in November 2025.
When the original Google Antigravity IDE was launched, it was an interesting time to demonstrate that an “agent-first” graphical interface would work well for software development. If we read the announcement blog post, it is highlighted that as the platform evolved, a few key points surfaced up:
- Beyond Coding: Agentic capabilities are rapidly expanding from traditional coding into general knowledge work. Tying an agent interface exclusively to a code-heavy IDE was not just daunting but a key friction-point. As a developer, we may not entirely agree with this, but there is a point to be made here. There is also a good set of folks who strongly believe that we may never have to touch any code in the future.
- Separation of Concerns: By untangling the agent-first surface from traditional IDE concepts (like repositories), Antigravity could be rebuilt from the ground up to be more intuitive for a wider range of tasks.
- Co-optimization: A standalone app allows the product, the agent harness, and the underlying Gemini models to be co-optimized independently of an IDE environment.
The result in front of us now is Antigravity 2.0: a completely standalone desktop application designed for a purely agent-optimized experience. This is not to say that there is no Antigravity IDE or the ability to use an IDE, as we shall see later.
The New Antigravity Product Suite
With the 2.0 launch, Antigravity is no longer just an just an Agent Manager integrated with an IDE. It is now a complete ecosystem of products designed for the agent-first era:
- Antigravity 2.0 Desktop App: The flagship standalone application for macOS, Linux, and Windows. This is your command center to manage multiple local agents in parallel, run scheduled tasks and more. Unlike its predecessor, the Agent Manager, Antigravity 2.0 is a standalone application that functions independently of an IDE.
- Antigravity IDE: The original fully-featured, agentic IDE remains available (and recommended for developers!). It comes with the agent manager, artifacts, and a deep understanding of your codebase. In the future, the standalone Agent Manager will be removed from the IDE, turning it into a purely agent-powered development environment.
- Antigravity CLI: A command-line interface for terminal-based agent interactions. This will not be covered in this tutorial.
- Antigravity SDK & API: Tools for developers to programmatically integrate Antigravity into their own systems. This will not be covered in this tutorial.
(Optional Reading) Comparing it to first version of Antigravity
In the first version, we had a single product Antigravity that had the following 3 key components, all integrated and working closely together, through the Agent Manager was the command center.
- Agent Manager : This is the command center, from where you launch a new conversation with an Agent. The Agent Manager managed the tasks for you and generated artifacts (plans, walkthrough) and as needed, source code.
- Editor : An integrated and full-blown IDE that you could switch through from the Agent Manager itself and view the source code, interact with it, continue your conversation with the Agent and more.
- Browser : This was an interesting component and it was a browser instance that the Agent manager controlled and launched to work with web sites, interact with it, control it, extract data from it and more.
Installing Antigravity 2.0
The equation has changed with Antigravity 2.0 and we now have a suite of products, each one of them available separately and which need to be individually downloaded and installed.
For this tutorial, we are recommending a certain sequence of installation and will not be using all the products under the Antigravity 2.0 umbrella. We will be looking at two possibilities while setting up Antigravity 2.0 : one is if you are starting from scratch (new) and the other, if you have an exisiting Antigravit 1.x.x version installed. Pick any of the options.
If you are new to Antigravity 2.0
- Navigate to the Google Antigravity download page.
- Download the Antigravity 2.0 standalone application for your operating system (macOS, Linux, or Windows).

- Run the installer. It shows the following screen:

Login with your Google account. Complete the authentication and it should show the following:

Click on Open Antigravity.

Select a Theme that you like:

Antigravity 2.0 comes with a set of plugins that work with various Google Developer Tools. These plugins install a set of skills that helps Antigravity to work with various developer tools of Google. Shown is a list of plugins that you can optionally choose to install.

Finally click on Finish. You should see an interface of Antigravity that looks like the following:

We will get to the interface in a while but we are all set for the moment.
Install Antigravity IDE
- Navigate to the Google Antigravity download page.

- Download the Antigravity IDE standalone application for your operating system (macOS, Linux, or Windows).
- Go ahead with the installation and ensure that you are able to log in.
If you have Antigravity IDE (v1.x.x) installed
- Simply wait for your next application update.
- During the update, the application will automatically upgrade to Antigravity 2.0.
- You will be prompted with an option to keep the Antigravity IDE alongside 2.0. It is highly recommended that developers choose to keep both.
- You will see two icons in your dock: Antigravity 2.0 (white background) and Antigravity IDE (black grid background).

Antigravity 2.0 Main Interface
Let’s focus first on using Antigravity 2.0. I am assuming that you have completed the installation as discussed earlier and are ready.
Ideally, you should see a screen that looks like this:

We will get to the Settings option in the lower left corner, as we go along this tutorial and on a need basis.
What are Projects?
Before we jump into the various aspects of the interface here, let’s understand the concept of Projects first in Antigravity. This is key because if you notice the interface in the right pane, it clearly says Select Project and Antigravity 2.0 uses a Project-centric approach to ensure the agents has access to the right files, tools, permissions and more. This will get clearer as we get along.
A Project as per the documentation is “configuration of folders defining the environment and the scope of your agent. Instead of forcing an agent to operate within a single folder, a project can work with one folder or multiple folders (e.g., a frontend and a backend repo), providing your agents with all of the context required for your codebase. All projects have their own isolated agent settings, allowing you to customize different projects’ security settings independently.”
Read the above statement, slowly and carefully. Previously Antigravity was limited to a workspace, which is tightly coupled to a single local repository. Now we can define a Project and then add one or more folders that make up the project, so that Antigravity agent will have access to the full context and yet you have the flexibility of organizing your folders/files in a way you want.
There is a lot more to it, but let’s take our first steps.
In my home folder on my local machine, I have created a folder named $HOME/agy2-projects/my-first-project . I suggest you do something like that so that you have an initial empty folder to work with. Note that it need not be an empty folder.
We are now going to create our first project in Antigravity 2.0 by defining what folders constitute the project. In our initial case here, it will be just one folder i.e. $HOME/agy2-projects/my-first-project.
Click on Select Project → New Project as shown below:

As expected it asks you to Select folder(s) as shown below:

Click on Add Folder and navigate to select the specific folder i.e. $HOME/agy2-projects/my-first-project

You can still add more folders to the Project, as you can notice (via Add Folder), but for now, we are fine with this and we can click on the Create button.
This brings up a very interesting dialog as shown below and this is the key to what was mentioned earlier i.e. “All projects have their own isolated agent settings, allowing you to customize different projects’ security settings independently.”

In simple words, each project inherits permissions around reviewing artifacts, tools allowed, MCP Server configuration from a global configuration that is available via Settings in the main interface. However, you can set individually these permissions and more per project, thereby getting a lot more flexibility and keeping the context and tools lean and mean for your specific project.
Even if you do not click on the Open Settings button here, you can always go to the main Settings and specific to your project, tweak these permissions.
We will see that in a while since that would be the preferred way to keep coming back to your Project to tweak its individual settings, instead of just at creation time. For now, let’s say Hi to our wonderful agent by clicking on Start first conversation. Once you do that, you will see the following screen and I have highlighted our first project that now appears both in the list of projects on the left and currently as the project in which the Agent will work when you give it messages via the Chat Interface. Notice that you can select the Model, pass additional context via the + sign or @ or / actions and so on.

Let’s greet our Agent with a message and it responds accordingly.

I have another request to get me the news and it does a good job.

Now, let’s break down a few more things.
Conversations
What we have done here is that in our Project ( my-first-project), we started a conversation thread and currently there is a series of messages (user message and agent responses) that are present in the thread.
You will see that this conversation thread remains a single one and it appears on the left side grouped under the project.

Now, let’s do something interesting and give a name to this conversation thread. Let’s call it conv-introduction.
To do that Click on the three vertical dots, next to the conversation. It will show you 3 options. Choose the Rename action.

Give the value conv-introduction or if you’d like to do it your way, any name that makes sense to you.
Now, if you’d like to have a completely new conversation in the project, click the + sign next to the project as shown below.

That’s it. You are into a totally new conversation. Let’s ask it some sports news from across the world. Note that we are still in the my-first-project.

This gives me some news around the sports world and you can notice that now we have two conversation threads in the same project.

I will rename this conversation to conv-sportsnews as per the steps provided earlier.
If you’d like to see all the conversations that have happened so far, you can visit the Conversation History option in the top left as shown below:

At any point in time, you have the option of having a new conversation either in the current project or a new project via the New Conversation option at the top.
Hope that helps you understand how to create projects (add folders to it), start a conversation within a project, rename conversations, switch between them, see the conversation history and more.
One final thing
Where does Antigravity 2.0 persist all of this conversations and threads within it. Let’s take a quick look at that.
To solidy our understanding, a conversation is an isolated work session or execution thread identified by a unique Conversation ID (e.g., 3b4a1d20–3968–4ed2–90b3–00eea3060b02).
Assuming that you have created a Project in Antigravity, had a conversation or two, go and take a look $HOME/.gemini/antigravity folder or ~/.gemini/antigravity folder. So inside of this directory, you will find the following:
brain/ : Contains subdirectories for each conversation (using their Conversation ID) containing:
— .system_generated/logs/ : Every conversation preserves a history of interactions (user requests, agent responses, tool calls, and system messages) serialized as JSON Lines (JSONL) transcripts under
$HOME/.gemini/antigravity/brain/<conversation-id>/.system_generated/logs/ .
— Artifacts: Each conversation has its own storage directory
( $HOME/.gemini/antigravity/brain/<conversation-id>/ ) where structured markdown documents like the implementation_plan.md , task.md , and walkthrough.md are saved and updated. You may not have these files immediately at this moment, unless you have asked it to do some planning or code generation, etc.
I suggest you take a look into one of the transcript.jsonl files in the /brain/<conversation-id>/.system_generated/logs/ folder and see the interactions between the user and agent that captures all your messages, responses, metadata and more.
Project Settings
Now let’s get back to the Project Settings that we earlier talked about. As mentioned, when you create a Project in Antigravity, it inherits default Permissions, which you can overrride specifically if you’d like.
How do you get to these Project Settings? For a specific project you can click on the settings gear icon next to each project in the project list shown in the left navigation bar.

This will lead you to the specific Project (i.e. my-first-project) settings as shown below:

Notice first the left side where under Projects, the my-first-project is selected. If there were more projects, these would be visible under this list too and you can easily select any of the projects and tweak their settings as needed.
Now, let’s focus on the right side i.e. the Project settings shown for my-first-project. You will notice that it has the single folder that we had added to this project. You can add more folders from here too.
I suggest that you first go through the entire list and see the flexibility now provided to help you change a ton of settings as per your project customization requirements.
These include:
- Security Preset: You can determine if you’d like all terminal commands and file accesses to be reviewed first by you before the agent can perform actions.
- Agent Behaviour: In case of artifacts generated, for example the implementation_plan.md , where you would like to review before asking the agent to go ahead and execute the plan.
- Various Local Permissions i.e. file paths allowed for access, which URLs are allowed or blocked for the Agent, etc.
- You can even configure which specific MCP Tools are allowed for this Project. This is quite useful to prevent all globally configured MCP Servers to be made available to the Agent in this project.
Note: At any point in time, you can go to the settings for Antigravity or even Projects settings via the main settings option in the Antigravity interface.

Use Cases
Let’s move now to generate a complete web application. The web application that we are going to create is a site which provides information on a 1-day technical event, which has talks across the day by multiple speakers.
I am going to create a new Project (that points to a new folder). You can create new project via the options shown below or even from a new conversation:

Then give the prompt given below:
I would like to generate a website that is a 1-day technical conference informational site.
The website should have the following functionality:
1. A home page that shows the current date, location, schedule and time table.
2. The 1-day event is a list of 8 talks in total.
3. Each talk has 1 or 2 max. speakers.
4. A talk has a ID, Title, Speakers, Category (1 or 2), Description and time of the talk.
5. Each speaker has a First Name, Last Name and LinkedIn url.
6. Allow for users to search by category, speaker, title.
7. Give a lunch break of 60 minutes.
8. Use dummy data for events and speakers, come up with a schedule, the event is about Google Cloud Technologies.
9. Tech Stack: Python and Flask framework on server side. Front-end is basic HTML, CSS and JavaScript.
10. Test out the site on your own for all functionality and provide a detailed README on how to setup, run and make any further changes.
11. Launch the web application for me to review.
Please plan it out first.
The Agent takes off and comes back with an implementation plan. This is the first time that probably you might be seeing this but this is one of the Artifacts produced by Antigravity and if you have used an earlier version of Antigravity, this would be familiar.

Before you get eager and click on the Proceed button, do make a note that you can look at any of the artifacts produced by Antigravity by toggling the Auxilliary Pane shown in the top right corner.

If you’ve got sharp eyes, you might say what’s that Install IDE thing next to it. More on that later.
If you toggle the Auxilliary Pane, you see the following output:

You can click on the Implementation Plan to see the details, as shown below:

For now, we are ok with the plan and simply click on the Proceed button to move forward.
Now, as it goes to work, it creates another artifact i.e. Task Plan and other files. You can see all of that in the Auxilliary Pane as shown below:

A Task Plan is quite cool and gives you a step by step task list that Agent is going through as per the implementation plan. As it completes the task, it even marks it as complete. A sample execution is shown below:

During this course, please pay attention to the Agent. It will ask you for several permissions to create folders, Python environments, run scripts and more. Since we have the permissions set to review, you will have to ok them all.
Finally, its completed all the good stuff and shown me the final output:

Its also created a nice Walkthrough guide.

Keep in mind that for each of the artifacts, you might see a small comments icon. Click on that and feel free to give your comments and submit it to the Agent with changes that you might want. You can keep iterating in that fashion.
You can also see the source code files that have been generated and submit your comments/changes as you see fit.
For e.g. here is the list of source code files that it generated:

Let’s click on the app.py file. You can comment on any of the lines in the code as needed and submit it back to the agent.

It has also started a task i.e. the Web Server is started on port 5001. I visit the url in the browser and here’s a nice looking event website that I wanted.

I can stop the running task, once I am done with reviewing the website.

Note: While we are only covering this use case here, I plan to keep adding to this section.
Slash Commands
There are some interesting slash / commands available in Antigravity 2.0. In your conversation chat interface, if you type / , you should see the commands as shown below:

Consider the /browser command. It is an explicit command now to launch it and ask it to do something. It requires Google Chrome and permission in Google Chrome to start a debugging session.

This spawns up a browser sub-agent that attempts to launch a debugging session with Chrome and asks you for permission first:

Once you allow it, it asks for permissions as needed, for e.g.

And then it got me the details:

The /schedule command is useful if you’d like to setup recurring or one-off tasks for the agent to execute at fixed intervals or on a schedule (e.g. 9:00 AM on Monday, Wednesday). At the same time, you are provided the same facility to do this via the user interface and that is covered in the Scheduling Commands section. Please refer to that.
We will cover /goal and /grill-me commands once I create better examples.
Scheduling Commands
You can use the Schedule option in the main interface to automate recurring tasks or set one-time reminders in your specific projects.

Let’s create a Daily task that reminds me of my daily 5 PM meeting. Click on New and fill out the details as shown below:

Click on Add Scheduled Task and then will add the task to the list of scheduled tasks as shown below:

Let me add another one that reminds me every 20 mins to take a break:

I have two scheduled tasks now, as shown below:

You can disable / delete any of the tasks via the options given. Remember that I have used basic prompts but your prompts could be detailed, could be invoking tools (talking to external systems) and doing a lot more serious work behind the scenes on a regular interval, based on your requirements.
MCP Servers
The Model Context Protocol (MCP) has emerged as the standard to help connect agents to external systems. They play a key role in ensuring that the Agent remains grounded in terms of your data and integration.
Antigravity supports MCP Servers, both local and remote. Dazbo (Darren Lester) has written an excellent article in covering not just MCP Server configuration but even setting up Agent Skills in both Antigravity CLI and Antigravity. Check out the article:
Configuring MCP Servers and Skills for Antigravity CLI and IDE
The MCP Servers that you want to configure should go in $HOME/.gemini/config/mcp_config.json file.
Configuring an MCP Server
If you have been working with existing remote MCP Servers, you can simply add the details into the $HOME/.gemini/config/mcp_config.json file. Here is my sample $HOME/.gemini/config/mcp_config.json file that contains my settings for 6 fully-managed MCP Servers on Google Cloud.
Supported products | Google Cloud MCP servers | Google Cloud Documentation
As a side note, if you’d like to get started with fully-managed MCP Servers on Google Cloud, check out my tutorial here.
Tutorial : Getting Started with Google MCP Services
Here is my mcp_config.json file:
{
"mcpServers": {
"maps-grounding-lite-mcp": --expression=EXPRESSION ,
"developer-knowledge-mcp": --expression=EXPRESSION ,
"bigquery-mcp": --src-ip-ranges=SRC_IP_RANGE,
"logging-mcp": {
"serverURL": "https://logging.googleapis.com/mcp",
"authProviderType": "google_credentials",
"oauth": --src-ip-ranges=SRC_IP_RANGE,
"timeout": 30000,
"headers": {
"x-goog-user-project": "GOOGLE_CLOUD_PROJECT_ID"
}
},
"cloudrun-mcp": {
"serverURL": "https://run.googleapis.com/mcp",
"authProviderType": "google_credentials",
"oauth": {
"scopes": [
"https://www.googleapis.com/auth/run"
]
},
"timeout": 30000,
"headers": {
"x-goog-user-project": "GOOGLE_CLOUD_PROJECT_ID"
}
},
"firestore-mcp": {
"serverURL": "https://firestore.googleapis.com/mcp",
"authProviderType": "google_credentials",
"oauth": {
"scopes": [
"https://www.googleapis.com/auth/cloud-platform.read-only"
]
},
"timeout": 30000,
"headers": {
"x-goog-user-project": "GOOGLE_CLOUD_PROJECT_ID"
}
}
}
}
Once you have added your remote MCP Servers in here and saved the file, you can go to MCP Servers section in Antigravity as follows:
- From the main Antigravity interface, click on Settings.
- Go to Customizations. Click on Refresh if you still don’t see the MCP Servers. In my case, the 6 MCP Servers were visible as follows:

3. You can disable any of the MCP Servers if you’d like via the Toggle button. Alternately, you can peak into the tools exposed by any of the specific MCP Servers. As a sample, the Developer Knowledge MCP Server, which provides programmatic access to Google’s public developer documentation, enabling you to integrate this knowledge base into your own applications and workflows.

Here is a sample run when I ask the Agent about a gcloud command for Cloud Armor and it uses the Developer Knowledge MCP server to retrieve the current and accurate information from the Knowledge base.
Prompt : use the developer knowledge mcp server to retrieve the cloud armor gcloud command to do rate limiting.
18:05
Response:
Based on the information retrieved from the developer-knowledge MCP server, Google Cloud Armor supports two types of rate-limiting rules: rate-based throttling and rate-based bans.
Here are the respective gcloud commands and examples:
1. Rate-Based Throttling
Use this to throttle request rates (e.g., return a 429 Too Many Requests or redirect to reCAPTCHA if a threshold is exceeded).
Command Template:
bash
gcloud compute security-policies rules create PRIORITY \
--security-policy=SECURITY_POLICY \
{--expression=EXPRESSION | --src-ip-ranges=SRC_IP_RANGE} \
--action="throttle" \
--rate-limit-threshold-count=RATE_LIMIT_THRESHOLD_COUNT \
--rate-limit-threshold-interval-sec=RATE_LIMIT_THRESHOLD_INTERVAL_SEC \
--conform-action=[allow] \
--exceed-action=[deny-403|deny-404|deny-429|deny-502|redirect] \
--exceed-redirect-type=[google-recaptcha|external-302] \
--exceed-redirect-target=REDIRECT_URL \
--enforce-on-key=[IP | ALL | HTTP-HEADER | XFF-IP | HTTP-COOKIE | HTTP-PATH | SNI | REGION-CODE] \
--enforce-on-key-name=[HTTP_HEADER_NAME|HTTP_COOKIE_NAME]
Example (Throttle to 100 requests per 60 seconds per IP address):
bash
gcloud compute security-policies rules create 105 \
--security-policy=MY_SECURITY_POLICY \
--src-ip-ranges="1.2.3.0/24" \
--action=throttle \
--rate-limit-threshold-count=100 \
--rate-limit-threshold-interval-sec=60 \
--conform-action=allow \
--exceed-action=deny-429 \
--enforce-on-key=IP
2. Rate-Based Bans
Use this to temporarily ban requests from clients that exceed a configured request rate threshold for a specific period.
Command Template:
bash
gcloud compute security-policies rules create PRIORITY \
--security-policy=SECURITY_POLICY \
{--expression=EXPRESSION | --src-ip-ranges=SRC_IP_RANGE} \
--action="rate-based-ban" \
--rate-limit-threshold-count=RATE_LIMIT_THRESHOLD_COUNT \
--rate-limit-threshold-interval-sec=RATE_LIMIT_THRESHOLD_INTERVAL_SEC \
--ban-duration-sec=BAN_DURATION_SEC \
--ban-threshold-count=BAN_THRESHOLD_COUNT \
--ban-threshold-interval-sec=BAN_THRESHOLD_INTERVAL_SEC \
--conform-action=[allow] \
--exceed-action=[deny-403|deny-404|deny-429|deny-502|redirect] \
--exceed-redirect-type=[google-recaptcha|external-302] \
--exceed-redirect-target=REDIRECT_URL \
--enforce-on-key=[IP | ALL | HTTP-HEADER | XFF-IP | HTTP-COOKIE | HTTP-PATH | SNI | REGION-CODE] \
--enforce-on-key-name=[HTTP_HEADER_NAME|HTTP_COOKIE_NAME]
Example (Ban requests for 10 minutes if client IP exceeds 500 requests per 400 seconds):
bash
gcloud compute security-policies rules create 102 \
--security-policy=MY_SECURITY_POLICY \
--src-ip-ranges="*" \
--action=rate-based-ban \
--rate-limit-threshold-count=20 \
--rate-limit-threshold-interval-sec=60 \
--ban-duration-sec=600 \
--ban-threshold-count=500 \
--ban-threshold-interval-sec=400 \
--conform-action=allow \
--exceed-action=deny-429 \
--enforce-on-key=ALL
Supported MCP Servers
Antigravity supports a wide range of popular MCP Servers. These are ready integrations that Antigravity ships with. It makes it easier to set the configuration parameters and it updates the mcp_config.json file on its own.
You can do that directly from Settings → Customizations and then Add MCP+ button to add a new server. This brings up a dialog, where you can see the full list of servers:

Click on +Add button to add any MCP Server. I have not validated each of these MCP Server integrations and their workings.
To be continued
We have a lot more to cover and key among this is Agent Skills and other topics. Stay tuned. Till then, give me feedback.
Key Resources
Let’s get a few resources listed upfront that will help provide you a ready reference to currently available official documentation on Antigravity
- Official Site : https://antigravity.google/
- Documentation: https://antigravity.google/docs
- Download : https://antigravity.google/download
- Youtube Channel for Google Antigravity : https://www.youtube.com/@googleantigravity
Getting Started with Antigravity 2.0 was originally published in Google Cloud – Community on Medium, where people are continuing the conversation by highlighting and responding to this story.
Source Credit: https://medium.com/google-cloud/getting-started-with-antigravity-2-0-updated-8a953f079f97?source=rss—-e52cf94d98af—4
