Which Device Gets the iOS 27 Public Beta? Choosing a Test Phone When There's No Way Back
The iOS 27 public beta arrived on July 13 carrying the same build number as developer beta 3. Starting from that one detail, here is how I decide which device gets it, what to archive first, and where to look in my own app.
The Scarier Permission Was Reach, Not Write: Locking an Agent's Outbound Traffic to an Allowlist
When I hand real work to an agent, the thing I guard most isn't file edits, it's where it connects. Here is an 80-line deny-by-default egress gate, plus what 21 nights of unattended runs revealed about the traffic I never saw.
Is the $100 AI Ultra Tier Worth It Solo? Measure the Break-Even from Limits and Parallelism
Whether the $100/month AI Ultra tier (5x the Pro limit) is worth it for an indie developer, framed as a break-even from how often you hit the cap and the effective throughput of parallel agents, with a calculator script.
Systematize Pre-Release Checks for Sound-Playing Apps with Waveform Rendering and Agents
The 6/26 update let Antigravity render audio files. Drawing on years of shipping sound in healing apps, here is a design that folds loudness, clipping, length, and silence checks into an agent verification loop, with the actual scripts.
Measure Before You Trim: A Context Ledger for Antigravity CLI Token and Latency Costs
Prompted by the ~70% token reduction reported for the Android CLI agent, I built a thin wrapper and a weekly review to measure my own agent runs. Here is how I replaced whole-file context with line ranges and cut wait times.
When the Default Model Changes Underneath You: Pinning and Diff-Gating Scheduled Runs
Antigravity 2.0 promoted Gemini 3.5 Flash to the default fast model. It is a welcome upgrade, but any scheduled run that leaned on the default starts producing subtly different output one morning. Here is how I pin the model explicitly, fingerprint the output, and gate drift, sized for a solo developer's pipeline.
A Few Low-Density Phones Lost Their Bundled Wallpaper — The drawable vs nodpi Boundary in Play's Density Splits
App Bundle density splits will happily split images that should never be split, dropping a static resource on one density bucket only. Here is how I reproduced it with bundletool and fixed it by moving to drawable-nodpi or disabling density split — with the decision criteria.
As Tools Consolidate Into Antigravity, Measure Your Lock-In and Keep an Exit Path
As Google consolidates its AI coding tools into Antigravity and the personal Gemini CLI sunsets on June 18, here is a practical design for quantifying vendor lock-in and keeping a configuration you can step away from at any time.
How Far Can On-Device Inference Stay Free? Measuring the Line Between Foundation Models and Gemini
WWDC 2026 widened Apple Foundation Models' free tier, making on-device inference easier to reach for. But 'free, so everything on-device' hits cases where quality falls short. Here is how to decide the range you hold on-device and the range you pass to cloud Gemini by measurement, not guesswork.
When Managed Agents Run in the Cloud, How Do You Hand Them Credentials?
The Antigravity 2.0 Managed Agents API runs agents in the cloud, away from your machine. Convenient, but the credential handling that was trivial on your own laptop suddenly gets hard. Here is a design for not handing over long-lived tokens, but issuing them per run and expiring them quickly.
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.
A Week of Coding Hands-Free with Antigravity 2.0's Live Voice Transcription
Antigravity 2.0 added Gemini Audio-based live transcription right inside the editor. After a week of using it in real work, here's an honest take on how it differs from external dictation tools, how it handles technical terms, and where it actually earns its place.