LinkedIn NoSlop
A Chrome extension that blurs low-value LinkedIn posts.
# LinkedIn NoSlop A Chrome extension (Manifest V3) that uses [TypeSafe AI](https://docs.typesafe.ai/introduction)'s Jev model to spot low-value LinkedIn feed posts and blur them, with a one-click "Show post" to reveal any of them. It is a working personal prototype, shared as a starting point for building your own filter. "Slop" here means *your* definition of low-value content — engagement bait, generic filler, formulaic storytelling — not a claim that a post was written by AI. ## How it works 1. A content script finds feed posts on `linkedin.com/feed` and extracts only the post text. 2. The background service worker sends that text to TypeSafe/Jev with a rubric of narrow yes/no and 0–2 questions (`extension/src/shared/rubric.js`). 3. Plain code combines the answers into `keep`, `filter`, or `uncertain` (`extension/src/shared/decide.js`). Only `filter` blurs a post; anything uncertain, incomplete, or failed stays visible. 4. Blurred posts show the reason and a "Show post" button. ## Quick start **Try it offline first (no API key, no cost):** ```sh cd extension python3 -m http.server 8765 # open http://localhost:8765/fixtures/feed.html ``` **Run it on your real feed:** 1. Get a TypeSafe API key from the TypeSafe dashboard. 2. Open `chrome://extensions`, enable Developer mode, click "Load unpacked", and choose the `extension/` folder. 3. Open the extension's options page, paste your key, and save. The key stays in your browser's local extension storage. 4. Visit `https://www.linkedin.com/feed/` and refresh. See [`extension/README.md`](extension/README.md) for details and known gaps. ## Make it your own - **Change what counts as slop:** edit the questions in `extension/src/shared/rubric.js` and the thresholds in `extension/src/shared/decide.js`. Bump the version