v0.41RustmacOS · Linux · Windows
Toda tu música.Una sola cola.En la terminal.
spotatui reproduce Spotify de forma nativa y transmite YouTube, tus archivos locales, Subsonic o Navidrome y más de 30.000 emisoras de radio desde un solo reproductor controlado por teclado. Spotify es opcional. El DJ con IA también.
curl -fsSL spotatui.com/install.sh | bashWelcome to spotatui! Choose your music sources: You can add or switch sources anytime from the `d` menu. > [ ] Spotify (needs login) [ ] YouTube (free, needs the yt-dlp binary) [ ] Subsonic (free, needs a Subsonic/Navidrome server) [ ] Internet Radio (free) [ ] Local Files (free) [ ] Qobuz (paid subscription, logs in through the browser) ↑/↓ move · space select · enter confirm · esc skip
en vivo La radio es real: Z100, KEXP, NPR, SomaFM y más suenan en tu navegador, y las barras son una FFT real de ese audio; YouTube suena en su propio reproductor. Haz clic en la terminal y pulsa ? para ver las teclas.
Pulsa z sobre lo que sea, donde sea.
Una emisora de radio, un resultado de YouTube, un álbum de tu servidor Navidrome, una playlist de Spotify: z lo pone en la misma cola. Suena en orden a través de las fuentes, con las mismas teclas, volumen y visualizador, y tu contexto se reanuda cuando termina.
Esa es la diferencia entre cinco integraciones y un reproductor. Ver todas las fuentes.
Spotify suena dentro de spotatui.
Sin app de escritorio, sin spotifyd, sin un dispositivo Connect que mantener vivo. spotatui transmite Spotify por sí mismo y aparece como su propio dispositivo Connect, con teclas multimedia, MPRIS en Linux y Now Playing en macOS.
Corre sobre un fork de librespot que mantenemos nosotros, así que los arreglos para los cambios de Spotify llegan en cada versión de spotatui. Spotify requiere Premium. Todo lo demás es gratis.
Un DJ que pregunta antes de poner música.
Dile qué ambiente buscas. Lee el historial de escucha que spotatui guarda en tu equipo, busca en el catálogo y pone en cola lo que encuentra, o primero te hace una pregunta.
Elige su cerebro: la CLI de agente que ya pagas (claude, codex, copilot, opencode), una clave de API, o un modelo local con Ollama o LM Studio, y entonces nada sale de tu máquina.
Al modelo solo llegan nombres agregados de artistas y pistas. Sin identificadores, sin marcas de tiempo, sin cuenta. Las mismas herramientas se exponen por MCP, así que Claude Code o Codex pueden hacer de DJ desde tu editor. Cómo funciona el DJ.
Pequeño, completo, tuyo.
Cada cosa está a una tecla de distancia, y cada una se puede configurar.
Visualizador del sistema
Una FFT en tiempo real de lo que suene en tu equipo, dibujada en la terminal.
Letras sincronizadas
Línea por línea desde LRCLIB, para cualquier fuente, con búsqueda aproximada si los metadatos no cuadran.
Cola y reanudación
Cierra a mitad de una pista de una fuente gratuita y la retoma en la misma posición al volver a abrir.
Historial local y recap
Las reproducciones se guardan como JSONL en tu disco. spotatui history recap genera una página HTML para compartir.
Temas y disposición
Dracula, Nord, Spotify y más, o el tuyo. Carátula en la barra de reproducción o a pantalla completa.
Ajustes en la app
Teclas, columnas, iconos y plantillas de formato, todo configurable. Un error de escritura nunca bloquea el arranque.
Extiéndelo en Lua. Contrólalo por MCP.
Los plugins reaccionan a la reproducción, agregan comandos y teclas, dibujan popups y pantallas enteras y hacen peticiones HTTP, con una API pequeña y cuidada. Un plugin es un repositorio git con un main.lua. La API de scripting.
spotatui.require_api(6)
spotatui.on("track_changed", function(t)
spotatui.notify(t.artist .. " - " .. t.title)
end)
spotatui.command("accent_cycle", function()
spotatui.set_accent(next_color())
end)spotatui plugin add owner/repo
spotatui plugin list
spotatui plugin new my-plugin| track-notifier | aviso y segmento en la barra en cada cambio de pista |
|---|---|
| now-playing | carátula junto a las letras sincronizadas, en una pantalla propia |
| track-info-popup | un comando que muestra los detalles de la pista actual |
| accent-cycler | rota el color de acento del tema |
| now-playing-webhook | envía un JSON a un webhook cuando cambia la pista |
| session-stats | un plugin de directorio que cuenta las reproducciones de la sesión |
# Claude Code, Codex o cualquier agente con plugins
/plugin marketplace add LargeModGames/spotatui
/plugin install spotatui@spotatuiLos plugins corren con los mismos privilegios que spotatui. Instala solo los que hayas leído o cuyo autor te inspire confianza.
Muestra lo que suena, si tú quieres.
Crea una cuenta, pega el token de sincronización en Ajustes y tu pista actual se convierte en una tarjeta en vivo para tu README de GitHub. Activa el resto cuando te apetezca: estadísticas, amigos, rankings.
No se sube nada hasta que pegues ese token. Panel web.
Pásate por el Discord de spotatui.
Ayuda con la instalación, temas y plugins en Lua, novedades de cada versión, peticiones de funciones y una playlist compartida a la que agregas con /queue. Es la forma más rápida de hablar con los mantenedores y con otras personas que usan spotatui.
Listo con un solo comando.
Al abrirlo por primera vez, spotatui pregunta qué fuente quieres. Elige una gratuita y nunca verás un inicio de sesión de Spotify.
brew tap LargeModGames/spotatui
brew install spotatui