TigerHacks 2026 · Health track
Skip the Reels you never wanted to see. Before they hook you.
Healthy Scroll is a Safari extension for iPhone. It reads each Reel as it lands in your Instagram feed and skips anything that matches what you asked to avoid, in about 200 milliseconds, without you lifting a finger. You write the rule in plain English. It does the scrolling.
Free. Open source. Frames are described, then discarded.
@saturday.recap
and that was the night 🍾
trending audio
- textjevdoes this match the policy?0.54look closer203 ms
- visualmoondream“a crowded bar, several people holding drinks and shot glasses”
- visualjevwith the frame described, does it match?0.92skip1.3 s
Getting started
Set it up once. Then forget it’s there.
It lives in Safari on your iPhone, next to Instagram. Nothing to keep open, nothing to check.
- 01
Install it
From the App Store. Then, in Safari, tap aA → Manage Extensions and switch Healthy Scroll on. You do this once.
- 02
Say what to skip
One text box, your words. Whatever you’d rather not scroll past. Change it whenever; it takes effect on the next Reel.
- 03
Open Instagram in Safari
instagram.com, not the app. Scroll like you always do. Reels that match your rule are gone before they play.
Under the hood: Jev decides from the words in about 200 ms. A vision model looks at a single frame only when the words can’t decide, and the frame isn’t kept. Errors never skip; if a model is unreachable, the Reel plays like normal.
Your prompt
Write it like you’d say it.
No categories to tick, no sliders. One box, your words. Jev reads intent, so “stuff that makes me feel worse about myself” works as well as a list. Edit the prompt and watch the feed change.
nothing in this feed matches · try adding a worddemo · keyword match, not jev
@spinsdaily
late night spins 🎰 #bigwin
skipped0.02keep
@ana.bakes
focaccia, day 3
skipped0.01keep
@saturday.recap
and that was the night 🍾
skipped0.04keep
@trail.mornings
6am loop before work
skipped0.03keep
@shredszn
12 week transformation 🔥
skipped0.06keep
@ratio.king
he really said that 💀 #debate
skipped0.02keep
@0xalpha
this coin does 40x by friday
skipped0.01keep
@pottery.hour
centering, finally
skipped0.02keep
Your week
It also keeps a tally. Of what actually holds you.
The same Jev call that decides skip-or-keep also says what kind of video it was, for free. Add how long you stayed on each one and you get a week you can read: not a screen-time number, but which Reels you can’t put down. The dwell tally stays on your phone.
Your week2h 17m across 488 videos
Mo 21 – Su 27 · stays on this phone
Where the time went
19m
Mo
14m
Tu
17m
We
14m
Th
21m
Fr
29m
Sa
22m
Su
- comedy 31m
- relationships & drama 23m
- food 22m
- learning 16m
- politics & outrage 16m
- everything else
What holds you
how long you stay, relative to your average
- relationships & drama1.9× · 33s
- politics & outrage1.5× · 25s
- food1.3× · 23s
- learning1.2× · 20s
- comedy0.8× · 14s
1× = your average, 17s a video
Relationships & drama is 9% of what you scrolled past and 17% of your time.
Skipped
50 videos
~11m not spent
gambling 26 · drinking & nightlife 24 · estimate = skips × your median watch (13s)
Nothing to check daily. The popup shows one line about today; the full week is a click away when you want it.
FAQ
It sees your feed. It doesn’t keep it.
- Where does it work?
- Instagram Reels in Safari on iPhone. It’s a browser extension, so it can’t reach inside the Instagram app; open instagram.com in Safari instead. TikTok in Chrome works too. YouTube Shorts is next.
- Do I need anything else?
- No. Sign in with Google if you want your prompt to follow you between devices; otherwise just write it and go.
- Does it slow scrolling down?
- No. The check runs alongside the Reel, not in front of it. It takes about 200 ms, so a skipped Reel is usually gone before you see it.
- Will it skip things I wanted?
- Sometimes, early on. Only confident matches get skipped; anything in the middle gets a second look rather than a guess. Change a word in your prompt and it follows.
- What’s doing the deciding?
- Jev, an evaluation model by TypeSafe AI, reads the caption and comments and returns a probability, not prose. When the words aren’t enough, Moondream, a small vision model, describes one frame in a sentence and Jev decides again.
- Where does my data go?
- Captions and comments go to our server as text and aren’t kept. When a frame is needed, the server fetches it, describes it, and throws it away. If you sign in, we store your prompt and a log of what was skipped so your dashboard can count it. Your week’s tally stays on your phone.
- What does the tally track?
- Per Reel: its category, how long it was on screen, and whether it was skipped. Not who posted it, not what you liked. Categories are broad on purpose: “relationships & drama”, not a profile of you.
- What does it cost?
- Nothing. Open source, built at TigerHacks 2026. Jev costs fractions of a cent per thousand Reels.
Setup
One text box. That’s the setup.
No streaks, no scores, no nagging. The algorithm already optimises for your attention; this adds one rule you wrote, and a tally you can look at when you feel like it.
Get it for iPhoneHealthy Scroll
OnSkip anything that’s…
today · 22m · 8 skipped · mostly comedy
Frames are described and discarded, never stored. Your tally stays on this phone.