Privacy policy
September 20, 2026 · View on GitHub
Last updated: 8 September 2026
Sharp collects nothing.
There is no Sharp account, no Sharp server, and no analytics, telemetry, crash reporting, or usage measurement of any kind. No data about you or your browsing is sent to the developer, and none is sold or shared with anyone.
What stays on your computer
Everything Sharp saves is kept in your browser's local extension storage, on your machine:
- Your settings — filter criteria, presets, author and word rules, model and routing choices, appearance preferences.
- Your API key for the provider you chose. It is never synced between browsers, and it is never given to the web page.
- A cache of past decisions, so scrolling past the same posts again does not cost you a second request.
You can clear all of it at any time by removing the extension, or clear the cached decisions alone from General › Advanced › Clear verdicts.
What is sent to your AI provider
To decide whether a post matches your criteria, Sharp sends that post to the AI provider you chose and configured, directly from your browser, using your API key. That request contains:
- The visible text of the post
- The author's handle
- The visible reply context, when a post is a reply
- Your filter criteria
- Posts you corrected, with your verdict on each, as examples
- Image and video thumbnail URLs, only if you turn image analysis on
In classifier mode, the default, the post goes to the provider you chose for the classifier: OpenRouter, Vercel AI Gateway or TypeSafe AI. With image analysis on, image URLs go to an image model through OpenRouter or Vercel AI Gateway, under your key for that provider, and the description it writes is sent along with the post. Only posts whose text leaves the decision in doubt have their images described; you set that range.
Nothing else. No browsing history, no timeline outside the posts being checked, no identity, no account details.
That request goes straight from your browser to the provider's API. It does not pass through any server belonging to the developer, because there isn't one.
Your provider's own privacy policy and data-retention terms apply to what they do with that request. Check them for the provider you pick — for example OpenRouter, Vercel, OpenAI, or Anthropic.
Debug mode, off by default, keeps what was sent and what came back for each post so you can inspect it on the page. That record lives in the open tab's memory only. It is never stored and never sent anywhere.
What Sharp does on X as you
One optional feature, Teach X too, off by default, sends X's own "Not
interested in this post" for posts Sharp hides on your Home timeline, so X's
ranking learns from them. To do that the way X's own client does, Sharp runs a
small script in the x.com page that wraps the page's fetch. While the feature
is on, that script reads two things X's client already has:
- the headers X signs its own API requests with, which include your X session
credentials (
authorization,x-csrf-tokenand related headers) - the per-post feedback data in X's timeline responses
It passes them to the rest of the extension inside the same page, and Sharp uses them to send that one request to X, to x.com, as you. They never leave the x.com page for anywhere else: not to your AI provider, not to the developer, not to storage. They are kept in the tab's memory only.
While Teach X too is off, the script reads nothing and passes nothing on. It
is still loaded, because a browser cannot load a page script conditionally, but
it does no more than hand each request straight to X's own fetch.
Permissions, and why
- Storage — to save your settings, key, and decision cache locally.
- Access to x.com and twitter.com — to read posts on the page and hide the ones that match your criteria.
- Access to www.youtube.com and m.youtube.com — to apply the YouTube page rules you turn on, on the desktop and mobile sites alike. Nothing on YouTube is read or sent anywhere; the rules are stylesheet rules.
- Access to your provider's API (
openrouter.ai,api.openai.com,api.anthropic.com, or a custom endpoint you enter) — to send classification requests.ai-gateway.vercel.sh,api.typesafe.aiand a custom endpoint are not granted at install: each asks for its own permission when you save settings that use it.
Sharp requests no other permissions and reads no other sites.
Children
Sharp is not directed at children and collects no personal information from anyone.
Changes
If this policy ever changes, the updated version will be published in this repository and the date above will change.
Contact
Questions: open an issue.