Privacy Policy
ianclaird.com — last updated August 2, 2026
The short, honest version, at a glance:
- Cookies & trackers
- none — no cookies, no analytics, no trackers, no ads
- Accounts
- none — achievements and settings live only in your own browser (localStorage); type forget in the terminal to erase them
- AI conversations
- held on my server for at most ~30 minutes, then deleted — though the AI providers keep their own copies under their own policies
- Phone numbers
- never stored in readable form · never shared · verified status expires in 48h · a hashed record that you consented is kept for 4 years
- Minimum age
- the phone/SMS feature is 18+; everything else has no age requirement
- Server logs
- none — the backend has no permission to write logs at all
- Opt out
- reply STOP to any text and that number is never contacted again
Talking to HAL (the LLM mode, or the room's hallway phone)
- Where your words go: a small backend (AWS) forwards your typed lines to Anthropic's Claude to write HAL's replies. Optional voice is synthesized by ElevenLabs; Cloudflare Turnstile is the bot check.
- How long they live: at most ~30 minutes on my server, deleted when the session ends.
- What the providers keep: Anthropic, ElevenLabs, Cloudflare and Twilio are separate companies, and each keeps its own copies of what passes through it under its own retention policy. My ~30 minutes describes my server, not theirs — I can delete my copy, and I can't delete theirs.
- Rate limits: abuse counters key a salted one-way hash of your IP address — never the address itself — and expire within hours to days.
- No server logs: the backend cannot write to its logging service — the permission has been removed, so not even a crash trace is recorded. Nothing you type reaches a log file, because there is no log file. (The host that serves this site, GitHub Pages, keeps its own request logs under its own policy.)
The phone number, the SMS code, and the call
- 18 or older: this feature is for adults. You confirm your age on the same form, in its own separate checkbox, and the backend refuses the request without it. Nothing else on the site has an age requirement.
- Consent first: HAL only calls a number you typed in yourself, after you actively tick the consent box. He texts a one-time verification code via Twilio; typing it back proves you hold the phone. Full program details in the SMS program terms.
- Never shared: no mobile information will be shared with third parties or affiliates for marketing or promotional purposes. Phone numbers and SMS opt-in consent are never sold, rented, or shared with anyone — they're used solely for the one-time verification code and the single call you requested.
- Never stored in readable form: verified status, call limits, and opt-out records exist only as salted one-way hashes. Verified status expires after 48 hours; the number itself is used once and discarded.
- The one thing kept long-term — proof of consent: when you tick the box, a record is written of when you consented and the exact wording you agreed to, keyed to the same salted one-way hash of the number. It's kept for 4 years, because a consent record is only worth anything if it outlives the period in which someone could dispute it. It contains no readable phone number, and nothing in it can be used to contact you or to recover the number — answering "did this number consent, and to what?" needs the number to be supplied in the first place.
- Message frequency: one SMS verification code per request you initiate, with strict daily caps. No recurring messages.
- Message and data rates may apply.
- The call itself: US numbers only, strict daily caps, and it starts with a neutral automated prompt — nothing plays unless you press 1. Twilio processes call and SMS metadata under its own privacy policy.
- If you call HAL: Twilio transcribes your speech so Claude can answer; the call's memory lives ~30 minutes, then it's gone.
- Opting out: reply STOP to any text from HAL and that number is never texted or called again (START lifts it). The block is permanent and stored only as a salted hash.
Questions or removal requests
Email career@ilaird.com and I'll take care of it.