Privacy Policy

1. Scope and definitions

This policy applies to:

It does not apply to third-party services you choose to connect AIPointer to (OpenRouter, Anthropic, OpenAI, Google), to the GitHub repository at github.com/gonemedia/aipointer, or to Skales at skales.app. Each of those has its own policy.

References to "we", "us" and "our" mean Mario Simic, the data controller identified in the Imprint.

2. What the desktop app does and does not collect

The AIPointer desktop application has zero telemetry. There is:

The app does process the following data locally on your machine, in memory or on disk you control:

When you submit a prompt, this data is sent in a single HTTPS request from your machine to the AI provider you configured. The destination is the provider's own API endpoint. No copy is sent to us at any point.

3. Third-party AI providers (BYOK)

AIPointer is bring-your-own-key. You sign up directly with a provider, paste your API key into AIPointer settings, and all model traffic flows between your device and that provider. AIPointer supports:

Whichever provider you pick is the data processor for the screenshots, prompts and clipboard text you send. Their retention, training, regional storage and access policies apply, not ours. Review the policy of the provider you use.

The default fallback chain (OpenRouter, then Anthropic, then OpenAI, then Google) only sends a request to the next provider when a previous one returns a retryable error. The retry uses the same key configured for that provider.

4. Voice input and read-aloud

The microphone is only accessed when you actively start a voice recording. Audio is captured locally in the browser process via the Web Audio API and held in memory.

When you finish a voice recording, the audio is sent to your chosen provider for transcription (speech-to-text). When you tap the read-aloud button on a response, the response text is sent to your chosen provider for speech synthesis (text-to-speech), and the audio comes back to your device.

Both flows use the same direct connection to your configured provider. We do not see, route or retain any audio or transcript.

5. Auto-updater

From version 1.0.0 onward, AIPointer checks for new versions by making an HTTPS request to https://aipointer.app/updates/latest.json. The check happens 30 seconds after launch and once every 24 hours while the app is running. You can disable auto-checks in Settings, in which case you must check the GitHub Releases page or this site manually.

The request body is empty. The request headers are the standard headers a Node HTTPS client sends: a generic User-Agent string, an Accept-Encoding header, and TLS information. The request contains no user identifier, no API key, no installation ID, and no information about your usage of the app.

The server (Apache running on Hetzner shared hosting in Germany) writes a standard access log entry for each request, containing:

Access logs are retained for 30 days and are used only for debugging and abuse prevention. They are not joined with any other data set and are not used to build user profiles. After 30 days they are rotated and deleted.

If a new version is available, the app downloads the installer over HTTPS from the URL listed in latest.json, verifies its SHA-512 hash, and offers to install. The download itself produces another access log entry of the same form.

6. Binary downloads

Binary downloads served from aipointer.app/updates/ follow the same access-log model as the auto-updater. Downloading the app from this site produces a standard Apache access log entry with the fields listed in section 5, retained for 30 days.

If you prefer to avoid even that log entry, you can clone and build from source at github.com/gonemedia/aipointer. GitHub's privacy policy applies in that case.

7. Website analytics

The aipointer.app marketing site uses Google Analytics 4 (property G-QF48XWYWC9) with Google Consent Mode v2.

When you first visit the site, no analytics cookies are set. A consent banner appears. Until you accept, only Consent Mode v2 modelled data flows: cookieless, no user-level identification, no IP-level identification beyond what GA defaults to with anonymize_ip enabled (which is the case here). Advertising features (allow_google_signals) are disabled.

If you accept, GA may set the _ga and _ga_QF48XWYWC9 cookies. With consent granted, the following events are recorded:

None of these events include personal data we ask you for. We collect no name, no email, no account information on this website.

If you decline, no cookies are set and only modelled (cookieless) pageview data flows. You can revisit your choice by clearing your browser storage for aipointer.app; the banner will reappear.

Google's privacy policy: policies.google.com/privacy. Google Analytics terms: marketingplatform.google.com/about/analytics/terms.

8. Cookies

The site sets the following client-side storage:

Your consent choice is re-prompted after 12 months.

If your browser sends a Global Privacy Control signal, AIPointer automatically declines analytics on your behalf and skips the cookie banner.

9. Storage and security

App-side data stays on your device, in standard OS user-data directories:

API keys are stored in your operating system's secure key store (macOS Keychain, Windows DPAPI, Linux libsecret) via Electron's safeStorage API, not in plain files. We strongly recommend keeping a healthy device password and full-disk encryption (FileVault, BitLocker, LUKS).

Website access logs and server-side files live on Hetzner shared hosting infrastructure in Falkenstein, Germany. Server access is via SSH key and SFTP only. The server runs Apache with HTTPS forced for all paths.

If you are in the European Economic Area, the United Kingdom or Switzerland:

No data from the desktop app is processed by us, so no further legal basis is needed for that.

11. Your rights (GDPR)

If you are in the EEA, UK or Switzerland, you have the right to:

Because the only personal data we process on the website is your IP address (briefly, in access logs) and your consent choice (in your own browser storage), most of these rights are exercised by clearing your browser storage or by writing to us at the address in section 16.

12. California (CCPA / CPRA)

If you are a California resident, you have the right to:

We do not sell or share personal information in the CCPA sense. The desktop app collects no personal information about you. The website's only "personal information" is your IP address in access logs and a consent choice in your local storage. To exercise any of the rights above, contact us at the email in section 16.

13. International transfers

Server access logs are stored in Germany. The website is served from Germany. If you accept analytics cookies, Google Analytics may transfer data to the United States; Google relies on the EU-US Data Privacy Framework and Standard Contractual Clauses for such transfers.

Traffic from the AIPointer desktop app to the AI provider you configured may be routed through that provider's infrastructure in any country, depending on which provider you chose. Review the chosen provider's policy.

14. Children

AIPointer is not directed at children under 16, and we do not knowingly collect personal information from children. If you believe a child has provided personal information through the site, contact us at the email in section 16 and we will delete it.

15. Changes to this policy

We may update this policy as the product and the regulatory environment change. The effective date at the top of this page reflects the most recent revision. Material changes are summarised in the AIPointer changelog at CHANGELOG.md. The previous version remains available on request.

16. Contact and Data Controller

The data controller in the sense of Art. 4(7) GDPR is:

Mario Simic
Vienna, Austria
Email: [email protected]
Web: mariosimic.at

For any privacy-related question or request, write to [email protected] with "AIPointer privacy" in the subject line. We respond within 30 days as required by Art. 12(3) GDPR.

AIPointer is a private, non-commercial open-source project. No data protection officer is required under Art. 37 GDPR, and none has been appointed.

Back to home