ANTIGRAVITY LABJP
ARTICLES

All Articles

All (953) Antigravity Basics (143) Editor View (62) Agents & Manager (248) Integrations (126) App Development (216) AI Tools (63) Tips & Best Practices (95)
App Development/2026-06-25Advanced

Every Favorite Tap Was Redrawing Every Visible Wallpaper — Stopping Needless Recomposition in Compose, Measured

A record of fixing a wallpaper grid where toggling a single favorite recomposed every visible thumbnail. Covers turning on Composition Tracing to measure first, tracking the unstable parameter down, stabilizing the data model, handling lambdas and derived state, and comparing recomposition counts before and after from an indie developer's view.

Antigravity Basics/2026-06-24Intermediate

Combining All Four Antigravity Surfaces in One Project — Up to Running Your Own SDK Agent

How to split a single project across Antigravity 2.0, CLI, IDE, and SDK, and how to bridge between them — from diverging on design to converging on production, all the way to running a small custom agent with the Python SDK, with implementation included.

App Development/2026-06-24Advanced

The Day Generation, Device, and Internal-Test Shipping Became One Step — What I Refused to Hand Over

AI Studio now turns a text prompt into a Kotlin/Compose app and carries it through the emulator, a real device, and Google Play's internal test track from one screen. Behind that convenience sits a question: how much of the moment of shipping do you hand to the machine, and what do you keep in your own hands? Here is where I draw the line as a solo developer running several apps, and the implementation that holds that boundary.

App Development/2026-06-24Advanced

Three Paths Were Each Picking Their Own Number — Deriving versionCode From a Single Source So Releases Stop Stalling

Now that AI Studio can generate an app from one prompt and push it straight to Play's internal testing track, three paths — you, CI, and the agent — each allocate versionCode on their own and collide. Here's how to derive the number from a single source and add a pre-upload guard, with working code.

Antigravity Basics/2026-06-24Advanced

Before Your Antigravity Agents Fight Over the Same File — Ownership Manifests and Conflict Detection

Multi-agent workflows do not break at the design stage. They break at runtime. Here are the field notes: an ownership manifest that pins each agent's editable region, a git-only conflict detector, and a three-part handoff contract.

AI Tools/2026-06-24Advanced

When an Overnight Local Agent Crawls by Dawn — Keeping Ollama's Latency Flat by Working Backward from Context Length

Why each step of a long-running local agent gets heavier toward the end, how to measure it from Ollama's timing fields, and how a fixed num_ctx plus a rolling summary keep per-step latency flat.

Antigravity Basics/2026-06-24Intermediate

Antigravity 2.0, CLI, IDE, SDK — Weaving All Four Surfaces Through a Real Project

Antigravity ships as a desktop app, a CLI, an IDE, and a Python SDK. Beyond picking one, this guide shows how to weave all four across a single project — with a headless-execution wrapper for automation, plus the cost and migration traps to sidestep.

App Development/2026-06-24Advanced

Running Pre-Release Checks Without Opening the IDE — Designing the Android CLI as the Verification Gate of an Unattended Pipeline

How to slot Android CLI v1.0 into an unattended pipeline as its verification gate — three layers of checks, an exit-code contract, and a density-by-locale matrix, sized for an indie developer's day-to-day.

Agents & Manager/2026-06-24Advanced

Before a Stray Instruction in a Fetched Page Drives Your Unattended Agent — Tainting Inputs to Downgrade Capabilities

So an unattended agent that reads external pages or PDFs can't be hijacked by an instruction hidden inside them: track the taint of every input and automatically downgrade side-effecting tools. With working Python and real operational numbers.

App Development/2026-06-23Advanced

My Daily Wallpaper Widget Stopped Updating — Measuring WidgetKit's Reload Budget and Rebuilding the Design

A widget that was supposed to rotate the wallpaper every day froze after a few days. Here is how I measured WidgetKit's timeline reload budget and extension memory limit, then rebuilt the design around a single daily timeline.

App Development/2026-06-23Advanced

The Review Prompt Fired but Nothing Appeared — Designing Around Play In-App Review's Quota and No-Show Guarantee

Play In-App Review's launchReviewFlow can succeed without ever showing a dialog. This walks through the three traps — quota, no display guarantee, and silent testing — and the engagement-based trigger design that fires at the right moment without colliding with ads, with steps to have Antigravity implement it.

App Development/2026-06-23Advanced

When StoreKit 2 Users Say They Paid but Can't Access — Field Notes on Subscription Entitlement Drift

StoreKit 2 subscriptions are harder to operate than to implement. This is a record of the drift between currentEntitlements, subscription.status, and server notifications — and the reconcile logic that finally stopped the support tickets.