Hacks & Buildsaiandroidsmart-home
People are pointing Claude Code at their smart TVs to switch the ads off, and the trick has spread from Android TV to Fire TV and LG
A coding agent, the debug port the TV shipped with, and one afternoon: the smart TV ad rebellion now has its own repos for Android TV, Fire TV and LG webOS.
Gathin T.’s parents had a TV that showed a sponsored ad before you could even get to Netflix. So one afternoon he handed it to Claude Code.
@gathint's post on X
“Gave Claude Code the model number, it found the TV on wifi, removed 25 Xiaomi packages and wrote a new launcher,” Gathin wrote. “Looks like an Apple TV now lol.” His README says the post reached 7.4 million views, and the replies piled up into 170-plus TV models from more than 200 contributors in four days.
The repo is cleanyourtv (it was called tv-vibehack until the 19th), and it now sits past 26,000 stars with 248 TV models from 72 brands on its list. There’s no exploit in it. Android TVs, the README points out, “have the same debug bridge as Android phones.” You switch on USB debugging in developer options, paste the project’s prompt into Claude Code, Codex or Gemini CLI, and the agent backs up your package list before it switches off the manufacturer’s telemetry, ad services, content rows and preloaded junk with pm disable-user.
Nothing gets uninstalled, “so a restore script can undo every step.” And because the junk differs by brand, the prompt tells the agent to go find it on your TV and “ask before touching anything you might use.” Gathin said a few thousand people did the same to their own TVs over the next two days, “Xiaomi, TCL, Sony, Fire TV, LG, a projector or two,” he wrote on a donations page quoted by TechCrunch.
Fire TV wouldn’t let go of the Home button
Gathin’s own README admits defeat on Amazon’s hardware: the debloat works, but “Fire OS will not hand Home to a third-party launcher.” Muzzammil Yasin Sabuwala (@DevMuzzammil) went after the Home button anyway. His Fire TV Edition set lagged, took ages to open apps and had 129 MB of free memory, so he “asked a coding agent to clean it up over ADB” and posted the results. His whole recipe, as posted: install adb, get the TV’s IP address, turn developer mode on, and “that’s it claude or deepseek does the rest.”
That became dumbtv. It disables about 50 Amazon packages, including the screen fingerprinting (ACR), and runs a small DNS filter on the TV that blocks about 400 Amazon telemetry, ad and update hosts. He told TechCrunch it was coded with DeepSeek V4.1 Flash, Claude Opus 5.5 and Claude Sonnet 5.5.
The Home button is where it gets weird. Per the launcher’s notes, Fire OS grabs the HOME key before any accessibility filter can see it, so a little service called Guard waits for Amazon’s home window and covers it with an overlay “before it draws.” Android also delays app launches for 5 seconds after HOME, so dumbtv fires its launch from an alarm, which comes from the system and skips the delay. You get “about 0.3 s of black” and then a home screen that’s 54 KB and has no internet permission at all.
LG got a bouncer on another computer
LG’s webOS has no ADB-style package disabling, so there’s nothing to switch off. webos-vibehack, a port of Gathin’s launcher, installs through LG’s official Developer Mode app instead. Then it hits the same wall Amazon built: “webOS hard-wires Home to LG’s home, and blocks Developer Mode apps from seeing which app is in front.”
The workaround runs off the TV entirely. A script called home-watch.py sits on a Mac or a Raspberry Pi on the same network, watches what’s in front on the TV, and the moment LG’s home appears it opens the launcher on top, in about 0.1 seconds. Press Home twice within three seconds if you actually want LG’s menus. The catch is printed right there: a Mac only redirects Home “while it’s awake and at home.”
cleanyourtv-WebOS takes the other road, for LG sets that are already rooted. A small service runs on the TV as root, and the launcher “takes over Home with a mount that exists only in RAM,” so LG’s system files stay untouched. It throws in an optional debloat of LG’s ads and telemetry, and its README says it borrows the Android project’s look and “no code from it.”
Each port that ships makes the next one cheaper, because the next person starts from a README instead of a blank prompt. Mihir Gupta’s version, as he posted it: “One afternoon with Claude Code: 25 bloat apps disabled, the 192 MB stock launcher replaced with a custom 83 MB one, plus rotating wallpapers.” Sarah Perez put the caveat in her TechCrunch piece: “All these solutions are works in progress.”
What to watch is firmware. dumbtv already blocks Fire OS updates because an update “would switch a lot of this back on,” and its README says Amazon’s boot chain is locked, so Fire OS itself can’t be replaced. A vendor that wants its ad rows back has an obvious lever in the next update, and these projects have already started routing around it.
Then there’s Samsung. cleanyourtv’s README says a 2021 Samsung set answers over Wi-Fi with no ADB, “so no pm disable-user,” and leaves a page of notes for anyone “weighing a Tizen port.”
Somebody’s weighing it.