Inspiration

Everyone has a shelf of stuff worth money that never gets sold, because selling is work: identify the thing, research a fair price, write a listing that doesn't oversell, keep the books. I sell my own art and secondhand finds to get by, and the listing overhead is the bottleneck, not the inventory. SHELF started as a simple bet: a small crew of agents can do the boring 90 percent, and a human should only do the two things that matter: approve the draft, and hand the box to the mailman.

What it does

SHELF is a listing shop run by an agent crew. You photograph an item from your phone and upload it. Three ADK agents take over: a CURATOR identifies what the item actually is from the photos, an APPRAISER researches free web comps and prices it honestly (and refuses to invent a number when comps are thin), and a COPYWRITER writes a title and description that sell without lying. The draft appears on your dashboard with a live feed of the agents working. One tap approves it to a public storefront. Sales and payouts land in a ledger, so the money story is always truthful. Photos in, money out.

Try the live store: https://shelf.livingagentic.me | Code: https://github.com/NoBanks/shelf-agentic

How we built it

  • Google ADK orchestrates a three-agent crew (curator, appraiser, copywriter) with Gemini doing vision and reasoning for each role.
  • FastAPI serves the dashboard (with a server-sent-events live agent feed), the public storefront, and the ledger.
  • Firestore (native mode) holds items, agent events, and the sales ledger.
  • Deployed on Cloud Run (us-west1) from source; scale-to-zero, max-instances=1.
  • Zero-dime architecture: a $1 budget tripwire, a one-command billing kill switch, a single-instance cap, and free-tier comps instead of paid search APIs. The whole thing runs on $0.

Challenges we ran into

  • Brave's "free" search tier turned out to be a card trap; the appraiser's comps moved to free web search and the build stayed genuinely zero-cost.
  • Cloud Run's frontend eats /healthz, so health checks probe a real API route.
  • The best ones came from dogfooding. Feeding the first real inventory through the deployed app surfaced an upload-killing type bug that tests never caught. Then FILMING the demo surfaced three more live bugs: a string-escaping bug that silently killed the approve button in production, an API field mismatch that starved the dashboard of images, and a title-parsing edge case that published an untitled listing. Each was fixed and redeployed the same day, on camera.

Accomplishments we're proud of

  • Idea to LIVE on the internet in about 30 hours.
  • 24 real art pieces processed by the crew and live on the storefront right now: real inventory, real prices, not demo data.
  • The entire stack costs $0 to run, provably, with a tripwire armed.
  • A human approves every listing: agents do the work, people keep the judgment.
  • The demo film is cut beat-locked to an original track by the builder, and every frame in it is real: real uploads, real prices, a real approve click.

What we learned

Agent crews shine when each agent has one narrow job and a human holds the approve button. Real inventory breaks things demo data never will; ship early, then feed it something true. Cost discipline is an architecture choice, not an afterthought: caps, tripwires, and kill switches designed in from hour one.

What's next for SHELF

Marketplace connectors (publish approved listings outward), shipping-label integration, a photo-quality coach agent, and inventory intake by video sweep: point your camera at the whole shelf and let the crew triage it.

Disclosures

Built new during the submission window. Developed with AI coding assistants (Claude) under the builder's direction; architecture, agent design, prompts, and all creative content are original to this project. Third-party: standard open-source libraries (FastAPI, google-genai, ADK) per requirements.txt. The soundtrack is an original track by the builder (NoBanks Nearby); all artwork shown is the builder's own.

Built With

  • agents
  • cloud-run
  • e-commerce
  • fastapi
  • firestore
  • gemini
  • google-adk
  • python
Share this project:

Updates

Submission history