Privacy policy

Last updated: 15 November 2026

This policy explains what personal data Jentera AI Sdn Bhd ("we", "us"), a company registered in Malaysia (registration no. 202601042741), collects when you use the CastSpell app for Mac, the castspell.dev website, and our licence and feedback services, and what we do with it.

The short version

1. What we collect and why

When you buy Pro

Payment is handled by Stripe. You enter your card details on Stripe's checkout page; we never see or store them. Stripe tells us your email address, name, country and billing details, the plan you bought, and the payment and subscription status. We use this to create and send your licence key, run your subscription, handle refunds and disputes, and keep the tax and accounting records the law requires.

In our licence database we store your email address only as a keyed hash (HMAC). We can't read it back, though we can check whether an address you give us matches. That hash links your purchase to signing in, in the app and on castspell.dev/account. Your full email address stays in Stripe and in the licence email we send you. The licence record also holds your Stripe customer and subscription IDs.

When you sign in from the app

Signing in is optional, on Free and Pro. You type your email in the app; we email you a link, valid 15 minutes, and you confirm the short code the app shows. We store your email only as the keyed hash above, plus a masked form (for example "q•••@gmail.com") on the sign-in request so the page can show which address the link went to; the sign-in request is deleted about a day later. We keep a record that the account exists (the hash, when it was created and when you last signed in). The app gets a sign-in session that we store only as a hash, together with the app's install ID and the device name. The session lasts 90 days from when it was last used, or until you sign out; the app keeps it in your Mac's Keychain. If you have Pro, signing in turns it on for that device.

When you activate or use a Pro licence

To check a licence, the app sends our licence server:

We store a hash of the key, its last 4 characters (for support), an encrypted copy of the key (so you can see it again in your account), the install ID, the device name, and when each device activated and last checked in. Nothing about your work is sent. The app keeps working offline for up to 30 days after the last successful check. When the app receives your key after you sign in, we log the licence and the time (not the key or your email), so misuse of a key can be spotted.

When you sign in to castspell.dev/account

You sign in with a one-time link sent to your purchase email. We store only hashes of the link (valid 15 minutes, used once) and of your session. The session is kept in one strictly necessary cookie, cs_session, which lasts 30 days or until you sign out. We record a short audit line (without your email or key) when you reveal or replace your key or deactivate a device.

When you send feedback

"Send feedback" in the app sends us your message, its type (bug, idea or question) and the CastSpell version, and, only if you choose to include them: your email address, a screenshot, and app details (update channel, operating system version, device model, memory, which agent tools are installed, and up to 50 recent lines of the app's own log). Screenshots are stored privately and deleted automatically after 2 years. Reports are also emailed to us. If you include your email, we store it as you wrote it so we can reply. We use reports to answer you and to fix problems. Don't include secrets in a screenshot or message.

When you email us

We receive what you send to [email protected] and keep it to answer you.

When you visit castspell.dev

Updates

The app checks download.castspell.dev for updates and downloads them from there, and may fetch its agent engine from releases.herdr.dev. Like any web request, these reveal your IP address to the host (Cloudflare).

2. Services you connect yourself

CastSpell starts agent tools you install and pay for (Claude Code, Codex, opencode, Hermes and others), uses your own fal.ai key for image and video cards, and connects to remote machines you choose. What you send to those services goes directly from your Mac to them, under their own privacy policies. We don't receive it.

3. Who processes data for us

Provider What for Where
Stripe Payments, subscriptions, invoices, customer portal US and other countries
Cloudflare Website, licence and feedback services, database and file storage, email delivery, web analytics Global network
Google Business email ([email protected]); fonts on the website US and other countries

We share data with others only when the law requires it, to protect our rights or prevent fraud, or as part of selling or reorganising the business (the new owner would be bound by this policy).

4. International transfers

We are in Malaysia and our providers process data in other countries, including the United States. Where the law requires it, we rely on safeguards such as the providers' standard contractual clauses.

5. How long we keep it

Data How long
Sign-in links Valid 15 minutes, used once; the request is deleted about a day later
Website sessions (castspell.dev/account) 30 days, or until you sign out
App sign-in sessions 90 days after last use, or until you sign out; the record is deleted 30 days after that
Account record (email hash, sign-in dates) While you use CastSpell; deleted on request
Key shown once on the thank-you page Removed after it's shown or after 24 hours
Rate-limit counters (keyed by a hash of your IP address, email or session) Up to a few hours
Licence records, activated devices and key-delivery log While your licence exists, then up to 7 years (Malaysian tax and accounting records). Ask us and we'll delete device names and install IDs sooner
Payment records (Stripe) 7 years, for tax and accounting
Feedback reports and screenshots 2 years (deleted automatically), or sooner on request
Support emails 2 years, or sooner on request

6. Your rights

You can ask us to access, correct or delete your personal data, to get a copy of it, or to stop using it for a purpose. If you're in the EU or UK you can also object to or restrict processing and complain to your local data protection authority; in Malaysia, to the Personal Data Protection Commissioner. Email [email protected]. We may need to confirm you own the purchase email first, and we keep what the law requires (for example payment records).

You can deactivate a device or replace your key at castspell.dev/account, and cancel your subscription in Stripe's customer portal.

Legal bases (EU/UK): performing our contract with you (licence, payment, account), our legitimate interests (security, fraud prevention, improving the app from feedback, privacy-friendly site analytics), legal obligations (tax and accounting), and your consent where you choose to include optional feedback details.

7. Security

Licence keys are stored hashed and encrypted; in our licence database emails are stored only as keyed hashes; sign-in links and sessions only as hashes. Data travels over HTTPS. Feedback screenshots are stored in private storage. No system is perfectly secure; if a breach affects you, we'll tell you and the authorities as the law requires.

8. Children

CastSpell is not meant for children under 13 (or the minimum age in your country), and we don't knowingly collect their data.

9. Changes

We'll post changes on this page with a new date, and email Pro subscribers about material changes before they apply.

10. Contact

Jentera AI Sdn Bhd, No 20, Mezzanine Floor, Level 2, Jalan SS 2/61, SS 2, 47300 Petaling Jaya, Selangor, Malaysia. Email: [email protected] (privacy questions and requests too).