ttsatsos

Tom Tsatsos

Building AI-native products and infrastructure — mostly for kids, families, and the agency I've run for 20 years.

Things I'm building

Personal projects — mostly AI, mostly for my family, all running on my own infra.

🏃
TestFlight
QuestRunner
Fantasy trail-running quest game for kids. A story (think "Goblin's Gold") layers over a real outdoor trail; the Apple Watch runs the quest. Progress is driven by distance moved — forgiving GPS means diverging from the path still completes the run.
Swift SwiftUI watchOS HealthKit iOS
🌱
TestFlight
Almara
Quiet habit-tracking iOS app for kids 7–14. No streaks, no leaderboards, no dopamine loops — real-world effort grows an avatar across 5 stages over years. Almas (✦) currency funds parent-curated rewards.
Swift SwiftUI Supabase iOS
📺
TestFlight
KidQueue
Curated kid-video walled garden. Kids browse a shelf I pre-approved; Claude auto-classifies channels into enriching vs. treat tiers. The wall is iOS Screen Time — no YouTube rabbit holes.
SwiftUI Next.js Claude Supabase YouTube API
Live
Mama Coco
Apple Watch AI assistant for my kids. Voice-first; self-hosted Claude Haiku gateway runs on my Mac Mini via Tailscale Funnel. Multi-session chats, text-to-speech, zero cloud lock-in.
watchOS Swift FastAPI Claude Tailscale
🧠
Building
Parent Brain
A structured knowledge base per kid, fed by weekly 10-minute voice check-ins via Foil. Each month, Claude turns the profile and accumulated sessions into a personalized, print-ready workbook calibrated to their level, interests, and gaps. Paper beats screens.
Node.js Claude Foil Whisper PDF
📥
Live
Yuko AI
Personal AI inbox. SMS, email, or in-app → Claude classifies into tasks, goals, ideas, saves. Differentiator: a tone-aware, anti-nag nudge engine with HMAC-signed stateless action tokens.
Next.js 16 Claude Supabase Twilio Web Push
🎙️
Live
Expert Panel
Multi-agent AI advisory board with versioned domain-expert personas and persistent per-agent memory. Daily portfolio standup runs automatically on my Mac Mini; real-time Slack agent team active in my workspace.
Claude Multi-agent Slack launchd
🎻
Live
Symphony
AI development orchestrator. Polls Linear tickets in "In Progress," spawns Claude Code in a per-issue workspace, and moves the ticket to "In Review" with a PR link on clean exit. Runs 24/7 on my Mac Mini.
TypeScript Claude Code Linear API GitHub
📊
Building
Vitals
Ecommerce health monitoring engine. Connects Shopify, GA4, and Google Ads → deterministic rules detect anomalies → Claude composes a daily Slack brief and weekly email digest. No dashboard in v1.
TypeScript Shopify GA4 Claude Postgres
🎙
Live
Foil
AI voice interviewer. Ask one question → interviewee records an answer → Whisper transcribes → Claude scores against a rubric → gates into a structured knowledge corpus. Async, no real-time streaming needed.
Next.js Whisper Kokoro TTS Claude
🗂
Live
Dossier
Constraint-blocked idea tracker. 125 ideas tagged by the one world-state flip that unblocks each. A watcher loop clusters predicates, monitors the frontier with web search, and pings when something trips.
Python Claude launchd Slack

20 years of client work

I also run #10, a web design and ecommerce agency.

#10

San Francisco web design and ecommerce agency. Shopify Plus builds, WordPress, SEO, and ongoing digital ops for consumer brands and enterprise clients. Running since 2006.

McEvoy Ranch Ghirardelli Sony Ericsson Stryker prAna Juice Beauty TriNet BioMarin Marubeni OCP