All Articles
A report of a cache cleanup that wiped a drive: why I now route every delete through a checkpoint
After reading about a cache cleanup request that ended with a developer's drive contents gone, I reopened my own cleanup script. Here is a small Python checkpoint that narrows how far a delete can reach, plus where I draw the line on what to hand to an agent without approval.
You Don't Need to Read Commands: Three Places to Check When an Agent Works
If strings of terminal text make the approve button feel risky, here is a way to check just three things: a way back before you start, the first word of a command, and the diff afterward.
The Day I Stopped Splitting by Skill — Three Questions for Routing Work Between Antigravity CLI and Claude Code
An unattended job sat waiting on an approval prompt for three days without a single error line. Here is how I stopped dividing work between two agent CLIs by capability, and started dividing it by where the approval boundary falls.
The October 16 date I could not find — taking stock of Gemini model shutdown dates yourself
A widely repeated shutdown date for the Gemini 2.5 family is not on the official deprecations page. Here is how I pull every model ID out of a repository and reconcile it against a ledger I maintain myself, with working scripts.
Starting with AGY_CLI_HIDE_LOGO: tuning Antigravity CLI for narrow terminals, screen readers, and recordings
Logo art, your email address, output that swallows the pane, a copy you never asked for. Here are the Antigravity CLI environment variables and settings that quiet the display, grouped by the three situations where they matter.
Three things I had to fix before my status line could tell me what a session cost
Getting real session cost into a custom Antigravity CLI status line took three fixes: how the script reads stdin, how to tell whether your build sends a cost field, and how to keep a usage ledger that does not double-count.
When Antigravity Swaps Its Default Model, Only the Jobs You Narrowed First Survive
Gemini 3.7 Flash is now the default model for Antigravity agents. The places you never configured are exactly the places that shift silently. Here is how to inventory your default-model exposure, then split your jobs into move-now and hold, scored by how much output freedom you left open.
When a Fast Model Feels Slow, Look at Reasoning Effort Before Switching Models
Antigravity lets you pick a reasoning effort level per model. Here is how I decide between Low, Medium, and High based on the shape of the task, what to check when changing it makes no difference, and a small script for correcting your own judgment with records instead of memory.
Half My Tasks Went to Pro — and So Did Only 61% of the Tokens
A singular model setting became a models collection, which means routing across models is now something you define yourself. Here is how I re-measured a task-type routing rule against the actual context-size distribution of 67 tasks in my own repository.
Routing /effort by Task Class in Antigravity CLI: Six Weeks of Measurements
I built a small router that picks an /effort level from the shape of the task, then aggregated six weeks of run logs. Here is where raising effort helped, where it actively hurt, and what mattered more than effort.
Routing Between Local Gemma and Cloud Gemini 3.5 Flash by How Easily You Can Verify the Output
When I split local and cloud work by whether it was sensitive, or by which was faster, my decisions wobbled every time. The axis that finally held was different: if the output is wrong, can I catch it cheaply and undo it cheaply? Here is a router that chooses a model from verifiability and recovery cost, with working code and a measurement ledger.
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.