At a glance
Your workspace stays on your PC
Conversations, projects, memories, and settings live in a local database on your device. We don’t receive them just because WindOp is installed.
AI requests go where you point them
A prompt has to reach a model to get an answer. That means your chosen provider, or WindOp’s managed AI service and OpenRouter if you use hosted plans.
We don’t sell your data
No sale of personal information, no cross-context advertising, and no training of our own models on your private desktop content.
You choose the analytics
Website analytics run only after you accept. Desktop usage analytics are anonymous, tied to a random install ID, and can be switched off in Settings.
§ 01
Scope and who we are
This Privacy Policy explains how WindOp, operated by Unknown Projects (“WindOp,” “we,” “us,” or “our”), handles personal information when you visit windop.app, download or use the WindOp desktop application, create an account, join a waitlist, buy a plan, use managed AI, contact us, or otherwise interact with related services (together, the “Services”). We act as the controller (or, under California law, the “business”) for the personal information described here.
This policy does not cover independent third parties. AI model providers, OpenRouter, Stripe, sign-in providers, MCP servers, Discord, Anthropic, OpenAI, and other integrations have their own privacy practices, which apply when you choose to use them. Our Terms of Service govern your use of the Services.
§ 02
How data flows: local, bring-your-own, and managed
WindOp behaves differently depending on how you use it. Knowing which path you are on tells you almost everything about where your data goes.
| Mode | What leaves your device | Who receives it |
|---|---|---|
| Local workspace | Nothing about your chats, files, or projects. Optional anonymous usage analytics (see below). | WindOp analytics (PostHog), only if you have not opted out. |
| Your own API key | The prompts, context, attachments, and tool results needed for each request. | The provider you configured (for example OpenAI, Anthropic, or Google), directly from your device. |
| Claude Code or Codex subscription | Requests are handed to the official Claude Code or Codex program installed on your PC. WindOp does not read those programs’ credential stores. | Anthropic or OpenAI, under your own account and their terms. |
| WindOp managed AI (signed in) | Prompts, context, attachments, and tool results for each request, plus account and billing records. | WindOp’s API, then OpenRouter, then the model provider you selected. |
“Local-first” never means “nothing ever leaves your device.” A prompt, file, or screenshot that you or an automation include in a task can be transmitted to whichever AI or integration completes it. Review what you attach before you send it.
§ 03
Information we collect
Information you provide
- account details such as name, email address, profile image, and sign-in identifiers (including from Google or GitHub if you use them);
- your email address and chosen plan if you join a Pro or Team waitlist from our pricing page;
- support requests, feedback, and security reports;
- billing details such as plan, subscription status, purchase amounts, and invoices (Stripe handles your full card details; we never see or store them);
- prompts, messages, attachments, tool context, and outputs when you use managed AI; and
- credentials or tokens you choose to connect, used only as needed to provide that connection.
Information collected automatically
- website page views, navigation, clicks, browser, operating system, screen size, approximate location, and performance or error data, but only after you accept analytics;
- anonymous desktop usage analytics (such as app launches, feature usage, and model selection), tagged with a random install ID rather than your name, email, or account;
- first- and last-touch referrer and UTM campaign values, kept in your browser for up to 30 days and used to understand which links bring people to us;
- server request data such as IP address, user agent, timestamps, requested route, and security or rate-limit events;
- download-delivery records, meaning each time our server begins serving an installer, with approximate country and a de-duplication digest (this counts installer deliveries, not confirmed completed downloads);
- for signed-in users, authentication events, session and device identifiers, subscription state, credit balance and ledger, and managed AI usage metadata (model, token counts, cost, and request identifiers); and
- cookies and local-storage values described in the section on website analytics and cookies.
We do not intentionally store the text of your managed AI prompts or responses. Your requests still pass through our servers and OpenRouter in order to be answered, and the metadata above is retained for billing, abuse prevention, and reliability.
§ 04
Desktop actions, files, and screens
WindOp can read, create, edit, move, and delete files, run commands, inspect applications, capture screens, and use connected services when you ask it to or enable an automation. That activity happens on your device. It is transmitted off-device only when the task needs it, for example when file contents or a screenshot are included in an AI request, sent to an integration, or attached to a support report you choose to send.
We do not automatically receive your keystrokes, clipboard, local files, screenshots, or conversation database. Anything you deliberately include in a prompt or workflow can be sent to the AI provider, our managed AI endpoint, or the integration needed to complete it.
Secrets you save in WindOp are protected with the operating system’s facilities where available, such as Windows DPAPI or the macOS Keychain. Protection differs by platform and feature, so treat any credential you give an AI tool as something the tool can use.
§ 05
AI processing and providers
WindOp supports many models and providers. With your own key, requests go from the app to the provider you configure. With managed AI, requests pass through WindOp’s API and OpenRouter, which routes them to the model provider you selected, using a per-account key we provision and limit to your balance. Request data can include prompts, earlier messages sent for context, images or files you attach, tool definitions and results, and technical metadata.
Retention and training practices differ between providers, and some models are served by third parties chosen by OpenRouter. We don’t control those practices. Read the relevant provider and OpenRouter policies before sending sensitive information. WindOp does not sell prompts or use your private desktop content to train our own general-purpose AI models.
AI output can be wrong or unexpected, and we do not use it to make legal or similarly significant decisions about you. If you use WindOp to process other people’s personal information, you are responsible for having a lawful basis to do so.
§ 06
Website analytics and cookies
On windop.app we use PostHog for analytics only after you click Accept. It helps us understand page visits, navigation, clicks, conversion paths, broad device and browser information, errors, and performance, and, where enabled, session recordings with privacy masking. If you decline, PostHog does not load. Your choice is stored in your browser and we ask again after 90 days. You can change your mind sooner by clearing this site’s local storage, after which the banner returns.
Here is what the site stores in your browser:
| Purpose | Examples | Needs consent? |
|---|---|---|
| Sign-in and security | Supabase session cookies; admin session cookie for staff; CAPTCHA and rate-limit checks on downloads | No. Strictly necessary. |
| Preferences | Theme and interface choices; your analytics decision | No. Strictly necessary. |
| Campaign attribution | First- and last-touch referrer and UTM values, up to 30 days | Stored locally regardless of analytics choice; only sent to PostHog if you accept. |
| Website analytics | PostHog identifier and event data in local storage | Yes. Only after you accept. |
Required server-side authentication and security events for signed-in users can be recorded even if you decline browser analytics. They do not include raw IP addresses and are sent to PostHog only if you accepted analytics. Browsers’ “Do Not Track” and similar signals are not needed to keep analytics off, because analytics start only after you opt in.
§ 07
Desktop app usage analytics
The desktop app can send anonymous, aggregate usage events (for instance that the app opened or that a feature was used) so we can measure reliability and adoption. Each install has a random ID generated on your device. We do not attach your name, email, account, or conversation content to these events, and we do not link the install ID to your identity. As with any internet request, the receiving servers see the network address the request came from.
This is on by default and you can turn it off at any time under Settings → General → Anonymous Usage Analytics. When it is off, the app sends no analytics events. Clearing the app’s local data creates a new random ID.
§ 08
How we use information
- provide, authenticate, and operate the Services and provision managed AI access;
- route AI requests, run the integrations you enable, and sync data if you turn on preview sync features;
- process payments, manage trials, subscriptions, refunds, disputes, and credits, and prevent billing abuse;
- secure accounts, detect fraud and misuse, enforce rate limits, and protect users and infrastructure;
- diagnose failures, measure performance, and improve the website and managed services;
- contact you about support, security, transactions, waitlists you joined, and policy changes; and
- comply with law and establish, exercise, or defend legal claims.
§ 09
Legal bases (EEA, UK, and similar laws)
Where the GDPR or UK GDPR applies, we rely on: contract to provide the Services you request; consent for optional website analytics; legitimate interests in securing, improving, and supporting the Services and preventing fraud, balanced against your rights; and legal obligation for tax, accounting, and lawful requests. Anonymous desktop analytics rely on our legitimate interest in understanding product reliability, with an easy opt-out. You may withdraw consent at any time without affecting earlier processing.
We do not use personal information for solely automated decisions that have legal or similarly significant effects on you.
§ 11
Retention
Local desktop data stays on your device until you delete it, reset the app, or uninstall it. For data we hold, we keep it only as long as reasonably needed for the purposes above:
| Category | How long |
|---|---|
| Account profile and subscription records | While your account is active, then deleted or de-identified after closure unless a legal or security need remains. |
| Billing, tax, and transaction records | For the period required by accounting, tax, and dispute rules. |
| Credit ledger and managed AI usage metadata | While your account is active and as needed for billing reconciliation and disputes. |
| Authentication and security logs | As long as needed for security and abuse investigation. IP addresses in these logs are stored only as a keyed one-way hash. |
| Web server request logs | Up to 14 days, then deleted automatically. They record IP address, user agent, time, and requested route for security and abuse investigation; passwords, cookies, and sign-in tokens are removed before writing. |
| Download-delivery records | A rolling window of the most recent records; older entries are dropped automatically. |
| Browser attribution values | Up to 30 days in your browser. |
| Analytics consent choice | Up to 90 days in your browser, then we ask again. |
| Support emails and waitlist entries | Until the request is resolved or you ask us to delete them, plus a reasonable period for follow-up. |
Backups and logs can persist briefly after deletion. Providers such as Stripe, OpenRouter, and model providers apply their own retention schedules.
§ 12
Security
We use safeguards appropriate to the Services, including encryption in transit, access controls, hashing of IP addresses in auth logs, rate limiting, download screening, and operating-system secret protection in the app. Cloud sync is a preview feature: when you turn it on, synced categories are encrypted on your device with a key derived from a passphrase only you know, and we store only the ciphertext plus metadata such as category, version, device ID, device name and sync times. API keys, tokens and chat history are not synced. Chat backup is not offered yet. No system is perfectly secure.
If a breach affects your personal information, we will notify you and regulators as required by applicable law, including Pennsylvania’s Breach of Personal Information Notification Act (73 P.S. § 2301 et seq.). You can reduce risk by keeping Windows and WindOp updated, using strong unique credentials, limiting tool permissions, reviewing automations, and avoiding sensitive data in prompts unless needed. Report vulnerabilities to [email protected].
§ 13
International transfers
WindOp is operated from the United States, and our providers process information in the United States and other countries. If you are in the EEA, UK, or Switzerland, your information is transferred to countries that may not offer the same protection. Where required, we rely on recognized safeguards such as adequacy decisions (including the EU–U.S. Data Privacy Framework for certified providers) or Standard Contractual Clauses.
§ 14
Your choices and privacy rights
Whatever your location, you can ask us to tell you what we hold about you, correct it, delete it, or give you a copy, and you can turn off optional analytics at any time. Depending on where you live, you may also have the right to:
- object to or restrict certain processing;
- withdraw consent;
- receive your data in a portable format;
- appeal a decision on your request; and
- complain to your data-protection authority, or to the California Privacy Protection Agency or your state attorney general.
Account export and deletion controls are still being built, so for now please email [email protected] and we will handle the request manually. We may need to verify your identity, and an authorized agent may submit a request for you where local law allows. We aim to respond within 30 days (45 days for certain U.S. state requests, extendable where the law permits) and will explain any limits. We will not discriminate against you for exercising your rights.
California and other U.S. states. We do not sell or share personal information as those terms are defined in the CCPA and comparable state laws, so there is no sale or sharing to opt out of. WindOp is a small operator and may fall below the CCPA’s revenue and volume thresholds; we extend the rights described here to all users regardless. Pennsylvania does not yet have a comprehensive consumer privacy statute, and we will update this policy if that changes.
§ 15
Children’s privacy
The Services are not directed to children under 13, and we do not knowingly collect personal information from them, consistent with the Children’s Online Privacy Protection Act and the FTC’s COPPA Rule (16 C.F.R. Part 312). If you believe a child has given us personal information, contact [email protected] and we will delete it. A higher minimum age applies where local law requires it.
§ 16
Changes and contact
We may update this policy as WindOp evolves. When we do, we will change the effective date above and, for material changes, give reasonable notice on the website, in the app, or by email.
Privacy requests: [email protected]. General support: [email protected]. Security reports: [email protected]. If you need a postal address for a formal notice, ask support and we will provide one.
Questions about this Privacy Policy?
Email [email protected]. You may also want to read our Terms of Service.