`defineLibraryPlugin` has taken a `launchers()` hook since kit 0.3.0 — entries that open the LAUNCHER rather than a title (design D4) — and nothing implemented it. The host has resolved `launcher_ui` valued `"lutris"` since the same release. So the whole path existed end to end with no producer at either end. One entry, config-toggled and on by default: it is the one tile that lets someone install or fix a game from the couch, and it costs a single card. `launcher_ui` is valued by STORE ID, never a command: the host turns "lutris" into the command that opens the window (D1). That is also the only shape available to a plugin at all — the 2026-08-05 review made `launch.kind = "command"` operator-only, so a plugin publishing one has its entire reconcile refused. Deliberately art-less. Lutris ships a square app icon and every client cover-crops a 2:3 tile, so an icon would arrive as a cropped strip. The clients render an art-less launcher entry on purpose — accent face, the launcher named — which reads as "opens Lutris" rather than as a game whose poster failed to load. `launcherEntries` is exported for the same reason `artFile` is: so the shape is testable without standing up the whole plugin. Gates: tsc --noEmit clean, 5 tests pass (2 new), biome clean. Needs a host carrying the M2 wire (`role` + `launcher_ui`), which is on main.