Your calendar and your privacy.
Anti Enterprises provides ANTI Day. This policy covers the Chrome extension and related support. Visits to anti.enterprises and newsletter subscriptions are covered by the separate website privacy policy.
Calendar access
ANTI Day requests read-only access to calendars you connect through Google. It reads event information to display your schedule. Calendar viewing uses read-only permission. The optional assistant may create a personal event on a calendar you own only after you accept its proposal and grant calendar.events.owned permission. Additional tokens remain in session storage. Editing, deletion, recurrence and invitations are not supported. Removing the Google account revokes the grant and clears both read and scheduling tokens. Google account identities and bounded event caches are saved in the local Chrome profile. OAuth access tokens are stored in Chrome session storage and clear when the browser session ends. Removing a Google account in Settings revokes access and removes that account's local event cache.
Preferences and saved links
Chrome Sync stores your display preferences, calendar visibility choices (including the calendar/account identifiers needed to apply them), and named HTTP(S) calendar or booking links. Chrome may synchronize these through your Google Chrome profile when Chrome sync is enabled. Link URLs may contain private sharing tokens; save only links you want stored in that profile. Google Calendar sign-in and Chrome sync are separate.
Existing local preferences and links migrate to Chrome Sync. Local preference copies and the original legacy link list are retained on the device for recovery. Deleting a migrated link removes its active synced entry; the original migration backup remains local until extension data is cleared. Google OAuth tokens, OpenRouter API keys, event caches and AI conversations are never placed in Chrome Sync by ANTI Day.
Optional AI questions
AI is disabled until you choose to enable OpenRouter access and supply your own key. The key is stored only in Chrome session storage, never synced or sent to ANTI. Use Forget key and disable AI to remove the session key and revoke the optional OpenRouter host permission. Restarting Chrome clears the session key; host permission may remain until explicitly disabled.
Loading the model list contacts OpenRouter with your key but sends no calendar data. Configure the model and selected calendars in Settings and explicitly enable calendar sharing. Each Send action permits the assistant to retrieve relevant dates or search for events in those selected calendars. There is no separate preview confirmation for each question. Context used is listed with the answer. Retrieval covers at most 366 days per call, 2,000 events and the model's context budget; large results are rejected with instructions to narrow the query instead of being silently truncated. A question may make several model requests (up to six) and calendar reads (up to four).
The request goes directly to OpenRouter and a provider serving your selected model. It includes your question, recent conversation in the open panel, selected calendar names, relevant event titles/times, all-day/busy status, timezone and locally calculated availability. Names and titles can contain personal data. Descriptions, attendee lists, meeting URLs and account identifier fields are omitted. Source-event URLs remain in the browser. Conversation history is bounded by the model context; the app asks you to clear chat if it no longer fits, rather than discarding context silently.
Scheduling tools can return proposals only. A real acceptance button or an exact acceptance message handled by the app is required before creation. The app checks for conflicts, asks for additional approval if conflicts exist, requests Google's scheduling permission when needed, and reads the created event back to verify it. Retries of the same proposal reuse its event ID. Accepted creation attempts are saved locally with the event title, times, calendar, account and stable ID until creation is verified or definitively rejected. Unconfirmed attempts can be recovered after closing the panel; they are never synced. Removing the Google account clears its saved creation attempts. Accepted events are sent directly to Google. Scheduling is currently limited to personal events on owned calendars, with no invitations.
Requests require OpenRouter's no-data-collection and zero-data-retention provider routing settings. If no compatible route exists, the request fails. These settings do not remove the need to review OpenRouter's own policies, account logging settings and usage metadata practices. See OpenRouter privacy (https://openrouter.ai/privacy) and provider routing controls (https://openrouter.ai/docs/guides/routing/provider-selection).
OpenRouter bills usage to your account. Set key spending limits there. Cancellation or timeout does not guarantee that an already-sent request incurs no charge. ANTI Day retains the conversation only in the open panel memory and includes it in follow-up requests. Closing the compact chat hides it without clearing history. Clear chat or closing the side panel clears the conversation. Closing chat stops an active AI request; if an event creation was already submitted, retry the same proposal to verify the outcome. AI answers may be incorrect; check the source events.
Newsletter and external links
Newsletter signup is optional and opens the existing ANTI website form. Connecting Google Calendar does not subscribe you. The extension does not pass your Google account email to the form. Signup is handled by the website under its own notice and consent process. Opening a calendar, meeting, saved link or newsletter page navigates to that third party.
ANTI services and control
This extension has no ANTI account service, analytics, advertising or ANTI-hosted calendar database. Calendar API calls go directly to Google; optional AI calls go directly to OpenRouter. The website may independently process visits to its pages.
You can disconnect Google accounts, remove active saved links, disable AI, or remove the extension. Browser data controls govern locally stored extension data and Chrome Sync. Google and OpenRouter also provide account-side access revocation and usage controls. For support or a privacy request, email joe@anti.enterprises with ANTI Day in the subject, or visit https://anti.enterprises/anti-day/support.
Data use and deletion
ANTI Day's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including its Limited Use requirements. Calendar data is used to provide the requested calendar and optional assistant features, not for advertising, selling personal data, or training general-purpose AI models.
To disconnect, open Settings and remove each Google account. You can also revoke ANTI Day access through your Google Account third-party connections page. Use Forget key and disable AI to remove the local session key and optional host permission; revoke the API key in OpenRouter if you want to invalidate it at the provider. Clear chat removes the current conversation from the panel. Delete saved links in the extension to remove their active Chrome Sync entries. Removing the extension clears its local data; retained migration backups are removed with that data. Chrome Sync and third-party retention are also governed by those services and their account controls. Calendar events already created in Google remain until you delete them in Google Calendar.
If you contact ANTI for help, we use the information you send to respond and resolve the request. Do not include passwords, API keys, private event descriptions, or other people's personal details. We retain support correspondence as needed to handle the request and applicable recordkeeping obligations; you can request deletion by email. We may update this notice when the extension changes and will update its effective date.