Privacy Policy
Hooty connects your phone to the coding agents running on your own computer. There is no Hooty account and no Hooty server that holds your work. What appears in your terminal travels only between your phone and the machine you paired, encrypted, and we never receive it.
Who we are
Hooty is developed by KQAR (“we”). This policy covers the Hooty app for iPhone, the Hooty app for Android, and the Hooty app and hooty-server for Mac. Hooty was called Coda until November 2026, and hooty-server still answers to coda-server.
What stays between your devices
- Terminal contents, commands, prompts and files you attach are sent only between your phone and the computer you paired, over an encrypted connection (QUIC with TLS) in which each side verifies the other’s key. They are not sent to us or to anyone else.
- Pairing. The QR code your computer shows carries its address, a single-use token that expires in 60 seconds, and its key fingerprint. The camera is used only to read that code; no image is kept.
- Your phone’s key is created on the phone — in the Secure Enclave on iPhone, in the Android Keystore on Android — and cannot be exported from it.
- Your machines and settings (names, addresses, appearance, toolbar) are stored on your phone only.
- Local network. Hooty asks for local network access to reach your computer on the same Wi-Fi. It does not scan or report other devices.
Reaching your computer away from home
When your phone is not on your computer’s network, the connection can pass through relay servers run by Tailscale Inc., using a public relay list fetched from tailcat.dev. The relays see encrypted packets and the IP addresses involved; they cannot read what is inside. The same end-to-end encryption and key checks apply as on your local network.
Updates for the Mac app
The Hooty app for Mac checks for a new version at most once a day by downloading a small update list from GitHub (github.com), where its releases are published. The request carries the app’s name and version in its user agent and nothing about you, your machines or your sessions; GitHub, like any web server, sees your IP address. defaults write tech.kqar.coda.server updateChecks -bool false turns the daily check off. hooty-server never checks.
Notifications and Live Activities
- If you allow notifications, your iPhone gives its Apple push address (and, for Live Activities, their addresses) to the computers you paired, over the same encrypted connection.
- So that a computer with no Apple push key of its own can still notify you, your iPhone also sends those addresses to our relay at
push.coda.kqar.cc, together with an Apple App Attest proof that the request comes from a genuine copy of Hooty. The relay checks the proof and returns a signed permit for each address, which your iPhone then gives to your paired computers. The relay does not store the addresses, the proof or the permits; a permit lets a computer that holds it send notifications to that one address for 30 days. App Attest proofs contain no identifier for you or your device. - When an agent needs you, your computer sends a notification through Apple Push Notification service. It contains the session’s name, the machine’s name and its state — never terminal output, commands or prompt text. A Live Activity shows the agent, project, session title, branch, the name of the tool in use, status, counts and times.
- If your computer has no Apple push key of its own, it sends that request through our relay at
push.coda.kqar.cc, which runs on Cloudflare Workers, adds Apple’s authentication and forwards it unchanged. The relay stores no push addresses and no notification contents. Cloudflare processes connection metadata, such as IP addresses, as part of operating its network. - On Android, Hooty uses no push service. Any notice it shows is created on the phone itself.
Purchases
- Hooty Pro is paid for through the App Store. Apple handles payment; we never see your payment details.
- We use RevenueCat to check whether your subscription is active. RevenueCat receives an anonymous ID created on your device, your Hooty purchase and subscription history, and basic technical information such as the device model, operating system and app version, country and IP address. It does not receive your name or email address. See RevenueCat’s privacy policy.
What we do not do
- No accounts, no sign-in.
- No analytics or advertising SDKs, and no tracking across apps or websites.
- We do not sell or share your data.
If you choose to share diagnostics with app developers in your phone’s settings, Apple or Google may send us crash reports under their own terms.
Your computer
hooty-server runs on your own computer and keeps its state — paired phones, their push addresses, pending pairing codes — in ~/.coda on that computer. It is yours to inspect and delete. hooty-server revoke removes a phone.
Deleting your data
We hold no personal data of yours. Deleting the app removes everything it stored on your phone; hooty-server revoke removes the phone from your computer. To have your purchase record deleted from RevenueCat, contact us and we will request it.
Children
Hooty is a developer tool and is not directed at children under 13.
Changes
If this policy changes, we will update this page and the date above.
Contact
Questions about this policy or your data: privacy@kqar.cc