Stagenator — Devpost Submission

Inspiration

In 2022 I started making apps solo. Palindrome got featured multiple times in the Google Play Games app, Subliminal Words under "New Games We Love". But once the promotional traffic dried up, daily active users dropped near zero. Without store promotion or a marketing budget, apps stagnate — and keeping them fresh takes full-time effort I can't give anymore.

An autonomous agent can. Stagenator is a 24/7 AI caretaker for my live mobile game portfolio.

What it does

Runs three live store games — Subliminal Words, AI Movie Quiz, Palindrome — on iOS and Android with zero human intervention.

  • 5-minute heartbeat: Cloud Scheduler wakes it to poll Google Analytics realtime. The moment a player shows up, it generates content or sends a gift — often while they're still playing. 99% of check-ins find no one and cost nothing.
  • Content generation: ControlNet images with hidden words (Subliminal Words), 8-second Veo 3.1 videos with audio (AI Movie Quiz), code-verified palindromes with hints in 18 languages (Palindrome).
  • Quality control: Gemini 3.7 Vision & Video Understanding inspects every generated level before it ships.
  • Gifting: Mints App Store promo codes and Google Play gifts, delivered as personal claim links on proffer.codes.
  • A/B + nightly reflection: Push notifications in two variants, claim funnels measured, playbook updated every night.
  • Self-healing: If something external breaks, it emails me the diagnosed root cause within minutes.

👉 Live dashboard: https://stagenator-mission.web.app

How we built it

  • ADK 2.0 Workflow Graph on Cloud Run, triggered by Cloud Scheduler.
  • ~11 specialist prompts orchestrated by code: Strategist, Reflector, level designers, visual inspectors, content-safety screener, gift selectors, error diagnosticians.
  • Stack: Vertex AI (Gemini 3.7 Flash + Veo 3.1), Runpod/ComfyUI (ControlNet), Firebase (Hosting, Auth, FCM, Firestore), BigQuery, App Store Connect API.
  • Guardrails: The LLM returns schema-locked outputs only; code enforces hard daily budgets (max 1 level and 1 gift per game per day).
  • Testing: 51 unit tests, 28 Firestore emulator resilience tests, 4/4 on agents-cli eval. Built spec-first with Google's ADK skills, Claude Code as the coding agent (co-author trailer on every commit).

Challenges we ran into

  1. Why not a tool-calling agent? 99% of check-ins find zero players — a tool-calling agent would burn ~60M tokens/month deciding to do nothing, and giving an LLM raw access to promo codes and store pushes risks hallucinated loops on live apps. So deterministic code handles triggers, telemetry, and caps ($0.00 idle); Gemini is invoked only when players are detected and returns bounded, schema-locked decisions. Code does the doing, AI does the thinking.
  2. Veo takes minutes, Cloud Run wants seconds. Built a crash-proof Firestore job queue — long jobs self-pace across check-ins, retry up to 3 times, and never burn the daily budget twice.
  3. Google Play has no code-minting API. Apple does; Google is Console-UI only, and browser automation from serverless breaks on 2FA. So Stagenator watches stock, emails me a pre-formatted restock request, and parses my CSV reply into proffer.codes automatically.
  4. Store binaries lacked deep-link handlers for gift pushes. No redeploy needed — one plain-text playbook directive ("do no code drops until further notice") and the Strategist paused them.
  5. Difficulty you can't set directly (Subliminal Words). The only knob is ControlNet conditioning strength, but big bold letters are easy at any strength and thin ones hard. Code now reads the generated letter layout and sets strength inversely to visibility, so find-difficulty stays even. Gemini vision QA gates every level anyway.

Accomplishments that we're proud of

  • Built in 11 days (Aug 20–31) from spec to deployed production agent on three live store apps - amazing to see it in action :)
  • Live right now — shipping levels, videos, and gifts into store apps with no daily human involvement.
  • Mission control dashboard streaming every decision, level preview, rejected action, and directive.
  • Self-healing proven in production: a failed API key was auto-diagnosed via email; a one-line directive changed behavior with no redeploy.
  • 4/4 on agents-cli eval with idle infrastructure cost near zero.

What we learned

  • The levels are as good as my hand-made ones. My fear was automated content wouldn't meet store standards. With Gemini vision/video self-inspection, it does — and I don't spend hours overthinking prompts anymore.
  • 24/7 agents can cost pennies. Cloud Run scales to zero; 99% of check-ins cost nothing.
  • Agents don't get demotivated. I could make levels locally for free, but I stop when no one seems to play. The agent doesn't.
  • Code for execution, LLMs for reasoning. Schema-locked outputs beat raw tool access for reliability.
  • Spec first. Writing the architecture spec upfront saved days of patching.

What's next for Stagenator

Adding a game takes one config entry and one content pipeline — Palindrome proved it, joining mid-project. Next: Trivia Player, Penalty 2D, Snackroach.

The bigger goal is personalization. The agent already sees which country players are from and whether they look new or returning — today it only gets a soft geo hint it may use. The games now report who is playing in near-realtime, so next it can react to the exact player: right gift, right device, new-or-returning known instead of guessed. And the more players show up, the more signal it has to get better.

Built With

Share this project:

Updates

Submission history