PackageTrack
Sign in Get early access

github.com/steipete/sag

v0.4.1 #2282 most downloaded on Go modules steipete/sag

What this package is like to depend on

Last release 1 months ago

12 Jul 2026

Release timing varies

gaps range from 2 weeks to 3 months

Nearly every release is documented

notes for 7 of 7 stable releases

Nothing withdrawn

no release was ever pulled

8 months old

13 releases · first in 2025

13 releases in the last 12 months

see the full history below

Release timeline

13 releases · Dec 2025 to Jul 2026
2026
Release Pre-release

Releases

latest 13
  1. v0.4.2-0.20260712151706-93a983c7bd96 12 Jul 2026 pre-release

    Nothing published for this version

  2. v0.4.1 01 Jul 2026
    Release notes

    Fixed

    • Explicit --format values now override output-extension inference, preserving the requested ElevenLabs audio format. (#21, #22, thanks @100yenadmin)

    Verification

    Open source →
    Release notes

    Fixed

    • Explicit --format values now override output-extension inference, preserving the requested ElevenLabs audio format. (#21/#22, thanks @100yenadmin)
    Open source →
  3. v0.4.1-0.20260611022547-ad9b1d3013b4 11 Jun 2026 pre-release

    Nothing published for this version

  4. v0.4.0 11 Jun 2026
    Release notes

    Added

    • Added live-tested 60db provider support via /default-voices, /myvoices, and /tts-synthesize, including bounded NDJSON decoding, incomplete-response rejection, and PCM-to-WAV playback. (steipete/sag#20, thanks @manishEMS47)

    Changed

    • Release archives now include target-specific macOS and Linux assets for Homebrew and aqua installers.

    Verification

    Open source →
    Release notes

    Added

    • Added live-tested 60db provider support via /default-voices, /myvoices, and /tts-synthesize, including bounded NDJSON decoding, incomplete-response rejection, and PCM-to-WAV playback. (#20, thanks @manishEMS47)

    Changed

    • Release archives now include target-specific macOS and Linux assets for Homebrew and aqua installers.
    Open source →
  5. v0.3.0 06 May 2026
    Release notes

    Added

    • Voice discovery: semantic --query over name/description/labels, repeatable --label filters, preview playback via --try, metadata caching, and server-side name search when supported.
    • Bare sag now reads piped stdin like macOS say, so echo "hello" | sag speaks the text without requiring the speak subcommand. (#14, thanks @atdrendel)

    Fixed

    • --format and .ogg/.opus output paths now request native ElevenLabs Opus output instead of always receiving MP3. (#16, thanks @derspotter)
    • Long TTS generation no longer hits hidden 60s/90s internal timeouts; use --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.
    • macOS playback now defaults to afplay for better AirPlay routing, with --player oto / SAG_PLAYER=oto available as a fallback. (#15, thanks @s0up4200)
    Open source →
    Release notes

    Added

    • Voice discovery: semantic --query over name/description/labels, repeatable --label filters, preview playback via --try, metadata caching, and server-side name search when supported.
    • Bare sag now reads piped stdin like macOS say, so echo "hello" | sag speaks the text without requiring the speak subcommand. (#14, thanks @atdrendel)

    Fixed

    • --format and .ogg/.opus output paths now request native ElevenLabs Opus output instead of always receiving MP3. (#16, thanks @derspotter)
    • Long TTS generation no longer hits hidden 60s/90s internal timeouts; use --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.
    • macOS playback now defaults to afplay for better AirPlay routing, with --player oto / SAG_PLAYER=oto available as a fallback. (#15, thanks @s0up4200)
    Open source →
  6. v0.2.3-0.20260124121004-d37e377f74fa 24 Jan 2026 pre-release

    Nothing published for this version

  7. v0.2.2 24 Jan 2026
    Release notes

    Fixed

    • Voice ID resolution respects --voice-id and avoids misclassifying long names; --rate now overrides --speed validation. (#7, thanks @joelbdavies)
    • Voice name matching now uses exact/substring checks without falling back to unrelated voices; voice search is handled client-side. (#8, thanks @joelbdavies)
    • sag help and sag completion no longer default to speak. (#4, thanks @GiGurra)

    Added

    • --api-key-file and ELEVENLABS_API_KEY_FILE/SAG_API_KEY_FILE support for loading API keys from a file. (#6, thanks @GiGurra)
    Open source →
    Release notes

    Fixed

    • Voice ID resolution respects --voice-id and avoids misclassifying long names; --rate now overrides --speed validation. (#7, thanks @joelbdavies)
    • Voice name matching now uses exact/substring checks without falling back to unrelated voices; voice search is handled client-side. (#8, thanks @joelbdavies)
    • sag help and sag completion no longer default to speak. (#4, thanks @GiGurra)

    Added

    • --api-key-file and ELEVENLABS_API_KEY_FILE/SAG_API_KEY_FILE support for loading API keys from a file. (#6, thanks @GiGurra)
    Open source →
  8. v0.2.2-0.20260101234058-3da1ee1c5c12 01 Jan 2026 pre-release

    Nothing published for this version

  9. v0.2.1 01 Jan 2026
    Release notes

    Fixed

    • -o/--output now disables speaker playback by default unless --play is explicitly set.
    Open source →
    Release notes

    Fixed

    • -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.
    Open source →
  10. v0.2.1-0.20251219232355-427396d09a7d 19 Dec 2025 pre-release

    Nothing published for this version

  11. v0.2.0 19 Dec 2025
    Release notes

    Added

    • Voice control flags: --stability, --similarity/--similarity-boost, --style, --speaker-boost/--no-speaker-boost.
    • Request controls: --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.

    Changed

    • Default model is now eleven_v3 (override with --model-id eleven_multilingual_v2 for a stable baseline).

    Homebrew (source tarball)

    • SHA256: a505a5eb0d72ede07768e96f17574c37959dacdde03434360b1a74c60d9c11cc
    Open source →
    Release notes

    Added

    • Voice control flags: --stability, --similarity/--similarity-boost, --style, --speaker-boost/--no-speaker-boost.
    • Request controls: --seed, --normalize (auto|on|off), --lang (ISO 639-1).
    • --metrics to print basic request stats (chars/bytes/duration) to stderr.
    • sag prompting command and README section with prompting tips.

    Changed

    • Default model is now eleven_v3 (override with --model-id eleven_multilingual_v2 for a stable baseline).
    Open source →
  12. v0.1.1-0.20251208174037-abdf7acd7151 08 Dec 2025 pre-release

    Nothing published for this version

  13. v0.1.0 08 Dec 2025
    Release notes

    docs: add sag release checklist

    Open source →
    Release notes

    Added

    • Initial release of sag ElevenLabs TTS CLI with macOS say-style flags.
    • Streaming default playback to speakers with optional file output; cross-platform audio via go-mp3 + oto.
    • Voice listing (sag voices) and voice resolution by name/ID, including ? to list.
    • macOS say compatibility: -v/--voice, -r/--rate, -f/--input-file, -o/--output, plus accepted no-op flags.
    • Auto-routing bare sag ... text/flags to speak subcommand, including npm/pnpm -- pass-through support.
    • Speed control (--speed or --rate), latency tier selection, model/format overrides with extension inference.
    • Default voice fallback to first available when none provided; env support ELEVENLABS_VOICE_ID or SAG_VOICE_ID.
    • Config via ELEVENLABS_API_KEY/SAG_API_KEY; --api-key and --base-url overrides.
    • Tests for format inference, text sourcing, voice resolution helpers, and default speak routing behavior.
    • Help/README improvements: feature overview, examples for subcommand-less usage, and voice discovery guidance.
    • Homebrew tap formula (brew install steipete/tap/sag) and release playbook.
    • CI workflow (lint + tests) and golangci-lint config.
    • Documentation: README, docs/spec.md, and usage examples.
    • Version flag (--version / -V) reporting 0.1.0; help available without API key.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive