← WhosWhoZoo

Where your data goes — and where it doesn't

A plain-English map of what lives where, what moves, and what Hans can and cannot see. No promises — architecture.

YOU Your browser Phone or laptop. Nothing stored here. YOUR CLOUDFLARE ACCOUNT Cloudflare Worker Routes all requests. Holds your API keys as secrets. Cloudflare KV Your notes live here. Plain markdown. Your account, your billing. Cloudflare R2 Photos you attach. Your account, your billing. Same credentials as KV. ANTHROPIC API Claude AI reasoning · memory queries. Per-request only. Does not store your notes. OPENAI API Whisper Voice → text (transcription). Per clip. Audio not retained. ELEVENLABS API Voice synthesis Text → spoken audio. Per-request. Not stored. HANS (DEVELOPER) No credentials. No Worker or KV access. No API key visibility. No copy of your notes. question answer reads notes question + notes answer (not stored) voice clip transcript text to speak audio back no access ALL PER-REQUEST — YOUR API KEYS
🏠
Your notes live in your Cloudflare account — they travel to Claude only to answer your question
The only lasting copy of your memory is the one in your own Cloudflare account — notes as plain markdown in your KV, photos in your R2. Not by policy, but because there's no WhosWhoZoo server for a second copy to live on. Ask a question and your notes travel to Claude just long enough to answer it; Anthropic deletes them within 30 days and never trains on them. That round trip is the whole product: everything you've written is in front of the model every time you ask, which is why it doesn't forget.
⚡
Anthropic processes your question — it doesn't keep your notes
When you ask something, your Worker loads your notes and sends them to the Anthropic API along with your question. Under Anthropic's API terms, this content is not used to train models and is not retained. Your notes exist at Anthropic for milliseconds, not in any database.
🎙️
OpenAI Whisper — voice goes in, text comes back, nothing stored
When you use voice mode, your audio clip is sent to OpenAI's Whisper API for transcription. The resulting text is what the Worker acts on — your audio is processed per-clip and not retained by OpenAI under their API terms.
🔊
ElevenLabs — text goes in, voice comes back, nothing stored
When WhosWhoZoo speaks a reply, the answer text is sent to ElevenLabs to synthesize audio. The text is converted per-request; it is not stored or used for training under the API terms. If you prefer, you can disable voice entirely in settings — Anthropic and OpenAI still work without it.
✕
Hans cannot see your data — structurally, not by policy
The setup wizard runs in your browser and deploys a Worker and KV namespace to your Cloudflare account. Your Cloudflare token and API keys pass through a same-origin relay that forwards them straight to Cloudflare's and each provider's own servers — nothing is ever written to a WhosWhoZoo database, not even for a moment. There is no WhosWhoZoo server, no shared database, no analytics pipeline. If Hans were subpoenaed for your notes, he couldn't produce them. Not "won't." Can't.
Your API keys are encrypted secrets inside your Worker — not in your browser, not on any shared server. The keys for Anthropic, OpenAI, and ElevenLabs are all stored in your Cloudflare infrastructure. Hans cannot read them. Full install guide →