You define interests (AI, design, startups, whatever) and blocks (rage bait, engagement farming, political outrage). The LLM reads each post and hides what doesn't match.
I built it because I was tired of X's algorithm pushing garbage (remember the Grok bikini nonsense a couple of weeks ago?) and wanted something that lets me define relevance, not an algorithm optimizing for engagement. It honestly works really well, and I've found the base X algorithm is improving over time due to me not getting sucked into the garbage posts.
Stack: Svelte 5, WXT, TypeScript. BYOK model—your API key stays encrypted locally.
Website: https://cocoon.surf Chrome Link: https://chromewebstore.google.com/detail/cocoon/ohidacajglhk...
Would love feedback on the filtering accuracy and prompt tuning. PRs welcome if you want to contribute.