Website review
This review may include AI-generated content and is not individually verified. Domain, certificate and other facts come from the observed data on this page.
What is cliamp?
cliamp is a music player that runs entirely inside a terminal window. Instead of opening a browser tab or a desktop app, you launch it from the command line and get playlists, playback controls, a 10-band equalizer, 31 visualizers, synced lyrics and podcasts in a text-based interface. It is MIT-licensed and written in Go, with install paths for Linux, macOS and Windows (plus an Android build), and it is aimed at people who already spend their day in a shell and want their audio there too.
What it actually plays
The distinctive part is the breadth of sources behind one interface. According to the site, everything flows through the same playlist, EQ, visualizer and lyrics pipeline:
- Streaming services: Spotify, Qobuz, Tidal, YouTube Music, SoundCloud, Mixcloud, NetEase and Yandex Music
- Self-hosted libraries: Plex, Jellyfin, Emby, Navidrome and Lyrion
- Local files and podcasts: local audio plus podcast feeds
- Radio: roughly 58,000 internet radio stations, browsable by country or genre, with favorites saved by station URL so they survive restarts
Setup is handled by a cliamp setup walkthrough for services and media servers. Some formats and sources depend on external tools: ffmpeg is listed as optional for AAC, ALAC, Opus and WMA, and yt-dlp for YouTube, SoundCloud, Mixcloud, Bandcamp, Bilibili and NetEase.
Who it suits, and the trade-offs
It fits a developer or sysadmin with a mixed library — say, local FLAC files, a Jellyfin server at home, a Tidal subscription and a few radio stations for background listening — who wants one keyboard-driven player rather than four apps. The terminal constraint is the real trade-off: you get speed, low resource use and scriptability (Lua plugins, remote control, IPC clients for favorite IDs), but no album-art browsing or mouse-first polish, and source coverage depends on the helper tools above. If you want a graphical library manager, this is the wrong shape of tool.
A useful next step
Install with the one-liner for your platform (curl -fsSL https://cliamp.stream/install.sh | sh on Linux/macOS, Homebrew, AUR, Nix or go install), run cliamp setup, and connect just one source first — a local folder or your Jellyfin/Plex server — before adding streaming accounts. That tells you quickly whether the terminal workflow suits you. The project page is cliamp.
How do I install cliamp on my system?
Install cliamp with a one-line script on Linux or macOS, or pick the package manager that matches your setup:
| System | Command |
|---|---|
| Linux / macOS (script) | curl -fsSL https://cliamp.stream/install.sh | sh |
| macOS / Linux (Homebrew) | brew install bjarneo/cliamp/cliamp |
| Arch Linux (AUR) | yay -S cliamp |
| Nix | nix run github:bjarneo/cliamp |
| Any system with Go | go install github.com/bjarneo/cliamp@latest |
Windows builds are distributed through the project's Releases page rather than an installer command.
After installing, run cliamp once. The first launch starts cliamp setup, which walks you through connecting streaming services and media servers, so you don't need to hand-edit config files. Optional helpers extend format and source support: ffmpeg for AAC, ALAC, Opus and WMA playback, and yt-dlp for YouTube, SoundCloud, Mixcloud, Bandcamp, Bilibili and NetEase.
A quick way to confirm the install works before configuring anything is to play a radio stream directly, for example cliamp --provider radio or by passing a station URL. If audio starts, the player and its audio pipeline are in place; any remaining setup is just about which libraries or services you want to add.
For a concrete scenario: if you mainly listen to a self-hosted library such as Plex, Jellyfin, Emby or Navidrome, install via Homebrew or the script, run cliamp setup, and point it at your server — you can skip ffmpeg and yt-dlp unless you also play local files in those codecs or pull from YouTube-style sources. Full instructions and source are at cliamp.
Can cliamp stream from Spotify, Tidal, and my self-hosted Plex or Jellyfin library?
Yes. cliamp is built to play Spotify, Tidal, and self-hosted Plex or Jellyfin libraries through one terminal interface, alongside local files, podcasts, and radio. The site lists Plex, Jellyfin, Emby, and Navidrome among supported media servers, and Spotify, Qobuz, Tidal, and YouTube Music among streaming services — all sharing the same playlist, 10-band equalizer, visualizer, and synced-lyrics pipeline.
What that means in practice
- One queue, mixed sources: you can keep a Tidal album, a Plex library track, and a podcast feed in the same playlist flow instead of switching apps or browser tabs.
- Setup is guided: running
cliamp setupwalks you through connecting streaming services and media servers, so you don't hand-edit config for each provider. - Dependencies matter: the page notes ffmpeg is optional for AAC, ALAC, Opus, and WMA playback, and yt-dlp is needed for YouTube, SoundCloud, Mixcloud, Bandcamp, Bilibili, and NetEase. Those caveats apply to those sources, not necessarily to Spotify, Tidal, Plex, or Jellyfin.
- Terminal-first audience: this suits people who already live in a shell — SSH sessions, headless machines, tiling-window setups — and want playback without a GUI player. If you expect a rich graphical library browser, a native app will feel more natural.
A quick decision check
If your main goal is "one player for my subscriptions and my own server," cliamp targets exactly that. Start with cliamp setup, connect Plex or Jellyfin first (self-hosted sources are the least likely to hit third-party dependency issues), then add Spotify and Tidal and confirm each plays before building mixed playlists. For comparison, Plex's own apps are at Plex and Jellyfin's at Jellyfin; those are the reference points if you want to judge how much you'd miss a graphical interface.
How do I save and manage favorite internet radio stations in cliamp?
Press f while browsing or playing a station to toggle it as a favorite. In cliamp, favorites are saved locally by station URL (not by the current song), so the station name and details like region persist after a restart. You can favorite from the Catalog, search results, or the playback playlist, and the header's star badge counts all starred rows, including ones scrolled offscreen.
Managing favorites in practice
- Browse by country or genre, then press f on any station you want to keep. Favorited stations appear under Radio → Favorites.
- M3U/PLS stations keep their original station URL after playback resolves, so the favorite points back to the source rather than a temporary stream link.
- Toggling doesn't disrupt you: removing or adding a favorite keeps your selected station and any loaded catalog pages in place, even mid-load, and doesn't trigger extra catalog fetching.
- Multiple instances: on Linux and macOS, favorite changes are protected by a shared file lock, so two cliamp windows won't overwrite each other's edits.
A concrete scenario
Say you're sampling stations across a few countries in the Catalog. Star a jazz station from Japan and a talk station from Ireland with f, then quit. Next session, open Radio → Favorites and both are there with their names and regions intact—no need to remember URLs or re-search.
Decision notes
Favorites are URL-based, so if a station changes its stream address, the old favorite will likely stop working and needs re-adding. There's no cloud sync mentioned, so expect favorites to live on the machine where you added them. For a large collection, the star badge helps you confirm how many you've saved without scrolling.
What do I need to install for YouTube, SoundCloud, and other formats to work in cliamp?
For YouTube, SoundCloud, Mixcloud, Bandcamp, Bilibili and NetEase playback, cliamp relies on yt-dlp being installed on your system. For AAC, ALAC, Opus and WMA audio, it relies on ffmpeg. Both are optional extras: cliamp itself installs with a single command (curl script, Homebrew, AUR, Nix, or go install), and cliamp setup then walks you through connecting streaming services and media servers.
Practical setup
- Install yt-dlp if you plan to play YouTube, SoundCloud, Mixcloud, Bandcamp, Bilibili or NetEase content.
- Install ffmpeg if your local files or streams use AAC, ALAC, Opus or WMA.
- On Windows, cliamp builds are distributed through Releases, so check there rather than using the Linux/macOS install script.
A useful next step: run cliamp setup first, then test one source from each category you care about (a YouTube link, a SoundCloud track, a local ALAC file). If a source fails while others work, the missing helper is usually the cause—install yt-dlp or ffmpeg and retry before troubleshooting the player itself.
For reference, cliamp lists the exact install commands and helper requirements on its Install section.
Can I control cliamp remotely or extend it with plugins?
Yes. cliamp has both remote control and a plugin system, and they cover different needs: remote control is for driving playback from another device, while Lua plugins are for changing what the player itself does.
Remote control
cliamp's page lists "remote control" among its built-in features, alongside playlists, the 10-band equalizer, visualizers and synced lyrics. The practical use is a desktop or server running cliamp as your main player while you change tracks from a phone or another machine, without switching windows or opening a browser tab. The page also shows cliamp streaming to a browser at a local address, which fits the same "control it from elsewhere" idea. Details such as which protocols or ports are involved are not spelled out on the page, so check the project's documentation before relying on it across a network.
Lua plugins
Plugins are written in Lua. The page presents them as part of the player's core feature set rather than an afterthought, which suggests they are meant for extending behavior — for example customizing how sources or playback are handled. The page does not describe a plugin API, so treat "you can extend it" as confirmed and "here is exactly what you can hook into" as something to verify in the source or docs.
Which one fits
- You want to skip tracks from the couch: remote control.
- You want cliamp to behave differently — new logic, custom integrations: Lua plugins.
- You want more music sources without writing code: neither; use the built-in providers (Spotify, Tidal, Qobuz, Plex, Jellyfin, Navidrome, podcasts, roughly 58,000 radio stations) and the
cliamp setupwalkthrough.
A concrete next step
If remote control matters most, install cliamp first (Homebrew, AUR, Nix, Go, or the install script on Linux/macOS) and confirm playback works locally, then test remote access on your own network before exposing anything beyond it. If plugins matter most, read the Lua plugin examples in the source repository — that is the fastest way to see what the API actually exposes.
For comparison, terminal players with plugin ecosystems include mpv, whose scripting support is well documented and a useful reference point for what a mature Lua API looks like.
User reviews (0)