◉ANTIGRAVITY LABJP
Articles/Antigravity Basics
◉ Antigravity Basics/2026-06-14Advanced

After Gemini 3.5 Flash Became the Default, Route Flash and Pro Per Task

Now that Antigravity's default Flash is Gemini 3.5 Flash, leaving everything on Flash wastes accuracy and forcing everything onto Pro wastes time. Here is a two-axis decision table for splitting work between Flash and Pro, plus the routing setup to wire it into your agents.

Gemini 3.5 Flash5Antigravity411model selectionrouting3cost management5indie development28latencyquality evaluation

✦ Premium Article

On the day the default Flash model switched to Gemini 3.5 Flash, several of my routine tasks got visibly faster without me touching a single setting. At the same time, when I handed off one tangled refactor, a change that used to land on the first try now took two round trips.

The part that got faster and the part that got sloppier are two sides of the same model change.

There are two stances you can take here. One is to shrug and say "it's fast, so put everything on Flash." The other is "I can't afford a quality drop, so I'll just go back to Pro." I tried both, once each, and both wasted something. The first added rework whenever accuracy mattered; the second paid heavy-model latency even for trivial replacements.

The landing spot was to split the work per task. The problem is making "how to split" a reproducible rule rather than a gut feeling.

Speed and correctness are different axes

When we compare models, we tend to reach for a single ruler: which one is smarter? But in real development, "does this task actually need that smartness?" matters more than the smartness itself.

I learned to look at tasks along two axes.

The first is the weight of the decision: how large is the rework if it's wrong? A bulk rename of a variable is easy to spot and fix when it goes wrong. A change to how state is managed propagates downstream, and you notice late.

The second is the breadth of context: how much surrounding code must be held in view to decide? A task that closes within one file and a task that requires the dependency graph of several files demand entirely different fields of view.

Lay tasks out on these two axes and the territory where Flash shines separates cleanly from the territory you want Pro to own.

The routing decision table

Here is the routing I actually run, organized as a table. Breadth of context runs across; weight of the decision runs down.

  • Light decision x narrow context -> Flash. Formatting, rename replacements, comment additions, boilerplate test scaffolding. Speed translates directly into how the work feels.
  • Light decision x broad context -> Flash. Cross-file string replacements, import cleanup: simple judgment but scattered targets. You need the field of view, but mistakes are safe.
  • Heavy decision x narrow context -> Pro. Even within one file, the boundaries of async work or the shape of error handling break quietly when wrong. The scope is narrow, but saving here costs you later.
  • Heavy decision x broad context -> Pro. Architecture changes, reshaping data flow, reconciling several modules. Going to Pro once is often faster than two round trips on Flash.

The nice thing about this table is that when you hesitate, you only ask two questions: "does it hurt if this is wrong?" and "how widely do I need to see?" You don't have to memorize the models' internal capabilities.

In my case, counting daily tasks, about 70% land on the Flash side and about 30% on Pro. But measured by share of development time, it flips: the Pro-side tasks take up more than half of how the day feels. Heavy work is fewer in count yet costs more per item. That asymmetry is an important intuition when you reason about the payoff of routing.

✦

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
✦A decision table that sorts tasks by 'weight of the decision x breadth of context' and routes them to Flash or Pro mechanically
✦A drop-in subagent definition with pinned models that you can paste straight into your Antigravity workflow config
✦A complete, lightweight diff script that checks in one command whether quality dropped after a model swap
Secure payment via Stripe · Cancel anytime
✦

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
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 →

Related Articles

◉ Antigravity2026-10-28
When Antigravity Says Failed to Fetch: Decide the First Three Places to Look
A short triage order for Failed to Fetch in Antigravity: check whether the destination is reachable, whether you are still signed in, and whether a proxy or VPN sits in the middle. Includes copy-paste terminal checks and what each result means.
◉ Antigravity2026-10-31
Ask It to Only Read on Day One: A Five-Step Ladder for What to Hand Antigravity
What to ask Antigravity on your first day, and what to hold back. A five-step ladder that widens the agent's scope from least to most breakable, plus a small shell script that counts what actually changed before and after a session.
◉ Antigravity2026-10-16
When Antigravity Says the Server Crashed Unexpectedly: Check the CPU, WSL, or Version First?
The editor opens but the agent dies right away with 'server crashed unexpectedly'. A short triage across three suspects, CPU AES support, WSL or SSH paths, and the app version, built from public forum and issue reports, with the unconfirmed parts marked as unconfirmed.