Privacy Policy
Last updated: 2026-06-12
1. Principle
Zeed Browser (the "Software") is designed so that personal data is not visible to Zeed or EFG Technologies Inc. (the "Company") by construction. This policy is written to be compatible with GDPR (EU), APPI (Japan), and CCPA (California).
2. What we collect
The Software sends only the following minimal, anonymous telemetry events. Anonymous aggregate telemetry is on by default and can be turned off at any time in settings (see section 5). The Software honors Global Privacy Control (GPC) and Do Not Track signals: when either is set, nothing is sent regardless of the toggle. Detailed debug telemetry is separate and strictly opt-in (off by default).
-
install— once on first launch. Fields: random UUID install ID, version, OS (one oflinux/mac/ios/unknown). -
session_start— once each time the browser launches. Fields: install ID, version. -
heartbeat— at most once per UTC day during use. Fields: install ID, version. -
feature_used— bucket counter when a fixed-allowlist feature is invoked (~20 named features). Fields: install ID, version, feature name. -
agent_run— when an Agent run completes. Fields: install ID, version, success (boolean), step count, termination reason enum. -
crash— on application crash. Fields: install ID, version, SHA-256 hash of the stack trace. -
feature_day— at most once per UTC day per coarse feature group, on a day you use a Zeed-distinctive feature. Fields: install ID, version, UTC date, and the feature group — one of only six coarse values (chat/agent/feed/bookmark/memory/task), deliberately coarser thanfeature_used. Used solely to count how many installs still use Zeed features seven days later (retention).
The install ID is a random UUID generated locally and is not
joined with any other identifier (IP, time, account) on the server.
Events are received by our Cloudflare Worker, which is isolated in
a separate Cloudflare account from any user-data
infrastructure. IP addresses are discarded at the edge; only the
two-letter CF-IPCountry code is kept. The full event
schema is fixed by spec and enforced by an automated allowlist.
3. What we do not collect
The Software never transmits any of the following.
These fields are not on the telemetry allowlist and are continuously
enforced by a regression test (no_personal_data.test.ts).
- Browsing URLs, page titles, page content
- Chat contents, Memory, bookmarks, notes
- Email address, IP address, username, hostname
- TabGroup names, tab names, Agent tool arguments or results
4. Data stored locally
Memory, bookmarks, tasks, chat history, Context Map, and settings
are stored exclusively on your device in
localStorage / SQLite. None of it reaches our servers.
Any future cloud sync (Phase 6) will be opt-in, secured by Supabase Row-Level Security, and moving toward end-to-end encryption (AES-GCM) so that our administrators cannot decrypt the data.
5. Opt-out
Anonymous aggregate telemetry is on by default;
turning it off is one click: chrome://zeed-sidebar/ →
Settings → "Help improve Zeed". Turning it off immediately drops
any queued events, including pending feature_day
pings. The Software also honors GPC / Do Not Track — when either
signal is detected, telemetry is disabled regardless of the
toggle. Detailed debug telemetry (crash detail, agent failure
detail, performance timing) is opt-in and off by
default.
6. Private mode
While Private mode is on, the Software does not: write to Memory, extract facts, build Context Map, run Agents, produce recommendations, chat (AI is disabled), or send telemetry.
7. External services the browser talks to
The services below are reached only when you explicitly configure them. The Company does not act as a middleman.
- OpenRouter — only when you paste an API key. Chat and Agent traffic goes directly to OpenRouter. We do not observe or retain it.
- RSS feed sources — HTTP(S) fetches to feed URLs you subscribe to.
- Chromium standard services — Safe Browsing, CRL, time sync, etc. See the upstream Chromium privacy notes for details.
8. Cookies and website analytics
This landing page (zeed.run) uses no tracking
cookies and no persistent identifiers. The application
itself exposes Chromium-equivalent cookie controls to the user.
We count download-intent clicks on install command
blocks (e.g. "Copy" on the AUR or brew command). These clicks
are logged as a counter only — no IP address is stored, no cookie
or localStorage is set, no URL is recorded. The
Do Not Track header is honored: when set, nothing is
sent. Each counter row stores only: date (UTC), button type
(one of four fixed values), and the two-letter country code from
Cloudflare. This data is used solely to measure which platform
installers are popular.
9. Contact
Privacy questions: privacy@efg-technologies.com. GDPR Data Subject Access Requests and APPI disclosure requests are handled at the same address.
10. Changes
When we revise this policy, we bump the "last updated" date above and announce it in the GitHub release notes. Material changes also surface as an in-product notice.
This policy is enforced by an automated regression test
(no_personal_data.test.ts) that runs on every release and
asserts the telemetry payload contains no fields outside the allowlist
stated in section 2.