NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #2455 by repository stars
Last release 24 days ago
14 Sep 2026
Release timing varies
gaps range from 2 weeks to 3 months
Nearly every release is documented
notes for 9 of 9 stable releases
Nothing withdrawn
no release was ever pulled
10 months old
15 releases · first in 2025
One column per month.
macOS downloads are signed and notarized.
sag_<version>_universal_darwin_all.tar.gz, and SHA256SUMS replaces the versioned checksum manifest and per-archive checksum files.macOS release builds now explicitly retain the existing macOS 15 minimum when the build runner or SDK changes.
go.mod.brew update && brew upgrade steipete/tap/saggo install github.com/steipete/sag/cmd/sag@v0.4.2Nothing published for this version
Explicit --format values now override output-extension inference, preserving the requested ElevenLabs audio format. ( #21 , #22 , thanks @100yenadmin
--format values now override output-extension inference, preserving the requested ElevenLabs audio format. (#21, #22, thanks @100yenadmin).wav output extension; the generated audio was independently detected as MP3 with positive duration. No playback, private text, or persistent settings were used.Nothing published for this version
Added live-tested 60db provider support via /default-voices , /myvoices , and /tts-synthesize , including bounded NDJSON decoding, incomplete-response
/default-voices, /myvoices, and /tts-synthesize, including bounded NDJSON decoding, incomplete-response rejection, and PCM-to-WAV playback. (steipete/sag#20, thanks @manishEMS47)sag 0.4.0 listed live voices, synthesized through the real provider, produced a 48 kHz mono PCM/WAV file, and completed oto playback.Voice discovery: semantic --query over name/description/labels, repeatable --label filters, preview playback via --try , metadata caching, and server-
--query over name/description/labels, repeatable --label filters, preview playback via --try, metadata caching, and server-side name search when supported.sag now reads piped stdin like macOS say, so echo "hello" | sag speaks the text without requiring the speak subcommand. (#14, thanks @atdrendel)--format and .ogg/.opus output paths now request native ElevenLabs Opus output instead of always receiving MP3. (#16, thanks @derspotter)--timeout or SAG_TIMEOUT when you want sag to enforce a limit. (#17/#18, thanks @sumurtk2)--no-play and --no-stream are now accepted aliases for --play=false and --stream=false.afplay for better AirPlay routing, with --player oto / SAG_PLAYER=oto available as a fallback. (#15, thanks @s0up4200)Nothing published for this version
Voice ID resolution respects --voice-id and avoids misclassifying long names; --rate now overrides --speed validation. ( #7 , thanks @joelbdavies )
--voice-id and avoids misclassifying long names; --rate now overrides --speed validation. (#7, thanks @joelbdavies)sag help and sag completion no longer default to speak. (#4, thanks @GiGurra)Nothing published for this version
-o/--output now disables speaker playback by default unless --play is explicitly set.
-o/--output now disables speaker playback by default unless --play is explicitly set.-o/--output now disables speaker playback by default unless --play is explicitly set. Previously -o saved to file AND played through speakers, which was confusing.Nothing published for this version
Voice control flags: --stability , --similarity / --similarity-boost , --style , --speaker-boost / --no-speaker-boost .
--stability, --similarity/--similarity-boost, --style, --speaker-boost/--no-speaker-boost.--seed, --normalize (auto|on|off), --lang (ISO 639-1).--metrics to print basic request stats (chars/bytes/duration) to stderr.sag prompting command + README section with prompting tips.eleven_v3 (override with --model-id eleven_multilingual_v2 for a stable baseline).a505a5eb0d72ede07768e96f17574c37959dacdde03434360b1a74c60d9c11ccNothing published for this version
docs: add sag release checklist
docs: add sag release checklist
sag ElevenLabs TTS CLI with macOS say-style flags.sag voices) and voice resolution by name/ID, including ? to list.say compatibility: -v/--voice, -r/--rate, -f/--input-file, -o/--output, plus accepted no-op flags.sag ... text/flags to speak subcommand, including npm/pnpm -- pass-through support.--speed or --rate), latency tier selection, model/format overrides with extension inference.ELEVENLABS_VOICE_ID or SAG_VOICE_ID.ELEVENLABS_API_KEY/SAG_API_KEY; --api-key and --base-url overrides.speak routing behavior.brew install steipete/tap/sag) and release playbook.--version / -V) reporting 0.1.0; help available without API key.Your coding agent can read these notes before it upgrades. Set up the MCP server →