ANTIGRAVITY LABJP
Articles/Agents & Manager
Agents & Manager/2026-05-22Intermediate

Handing Nightly Wallpaper Asset Updates to a Background Agent — Time Budgets, Duplicate Detection, and a Completion Gate

A reproducible account of handing nightly wallpaper asset updates to Antigravity's Background Agent. Covers how to write the task definition, perceptual-hash duplicate detection, one-pass resizing across 12 device profiles, a morning report you can review in five minutes, and the time-budget and completion-gate design that makes unattended runs safe.

antigravity429background-agent8wallpaperios36android27automation79

Premium Article

After the May holidays, I sat down at my Mac and found the Antigravity window quietly open. The Background Agent I had set up the night before had lined up twelve fresh wallpaper assets in a folder, with A/B thumbnails, metadata drafts, and store-description diffs all staged and waiting for my commit. It genuinely felt like something had been tidied by hand overnight, and that morning I found myself looking at the screen before I even made coffee.

I have run iOS and Android apps as an indie developer for many years, mostly in the wallpaper, calm, and well-being genres. The heaviest part of keeping them alive was never the code — it was the small daily work of asset updates and submission chores. This article turns three weeks of handing that nightly routine to Antigravity's Background Agent into steps and code I can reproduce later. Beyond impressions, it leaves the actual shape I run today: task definition, duplicate detection, resizing, and a completion gate.

Why "nightly asset updates" were the first thing to automate

My update rhythm for the parallel iOS and Android wallpaper apps settled into a pattern: sketch new motifs and work on color during the day, export images and check naming conventions at night, then tidy metadata and push to the stores the next morning. The problem was that the nightly export and naming check happened almost every day, and it was simple work with almost no room for judgment — yet terrifying to get wrong.

"Simple but scary to get wrong" is exactly the kind of work that fits an agent well. There is little judgment involved, but when a human does it, attention erodes and a mistake slips in somewhere. With AdMob revenue stable, missing one resolution mismatch or naming slip meant dropping a delivery slot for the night. I rarely had the energy to redo it by hand at midnight, so I had long wanted to let it go.

When I choose what to automate, I measure against three conditions: failure is not fatal, it happens daily, and the judgment space is narrow. Code refactors have too wide a judgment space; final wording of store copy is too fatal to get wrong. What remained was the "night watch" over images, text, and store files — a well-sized first step.

The pipeline that settled after three weeks

The configuration that settled after three weeks ended up far plainer than my first design. I give the Background Agent a time window and have it process exactly four things in order:

  1. Validate resolution, color space, and naming conventions for the 10–20 new assets exported the previous day
  2. One-pass resize and re-export across iPhone / iPad / Android tablet resolutions (12 profiles)
  3. Generate metadata drafts for App Store / Google Play in 9 languages (ja, en, zh-Hant, ko, de, fr, es, pt-BR, it)
  4. Write a single Markdown diff report by 5:00 a.m. and place it at the top of the repository

At first I greedily designed automatic rollback on failure, but I removed it on day three. The more complex the delegation boundary, the longer my morning review took, and the human load went up rather than down. Today it runs on a simpler principle: if something fails, stop the work and defer to me in the morning. In a craftsman's terms — when in doubt, set the tool down.

Subtracting scope worked better than adding tools. Early automation is more stable when you design by subtraction.

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
How to write a Background Agent task definition with a time budget (start 22:00, finish by 05:00) for unattended nightly runs
Implementation code for perceptual-hash (pHash) duplicate detection and one-pass resizing across 12 device profiles
A Nightly report design that keeps the morning review under five minutes, plus the line between what to delegate and what to keep
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

Agents & Manager2026-06-21
Letting a Background Agent Work Overnight Without Regretting It by Morning — Guardrails for Unattended Runs
When you hand overnight refactoring to Antigravity's Background Agent, the morning brings as much anxiety as convenience. From three angles — blast radius, completion criteria, and detecting silent regressions — here are the guardrails that let me run unattended jobs with confidence.
Agents & Manager2026-05-26
Splitting Pre-release QA Across Four Antigravity Subagents — A Design Note from a Solo Mobile Developer
A design note from a solo indie developer running six iOS / Android apps in parallel, sharing how Antigravity subagents are split into four parallel paths for pre-release QA. Covers the boundary decisions, prompt templates, termination rules, and merge logic with concrete examples.
Agents & Manager2026-05-18
Splitting Daily Crashlytics Triage Across Five Antigravity Sub-Agents
Running six indie iOS and Android apps, the morning Crashlytics triage was draining me. I split the workflow across five Antigravity sub-agents (Fetcher, Classifier, Repro, Patch, PR) and locked their input and output to JSON schemas. Two weeks of production data shows where the human review boundary belongs.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →