Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/thePrnvBot/dispel-web-stylist/llms.txt

Use this file to discover all available pages before exploring further.

Dispel is built on a local-first principle: every piece of data the extension touches — your prompts, generated CSS, API keys, and UI preferences — lives exclusively in your browser’s extension storage. Nothing is routed through Dispel servers because no Dispel servers exist. The only moment any data leaves your device is when you submit a prompt, at which point the sanitized page context and your message are sent over HTTPS directly to the AI provider you have configured. This page documents exactly what is collected, how it is stored, and who else may see it.

Data We Collect

Website Content

When you submit a prompt, Dispel reads the visible HTML structure of the active tab and sanitizes it before transmission. The sanitizer works as follows: Stripped elements — these tags and their entire subtrees are removed:
SCRIPT · STYLE · NOSCRIPT · META · LINK · IFRAME · CANVAS
SVG · HEAD · BASE · TEMPLATE · PATH · MASK · DEFS
Additional filtering — invisible elements (display: none, visibility: hidden, opacity: 0, aria-hidden="true", or hidden attribute) and elements outside the current viewport are excluded. HTML comments are removed and whitespace is normalized. Attribute allowlist — all attributes are stripped from every remaining element except the following 13:
id · class · style · href · role · data-testid · data-qa
type · name · placeholder · src · alt · title
This cleaned HTML is sent to your chosen AI provider to generate CSS selectors and styles that precisely match the page’s structure.

Page URL and Title

The current page URL and title are sent to the AI provider alongside your prompt so that generated CSS is contextually accurate. They are also stored locally with your prompt history so you can organize and filter styles by website. Before storage or transmission, the URL is stripped of its query string, fragment, and any userinfo component — only the scheme, hostname, and path are retained.

Viewport Dimensions and Scroll Position

The current window width, height, and scroll offset are sent to the AI provider so it can generate CSS that is appropriate for the visible area and current scroll context.

Picked Elements

When you use the element picker and click an element, its outerHTML is sent to the AI provider so it can target that specific element with precise CSS. Before transmission the element’s HTML passes through the same 13-attribute allowlist applied to the full page-HTML context — no additional attributes are included.

User-Uploaded Files

If you attach .css, .txt, or .md files to a prompt, their plain-text contents are sent to the AI provider as additional context for generating CSS.

API Keys

The API keys you enter for AI providers are stored locally in chrome.storage.local. They are transmitted only to the respective AI provider’s API endpoint — in the Authorization header — when you submit a prompt. They are never sent to any other destination.

Prompt History and Generated CSS

Your prompts and the resulting CSS are stored locally in chrome.storage.local. This data does not leave your device except when it is included as conversation context in a subsequent AI request for iterative styling.

Local CSS Cache

A small cache of the most recently applied CSS per hostname is written to the visited website’s localStorage under the key dispel_styles_cache. This allows styles to reapply quickly on page reload before the extension’s storage is available. This cache is scoped to the individual website and is not accessible to Dispel or any other extension.

How Data Is Stored

chrome.storage.local

Prompt history, generated CSS, active drafts, API keys, model configurations, and UI preferences are stored in chrome.storage.local — a browser-managed area scoped exclusively to the Dispel extension. The browser encrypts this storage; no other extension or website can read it.

Website localStorage

The dispel_styles_cache key is written to each visited website’s own localStorage so styles can reapply on reload. This data is scoped to that site’s origin and is not shared with Dispel.

No Dispel Servers

Dispel does not operate any backend servers or databases. There is no account system, no cloud sync, and no analytics pipeline. Data either stays on your device or goes directly to the AI provider you configure.

HTTPS Transmission

When you submit a prompt, data is sent to your configured AI provider over HTTPS. No plain-text transmission occurs.

Third-Party Services

Dispel connects to the AI provider you configure. Each provider’s privacy policy governs how they process and retain the data you send them.
Data sent to an AI provider is subject to that provider’s own retention and processing policies. Review your provider’s privacy policy for details on how they handle prompts and conversation context.

OpenAI

Processes your prompt, page context, and uploaded files to generate CSS. Review OpenAI’s privacy policy for data handling and retention details.

Anthropic

Processes your prompt, page context, and uploaded files to generate CSS. Review Anthropic’s privacy policy for data handling and retention details.

Google

Processes your prompt, page context, and uploaded files to generate CSS. Review Google’s privacy policy for data handling and retention details.

OpenRouter

Routes requests to a model of your choice. Review OpenRouter’s privacy policy for data handling and retention details.

Local Models (e.g. Ollama)

When you configure a local model, all inference runs on your device. No data leaves your machine at any point during prompt submission.

Custom Base URL

You may configure any OpenAI-compatible API endpoint. In that case, data is sent to the URL you specify. You are responsible for reviewing the privacy practices of that endpoint.
Dispel does not use analytics services, telemetry pipelines, crash reporting tools, or any form of behavioral tracking.

Data Sharing

Dispel does not sell, rent, or share any data with third parties. Your prompt history, generated CSS, API keys, and preferences never leave your device except as described above — transmitted directly to the AI provider you have explicitly configured when you submit a prompt. There are no advertising partnerships, no data brokers, and no third-party SDKs embedded in the extension.

Data Retention and Deletion

All prompt history and generated CSS is stored locally and persists until you delete it. You can delete individual prompts directly from the side panel’s prompt store. To remove all extension data at once, uninstall Dispel from your browser — this clears all chrome.storage.local data associated with the extension.
API keys and model configuration data are stored in chrome.storage.local and persist until you clear them from the extension’s settings or uninstall the extension.
The dispel_styles_cache entry in a website’s localStorage persists until you clear site data for that website. You can do this through your browser’s built-in site data or storage settings (for example, Settings → Privacy and security → Site settings → View permissions and data stored across sites in Chrome).
Data transmitted to AI providers is governed by each provider’s own retention policy. Dispel has no ability to delete data held by a third-party provider. Consult your provider’s privacy policy or data deletion request process for details.

Changes to This Policy

If this privacy policy changes, the updated version will be published at this URL with a new “Last updated” date. Significant changes may also be communicated through the extension’s options page or its store listing.

Contact

For privacy inquiries, contact: support@usedispel.dev
Last updated: 2026-06-09

Build docs developers (and LLMs) love