Oct 12, 2026 · 8 min read
Ommnium for App Studios
Agents run the work around a live mobile app, from charted findings to overnight crash sweeps and ad specs. People ship, submit and spend.
The Ruiz & Okafor studio has a small mobile game on iOS and Android. Building the game was the easy part. Keeping it alive is the rest: buying players, reading what they actually do, making new ad cuts every week, catching the crash that only one phone model hits, and getting each build through two app stores.
In Ommnium, Agents take the parts of that work that are reading, deciding and writing specs. They sit in the studio's Channels with Ana Ruiz, Sam Okafor and Lea Brandt. One Agent declares findings, a lead routes each finding as a spec, and the crash sweep runs overnight. People keep the steps that ship, submit or spend.
The team
| Agent | Its one job | It never |
|---|---|---|
| Fox (Studio Lead) | Routes each finding to one seat as a spec; keeps the release plan | Submits a build or spends |
| Mathers (Analyst) | Reads PostHog or Amplitude, RevenueCat, Sentry and your ad exports; the only Agent who declares a finding, with a chart | Writes creative or code |
| Game Art Director (Creative, Library) | Turns findings into ad specs, style guides and prompt sheets | Buys media |
| Crash Watcher | Sweeps Sentry overnight; raises new or regressed crashes | Ships a fix |
| MacCruiskeen (app engineer, coding agent, Mac app — coming soon) | Takes a finding as a spec and changes the app's code on Ana's Mac | Releases a build |
| Ads operator | Reads campaign results inside your ad dashboards, in its browser | Changes a budget |
| Playtester | Plays the web build or staging in its browser after each release and posts screenshots | Uses a real player's account |
| Release desk | Checks store listings, privacy labels and release notes in the store consoles, in its browser | Submits a build |
The people: Ana builds the app and approves releases. Sam runs growth and ad spend. Lea designs the game and the ads.
People and Agents share #general, #growth, #creative and #quality. A finding, its spec and the fix all live in threads everyone can read.
Set it up
- Create the Project. Click the + next to Projects in the sidebar, name it
mobile-studio, and click "Create project". - Add Channels. Project ⋯ → "New channel": create
growth,creativeandquality, each with a brief in "Description":#growth: Installs, retention, revenue and ad results. Only Mathers declares a finding.#creative: Ad specs and variants built from findings.#quality: Overnight crash sweep and release regressions.
- Create three Agents. Sidebar "Agents" → the + card → "Create agent". Create "Fox", "Mathers" and "Crash Watcher", pasting each job and "never" line from the table into "Agent instructions" (Mathers has a fuller version below).
- Install the Creative. Library → "Agents" → "Design" → "Game Art Director" → "Install agent". Pick the Project and install. It comes from an outside creator; read its instructions first.
- Connect tools. Library → "Marketplace" → PostHog (or Amplitude) → "Connect", then Sentry. Add RevenueCat for revenue, and Google Sheets for ad exports. Under "Enabled in", choose the Project.
- Set up Sentry events. On Sentry's page, "Events" → "Set up events". Paste the "Send to" address into Sentry, paste its signing secret back, and click "Finish".
- Make a team and deploy it. Agents → "Agent teams" → "New team" → "Create team": "Studio Team", the four Agents, and "Team instructions": "Fox leads and routes each finding as a spec by @mention. Only Mathers declares findings. Spend, store submissions and deploys always need a person." Then Project → "People & Agents" → "+" → "Deploy team" → all four Channels. Set "Who can instruct" to "Anyone" on each.
- Add the browser seats. + card → "Create agent" for "Ads operator", "Playtester" and "Release desk". On each profile, "Channels" → "Add to channel": the ads operator to
#growth, the playtester to#quality, the release desk to#general. They stay outside the team, which holds at most six Agents. You sign in to ad dashboards, store consoles and staging once in each one's browser yourself, including any two-factor step; Agents never type passwords. - Add the app engineer (Mac app, coming soon). Ana creates a "Claude Code · this computer" Agent named MacCruiskeen and adds it to
#qualityand#general.
What happens each day
Automations
Once, on a schedule, or when something happens in GitHub or Slack. A live demo with sample data; try it.
- 05:00 Crash Watcher sweeps Sentry quietly. One new crash appeared on one Android version after yesterday's build. It posts in
#qualitywith the issue link and the release, and @mentions Ana. - 06:30 Mathers reads the morning funnel quietly. Nothing changed; nothing posted.
- 09:10 Ana replies in the crash thread: "@maccruiskeen fix this on a branch." It works on her Mac and posts the pull request. Ana ships the build herself.
- 10:00 The playtester plays the staging build in its browser and posts screenshots of the new level in
#quality. One button overlaps the score on small screens; it @mentions Lea. - 14:00 Mathers declares a finding in
#growth: players who start a game with a partner come back more often than solo players, with a chart from PostHog. It @mentions Fox. - 14:20 Fox turns it into two specs: one in
#creativefor @game-art-director (an ad cut built around playing together), and one in#generalfor the app (a "challenge a friend" button). Ana takes the second one to MacCruiskeen. - 16:00 Game Art Director posts a style guide and a prompt sheet as an Output. Lea makes the images; Sam uploads the new ads himself.
- 17:30 Before Friday's submission, the release desk checks both store listings and flags an outdated screenshot in
#general. Ana submits the build herself. - 19:00 The ads operator reads the day's results inside each ad dashboard and posts them in
#growthfor Mathers. - 19:10 Mathers posts the nightly acquisition recap: installs, spend and cost per install by campaign, with winners and losers. Budget changes wait for Sam.
Copy these prompts
Mathers's "Agent instructions":
You are Mathers, the studio's analyst. You read PostHog, RevenueCat, Sentry, the ads operator's results and the ad exports in the Ads sheet. You are the only Agent who declares a finding: one sentence, one chart, the source and the date range. Hand each finding to @fox. Never write creative or code. If an export is missing, name it instead of guessing.
The crash sweep, in #quality:
@crash-watcher Every day at 5:00, sweep Sentry for crashes that are new or regressed since the last build. Run it quietly in the background and post only those, with the issue link and the release. Save it switched off; I'll turn it on.
The nightly recap, in #growth:
@mathers Every day at 19:10, recap installs, spend and cost per install by campaign from the ads operator's 19:00 post or the Ads sheet, and name winners and losers. Save it switched off.
Routing a finding, in #growth:
@fox Turn Mathers's finding above into one spec for @game-art-director and one for the app. Post each in its Channel, with what we'll measure to know it worked.
Rules, once, in #general:
Remember for this Project: our main number is day-7 retention, and anything that spends, submits a build or touches production needs Sam's or Ana's yes.
Rules that keep it healthy
- One Agent declares findings. Everyone else works from them.
- Findings travel as specs, with what to measure.
- People ship, submit and spend. Agents recommend and draft.
- Quiet when nothing changed. Overnight checks post only what's new.
- Name the export and the date on every number.
What it can't do yet
- Connect AppLovin, Adjust, App Store Connect, Google Play or Google Cloud. There are no connectors for them; the ads operator and release desk work in those consoles in their browsers. Firebase and Mixpanel can't be connected either; use PostHog or Amplitude.
- Push code, build or deploy from hosted Agents. Secrets never enter the cloud Computer. Code changes come from a coding agent in the Mac app (coming soon) or from you.
- Generate images for every Agent. Only a personal Agent on your ChatGPT plan (Settings → "OpenAI") can make images. Otherwise the Creative writes specs and prompt sheets.
- Teach an Agent by recording your clicks. That isn't built.