Your conversations are sensitive. We treat them that way.
Worsley is designed around a simple principle: collect only what is necessary to provide your analytics, protect it throughout its lifecycle, and strictly control who and what can access it.
- AI session
Extension or CLI- Encrypted transmission
- Worsley API
- Encrypted storage
- Jev grading
- ROIP score
- Your dashboard
Encryption
Your data is encrypted whenever it moves and wherever it’s stored.
- Encrypted in transit
- Data sent between the Worsley extension, the Worsley CLI, our services, and your browser is protected with HTTPS/TLS. The extension can only be built to send to an HTTPS address, and the released CLI talks only to Worsley over HTTPS. A development copy of the CLI can also connect to a test server on the same computer.
- Encrypted at rest
- Stored Worsley data is encrypted at the storage layer.
- Protected keys
- Each account's conversations are encrypted with that account's own data key, which is protected by a main key held in AWS Key Management Service and opens only for that account. Database credentials are kept server-side. None of these are included in the extension, the CLI, or the website, so they can't be extracted from any of them.
- Controlled decryption
- Data becomes readable only where it's needed for authorized processing, like calculating your ROIP or showing you a session.
What Worsley actually collects
The extension and the Worsley CLI collect what’s needed to provide Worsley analytics, and nothing more.
Worsley captures the final reply you see. It doesn’t capture the model’s hidden reasoning or thinking.
What we collect
- Your prompts and the AI’s responses, in order
- From the Worsley CLI: your prompts and the AI’s written replies, only from the tools you turn on
- Session structure: turns, edits, and branches
- The chat’s URL
- The AI tool’s own thumbs-up or thumbs-down on a reply, when you give one
- Timestamps for the session and each message
- The platform and model, when the AI tool shows them
- Thinking or effort settings, when the AI tool shows them
- Attachment details: file name, type, and size
- A random installation ID, the extension or CLI version, and your operating system type
What we don’t
- Your browsing on any other website. The extension only runs on supported AI tools.
- The files you attach. Only their details.
- Files, commands, or tool output from terminal tools. The CLI captures prompts and replies only.
- Secrets in your prompts. Keys, tokens and passwords are removed on your own computer, by the extension and the CLI alike, before anything is uploaded.
- Chats or AI tools you’ve paused from the extension’s popup. Nothing from them leaves the page.
- The model’s hidden reasoning or thinking text. Only the final reply you see.
- Hardware or browser fingerprints. The installation ID is random.
How your data is used
Your data is used to provide Worsley to you.
- Calculate your ROIP and component scores
- Identify prompting patterns across your sessions
- Generate session-level analytics
- Show your improvement over time
We do not sell your conversation data.
We never use your conversations to train generative AI. Worsley’s own predictive models learn from your data only if you turn that on.
Your sessions are graded by Jev, a decision model from TypeSafe AI that answers fixed questions and writes no text. It sees the conversation only, with no timing or identity. TypeSafe doesn’t train on it, and your score comes from Worsley’s own formula.
Insights are written by Claude, from Anthropic, only when you ask for them. Anthropic doesn’t train on data sent through its API.
Access controls
Your data isn’t sitting somewhere anyone working on Worsley can casually browse. Every part of the system gets only the access it needs.
- Per-device keys
- Each extension or CLI installation gets its own key for your account, and each can only send its own kind of data. They can upload your sessions and read back only that account’s scores and suggestions, and you can revoke any of them from Settings at any time.
- Restricted production access
- Database credentials are held only by the Worsley API. They never ship in the extension, the CLI, or the website.
- Separation between users
- Your sessions belong to your account. Teammates see scores and activity, never your prompts, replies or session titles.
- Protected public endpoints
- The waitlist and demo request forms are validated and rate limited by the Worsley API to block abuse. The contact form is delivered by our form provider, Formspree, with a hidden field that filters out bots.
Authentication & account security
Your account is the way into your data, so it gets the strongest protection.
- Secure authentication
- Sign-in happens over HTTPS, and every request is tied to an authenticated account.
- Password hashing
- Passwords are hashed with a slow, salted algorithm. They’re never stored in plain text or with reversible encryption.
- Session expiration
- Signed-in sessions expire automatically after a period of inactivity.
- Brute-force protection
- Sign-in attempts are rate limited to stop password guessing.
- Secure password reset
- Reset links are single-use and expire shortly after they’re sent.
- Two-factor sign-in
- Turn on two-factor sign-in, and each sign-in also needs a code from an authenticator app, or a code or link we email you. With an authenticator app, you also get single-use recovery codes in case you lose your phone.
- Terminal sign-in
- The CLI signs in through the website with a short, single-use code that expires in ten minutes. Its key is kept in your operating system’s keychain, never in a plain file.
- Account deletion
- Deleting your account signs you out everywhere and revokes every device at once. After 30 days, the account and its data are permanently erased.
Infrastructure security
Worsley runs on managed cloud infrastructure, with security controls applied across the application, database, network, and deployment layers.
- Encrypted storage
- Secrets kept out of the source code and out of anything we ship
- Database credentials held only by the Worsley API
- HTTPS-only connections
- Secure production configuration
- Managed backups with point-in-time recovery
Security isn’t an add-on to Worsley. It’s part of how the system is designed.
- 1Collect only what’s needed
- 2Encrypt
- 3Restrict access
- 4Analyze
- 5Retain only as needed
- 6Delete when requested
Built for organizations
Teams get the same protections as everyone, plus controls over who can see what across a team.
Evaluating Worsley for your organization? Request our security documentation.
- Team access controls
- Owners and admins invite people and manage the join code. The owner decides whether members see ROIP.
- Role-based permissions
- Admins manage members and invitations. The owner also changes roles and team permissions. Members work with their own sessions and the team’s views.
- Private by default
- Owners and admins see team analytics and scores, never the text of members’ conversations.
- Data export and deletion
- Export your data, or delete a single session, all session data, or an entire account.
- Security reviews
- Answers to security questionnaires and data processing agreements, on request.
Found something? Tell us.
If you believe you’ve discovered a security vulnerability in Worsley, please contact us privately so we can investigate it.

