跪拜 Guibai
← All articles
Open Source · News

CleanYourTV: AI-Driven Android TV Debloating Meets a 523 KB Apple TV-Style Launcher

By 冬奇Lab ·
Read original on juejin.cn ↗ Google Translate ↗ Alt translation

CleanYourTV is a working blueprint for using an AI coding assistant to operate real hardware safely. It shows how to constrain an AI's actions with scripts, checks, and reversible records, and the project's careful handling of edge cases—like home screen protection, network ADB insecurity, and firmware drift—sets a high bar for any AI-driven device management tool.

Summary

CleanYourTV is an open-source project that combines an AI coding assistant—Claude Code, Codex, or Gemini CLI—with a set of shell scripts and a prompt file to automatically debloat and re-skin Android and Google TVs. The assistant discovers which preinstalled apps exist on the TV, asks for confirmation, and then runs `pm disable-user` to disable telemetry, ad services, and bloatware, uninstalling nothing. It then builds and installs a tiny native launcher (523 KB, pure Java, no network permission) that replaces the home screen with an Apple TV-like interface. The entire process is reversible: backup records are written before any change, and `tools/restore.sh` reverts everything with one command. The project gained 38,000 stars in days, driven by a viral tweet from creator Gathin23, and now includes community-contributed profiles for 316 TV models across 89 brands, a companion Android app, and extensive documentation on safety and limitations. The design emphasizes a strict boundary: the AI handles discovery and proposal, while all destructive actions live in well-tested scripts with home-screen protection, drift detection, and rollback logic.

Takeaways
— CleanYourTV has roughly 38,000 GitHub stars and 4,500 forks as of late October 2026.
— The launcher is 523 KB, pure Java, runs on Android 8.0+, and has no network permission.
— Apps are disabled with `pm disable-user`, never uninstalled; the APK and data remain.
— Backup state is written to ~/.cleanyourtv/ before any modification.
— A single command, tools/restore.sh, reverts the TV to its pre-clean state.
— The AI assistant follows PROMPT.md and reuses the repo's scripts instead of writing ad-hoc shell code.
— Home screen protection only disables launchers listed in KNOWN_STOCK_LAUNCHERS.
— tools/check.py detects firmware drift with exit codes 0, 1, and 2; --fix reapplies the list.
— Network ADB is plaintext; the project advises disabling it after use and provides adb-closed.py to verify.
— Fire TV supports only debloating, not launcher replacement; some TCL models refuse third-party launchers.
— The community contributed profiles for 316 TV models, 89 brands, and 28 languages.
— The repository contains over 170 test files, and README tables are auto-generated from tv.json data.
— Creator Gathin23's tweet about cleaning his parents' TV received 7.4 million views.
Conclusions

By separating discovery (AI) from execution (hardcoded scripts), the project limits what an AI can break; any destructive change passes through tested, auditable code.

The launcher's total absence of network permission makes its privacy claim checkable at a glance, a deliberate trade-off that many similar tools avoid.

The depth of edge-case handling—setup wizard dependencies, drift after firmware updates, and the security cost of always-on network ADB—shows that even a 'simple' debloat tool faces real system integration complexity.

The rapid community growth (200+ contributors in four days) signals strong user demand for safe, reversible ways to control Android TV, likely reflecting widespread frustration with ad-heavy default interfaces.

Concepts & terms
pm disable-user
An Android shell command that disables an app for the current user without uninstalling it, keeping the APK and all data intact. It is the same switch as the 'Disable' button in system settings.
ADB (Android Debug Bridge)
A command-line tool for interacting with an Android device over USB or over a network. CleanYourTV uses ADB over Wi-Fi to control the TV.
Launcher
The system app that renders the home screen and app grid on Android. Replacing it changes the entire home screen experience.
Debloat
The practice of removing or disabling preinstalled apps and services that a user does not want, typically to reduce resource use and privacy leaks.
Network ADB
ADB access over the local network (port 5555). It is plaintext and insecure unless properly configured, because any device on the LAN could gain a shell if the firmware is not locked down.
Perfetto
A system-wide tracing tool for Android used for performance analysis; CleanYourTV's tools record Perfetto traces to measure launcher performance.
Source: juejin.cn ↗ Google Translate ↗ Backup ↗