Skip to content
Part 1

Welcome to Fabulosa Books

A Bookstore with Heart

Fabulosa Books storefront on a sunny afternoon in the Castro
Fabulosa Books, San Francisco's Castro neighborhood

Fabulosa Books is an LGBTQIA+ bookstore—and that identity shapes everything about it. The shelves hold an extensive selection of queer literature: fiction, poetry, essays, memoirs, history, theory, erotica, graphic novels, children's books for queer kids and queer families. But that's just the beginning. The store also carries ephemera—stickers, postcards, zines, posters—and beyond the LGBTQIA+ titles, there's a huge general collection, too: literary fiction, art books, local history, essays on food and politics and culture.

Located in San Francisco's Castro neighborhood, Fabulosa Books has become a community institution. People find rare books here. They attend readings and literary events. They come to talk to staff about what they should read next, and they listen because these aren't just employees—they're readers, writers, poets, librarians, curators. They have opinions and taste and genuine passion for literature.

This is a small, independent business in an age of mega-chains and algorithms. Every detail matters because the team that runs it chooses to make it matter.

The Store and Its People

Alvin founded Fabulosa Books after managing the location for Dogeared. When the opportunity came to buy it, he did—because the store was worth preserving. Today, he runs it with the same care he brought to curation and customer connections, but now as the owner, making decisions about the store's future, carefully choosing the team that keeps it running.

The team is small but dedicated: eight people total, six who work regular shifts and two who come in on-call. It's the kind of crew where everyone knows the store's inventory by heart, where someone can recommend the perfect book for a customer they've never met, where shift changes feel like transitions between chapters rather than just clocking in and out.

The Fabulosa Books team: 6 regular employees and 2 on-call staff

They host readings and events. They put together staff pick displays that actually move inventory—customers trust their recommendations because their picks are personal and thoughtful, not algorithm-driven. Many of them have deep roots in San Francisco's literary and bookselling world.

But managing all this—especially the scheduling—has been a mess.

The Problem

For years, Fabulosa Books managed its schedule the old-fashioned way: a handwritten schedule pinned to the breakroom wall, updated with markers and corrections, sometimes with sticky notes covering up conflicting scribbles.

Paper schedule vs. web app schedule comparison

In theory, it worked. In practice? It was chaos.

Step 1: Understand why a paper schedule fails at scale
  • Employees couldn't check the schedule from home. They had to come in or call the store.
  • Last-minute changes were a nightmare. An erased shift and a hastily scrawled note caused confusion and frustration.
  • Swaps and requests were informal—a conversation in the break room, a text message, or a note left on the schedule itself.
  • Nobody knew weeks in advance who was working what. Planning personal time was guesswork.
  • Management spent an embarrassing amount of time just answering "When am I working?" questions.
  • If the schedule got damaged or lost, there was no backup. It was pure anxiety.

But the biggest problem wasn't access or logistics—it was the thinking. Every week, Alvin sat down and tried to solve a puzzle with too many pieces: Who's available? Who worked closing last week? Is Marcus already at five shifts? Can we cover Saturday with one on-call staff, or do we need two? Is this fair to everyone?

That mental load—the reasoning, the balancing, the judgment—is what takes the most time. And it's exactly the kind of work that AI agents are built to handle.

What We'll Build

Step 2: Understand the vision

Billy, the newest member of the team and a struggling writer with a passion for literary fiction, volunteered to build this. But Billy didn't want to just replace the paper schedule with a grid on a screen. He wanted to replace the thinking—the hours Alvin spends every week balancing availability, fairness, coverage, and special requests.

His idea: build a system where you can say "Schedule next week" and multiple specialized AI agents coordinate to produce a fair, complete schedule. One agent checks who's available. Another ensures the shifts are distributed fairly. A third validates that the store is properly covered. And a coordinator agent orchestrates the whole thing.

High-level multi-agent architecture diagram

The Stack

  • Frontend: A responsive web interface built with React and Next.js
  • AI Layer: Vercel AI SDK for building and orchestrating agents
  • AI Models: Vercel AI Gateway for model access (Anthropic, OpenAI, Google — one API key)
  • Database: Neon (serverless Postgres) to store schedule data
  • Hosting: Vercel for zero-friction deployments

The Schedule

The store hours are fixed: 10am–8pm daily (10am–9pm on Saturdays). Shifts are divided into three slots per day:

  • Opening Shift: 10am–4pm
  • Mid Shift: 12pm–6pm
  • Closing Shift: 2pm–8pm (or 2pm–9pm Saturdays)

The Agents

Agent Role Analogy
Availability Agent Checks who's free and when "Let me check everyone's calendar"
Fairness Agent Ensures equitable shift distribution "Marcus has had closing three weeks in a row"
Coverage Agent Validates store staffing rules "We need three people every day"
Schedule Coordinator Orchestrates the other three Alvin delegating to his team

By the end of this tutorial, you'll have a fully functional multi-agent scheduling system that the team at Fabulosa Books can use—and you'll understand how to design, build, and orchestrate AI agents for any problem.