Account and profile
Your email address, and your display name and avatar if you sign in with Google or GitHub or if you set them. Optionally, a headline, a short bio, and website, GitHub and LinkedIn links, which are public if you fill them in. Your plan and onboarding status. Preferences you set, including custom instructions you write for the agent, your theme and interface settings, your default model and runtime choices, your email and notification preferences, and what you told us you signed up to do. We do not ask for your employer, job title or company at signup.
Content you create in the product
Notebook cells, including code and text. Files you upload and files created inside your sandbox. Your chat with the agent, including your prompts, the agent’s replies, tool calls and their results, and the model’s intermediate reasoning. Execution records, including error messages and Python tracebacks from your own code, and execution outputs, including images, tables and charts. Notes the agent extracts and keeps as project memory, stored with a numeric embedding so it can be recalled. Research results, including the question asked and quotations from the sources retrieved.
Credentials we hold for you
Access and refresh tokens for accounts you connect, your own model provider API keys if you use bring your own key, and any headers or environment values you configure for an MCP server. Clusy API keys you create are stored only as a hash, so we cannot recover the key itself. Section 12 explains how these are protected.
Billing
Your Stripe customer and subscription identifiers, your plan and its history, invoices, and metered usage records. We never receive or store your card number. Card details go directly to Stripe.
Device, usage and logs
Product analytics events about what you do in the app, request and access logs from our servers, your IP address, a coarse city and country derived from it, your browser and device type, language and timezone. Application error reports, which include an error message, a stack trace and the identifiers of the account, project and session involved.
Security and abuse records
Signals produced by the automated checks described in section 7, including categorised detection labels and irreversible hashes of the code that triggered them, records of suspensions and appeals, and hashes of IP addresses used to detect linked accounts.
Marketing and attribution
If you arrive from a campaign link, the referring URL, landing page and campaign parameters, held against your account after you sign up. An advertising click identifier from the link you arrived on is stored in a first party cookie and in your browser, but is not sent to your account record. Clicks on our short links are logged without an account identifier, with a hashed IP and a coarse country.
Meeting bookings and support
If you book a meeting with us: your name, email, timezone, any notes you write, and the email addresses of guests you add. If you contact support: your message, your email, and basic diagnostics about the page you were on. If you use the contact form on our website: your name, email, team or company and your message. If you use the Ask feature on our documentation site, your question and the last few turns of that conversation are sent to an AI model to generate an answer, and we do not store the text of your questions.
Your Portal account and sign in
Portal, our second product, has had its own accounts since November 8, 2026, separate from Clusy notebook accounts. You sign in to Portal with a six digit code sent to your email address, or with Google or GitHub. There is no password.
Portal’s account store keeps your email address, whether you have confirmed it, and when you signed up and last signed in. If you sign in with Google, it also keeps the name, profile picture address and account identifier Google gives it. If you sign in with GitHub, it keeps your GitHub username and user identifier, your profile picture address, and your name if your profile has one. It records the IP address and browser of each sign in. Asking for a code creates an account record at once, before you enter the code.
Portal’s own record of you holds an account identifier, your email address and whether it is verified, a display name if Google or GitHub gives one (for GitHub, your username if your profile has no name), your account status, and when you first and last signed in. It holds no IP address and no picture. Your first sign in creates a personal workspace, named after your email address, with you as its Owner.
If you used Portal before November 8, 2026, you signed in to it with your Clusy account. When Portal began signing people in itself, we copied your sign in details from the Clusy notebook’s account store into Portal’s, keeping the same identifier: your email address, when it was confirmed, when the account was created and last used to sign in, the profile details Google or GitHub had given (such as your name and picture address), and your email, Google and GitHub sign in links. No password or second factor was copied. Your Clusy notebook account was not changed and remains a separate account.
When you sign in from the portal command line tool or from a coding tool, Portal stores the name of the tool and your computer’s host name with the access you approve, and stores the access itself only as a hash. Each such sign in, whether back through your browser or with a device code, also records the IP address it came from, in a record deleted within about 25 minutes of the sign in starting.
Your Portal jobs and machines
For your work, Portal keeps:
- the credentials for the cloud accounts you connect and the secrets you store for jobs, sealed as section 12 describes, with the names of secrets readable;
- records of each job: its name, project, script path, arguments and any environment variables you pass, which are stored readably, its requirements, settings and budget, its status, cost estimate and savings, and, if it fails, the error your program ended with, including its message, up to 500 characters, and where in your code it exited;
- each job’s events, and samples of its CPU, memory and GPU use and its progress;
- a description of each machine that runs a job: its host name, operating system, processors, memory, GPUs, free disk, Python version and installed Python packages, and its provider, machine type, region and zone;
- each job’s output stream, which is everything the job prints, up to its first 256 MiB;
- checkpoints of running jobs, which hold the program’s memory and working files, so anything your program has read into memory, including a secret, can be inside one;
- the working directory you upload with a job, leaving out version control folders, environments, caches, ignored files, files whose names suggest credentials, JSON files that hold a private key and files over 100 MB, and the job’s outputs, which are its working directory saved when it finishes, fails or is stopped while running;
- a cost ledger of every cloud resource Portal creates for you;
- what Portal reads from your cloud accounts: prices, machine types and quota limits, and for AWS the daily cost of the resources Portal started, from your Cost Explorer; and
- an audit log of every change in your workspace, every sign in and every approval, with the IP address it came from.
If you enrol one of your own computers to run jobs, Portal keeps its host name, a hashed form of its machine identifier, its operating system, architecture and hardware, its GPUs and drivers, its free disk and Python version, the user name and number its jobs run as, whether that user can act as an administrator without a password and which administrator groups it belongs to, the versions of its tools and, optionally, its SSH host key fingerprint. It keeps these after you remove the computer.
Feedback you send from the Portal console carries its type, subject and message, the page you were on, your verified email address (or, without one, your account identifier), your workspace’s identifier and the Portal version, and a contact address if you choose to give one. It goes to Clusy’s own feedback inbox, not into Portal.
Portal also records product analytics, described in section 15, and its server and load balancer keep logs that include IP addresses, described in section 10.
Where it comes from
Mostly from you and from your device. Some comes from your connected accounts at your direction, some from Stripe about your payments, and some from other people: someone who adds you as a guest to a meeting gives us your email address, and a person who shares a project with you creates a record involving you.
For Portal, some comes from Google or GitHub if you sign in with them, from the cloud accounts you connect, which Portal reads to quote prices, check quotas and check its cost estimates, from the machines that run your jobs, and, for people who used Portal before November 8, 2026, from the Clusy notebook’s account store.