Back to selected work

Demo · 2026

25 accounts. 4 intents. Every draft reviewed before it ships.

Select an intent, click Generate, and Claude's pre-generated drafts load in — personalized to each account's context. Review, edit, and approve. No API calls at runtime.

Intent

Demo only — no messages are sent. Clone the repo to run with your own data.

AccountLangLast contactContextStatusDraft preview

Acme Logistics

Sarah Chen

EN
21 days ago
Pending

—

Nimbus Health

Daniel Park

EN
1 month ago
Pending

—

Vector Retail

Jess Morales

EN
16 days ago
Pending

—

Helix Studios

Marcus Webb

EN
1 month ago
Pending

—

Lumen Foods

Carmen Reyes

ES
1 month ago
Pending

—

Orbit Legal

Andrés Fuentes

ES
3 months ago
Pending

—

Quartz Labs

Priya Nair

EN
7 months ago
Pending

—

Sienna Talent

Tomás Guerrero

ES
4 months ago
Pending

—

Pinetree Capital

Beatriz Alonso

ES
3 months ago
Pending

—

Mosaic Travel

Isabel Vega

ES
5 months ago
Pending

—

Cobalt Robotics

Zach Holden

EN
7 months ago
Pending

—

Fern Education

Lucía Mendoza

ES
8 months ago
Pending

—

Kite Mobility

Dani Torres

EN
11 days ago
Pending

—

Briar Insurance

Thomas Gallagher

EN
23 days ago
Pending

—

Solstice Wellness

Marta Ibáñez

ES
9 days ago
Pending

—

Tundra Imports

Edward Nash

EN
2 months ago
Pending

—

Glacier Hosting

Sam Rivers

EN
16 days ago
Pending

—

Cinder Press

Pau Oliveras

ES
19 days ago
Pending

—

Ember Realty

Claire Bouchard

EN
2 months ago
Pending

—

Driftwood Hotels

Jake Saunders

EN
26 days ago
Pending

—

Vesper Audio

Sofía Rueda

ES
1 month ago
Pending

—

Loop Couriers

Alex Kim

EN
21 days ago
Pending

—

Marsh & Co Bakery

Rosa Marín

ES
28 days ago
Pending

—

Atlas Tutoring

Michael Osei

EN
13 days ago
Pending

—

Northwind Energy

Rachel Thornton

EN
2 months ago
Pending

—

How it works

What this demo does, how, and what's missing

What it does
  • →Generates 25 personalized outbound drafts in seconds — one per account, with full personalization off each account's last contact, language and context line.
  • →Switch between 4 outbound intents (collections, re-engagement, product-update, referral) and the entire batch re-personalizes instantly.
  • →Inline review for every draft — read the system + user prompt used to generate it, edit the copy, then approve before it would ship.
  • →Bilingual (ES / EN) — each draft respects the account's preferred language, no translation step.
How it does it
  • →100 drafts (25 accounts × 4 intents) pre-generated with claude-sonnet-4-5 and shipped as static JSON — no API at runtime.
  • →Per-intent system prompt + per-account user prompt assembled from the same fields any real CRM would expose.
  • →Staggered timeouts simulate streaming so the UX matches a real batch run; status transitions (pending → generating → ready → approved) are pure local state.
  • →Fully client-side. No backend, no keys, no network calls — safe to deploy as a static portfolio page.
What a real impl would need
  • →Live CRM integration (HubSpot, Salesforce, Attio) for account state, owner, last-touch and reply tracking — not a static fixture.
  • →Real Claude API calls per batch with prompt caching on the system prompt, plus rate-limit / retry / cost telemetry per run.
  • →Send layer (SendGrid, Postmark, or native Gmail/Outlook) with per-account throttling and unsubscribe + suppression lists.
  • →Approval workflow + audit log — who approved which draft, when, and which version actually shipped.
  • →Per-intent eval set so prompt edits don't silently regress reply rate or tone for a segment.
  • →Compliance guardrails — CAN-SPAM / LFPDPPP footer, opt-out handling, and a deliverability dashboard.

The pattern transfers cleanly to any high-volume operator workflow — renewals, dunning, NPS follow-up, partner onboarding. The work is in the intent library and the eval set, not the runtime.