cliampfork
an unofficial fork of bjarneo/cliamp

cliamp fork

cliamp is bjarneo's Winamp-style music player for the terminal. This fork adds pixel visualizers and an immersive browse mode.

cliamp is bjarneo's project, MIT licensed. This fork is maintained separately by jarmen423 and is not affiliated with upstream.

releases ↗
Encore
an arena of phone lights,
captured in the terminal
pixel visualizers

Real pixels in a terminal

Six visualizers draw actual images over kitty graphics or Sixel, in immersive mode and in the full-screen visualizer. Terminals without graphics support get half-block text instead. Every clip on this page is a capture of cliamp playing music.

EventHorizon

A galaxy turning around a black hole. Bass feeds the accretion disk, kicks send shockwaves, and a drop fires the jets.

Ridgeline

Spectrum ridges running back to a striped sun.

Stage

A pixel-art band whose drums, bass and keys follow the hits and notes it hears.

Aurora

The spectrum as a luminous ridge over a horizon, with a shimmering reflection.

Phosphor

The waveform as an oscilloscope trace with a soft glow and fading persistence.

Full screen. Press V for the full-screen visualizer, then v to cycle through all 39 built-in modes and c to cycle back. The choice is saved.
Immersive. Press I, or set immersive = true in config.toml. The visualizer runs in the band across the top.
Terminals. kitty graphics in kitty and Ghostty; Sixel in Windows Terminal, WezTerm, foot, Konsole and xterm with Sixel enabled. Force one with images = "sixel".
what this fork adds

On top of upstream cliamp

The fork tracks bjarneo/cliamp and keeps everything it does. These are the additions.

immersive mode

A browse layout like the Spotify apps

Visualizer band, nav pills, a Now Playing and Queue column, and a list, rows or grid canvas with cover art. b cycles the canvas view. A prototype, opened with I.

terminal graphics

Cover art as real images

Album and playlist art over kitty graphics or Sixel, with a colored half-block fallback everywhere else.

spotify

Browse and Connect

A Browse page for genres, moods and new releases; library browser and artist pages; smart shuffle; playlist editing; and Spotify Connect receiver mode, so the Spotify apps can play through cliamp.

radio

Song, artist and album radio

Radio seeded from Spotify stations opens as a playlist without starting playback. When Spotify has no station for a track, cliamp says so.

resume

Picks up where you left off

Reopen cliamp to get the last track, position, queue and immersive page back, for every provider.

windows

One static cliamp.exe

Spotify included, credentials stored with DPAPI, sign-in over a free local port, and Sixel graphics in Windows Terminal.

From upstream: local files, streams, podcasts, YouTube, YouTube Music, SoundCloud, Mixcloud, Bilibili, Spotify, Qobuz, Tidal, NetEase Cloud Music, Yandex Music, Xiaoyuzhou, Navidrome, Lyrion, Plex, Jellyfin, Emby and Audiobookshelf; about 58,000 radio stations; 39 visualizers; a 10-band EQ with 16 presets; 22 built-in color schemes; synced lyrics; Lua plugins with 12 events to hook; and remote control from scripts and media keys.

install

Get the fork

macOS, Linux, Windows (Git Bash)

The script downloads the latest fork release, checks it against checksums.txt, and installs to ~/.local/bin. Set INSTALL_DIR to pick another directory.

build from source

Then run cliamp, or cliamp setup to connect streaming services and media servers. Optional: ffmpeg for AAC, ALAC, Opus and WMA; yt-dlp for YouTube, SoundCloud and friends. On macOS, release binaries need brew install flac libvorbis libogg mpg123.

Upgrading: cliamp upgrade still downloads upstream's release and would replace the fork. Run the install script again instead. Homebrew, the AUR package and cliamp.stream/install.sh also install upstream.
PlatformRelease file
Linux x86-64cliamp-linux-amd64
Linux ARM64cliamp-linux-arm64
macOS Apple siliconcliamp-darwin-arm64
macOS Intelcliamp-darwin-amd64
Windows x86-64cliamp-windows-amd64.exe

Download from GitHub Releases, make it executable, and put it on your PATH.

headless mode

Music without the TUI

cliamp --daemon runs the same player with no interface. It loads your Lua plugins, sends scrobbles, keeps playback gapless, and takes commands from any terminal, script, status bar or hotkey. Stop it with Ctrl+C or SIGTERM; it saves the resume position first.

Start it

$ cliamp --daemon                              # no TUI, IPC only
$ cliamp -d --auto-play --playlist Lofi        # start playing on launch
$ cliamp --daemon ~/Music --auto-play          # play a directory

Control it

$ cliamp toggle           # play / pause
$ cliamp next
$ cliamp volume -3        # set the volume to -3 dB
$ cliamp load "Lofi"      # load a playlist
$ cliamp status --json    # for status bars

Run it at login

A systemd user unit at ~/.config/systemd/user/cliamp.service, then systemctl --user enable --now cliamp.service.

[Service]
ExecStart=%h/.local/bin/cliamp --daemon --auto-play --playlist "Lofi"
Restart=on-failure

[Install]
WantedBy=default.target

Status bars and keys

Poll cliamp status --json from Waybar or Polybar, and bind media keys to the commands. MPRIS (Linux), Now Playing (macOS) and media-key hotkeys (Windows) work in headless mode too.

# Hyprland
bind = , XF86AudioPlay, exec, cliamp toggle
bind = , XF86AudioNext, exec, cliamp next

Only one cliamp runs per user: a second daemon exits with cliamp is already running. Theme and visualizer commands need the TUI. Full guide: docs/headless.md.

credits

Built on bjarneo's cliamp

Upstream. cliamp is created by bjarneo. The original project, its site cliamp.stream, and its docs describe upstream cliamp: github.com/bjarneo/cliamp.
This fork. Maintained by jarmen423. Report problems with the fork's features in jarmen423/cliamp issues. Docs live in docs/.
Hosting. This fork page is hosted by Agent Memory Labs, makers of Agentic Memory: persistent, searchable memory for AI agents over code, research, conversations and git history. Agent Memory Labs is not affiliated with upstream cliamp.