Creative

Rachel Bloom

Creative Platform Playbook

Complete guide to how the platform works and how the AI team uses it.
Contents
  1. What this platform is
  2. How it fits in the RB ecosystem
  3. The 7 tabs explained
  4. The brief lifecycle — ideation to deployment
  5. How the AI marketing team uses the platform
  6. Campaign calendar — how to plan the year
  7. Approval flow & auto-generation
  8. Notifications & reminders
  9. Uploading & importing creative
  10. Power tips
  11. Troubleshooting

1. What this platform is

Creative.rachelbloom.com is Rachel Bloom's autonomous creative operating system. It takes an idea or marketing moment, turns it into a brief, auto-generates production-ready creative via Claude, routes it through approval, and tracks everything end-to-end.

It's not just a brief inbox or an asset library — it's the place where ideas become executable campaigns without a dedicated creative team. The AI marketing team on marketing.rachelbloom.com are the primary submitters; Saul and Rachel are the primary approvers; Claude is the primary executor.

Core Principle

A strong brief → auto-generated creative in under 60 seconds. A weak brief → wasted approval cycle. Brief quality is the only thing that matters.

2. How it fits in the RB ecosystem

The creative platform is wired to two other systems:

marketing.rachelbloom.com — Where the 8 AI team members live. Each one can submit briefs directly to the creative platform by including a [CREATIVE_BRIEF] block in their chat response.
Supabase edge functionscreate-brief, approve-brief, auto-generate-on-approval, temporal-context, competitor-ad-intel, brief-awareness, import-external-asset, generate-asset, campaign-auto-plan, brief-reminder-cron.
Supabase tablescreative_briefs, creative_assets, brief_comments, asset_usage, creative_library_sources, brief_notifications.

3. The 8 tabs explained

Brief Inbox
Default view

Every brief in the system. Filter by status or requester. Click any brief to open its detail modal — description, reasoning, comments, linked assets, approve/reject buttons.

Campaign Calendar
Plan the year

Month/Week view of all briefs plotted by target launch date. Color-coded by status. Background shading marks major marketing moments (Mother's Day, Black Friday, etc). Click any entry to open the full brief.

New Brief
Manual submission

Form to manually submit a brief (for when Saul/Rachel want to create one directly instead of via the AI team). Include title, description, format, channel, priority, target_date, target_moment, tags, assigned_to.

Asset Library
All creative

Every creative asset — uploaded files, Drive imports, auto-generated output from approved briefs. Filter by format, status, tags. Click an asset to see full details, linked brief, and usage history.

Upload / Import
Bring assets in

Three ways to add existing creative: (1) Drag files from your laptop (uploads to Supabase Storage), (2) Bulk-paste Google Drive URLs (one per line), (3) Single URL link from Dropbox, Shopify CDN, or any public URL.

Claude Generator
Manual generation

Generate creative on demand — select an approved brief (or go standalone), pick a format, add instructions. Claude produces the creative. For standalone generation use when you want to explore ideas without a formal brief. Note: this is also what fires automatically when you approve a brief.

AI Team Feed
AI-only view

Filtered view showing only briefs submitted by AI team members (Ray, Maya, Jess, Celeste, etc.). Useful for auditing what the AI team has been proposing.

Playbook
You are here

This guide. Reference documentation on how the whole thing works.

4. The brief lifecycle — ideation to deployment

A brief moves through 5 statuses, with specific transitions allowed at each:

pending_review — brief submitted, awaiting human approval. Can transition to: approved or rejected.
approved — approved by Saul/Rachel/Jess/Celeste/Maya. Auto-triggers Claude creative generation. Transitions automatically to in_production.
in_production — creative being generated / executed. Auto-generation has fired. Assets appear in the Asset Library.
approved_final — creative reviewed and approved for deployment.
rejected — brief was not a fit. Rejection reason should be added as a comment.

5. How the AI marketing team uses the platform

All 8 team members on marketing.rachelbloom.com can submit briefs autonomously. When you chat with any of them, they have live context about today's date, launch runway, upcoming marketing moments, competitor ad activity, and the current brief pipeline. They submit briefs by including a [CREATIVE_BRIEF] JSON block in their response.

Who submits what
Ray (CMO) — strategic campaigns, launch briefs, brand-level direction. Routes to Jess or Saul.
Celeste (Brand Director) — voice/positioning, email copy, brand voice briefs. Routes to Saul.
Maya (Head of Growth) — Meta/Google ad creative. Routes to Jess for creative review or Saul for strategic sign-off. Never to herself.
Isabelle (Loyalty) — Bloom Circle emails, retention flows. Routes to Celeste.
Zara (Social Lead) — creator packs, social content, UGC briefs. Routes to Jess.
Harper (CS) — FAQ/explainer content, education. Routes to Celeste or Saul.
Jess (Creative Director) — hero imagery, photoshoots, video. Routes to Celeste or Saul.
Josh (BI) — infographics, investor-facing visuals. Routes to Saul.

Two-pair-of-eyes principle: team members never route briefs to themselves. Every brief requires a second perspective before approval.

6. Campaign calendar — how to plan the year

The Campaign Calendar shows briefs plotted by their target launch date (when the creative should go live), not when the brief was submitted. This is the planning surface.

The RB annual rhythm
Jan: New Year reset, travel planning
Feb: Valentine's Day (MAJOR — male gifting angle)
Mar: Spring Break, International Women's Day, solo female travel
Apr: Travel season kickoff, Easter, Europe prep
May: Mother's Day (MAJOR), RB LAUNCH (15th), Memorial Day, graduation
Jun: Summer travel (HUGE), Father's Day, festivals
Jul: Peak travel, 4th July, city travel, weekend trips
Aug: Back to school, TSB LAUNCH, study abroad, student safety
Sep: Fall reset, work commute, Labor Day, NY Fashion Week
Oct: Crime prevention, Halloween, CNT Awards, holiday prep begins
Nov: Black Friday (CRITICAL — premium positioning, NO discounts), Cyber Monday, Holiday Travel
Dec: Christmas (CRITICAL — men buying for women), New Year prep

Always-on campaigns (run monthly): theft stories (Reddit/TikTok UGC), travel safety (airports/cities/trains), product features (GPS, fingerprint, anti-slash), gifting ("I got her this").

The AI team members see the annual rhythm via the temporal-context edge function — they know what's coming up and whether prep windows are open. They'll proactively submit briefs for upcoming moments if the calendar is empty for that date range.

7. Approval flow & auto-generation

When you click Approve on a brief, six things happen in sequence:

  1. Brief status moves from pending_reviewapproved
  2. A comment is logged recording the approval
  3. The auto-generate-on-approval edge function fires (fire-and-forget)
  4. Claude reads the brief with RB brand voice + format-specific instructions
  5. Creative concepts are saved as a draft asset linked to the brief
  6. You receive an email at saul@rachelbloom.com with the generated creative preview

Total elapsed time: ~30-60 seconds. Brief then auto-transitions to in_production.

Warning: Approval is not a preview. Clicking Approve immediately fires Claude generation and costs ~$0.10-0.30 in API tokens. Don't approve "just to test" — only approve briefs you actually want executed.

8. Notifications & reminders

Three types of notifications go out automatically:

📬 New brief email
Sent to Saul + Rachel when any new brief lands in the inbox (regardless of who submitted). Contains the title, requester, reasoning, and a direct link.
⏰ Reminder email
Sent to Saul + Rachel every morning listing briefs still in pending_review for more than 24 hours. Cron runs daily at 9am UTC.
✨ Auto-generation complete email
Sent to Saul when approval triggers Claude generation and the creative is ready. Contains a preview of the generated content + link to review.

9. Uploading & importing creative

Three ways to bring existing creative into the platform:

Drag from laptop

Drop files (up to 50 MB each) in the drop zone. Uploads to Supabase Storage bucket creative-assets. Generates thumbnails automatically for images.

Bulk paste from Google Drive

Paste multiple Drive share URLs, one per line. Set the access to "Anyone with the link" first. System auto-detects Drive file IDs, extracts thumbnails, imports in bulk with progress bar.

Single URL import

For one-off imports from Dropbox, Shopify CDN, or any public URL. Fill in title, format, tags; paste URL; submit.

10. Power tips

  • Use target_date religiously. Without a target_date, briefs don't appear on the Calendar — they become invisible to planning.
  • Approve in batches. Each approval fires Claude generation. If you approve 10 briefs in a row you'll get 10 generation emails in ~3 minutes. Review them all at once.
  • Kill weak briefs early. If a brief's reasoning is vague, reject it with a comment. Don't approve and hope the generated output is good — weak brief = weak creative.
  • Reference moments in brief titles. Title: "Mother's Day Emotional Gifting Carousel" not "Carousel for May". Makes the calendar readable.
  • Use tags as campaign groupings. Tag all Mother's Day briefs with mothers-day-2026 so you can filter the calendar by campaign.
  • Check AI Team Feed weekly. See what the team has been proposing. Patterns emerge — certain members submit too much or too little.

11. Troubleshooting

Approval doesn't trigger creative generation

Check Supabase logs for auto-generate-on-approval. Common causes: function not deployed; missing ANTHROPIC_API_KEY secret; brief wasn't actually transitioned to "approved" (check status).

Not receiving notification emails

Check brief_notifications table — are rows being inserted? If yes, Resend may be rate-limited or the email domain may not be verified. Check Resend dashboard for delivery logs.

Team member submits but brief doesn't appear

Open DevTools → Network tab on marketing.rachelbloom.com. Look for POST to /functions/v1/create-brief. If 404: function not deployed. If CORS: JWT verification on. If 400: check request body matches schema.

Calendar shows nothing even though briefs exist

Briefs without target_date don't appear on the calendar. Open each brief and add a target date. Or run a SQL update to backfill.