Skip to content
TV Companion icon
TV Companion macOS

Your TVs, on the same schedule as your Mac.

On when you connect your display, off when you disconnect. No remote, no app switching, no thinking about it.

  • LG webOS
  • Roku TV
  • Sony Bravia
  • Samsung Tizen
TV Companion menu bar panel

Automation

It follows the display, not a schedule.

TV Companion watches for HDMI display changes and, optionally, Mac sleep and wake. Connect the display and the right TVs power on and switch to their input. Disconnect and they turn back off.

  • Debounced display events, no false triggers
  • Retries while the TV boots, re-sending Wake-on-LAN
  • Follows IP changes by matching the TV MAC
TV Companion automation settings

Setup once

Pair a TV once, then forget it.

A first SSDP scan finds your TVs. Accept the pairing prompt on screen and the client key is saved to the Keychain. From then on each TV has a card with a status dot, a live on/off badge, and inline controls.

  • Per-TV power, input, volume, and screen off
  • Add a TV by IP if discovery misses it
  • Credentials live in the login Keychain, never in config
TV Companion TV list and discovery

Looks right

Fits your Mac, light or dark.

The panel is a native macOS surface. It tracks the system appearance, reads cleanly at a glance, and never opens a window you have to manage.

TV Companion panel in light mode

$ open ~/screenshots

A closer look

  • TV Companion menu bar panel
  • TV Companion automation settings
  • TV Companion TV list and discovery
  • TV Companion panel in light mode

$ man tv-companion

Everything it handles

Small footprint, careful defaults, and no surprises.

  • Menu bar only

    No Dock icon. It lives in the menu bar and stays out of the way after the first pairing.

  • Launch at login

    Starts with your Mac through SMAppService, ready before the first HDMI connect.

  • Auto-discovery

    Finds TVs on your network over SSDP and refreshes their IP and MAC on every scan.

  • Wake-on-LAN

    Sends magic packets and retries while the TV boots, then switches to the right HDMI input.

  • Input guard

    Only powers a TV off when it is still on your Mac's input, so it never cuts off other viewing.

  • All On / All Off

    Flip every configured TV at once, or drive each one from its own card.

  • Native protocols

    Each TV is driven in parallel over its own protocol: LG SSAP, Roku ECP, Sony Bravia, Samsung Tizen.

  • Clear feedback

    macOS notifications report each result, and every card keeps its last error until the next success.

$ tv-companion --help

Before you install

  • Which TVs does it work with?

    LG webOS, Roku TV, Sony Bravia, and Samsung Tizen. Each is driven over its own native protocol rather than a universal remote API, so power, input, and volume behave the way the TV expects.

  • Does it need anything installed on the TV?

    No. Pairing happens once over the network, and the client key is stored in your login Keychain. The TV keeps its stock firmware.

  • Will it turn a TV off while someone else is watching?

    Not by default. A TV is only powered off while it is still on your Mac's input, so switching the TV to another source takes it out of scope.

  • Does it run in the Dock?

    No. It is menu bar only, starts at login through SMAppService, and opens no windows you have to manage.

More detail on the support page.

Set it up once. Never touch it again.

Quiet by design, and out of your way.