ProtoLens is operated by MyAgentHubs. This notice describes the managed service: AI publishes HTML prototypes, people review them through private links, and an authorized AI connection reads submitted feedback for the next version.
Data we handle
- Accounts and sign-in: email address, internal account ID and creation time; for Google or GitHub sign-in, the provider name, provider account identifier and verified email. Provider access tokens are used during managed sign-in and are not stored in the managed database. Email-code sign-in stores the email, a nonce, a code hash, expiry, attempt count and use status.
- Early access waitlist: email, login provider, source label when supplied, first and last sign-in attempt times, and attempt count. Google or GitHub sign-in outside the invitation list leads to the waitlist rather than a managed account.
- Works and versions: titles, ownership, creation and archive/seen times, uploaded HTML (including any embedded data or review questions), immutable versions, object keys, content digests, byte sizes, upload tickets, upload status, and request/idempotency keys.
- Reviews: reviewer nickname and participant ID; saved drafts; submitted comments, answers, overall stance, anchors and quoted context; submission revisions and times; AI resolution status and explanation; and the feedback author's acceptance or follow-up explanation.
- Connections and access: registered client names and redirect URLs, grants, permissions, access scope, creation and revocation times; hashes of managed session, authorization-code, access, refresh, share, participant and preview tokens; expiry and use records; and session CSRF values. Short-lived upload tickets are stored as issued values, rather than hashes.
- Abuse prevention and referrals: rate-limit counters and expiry times keyed by account identifiers or hashes derived from IP addresses, emails or share/IP combinations. Referral codes, referrer/referred account relationships and credit times are also stored.
Storage and use
Managed account, authorization, waitlist, work metadata and review records are stored in Cloudflare D1. Uploaded HTML is stored in Cloudflare R2. We use these records to sign you in, control early access, publish and serve versions, save and deliver reviews, authorize AI access, enforce limits and track referral credits. We do not sell your data.
Who receives data
Cloudflare provides the application hosting, D1, R2 and the configured email delivery binding. Google and GitHub are used as managed sign-in providers; they are not required to store managed prototypes or reviews. Email-code sign-in sends the destination email and sign-in message through the configured Cloudflare email binding.
Anyone holding a review link can open the prototype, read submitted reviews in that review space, participate and forward the link. The owner and authorized AI connections can read submitted feedback within their granted access. Your chosen AI client receives content and feedback when it requests them through MCP.
Cookies and browser storage
__Host-pl_session: managed sign-in session, up to 7 days.__Host-pl_oauth: temporary Google/GitHub sign-in state, PKCE verifier and return/source context, up to 10 minutes.__Host-pl_participant_<shareId>: reviewer identity for one review space, up to 30 days.__Host-pl_ref: referral attribution, up to 30 days; cleared after successful sign-in.pl_lang: chosen interface language, up to 1 year.- Legacy GitHub compatibility uses
pl_sessionfor its session andpl_oauth_statefor its sign-in state. These are separate from managed sign-in.
The review interface also uses localStorage for participant draft recovery and submission state/keys, and sessionStorage for scroll/zoom recovery and pending share-creation keys. Browser copies can remain until you clear site data. Saved drafts are private to the participant before submission: they are stored by the service but are not returned to the owner or AI feedback tools.
Retention and deletion
Published versions and submitted review records are retained by the service; archiving a work does not delete it. Sessions, codes, preview capabilities and temporary connections have expiry checks. Expiry or revocation blocks access and does not itself mean all associated records are erased. Expired unpublished uploads are cleaned up during later upload/publish operations.
To request deletion of your account, waitlist entry, prototypes or reviews, email panda@myagenthubs.com with enough information to identify the records. There is no self-service account deletion flow or fixed deletion deadline stated here. Clearing browser site data removes your local copies; revoking a link cannot remove copies already saved by other people.
Contact
For privacy questions or deletion requests, contact MyAgentHubs at panda@myagenthubs.com.