Welcome
Onboarding
Welcome
Brand intro with tagline, value props, and privacy badge. Continue CTA leads to auth.
Sign In
Apple Sign-In, Google OAuth, or magic link. Supabase Auth with ASWebAuthenticationSession.
Connect Messages (Full Disk Access)
Reads ~/Library/Messages/chat.db. Data never leaves the Mac.
Contacts Permission
Request Contacts.framework access to match names to iMessage handles. Skip available.
Onboarding Complete
Confirmation screen. Tap "Get Started" to enter the main app.
Friendship Report
Network health gauge (4-component: Recency, Balance, Frequency, Depth), tier distribution bar, AI narrative insight, quick-action shortcuts, Needs Attention cards, Recent Activity feed.
Daily Tend
Three prioritized contacts to reach out to today. AI-generated reasons from real message analysis. Refreshes daily.
Follow-ups
Scheduled reminders with Supabase persistence. Past due / upcoming sections. Set from Contact Detail action bar. macOS notification permissions requested before first schedule.
Contacts List
Search bar, tier filter pills, 4-component health scores from real chat.db. Contacts enriched with names from macOS Contacts.framework.
Contact Detail
Avatar with health ring, stat cards (Messages, Sent/Recv, Days), pattern cards (Best Time, Who Starts, Peak Day), per-contact AI insights, conversation starter, message history, action bar.
Contact Insights (Full Analytics)
4-tab view: Overview, Mirror, Weather, Memory Bank. Conversation balance, weekly patterns, response behavior, relationship trajectory, activity history.
Contact Edit
Full contact editor with AI-suggested tags (✨ sparkle prefix). All fields synced to Supabase.
Snooze Sheet
Pause tracking temporarily. Snoozed contacts show moon badge.
Contact Import
Full contact import from the Contacts list FAB (+). Device contacts matched to iMessage handles. Plan limit enforcement with slot summary.
Conversation Starter
AI-generated from real iMessage history via PromptBuilder. On-Device badge when processed locally. Quality gate decides cloud fallback.
Gift Suggestions
AI gift ideas informed by Memory Bank extractions, MessagePatterns (closeness level), birthday awareness, and gift history deduplication. Per-category retailer mapping.
Memory Bank
AI-extracted conversation highlights: things they want, important dates, shared experiences, promises made. Fed into gift and conversation prompts.
AI Settings
Toggle AI mode (On-Device / Cloud / Disabled). Download/remove Llama 3.2 3B quantized model. Privacy consent management.
Upgrade Prompt
Context-sensitive upsell shown at plan limits. Feature list reflects Nurture tier actuals.
1 conversation starter
1 gift suggestion
10 starters · 10 gifts/mo
Full analytics
30 starters · 20 gifts/mo
Menu bar widget
Unlimited AI
Priority support
Paywall
4-tier plan comparison (Try / Engage / Nurture / Deepen). Deepen is annual-only. Separate starters + gifts counts per tier. Stripe-powered checkout via Supabase Edge Function.
Stripe Checkout
Secure payment via Stripe hosted checkout session. Webhook confirms payment and updates licenses table in Supabase.
Settings
Account (Supabase Auth session), subscription tier badge, AI settings link, referral program, newsletter toggle, FDA permission status.
Referrals
Share code, earn AI credits. 10 credits per referral for both parties. Backed by Supabase referrals + referral_redemptions tables.
Birthdays
Upcoming birthdays with send-message action.
Menu Bar Widget
Always-visible icon with quick access to Daily Tend contacts.
• Gift suggestion AI now uses conversation memories
• Memory Bank feature in Contact Insights
• Bug fixes and performance improvements
Auto-Update (Sparkle)
Automatic update checks via appcast.xml. EdDSA-signed for security.