Sidekick Studio

Gordon's hobby project. A multi-agent AI chat platform where each "sidekick" is a specialized AI assistant with its own personality, system prompt, and optional custom tools.

Stack

  • **Server:** Express + Socket.io + PostgreSQL
  • **AI:** Claude Sonnet 4.6 (agent loop), Gemini 2.5 Flash (web search with grounding)
  • **Deployment:** Railway
  • **Auth:** JWT (90-day), bcrypt passwords, email verification via Resend
  • The Roster β€” 8 Sidekicks

    #SidekickIconTaglineDomain
    1Mentor🌟"Growth & wellness"Reflection, career, growth, mental wellness. Loads all other profiles + notes.
    2ConciergeπŸ—ΊοΈ"Places to go and things to do!"Travel, places, events. Has custom tools: search_flights, validate_business, get_directions, search_places. Loads Cinephile and CFO profiles.
    3CFOπŸ’°"Dollars and sense"Personal finance, investing, taxes.
    4Foodie🍽️"Gourmet chef & dietitian"Cooking, cuisine, diet planning.
    5TrainerπŸ‹οΈ"Fit happens"Workouts, fitness goals, progress.
    6StylistπŸͺž"Outfits & personal style"Personal style, wardrobe.
    7HandymanπŸ”§"Home repair & DIY projects"Home improvement, DIY.
    8Cinephile🎬"Movies, shows & books"Film, TV, and book recommendations. Keeps watched list in preferences, never re-recommends. Uses web_search for streaming availability and new releases.

    Key Decisions

  • **Musician removed** β€” Musician sidekick no longer exists.
  • **Cinephile covers film, TV, and books** β€” not replaced by Entertainer. The "Shows" app is a `/shows` URL variant of Cinephile with a narrower system prompt focused on TV and film specifically.
  • **CFO (not Finance)** β€” name is "the buddy that knows about investments and taxes." CFO is correct.
  • **Stylist (not Fashion)** β€” the app is in `apps/fashion/` but the displayed name is "Stylist". Consistent with Gordon's preference.
  • Design

  • Righteous font for headings and app names (Google Fonts)
  • App names: amber `#c8882a`
  • "SIDEKICK" branding: burnt sienna `#c45a3a`
  • Mobile-first, touch-optimized
  • No tables in responses (mobile readability)
  • Polling, not streaming β€” client polls every 2.5s
  • Preferences stored as profile blobs per app, injected into system prompt every message
  • Key Differentiator

    Sidekicks search extensively, verify details, and do actual work. "AI that does the work you'd otherwise spend hours doing." Takes time because it's thorough.

    Most Useful So Far

    Concierge β€” used heavily during vacation planning, which was the impetus for building the product.

    Related

    Fitness β€” Trainer is the fitness sidekick

    Personal Style β€” Stylist is the style sidekick


    Source: SidekickStudio repo at github.com/rousegordon-ops/SidekickStudio