Cookies.
This version applied until the version dated 2026-09-23 replaced it on this site. Read the current version or see the version history.
We use the minimum needed to keep you signed in and the site functional. No advertising cookies, ever. Analytics is opt-in and the consent check fails closed: if we cannot read your choice, analytics stays off. Last updated: 2026-09-12.
01 · Cookies we set.
Every cookie this site sets, including the two third parties that set their own. Each row names the file that sets it, so you can check this table against the code rather than take our word for it.
- Session cookies set by our authentication providerStrictly necessary. Keeps you signed in and lets server routes identify you. Without these you cannot use an account.
Clerk, on our behalf · Session and short-lived refresh cookies, managed by the provider. ·app/layout.tsx (ClerkProvider) - __Host-anon-session-idStrictly necessary. Identifies a signed-out browser so rate limits and request-integrity checks can be applied without an account. HttpOnly, Secure and SameSite=Strict, and the __Host- prefix means the browser refuses to set it from JavaScript or from another subdomain.
AGI Automation LLC · 24 hours. ·lib/csrf.ts - agiworkforce-languageStrictly necessary. Remembers your chosen interface language so the server renders the same locale you saw last time.
AGI Automation LLC · 1 year. ·app/i18n/index.ts - _ga and _ga_*Analytics. Google Analytics page-view and session measurement. These are set only after you opt in, and are not set at all until then.
Google · Up to 2 years, set by Google. ·shared/components/AnalyticsConsentGate.tsx - __stripe_mid, __stripe_sidPayment. Fraud prevention on card payments. Set by Stripe when their payment script loads, which happens only at the moment you confirm a payment, not while you browse, and not on the pricing page. If you never pay, they are never set.
Stripe · Up to 1 year (mid) and 30 minutes (sid), set by Stripe. ·features/billing/services/stripe-payments.ts
We set no advertising or cross-site tracking cookies, and we do not sell or share personal information for cross-context behavioural advertising. Only the analytics row needs your consent; the rest are necessary to keep you signed in, keep the site functional, or complete a payment you asked for.
02 · What else we put on your device.
A cookie policy that only lists cookies is answering a narrower question than the one you asked. Most of what this product stores on your device is in local or session storage, not cookies, including your session credentials. None of it is a tracking technology and none of it is shared, but you should be able to see it, so here is the whole of it: every key that carries an identifier, a credential, or something you wrote is named below with the file that writes it, and the last row accounts for the remainder by the prefix they all share. Fourteen of the named keys were missing from this table until 12 September 2026, including a cached copy of your profile and plan, the custom commands you wrote, and an unsent message you typed. A test now derives the list from the code, so the table cannot fall behind it again.
- agi_secure_keyLocal storage. A marker that a browser-held encryption key exists for this session. Not the key itself: the key material is non-extractable and held by the browser.
Cleared by: Clearing site data. ·shared/lib/security.ts - cookie-consentLocal storage. Your analytics choice. Never sent to us. Anything unreadable counts as no decision, which means analytics stays off.
Cleared by: Clearing site data, which resets you to analytics off. ·shared/lib/cookie-consent.ts - agi.privacy.shareTelemetryLocal storage. A device-local mirror of your error-reporting preference, so the choice applies before the server answers. Off unless you turn it on.
Cleared by: Clearing site data. ·lib/sentry-shared.ts - agi-user-profile-storeLocal storage. A cached copy of your account profile so the app can render before the server answers: your name, email, avatar, and your plan and its renewal dates. It is a copy of what we already hold, not a separate collection.
Cleared by: Signing out, or clearing site data. ·shared/stores/user-profile-store.ts - agi-artifacts-storeLocal storage. Artifacts you have open, cached so they survive a reload. This can contain content you generated.
Cleared by: Clearing site data. ·features/chat/stores/artifacts-store.ts - agiworkforce-web-settingsLocal storage. Your app settings, including any custom commands you wrote. Those are your own text, held on your device.
Cleared by: Signing out, or clearing site data. ·shared/stores/web-settings-store.ts - agi-notification-storeLocal storage. In-app notifications you have received, their read state, and your notification settings.
Cleared by: Signing out, or clearing site data. ·shared/stores/notification-store.ts - agi-company-hub-storeLocal storage. Your AGI Work sessions and which one is active.
Cleared by: Signing out, or clearing site data. ·shared/stores/company-hub-store.ts - agent-metrics-storageLocal storage. Counters the app keeps for you about your own runs: sessions, completed and failed tasks, tokens and messages, and recent activity. Device-local, never sent to us, and not the metering we bill from.
Cleared by: Signing out, or clearing site data. ·shared/stores/agent-metrics-store.ts - agi-tool-permissionsLocal storage. The allow, ask and block verdicts you saved for individual tools.
Cleared by: Signing out, or clearing site data. ·features/connectors/stores/tool-permissions-store.ts - agiworkforce-web-chatLocal storage. Your model choice, the sidebar state, and the standing per-conversation decisions you made: which connectors a chat may not reach, whether Memory is off for it, and whether it is a Chat or an AGI Work thread. No message text.
Cleared by: Signing out, or clearing site data. ·shared/stores/web-chat-store.ts - agi-model-store, agi-response-style, agi-thinking-store, agi-ui-store, tool-storageLocal storage. Interface preferences with no personal data in them: the model and provider you last picked, your response style, your thinking-effort setting, panel and layout state, and your tool filters and trusted workflows.
Cleared by: Signing out, or clearing site data. ·shared/stores/model-store.ts, features/chat/stores/style-store.ts, shared/stores/thinking-store.ts, shared/stores/layout-store.ts, shared/stores/tool-store.ts - agi_last_activityLocal storage. A timestamp of your last interaction, used to time out an idle session.
Cleared by: Signing out, or clearing site data. ·shared/hooks/useSessionTimeout.ts - theme, theme-preferenceLocal storage. Light, dark or system. Read before first paint so the page does not flash the wrong theme.
Cleared by: Clearing site data. ·public/theme-init.js - agiworkforce-languageLocal storage. The same locale choice as the cookie above, cached for the client.
Cleared by: Clearing site data. ·app/i18n/index.ts - agi:tts-voice-uriLocal storage. Which system voice you picked for read-aloud.
Cleared by: Clearing site data. ·lib/hooks/useTTS.ts - agi.terms-accepted-versionSession storage. The revision of the terms you ticked, so signing in with a provider that leaves the page and returns does not lose the click. It is consumed once the account records your acceptance.
Cleared by: Closing the tab, or completing sign-up. ·app/signup/TermsGate.tsx - agi.team.invitation-tokenSession storage. An invitation token carried across the sign-in redirect so the invite still applies when you land back.
Cleared by: Closing the tab, or accepting the invitation. ·features/teams/components/TeamInvitationAcceptance.tsx - agi.composer-pending-draftSession storage. A message you typed into a new chat and navigated away from, held so pressing back gives it to you rather than losing it. It is the text you wrote, so it is named here rather than counted as a preference.
Cleared by: Closing the tab, sending the message, or clearing site data. ·features/chat/lib/pending-composer-draft.ts - Everything else, under an agi or agiworkforce prefixLocal storage. Interface state with no personal data in it: which model favourites you starred, which notices and banners you dismissed, which conversations are unread, and which interface variants you are on. Every remaining key the app writes carries one of those two prefixes, which is how the sign-out sweep finds them all. Nothing outside that prefix and outside this table is written by us.
Cleared by: Signing out, or clearing site data. ·shared/stores/authentication-store.ts (APP_STORAGE_KEY_PATTERNS)
Local storage survives closing the browser; session storage does not. Clearing site data in your browser removes both, and will sign you out.
03 · Two things people usually get told wrong.
There is no CSRF cookie
Our cross-site request protection is a token carried in a request header and bound to your session, not a cookie. Earlier versions of this page listed a "CSRF token" cookie. Nothing set one, so it is gone.
Your consent choice is not stored in a cookie
It is stored in your browser’s local storage under the key cookie-consent, on your device only. It is never sent to us. Clearing site data resets it to the default, which is analytics off.
04 · Do Not Track and Global Privacy Control.
We do not read either signal today. Browsers can send a Do Not Track header or a Global Privacy Control signal, and nothing in this product currently checks for them. We are stating that plainly rather than leaving you to assume one way or the other, because a site that silently ignores GPC while implying otherwise is worse than one that says so.
What this does and does not cost you: analytics is opt-in here regardless, so a browser sending GPC already gets the outcome it is asking for: nothing loads until you turn it on. The signal would matter for a sale or sharing of personal data for advertising, and we do neither. Reading the signal explicitly is tracked as an open item.
05 · Your choices.
Change your cookie preferences at any time: analytics stays off until you turn it on, and switching it back off stops it loading on your next page view. You can also manage cookies through your browser; clearing them will sign you out of any active session. For data export or deletion, see the privacy policy.