Skip to content

Releases

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 06 Nov 16:01
1cab022

Image: spekoai/gateway:0.3.0 (also :0.3)

What's Changed

  • Add Omi omi-medical-1 STT adapters under a new omi provider by @twinarta in #151
  • fix(meta): bill client-closed transcribe sessions as complete by @Baymurat785 in #148
  • fix(elevenlabs): flush each clause on the dialogue socket so v3/v4 speak sooner by @Baymurat785 in #143

Full Changelog: v0.2.0...v0.3.0

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 11:51
cc3afff

What changed for you

Faster first audio in the LiveKit plugin. speko_gateway.livekit.TTS now keeps one Gateway session open and ready for the next reply. A reply's first text no longer waits for a session and its provider connection to open. With managed ElevenLabs, that also takes the provider's token check out of the path to first audio. In direct measurements of that connection from Southeast Asia, first audio on eleven_v4_turbo took 553 ms P50 when text was sent right after connecting, and 59 ms on a connection that was already open.

What you need to do. Rebuild your agent image on spekoai/gateway:0.2. No code changes are needed. LiveKit calls prewarm() when your agent starts, and that opens the first standby session.

One more open session per agent.

  • Between replies, each TTS holds one extra Gateway session and provider connection. During a reply it holds two.
  • These count toward your organization's concurrent-session limit, the Gateway's SPEKO_MAX_SESSIONS, and provider connection limits.
  • With managed credentials, each open session also reserves credit for its max_input_characters.
  • If you run close to any of these limits, raise them before you upgrade, or lower max_input_characters.

Opting out. TTS(standby_sessions=0) restores the previous behavior.

Cleanup. A standby that no reply uses closes after 3 minutes. LiveKit does not close the TTS when a session ends, so call aclose() to release it sooner.

The Pipecat integration is unchanged in this release.

Image: spekoai/gateway:0.2.0 (also :0.2)

What's Changed

  • Versioned releases with a changelog customers can watch by @Baymurat785 in #145
  • feat(livekit): keep a standby TTS gateway session for the next reply by @Laroikin in #146

Full Changelog: v0.1.0...v0.2.0

v0.1.0

Choose a tag to compare

@Baymurat785 Baymurat785 released this 04 Nov 07:43
5e18cdf

First versioned Gateway release. Pin spekoai/gateway:0.1.0 (exact) or spekoai/gateway:0.1 (gets 0.1.x fixes) instead of :latest. :latest moves with every merge to main.

What changed for you

  • Fixed: managed STT and TTS sessions failed with invalid_request (HTTP 400) on the sha-1506cd4 image from 2026-11-04 01:34 UTC. That image sent a runtime.incarnation_id field that the Speko control plane does not accept yet. (#144)
  • Gateway now reports verified provider account occupancy to the control plane (instance protocol 3). No configuration change needed. (#140)
  • Runtime instance reporting uses fenced process lifetimes. (#137, #139)
  • Credential refresh keeps opaque session and attempt IDs intact in the request path. (#136, #140)
  • Gemini TTS sends the requested language as speechConfig.languageCode. (#135)

Image: spekoai/gateway:0.1.0 (also :0.1), commit 5e18cdf.