The cleanyourtv Prompt, Explained

An unofficial, section-by-section walkthrough of the cleanyourtv prompt: what it tells your coding assistant to do, what it asks you, and how to run it with Claude Code.

Updated October 20, 2026 · Unofficial guide

This is an unofficial guide to the open-source cleanyourtv project, not the project's own documentation. For the source text, see PROMPT.md on GitHub.

The cleanyourtv prompt is the single block of text that does the actual work in the cleanyourtv project. You don't run a wizard or install an app on your computer; you paste it into a coding assistant with shell access, fill in your TV's model, and the assistant reads your TV, backs it up, strips the bloat, and builds a new launcher, all over Wi-Fi. This page walks through it section by section, in the order it actually runs, so you know what it's about to do before you paste it in.

What the cleanyourtv prompt is for

It went viral after a tweet on 17 October 2026 describing a TV "vibe coded" clean in an afternoon: 25 Xiaomi packages removed, a new launcher installed, nothing rooted. The repo itself was called tv-vibehack until 19 October, when TechCrunch covered it as "People are using AI to make their smart TVs dumb again." This prompt is what makes that repeatable: instead of a script tuned to one TV, it's instructions an AI assistant follows on whatever TV you point it at, discovering the bloat itself rather than relying on a pre-written list.

Before you paste the cleanyourtv prompt: wake up Developer options

It assumes ADB is already reachable, so this step comes first and isn't part of the prompt text itself:

  1. On the TV: Settings → Device Preferences → About, then press OK on Build seven times.
  2. Go back one level to Developer options and turn on USB debugging (and Network/ADB debugging if your TV shows a separate toggle).
  3. Leave the TV powered on and connected to the same Wi-Fi as your computer.
Some boxes cut power to their USB ports while USB debugging is on. If you have a USB speaker or drive plugged into the TV, it may go dead until you turn debugging back off, which the prompt reminds the assistant to do at the end.

Connect: how the cleanyourtv prompt finds your TV

The first section tells the assistant to find the TV on your network by hostname, ARP table, or by asking you for the IP, then connect over ADB on port 5555. If you're helping someone in another home, the prompt branches to a Tailscale address instead of scanning your own network; see our guide to smart TV ads for the DNS half of that setup, or the project's own REMOTE.md for the full remote walkthrough.

Two platform quirks are baked into this section because they come up often enough to name explicitly:

  • macOS "No route to host." Recent macOS blocks the stock adb binary under Local Network privacy even when the port is open. The prompt tells the assistant not to debug this, and to switch to the Python adb-shell package instead.
  • Wireless debugging only. Some Google TV sets never open port 5555 and only expose Wireless debugging. The prompt has the assistant look for _adb-tls-connect._tcp with dns-sd -B or adb mdns services, ask you for the pairing code, and run adb pair then adb tcpip 5555.

You'll see "Allow USB debugging?" pop up on the TV screen during this step. The prompt tells the assistant to warn you it's coming so you can accept it with the remote.

Back up first: what the cleanyourtv prompt saves before touching anything

Before any package is disabled, this section has the assistant save the full installed-package list, the disabled-package list, getprop output, and all settings to a backup folder, and write a restore script that can re-enable everything in reverse. It also asks what's plugged into the TV's USB ports, since debugging mode can cut their power, and reminds the assistant to close network ADB when the whole run is finished.

Closing ADB matters: port 5555 is plaintext, and on firmware with ro.adb.secure=0 anyone on your LAN could get a shell to the TV while it's open. The prompt has the assistant verify closure with nc -vz <tv ip> 5555, which should fail once debugging is off.

Debloat: the checklist questions the cleanyourtv prompt asks

This is the longest section, and the one that actually touches your TV. It has the assistant sort every installed package into five buckets: manufacturer telemetry and analytics, manufacturer ad and content services (recommendation rows, PatchWall-style shelves), background services you probably don't need, preloaded apps, and streaming apps. Only the first categories get disabled automatically, with pm disable-user --user 0, never an uninstall.

Before touching anything you might actually use, the cleanyourtv prompt has the assistant stop and ask a checklist, roughly:

  • Which streaming apps do you actually use?
  • Do you want to keep the built-in voice assistant?
  • Keep Chromecast and Miracast casting working?
  • Keep automatic firmware updates on?

It also has the assistant protect anything the TV leans on structurally, even if you don't tick it: the TV tuner and HDMI input services, the input/source menu, remote and Bluetooth pairing, the on-screen keyboard, Google Play Store and Play Services. It tells the assistant to check unclear package names with dumpsys package rather than guess from the name, and to disable in small batches with a screenshot between each, since a batch that goes wrong is hard to diagnose after the fact.

One optional extra lives in this section too: it offers to turn on ad-blocking Private DNS as a system-wide extra, which we cover in more depth in our guide to removing ads from a smart TV.

Launcher: what the cleanyourtv prompt builds

With the bloat cleared, this section moves to the replacement home screen. It first checks whether the TV accepts sideloaded APKs at all, since some China-market sets reject anything with android.intent.category.HOME or fail every install with a verification error, in which case the prompt has the assistant stop after the debloat half and say so plainly rather than keep retrying.

Where installs work, it has the assistant build a small native Android TV launcher (Java, AndroidX RecyclerView, roughly 300 KB installed as com.gathin.tvhome), install it over ADB, and only then disable the stock launcher, since disabling it too early can leave Home pointed at a factory test app. The design brief in the prompt is explicit: pitch-black background, a rounded dock of your four chosen apps, a 4-column grid that slides up on Down, one glass highlight that moves between tiles instead of borders, and frosted pill buttons for Inputs, Wi-Fi and Settings. The dock order and the four apps are something you pick; it asks rather than assumes.

It also flags the Google TV setup wizard, com.google.android.tungsten.setupwraith, which can grab Home back and crash-loop the system once the stock launcher is disabled. See our cleanyourtv restore guide for the exact recovery command if that happens.

Verify: screenshots, not assumptions

The last working section has the assistant check its own work rather than trust that a command succeeded. After each change it injects a remote key press over ADB, pulls a screenshot from the TV, and looks at it before moving to the next step. Two caveats baked into this section: Live TV and HDMI screenshots come back as empty (0-byte) files, which is the TV's behaviour and not a sign of a broken debloat; and an injected key press proves navigation works, not that the physical remote's accessibility-bound button does, so the prompt has the assistant ask you to press the real button for anything that depends on an accessibility service.

When the run finishes, it has the assistant hand you three things: a restore script, a build-and-install script, and a short README explaining how to re-enable any app or change the dock order and wallpaper.

Running the cleanyourtv prompt with Claude Code

  1. Clone or download the cleanyourtv repo, and open Claude Code in that folder so it has tools/ and launcher/ as context.
  2. Open PROMPT.md, copy the whole thing, and paste it into Claude Code.
  3. Replace the <MODEL NAME HERE> placeholder with your exact TV model, as printed on the box or under Settings → About.
  4. Send the cleanyourtv prompt, then stay near the TV. You'll need to accept the "Allow USB debugging?" dialog and answer the checklist questions as they come up.
  5. Expect to be watching screenshots and confirming steps for about fifteen minutes if the repo is present as context, since the cleanyourtv prompt is designed to pause and verify rather than run end to end unattended.

The same cleanyourtv prompt text works in Codex and Gemini CLI; the only requirement the project states is a coding assistant with shell access on a computer that's on the same network as the TV. If your model already has a tested list in examples/, mention that in your own prompt text, since the assistant can apply a known-good list instead of discovering the bloat from scratch; browse 80 tested TV lists to check first.

What the cleanyourtv prompt deliberately won't do

  • It won't uninstall system packages, only disable them with pm disable-user, so a restore script can reverse every change.
  • It won't touch Samsung Tizen or LG webOS sets; this prompt and the underlying tools only work on Android TV and Google TV.
  • It won't install a launcher on Fire TV, since Fire OS won't hand Home to a third-party app; on Fire TV it does the debloat half only.
  • It won't run unattended; every destructive step is batched, screenshotted, and gated behind a question when your personal use is involved.

For the DNS-level ad blocking the cleanyourtv prompt offers as an extra, see removing ads from a smart TV. If a run goes sideways and you want everything back the way it was, see restoring your TV after cleanyourtv. For platform-specific walkthroughs, see debloating Android TV and debloating Google TV.

Frequently Asked Questions

What is the cleanyourtv prompt?

The cleanyourtv prompt is the text in PROMPT.md in the cleanyourtv GitHub repo. You paste it into Claude Code, Codex or Gemini CLI, fill in your TV model, and the assistant connects to your TV over ADB, backs it up, disables the bloatware, and installs the cleanyourtv launcher. This site is an unofficial guide to that prompt and is not affiliated with its author.

Do I need to clone the whole cleanyourtv repo to use the prompt?

No, but it helps. The cleanyourtv prompt works standalone, and your assistant can write the ADB tooling and launcher from scratch. If you clone the repo first, the prompt tells your assistant to reuse tools/ and launcher/ instead, which is faster and only needs launcher/.../values/config.xml edited for your dock and theme.

Which coding assistants work with the cleanyourtv prompt?

Any assistant with shell access on your computer: Claude Code (with an Anthropic plan or through a model router), OpenAI's Codex CLI, and Gemini CLI have all been used with the cleanyourtv prompt. The project's own README suggests Claude Code. What matters is shell access and the ability to run ADB commands, not the specific model.

How long does the cleanyourtv prompt take to run?

With the repo cloned as context, about fifteen minutes end to end: connecting over ADB, backing up, debloating in batches, building the launcher, installing it, and verifying with screenshots. Without the repo as context, expect longer, since the assistant writes the ADB tooling and the launcher itself.

What do I have to fill in before pasting the cleanyourtv prompt?

Only your TV's model name, in the <MODEL NAME HERE> placeholder near the top of the prompt. Everything else, the IP address, the bloat list, the dock order, is discovered or asked about during the run.

Will the cleanyourtv prompt ask before deleting anything I use?

Yes. The prompt instructs the assistant to disable packages in small batches, never uninstall system packages, and ask you directly, with a checklist, before touching streaming apps, the voice assistant, Chromecast or the firmware update service.

Is the cleanyourtv prompt safe to run unattended?

No, and it isn't designed to be. The prompt tells the assistant to take a screenshot after every batch of changes and stop if something looks wrong, which means you should be watching the TV, not walking away while it runs.

Can I read the cleanyourtv prompt before running it?

Yes, it's a public text file: PROMPT.md on GitHub. Reading it first is a good idea, since it tells you exactly what your assistant will and won't do before you paste it in.

Find your TV's debloat list

80 tested lists across 28 brands, each with the exact packages to disable and the one-line restore command.