Antigravity Multi-turn (Interactions)
Continue an Antigravity interaction across turns. Each response carries an interaction_id; the next turn references it via previous_interaction_id so only the new user message is sent on the wire. The server keeps the sandbox state (files written, packages installed, browser history) attached to the interaction chain. Subsequent turns build on what the agent already did.
Persisting the interaction ID requires a database. The assistant message stores it under provider_data, and the next turn reads it back.
When continuing a chain, the existing sandbox is already attached server-side. Re-sending environment="remote" is safe; the API treats it as a hint that's reconciled against the running env. To be explicit, swap to the returned env_<id> after the first turn.
Code
1from kern.agent import Agent2from kern.db.sqlite import SqliteDb3from kern.models.google import GeminiInteractions45agent = Agent(6 model=GeminiInteractions(7 agent="antigravity-preview-05-2026",8 environment="remote",9 ),10 add_history_to_context=True,11 db=SqliteDb(db_file="tmp/data.db"),12 markdown=True,13)1415if __name__ == "__main__":16 agent.print_response(17 "Plot the growth of global solar energy generation over the last "18 "decade and save the plot as solar.png in the sandbox."19 )2021 agent.print_response(22 "Take solar.png and produce a 3-slide HTML deck that embeds it, "23 "with a title slide and a short takeaway per slide."24 )2526 agent.print_response(27 "Review the deck for clarity and tighten the takeaways. Save the "28 "revised version as deck_v2.html."29 )Usage
Set up your virtual environment
1uv venv --python 3.122source .venv/bin/activate1uv venv --python 3.122.venv\Scripts\activateSet your API key
1export GOOGLE_API_KEY=xxxInstall dependencies
1uv pip install -U "google-genai>=2.0" kern-aiRun Agent
1python cookbook/90_models/google/gemini_interactions/antigravity_multi_turn.py