Releases: Ciphore/RadioCLI
Releases · Ciphore/RadioCLI
v0.1.5
v0.1.4
Added
- Added a dedicated AirPlay receiver picker and AirPlay Code screen for
passcode-protected receivers.
Changed
- Replaced silent AirPlay target cycling with a dedicated receiver picker in
Settings, clearer Audio output labels, immediate output switching while a
station is playing, and explicit AirPlay receiver selection before tuning. - AirPlay is now an explicit current-session output instead of a persisted
default. Restarting RadioCLI returns to automatic local playback while keeping
the last receiver available for the next manual AirPlay switch. - Bundled the AirPlay sender bridge and updated the Homebrew formula template to
install FFmpeg, so macOS users do not need manual AirPlay package setup.
Fixed
- Fixed same-session AirPlay station switching so the worker retunes the active
receiver, resets its sender buffer, and keeps the UI in buffering until the
new stream is actually ready. - Fixed AirPlay output failures so
skip broken streamsno longer walks
through the library when the receiver is missing, off, local, or unavailable. - Fixed library selection after playing a station that moves to the top of
recents. - Patched the bundled AirPlay sender for modern macOS AirPlay 2 receivers that
return digest-protected setup responses or empty first setup bodies.
RadioCLI 0.1.3
Added
- Experimental macOS AirPlay playback backend with Bonjour receiver discovery,
Settings target selection,:airplay-codepasscode entry, worker-based stream
forwarding, and active receiver labels in the playback footer.
Changed
ffplayis now treated as a playback-only fallback: the UI labels it as
ffplay fallback,radiocli doctorreports limited controls, and unsupported
pause, mute, volume, and media-key actions explain thatmpvis required.
Security
- AirPlay sender support is disabled unless a compatible sender package passes
RadioCLI's dependency safety gate; the current publicnode-airtunes2package
line remains blocked because of vulnerable transitive dependencies. - Hardened AirPlay discovery and worker messaging with bounded payloads,
sanitized receiver data, passcode validation, and worker shutdown on startup
timeout.
RadioCLI 0.1.2
Fixed
- Fixed Ghostty/Kitty keyboard release events so one left/right arrow press advances only one top tab.
- Ignored Kitty release events for raw media-key transport sequences so learned or native media keys do not double-fire.
Distribution
- npm latest: @ciphore/radiocli@0.1.2
- Homebrew tap: brew install ciphore/tap/radiocli
RadioCLI 0.1.1
Changelog
All notable changes to RadioCLI are documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
0.1.1 - 2026-05-30
Initial public release.
Added
- A square braille spinner now animates to the left of the station name in the
live playback footer while a station is buffering. - Ink-based terminal UI with overview, now playing, library, explore, search,
countries, world map, nearby, stats, and settings screens. - Radio Browser provider with mirror fallback, durable cache, and tune
resolution, plus an experimental, opt-in Radio Garden provider. mpvplayback withffplayfallback, readiness checks, ICY metadata polling,
volume, pause, mute, sleep timer, tune timeouts, and skip-broken-stream
behavior, using Unix sockets on macOS/Linux and named pipes on native Windows.- Receiver-style Now Playing screen with 50 selectable visualizers and
zero-signal frames whenever playback is idle, paused, stopped, or not
backend-ready. - Explore map: a braille world map beside the live station list with WASD
movement, click-to-place mouse support, and a cached geotagged station atlas
ranked by distance. - Local-first library: recents, favorites, imports, listening activity,
settings, learned media keys, and provider cache stored as JSON on your
machine. - Playlist import/export for
.m3u,.pls, and.xspf. - Listening stats with a 52-week local-calendar contribution graph, sessions,
streaks, active days, and total hours listened. radiocli doctorto report local playback readiness and print OS-specific
setup guidance.- Published Homebrew tap formula for
brew install ciphore/tap/radiocli. - Documented native Linux and Windows install paths, with
wingetguidance for
Node.js,mpv, and optional FFmpeg on Windows. - Documented pnpm and Bun as optional npm-package install clients.
Changed
- Tightened the Now Playing panel below the receiver: collapsed the stream
tech/tags, track metadata, and backend/volume rows into two compact lines
(track + favorite, then a single tech · tags · sleep line), dropping
backend/volume that already appear in the header and footer. The reclaimed
rows go to the visualizer.