A digital bodyguard for your mind.
There are hundreds of tools that block, hide, or filter social media. IntentKeeper is the only one that surfaces the manipulation patterns behind content - and lets you decide what to do with them.
Ragebait, fearmongering, hype, divisive framing - all detected by the patterns they use, not the topics they cover, before they affect you. Everything runs on your hardware via Ollama. No cloud. No tracking. No data leaving your machine.
Why this exists
Every major platform optimizes for engagement. Engagement is driven by emotion. The strongest emotions - outrage, fear, tribal identity - are the easiest to manufacture.
The result: your feed is optimized to make you angry, afraid, and divided. Not because the platform is evil, but because that's what the algorithm rewards.
IntentKeeper doesn't fix the platforms. It gives you a lens to see the manipulation before it hooks you.
"The content isn't the problem. The intent behind it is."
intentKeeper.mp4
A post about politics can be thoughtful analysis or manufactured outrage. A health tip can be genuine advice or fearmongering. Same topic, opposite effect on your wellbeing.
IntentKeeper classifies the manipulation patterns in content - not the topics themselves. It doesn't censor subjects. It flags the framing patterns associated with ragebait, fearmongering, divisive content, and hype before they land.
Accuracy: 98% on an 80-example labeled eval set (measured 2026-04-09). The remaining 2% are at the model's training boundary - prompt engineering cannot resolve them without breaking other cases. Classification confidence is shown alongside each label so you know when the model is uncertain.
Option A: Docker (recommended)
git clone https://github.com/Olawoyin007/intentKeeper.git
cd intentKeeper
docker compose upThis starts Ollama and the classification server together. The model pulls automatically on first run.
Option B: Manual
git clone https://github.com/Olawoyin007/intentKeeper.git
cd intentKeeper
pip install -e .
cp .env.example .env
intentkeeper-serverOllama powers the classification. Any model works - mistral:7b-instruct, llama3.2, phi3, whatever you have. Set it in .env and the server pulls it automatically on first start if it is not already present:
OLLAMA_MODEL=your-model-nameDon't have Ollama yet? Install it here - it runs entirely on your hardware, no cloud required.
- Open your browser and go to the extensions page:
- Chrome:
chrome://extensions - Brave:
brave://extensions - Edge:
edge://extensions - Opera:
opera://extensions
- Chrome:
- Enable Developer mode (top right toggle)
- Click Load unpacked and select the
extension/folder
Then open Twitter/X, YouTube, or Reddit and scroll your feed. Intent labels appear on content automatically.
See docs/usage.md for the full setup guide and troubleshooting.
You open Twitter/X, YouTube, or Reddit
│
▼
Extension intercepts content before you read it
│
▼
Local LLM classifies the intent (via Ollama)
│
▼
Content is blurred, tagged, hidden, or passed through
│
▼
You decide what to engage with
All processing happens on your machine. No cloud. No data collection. No tracking.
Principles
Intent over topic. We classify the framing, not the subject matter.
Fail-open. When classification fails, content passes through unchanged.
Local-first. All classification on your device. Nothing leaves your machine.
User sovereignty. You control what gets filtered and how aggressively.
Transparency. Every classification shows why content was flagged.
See MANIFESTO.md for the full principles.
- docs/usage.md - Setup guide and troubleshooting
- docs/architecture.md - System diagrams
- ROADMAP.md - Phased implementation plan
- CHANGELOG.md - Release history
- CONTRIBUTING.md - How to contribute
- MANIFESTO.md - Core principles
Also built alongside empathySync - a local-first AI wellness assistant sharing the same philosophy.
MIT - see LICENSE.
"Protect your attention. Notice what a post is doing to you, not just what it's about."

