Privacy Policy

Last updated: September 2026

Focus Companion is built around a simple rule: analyze your focus context on your device and send nothing. The question it answers — "does this page match what I said I'm working on?" — is answered by a model running inside your own browser. This page explains exactly what that means.

Nothing you read leaves your device

Analysis runs on Chrome's built-in AI (Gemini Nano), inside the extension's own background worker, on your machine. There is no server, no account, and no third-party AI provider. The extension does not transmit page content, goals, activity signals, or stored data. Chrome itself downloads its built-in model after you explicitly ask it to; that browser-managed download contains none of your Focus Companion data.

Earlier alpha code could send page snapshots to a gateway we operated, which forwarded them to DeepSeek. That path has been removed from the current Chrome Web Store package.

What Focus Companion looks at

While a focus session is running, on the page you're actively viewing, Focus Companion reads:

The on-device model does not receive the web address. The domain is blanked before the model snapshot is assembled, and no path, query string or fragment is included in that snapshot. Separately, the extension uses the domain and first two path segments locally for session context; the full address, query string and fragment are not stored.

Focus Companion does not record raw keystrokes. Its text walker excludes form controls such as input, textarea, select and option, so their current values — including password, payment and one-time-code values — are outside the snapshot. Visible DOM text is included, including rich-text drafts, previews, labels and text that a site mirrors outside a form control.

Local development pages served from localhost, 127.0.0.1 or ::1 are treated like other ordinary web pages and can be analyzed during a focus session. You can exclude any of them in the extension's settings.

Navigation bars, headers, footers, sidebars, toolbars, menus and buttons are left out of the text excerpt, so what is read is the page's content rather than its furniture.

Before this text reaches the model, an automatic filter replaces common email-address, phone-number, API-key and token patterns.

The boundary is simple

Standard form-control values and raw keystrokes are outside the snapshot. Visible DOM text is inside it, including custom editors, rendered previews and text mirrored by a site. Gemini Nano analyzes that snapshot on your device. Nothing is transmitted. Exclude a site if you do not want its visible text analyzed locally.

Questions you should not have to guess

Does it read signed-in or private pages?

Yes. Visible text on private repositories, inboxes, dashboards and other signed-in pages can be analyzed locally during a focus session.

Does it read what I am writing?

Yes. Visible text in contenteditable or rich-text editors and rendered previews is included. Raw keystrokes and the live values of standard input, textarea and select controls are excluded.

Is visible sensitive text included?

Yes. If a site renders sensitive information as visible DOM text, it is part of the local snapshot. It is analyzed on your device and is not transmitted.

How do I stop a site being read?

Add that site to Excluded sites in Settings, stop analysis on the current site, or end the focus session.

What is stored, and where

Everything — your goal text, session history, reports, preferences and the per-site counters the extension uses to learn where you usually work — lives in your browser's local storage. It is never synced anywhere. There is no server to store it on.

Those per-site counters are keyed by domain plus the first two segments of the address, so they amount to a private record of where you spent session time. They stay on the device, and clearing your data from the extension removes them.

You can export or delete this data at any time from the extension, and uninstalling the extension removes it entirely.

What we don't do

Chrome Web Store Limited Use disclosure

Focus Companion's use of information received from Chrome APIs complies with the Chrome Web Store User Data Policy, including the Limited Use requirements. Data is used only to provide or improve the extension's focus-session features. It is not transferred to third parties, used for advertising, used to determine creditworthiness, or made available for humans to read.

Your controls

You can export a session's data, delete it, or clear all local state at any time from the extension popup. You can also exclude specific sites (including whole subdomains with a wildcard) from ever being analyzed; on an excluded site no page text is read at all. Uninstalling the extension removes everything Chrome stored on its behalf.

The export is a file you save yourself. It contains the session's own record and, in developer builds only, the exact text that was analysed — so treat an export the way you would treat a screenshot of your screen.

Children's privacy

Focus Companion is not directed at children and is not intended for use by anyone under 13.

Changes to this policy

If this policy changes in a material way, we'll update the date at the top of this page. Continued use of the extension after a change means you accept the update.

Contact

Questions about this policy or your data: huynhthenghia311@gmail.com.