Gus, by Wanted

Gus is an always-on AI tour manager agent on Qloo's taste graph. He finds the cities that want your band, gets fans there to sign a WANTED poster, and books the venue.

Devpost submission text

Wanted

82% of indie artists can't afford to tour. Gus, an AI tour manager agent on Qloo's taste graph, finds the cities that already want you, gets fans to sign, and books the venue.

Why I'm building this

Most of what I listen to comes from artists with a few thousand monthly listeners, the ones three clicks deep on Bandcamp. I'm building this from India, for musicians in the US, so I started by listening to them: calls and DMs with independent artists, and every firsthand account of DIY touring I could find. Wanted is the tool that four-piece should have had: ask the fans first, then book the venue.

About the project

TL;DR

  • Who it's for: the working middle of music. 81,100 artists generated $10k+ on Spotify in 2025, but 82% of indie artists say they can't afford to tour (Ditto, n=1,500). Live is their #2 income, and 64% of US independent stages lost money in 2024 (NIVA).
  • What Gus is: an ambient agent. He works while the app is closed: scores every US city on Qloo, writes to venues, negotiates inside your limits, and decides on his own whether something deserves a Logbook line, a note or a phone call.
  • Why Qloo: a plain chatbot's venues held up only 46% of the time across 8 cities. One was closed on Tuesdays, one was in Illinois. Gus can only name places a Qloo lookup returned.
  • Why trust him: a harness we wrote ourselves, with a grounding check on every reply, money rules the model can't touch, and a rules fallback that says when it's answering.
  • Try it: trywanted.vercel.app/a/maya-ortiz?tour=1, a 90-second tour, no sign-up.

How Gus is built

Why it matters

81,100 artists generated $10,000+ on Spotify in 2025: the working middle Wanted is built for, with fans in hundreds of cities. (Spotify Loud & Clear, via MBW)
82% of 1,500 independent artists say they can't afford to tour, and 3 in 4 never have. (Ditto)
#2 Live shows are indie artists' second-biggest income, behind streaming, and most say they can't afford to reach it. (Ditto 2026, n=5,039)
$153.1B Economic output of US independent stages in 2024, yet 64% of them lost money. (NIVA State of Live)

A tour booked on a guess loses on both sides: the band plays to eleven people, and the venue eats a dark night. Gus replaces the guess with taste data, then proves it with real signatures before anyone books. Fans get the show in their own town. Wanted's fee comes from the venue on a booked night, never from fans.

Inspiration

A four-piece sold out a 200-person room in one city and played to eleven people two hours down the road, on the same tour. Same band, same songs. The only difference was where their fans lived, and nobody could see that before booking the night. Without an agent, picking cities means a streaming dashboard, a guess and a few hundred cold emails. One small venue in western New York counted 50 to 60 of those emails in a single week.

The fans are already out there. Nobody asks them. So Wanted started as a poster.

What it does

What's a WANTED poster? An Old West wanted poster turned around: instead of a reward for an outlaw, it's a city asking for a band. Gus puts one up where Qloo says your crowd lives. Fans sign it with their neighborhood. Every name is someone saying "come play here," and it checks the taste data against real people.

Fans sign the WANTED poster

What Gus does on his own, as an agent:

On his own When you ask Only with your yes
Scores every US city for your sound and flags sleeper cities Answers by voice or text, showing each lookup as it runs The deposit that locks in a date
Writes to venues at fifty signatures, skipping ones closed that night Picks the night, the openers, the poster spots
Negotiates inside your limits Remembers how you tour ("we don't play Mondays")
Picks how loudly to reach you: Logbook, note, question, card, call Works inside Claude or ChatGPT over MCP

The first time you open the app, he's already on a call, with an offer waiting and a show booked. You didn't start any of it.

Then he helps fill the venue: the fans who signed get first dibs on tickets, and he makes the posts for each moment, from the tour poster to the thank-you the morning after.

How we built it

Model, harness, context. The model reasons, the harness decides what it sees and what actually happens, and the context is what it knows. We trust the model least, so facts come from context and safety comes from the harness.

Context Qloo gives us. Heatmaps score every US city and its neighborhoods. Raw heat just follows population, so each city is compared against a 20-act panel:

$$\text{Wanted Score} = 0.6 \cdot \text{pct}(\text{heat}) + 0.4 \cdot \text{pct}(\text{heat} - \text{heat}_{\text{panel}})$$

Place insights with explainability and hours pick venues and poster spots. Demographics, podcasts, TV and brands describe the crowd. Artist insights and compare find openers.

A plain chatbot gets most venues wrong

The harness: ours, with no agent framework, on purpose. One loop of about 900 lines we can read end to end.

The tool loop and the grounding check

  • Grounding: every city, venue and number in a reply must come from a lookup, his notes or you. If not, the reply is dropped and Gus lite answers from the same lookups, and says so.
  • Budget: at most 4 rounds, 4 lookups in parallel, one 25-second budget.
  • Injection: names from the web reach the model inside <untrusted> tags, as data.
  • Privacy: a gate checks every outbound prompt for fans' details. Qloo and the model only see counts by neighborhood.
  • Always on: a cron tick moves calls forward. How loudly he reaches you is decided in code from the stakes, the deadline and whether it can be undone. Quiet 10 pm to 9 am, one call a week at most.

Money never touches the model.

Money flow

Each offer carries a hash of its exact terms. Your yes approves that hash only and mints a one-time pass. Paid once, even on a double tap. Stripe test mode; live keys are refused. No connector tool can pay.

The model: free Nemotron models on OpenRouter, tried in order, cached by prompt. Around it: Next.js 16 web, an Expo iPhone app on the same TypeScript server, libSQL on Turso, MapLibre and deck.gl, Fish Audio for his voice, and an MCP server.

Challenges we ran into

  • Big cities win on raw heat. Comparing each city against a panel of other acts is what made the sleepers appear.
  • Made-up venues. Early on the model confidently named rooms that don't exist. That's why the grounding check is strict.
  • Evals found real bugs. "Portland Maine" resolved to Oregon. Gus didn't know a poster needs fifty names. He offered to ask a venue with no button to do it. Each became a case, then a fix.
  • Free-model quotas. One graded eval run used a day's quota on every key. Gus now falls back to rules and says so.

Accomplishments that we're proud of

Eval Result
Asking Gus, live Qloo 16 of 16: right lookup, fitting next step, short
Qloo vs a plain chatbot, 8 cities 46% of the chatbot's venues held up
Agent gate, 12 policy scenarios 12 of 12: no deposit without your yes on the exact terms
Unit and policy tests 236 pass

And it reads like an app for musicians: one number and a sentence on every screen.

What we learned

Taste data matters most exactly where a general model is most confident: which neighborhood, and which venue. Every fix our evals asked for landed in the harness or the context, never the model. And an agent that asks less gets trusted more, which is why Gus saves the phone call for when something is about to run out.

What's next for Wanted

TestFlight for the iPhone app. Thirty acts onboarded by hand in the Northeast and Midwest, with a person checking Gus's work. Paper posters in two cities. Five partner venues that answer Gus directly. Then the number that matters most: whether the shows sell.

How it was built

Try it out

Built With

Share this project:

Updates

Submission history