Skip to main content
No Cove telemetry - strict Manifest V3 CSP - updated 2026-10-28

Your New Tab belongs strictly to you.

Plain-English summary: Cove operates no user database, no account system, and no analytics server. Notes, tasks, custom feed URLs, cached articles, and on-device ranking data stay in browser storage. The extension uses a strict script-src 'self'; object-src 'self' CSP.

1. Line-by-Line Manifest V3 Permissions Audit

Exact permissions declared in manifest.json (v0.1.3) and verified by tests/core.test.mjs:

Swipe horizontally to view permission details →

Manifest V3 permissions used by Cove v0.1.3 and their scope
PermissionExact Local Purpose in CoveHard Privacy Boundary
storagePersists workspace settings, quick links, notes, tasks, and Cove Smart Engine Markov rhythm weights in chrome.storage.local.Never synced to external Cove servers; exportable/deletable as JSON in 1 click.
alarmsDrives MV3 Pomodoro focus timers and periodic background tab-triage sweeps without keeping a persistent process awake.Local timer events only; zero network wakeups.
tabsPowers fuzzy tab search in ⌘K Command Palette, session snapshots, and Web Worker duplicate-tab detection.No content scripts injected; never reads DOM content, passwords, or form inputs.
topSitesOptionally populates initial quick-access dock tiles on a fresh install (can be toggled off in Settings).Read locally into memory only; never transmitted anywhere.
declarativeNetRequestWithHostAccessRedirects user-specified distracting domains to blocked.html during active Focus Sanctuary timers.Evaluated natively by the browser engine; Cove never intercepts or logs network payloads.

2. On-Device Storage Schema

  • chrome.storage.local / localStorage: Theme and preset state (Midnight Cobalt default), pinned links, scratchpad notes, focus tasks, custom RSS URLs, and local ranking data.
  • IndexedDB (cove_news_cache_v1): feeds object store (stale-while-revalidate feed snapshots) and articles object store (LRU-capped at 120 extracted articles).
  • Instant Purge: Settings → Backup & Data → Reset Workspace clears both chrome.storage.local and cove_news_cache_v1 immediately.

3. Complete Network Request Ledger

  • Fonts, Icons, Wallpapers & Audio: No network requests. Five .woff2 font files across four families, eight 4K wallpapers, and the Web Audio synthesizer are bundled inside the extension.
  • Weather Widget (Optional): Queries keyless api.open-meteo.com when enabled.
  • Cove Discover (On-Demand): Fetches the 11 curated RSS/Atom feeds and three keyless APIs (Spaceflight News, DEV.to, and Hacker News Algolia) directly. Custom feed URLs are contacted only after you add them. Article text is extracted locally for the clean reader.

Security & Verification FAQ

Does Cove collect analytics, crash telemetry, or behavioral usage metrics?

No. Cove contains no analytics SDKs (no Google Analytics, PostHog, Sentry, Mixpanel, or telemetry beacons). Bookmark, note, task, ranking, and cached-article data stay in browser storage. Cove does not upload them to a Cove server.

Why does Cove request the tabs and declarativeNetRequestWithHostAccess permissions?

The tabs permission powers the local Command Palette tab switcher (⌘K) and background Web Worker duplicate-tab triage solely inside your browser. declarativeNetRequestWithHostAccess powers the optional user-configured Focus Site-Blocker during Pomodoro sessions without reading page bodies.

What network requests can Cove make?

Cove itself makes no telemetry or analytics request. The new-tab shell, fonts, wallpapers, notes, and focus audio load from bundled local assets. When you enable Weather, the browser contacts the keyless Open-Meteo API. When you use Discover, the browser contacts the RSS publishers and the three keyless APIs directly and stores the result in IndexedDB. Search suggestions and article extraction can also contact the services you invoke.

Audit the complete Apache 2.0 source code or report a vulnerability via /.well-known/security.txt.