SupaMaus

Security & CSP

What SupaMaus loads, where it talks to, what it isolates, and what it stores — for security review.

This page is written for whoever reviews SupaMaus before it goes on a production domain: security, platform, or IT. It covers the exact network surface, isolation guarantees, release model, data handling, and access control. It does not make claims beyond what's described here.

Content-Security-Policy

If your site runs a strict CSP, add the following to allow the widget to load and function:

script-src https://www.supamaus.com;
connect-src https://agreeable-opossum-599.convex.site https://agreeable-opossum-599.convex.cloud wss://agreeable-opossum-599.convex.cloud;

If voice mode (Voice mode) is enabled, connect-src also needs:

wss://generativelanguage.googleapis.com

The widget code itself is loaded from www.supamaus.com. All API traffic — chat, tour data, telemetry — goes to the convex.site / convex.cloud origins above. Nothing else is contacted.

Isolation

The widget is engineered to be safe to embed on a page it doesn't control:

  • Shadow DOM. The widget renders inside a Shadow DOM root. Your site's CSS cannot leak into it, and its CSS cannot leak into your site.
  • No global patching. SupaMaus does not modify, wrap, or monkey-patch any host page global, API, or prototype. It exposes exactly two globals of its own: window.SupaMaus and window.supamaus. Nothing else on the page is touched.
  • Async load. The embed script loads asynchronously and does not block page render.
  • Fail silent. If SupaMaus's backend is unreachable — network failure, outage, blocked request — the widget simply doesn't appear. It does not throw, does not block the page, and does not affect anything else on your site.

Versioned releases

Your site embeds one stable script URL (https://www.supamaus.com/embed.js) and never needs to change it for an update.

Behind that URL, every release is a separate, content-hashed, immutable bundle. Releases roll out in stages, not all at once. If a release misbehaves:

  • It can be rolled back instantly.
  • SupaMaus operates a kill switch that can disable a bad release globally, in seconds, with no action required on your side.

You do not pin a version and you do not need to test or approve releases before they reach your site — the staged rollout and kill switch are the safety mechanism.

Data handling

Chat. When a user asks the guide a question, the current page's visible structure is sent to the AI model to generate an answer. For questions that need visual context, a screenshot of the viewport is also sent.

Telemetry. Events like "tour started," "tour completed," and "answer helpful" are behavioral only. They do not contain form values, field contents, or other PII.

Recorded tours. If a recorded step involves typing into a field, the tour stores the field being typed into, never the value typed into it — at record time or replay time.

Uploaded knowledge. Docs you add on the Knowledge page are stored in your workspace and used only to answer questions on your own site. Deleting a source removes its content from the guide immediately. Unanswered-question capture stores short intent summaries only — never message contents or personal data.

Voice. Audio in voice mode is streamed for the live conversation only. It is not recorded or stored.

Autopilot safety

Autopilot ("run for me") lets the guide complete a step on the user's behalf instead of just pointing at it. It has hard limits:

  • It never types into password, 2FA, or payment fields.
  • It is fully disabled on any login, checkout, or billing URL — it won't act on those pages at all, regardless of what a tour step says.
  • A user can cancel any pending autopilot action by pressing Esc.

Access control

Tokens issued for the Chrome extension and for agent/MCP access (Agents & MCP) are:

  • Stored hashed, not in plaintext.
  • Shown once, at creation time, and never displayed again.
  • Revocable instantly from the admin dashboard — revoking a token invalidates it immediately for any client using it.

On this page