@livekit/agents@1.9.0
livekit/agents-js@livekit/agents@1.9.0Sep 15, 2026by github-actions[bot]
Upgrading?
AI Summary
This minor release introduces telemetry for monitoring event loop blocking and improves stability with better handling of STT fallbacks, text simulations, and agent task lifecycle management.
Key Highlights
- New telemetry feature telemetry.loopMonitor to detect synchronous code blocking the event loop
- STT providers are kept healthy when fallback streams close
- Fail fast error for DuplexModels started under text simulations
- Fixed deadlock prevention for late inline AgentTasks during handoff and shutdown
New Features
- telemetry.loopMonitor with configurable thresholds (LIVEKIT_AGENTS_LOOP_BLOCK_WARN_MS, LIVEKIT_AGENTS_LOOP_BLOCK_ERROR_MS)
Full Release Notes
### Minor Changes
- Flag synchronous code that blocks agent event loops in telemetry and logs. - [#2459](https://github.com/livekit/agents-js/pull/2459) ([@rosetta-livekit-bot](https://github.com/apps/rosetta-livekit-bot))
- Adds `telemetry.loopMonitor`. Stalls at or above 100 ms emit a back-dated `event_loop_blocked`
span, a rate-limited warning, an `lk.agents.event_loop.blocked_duration` histogram measurement,
and per-session stall summaries. Override the thresholds with `LIVEKIT_AGENTS_LOOP_BLOCK_WARN_MS`
and `LIVEKIT_AGENTS_LOOP_BLOCK_ERROR_MS` (defaults 100 ms / 500 ms); `WARN_MS=0` disables it.
### Patch Changes
- Keep healthy STT providers available when fallback streams close with transcripts in flight. - [#2381](https://github.com/livekit/agents-js/pull/2381) ([@swayamg20](https://github.com/swayamg20))
- Fail fast with a clear error when a DuplexModel such as GPT-Live is started under a text simulation, which has no audio, instead of timing out on the first reply. - [#2481](https://github.com/livekit/agents-js/pull/2481) ([@u9g](https://github.com/u9g))
- Reject late inline AgentTasks on an outgoing activity so handoff and shutdown do not deadlock while draining non-cancellable tools. - [#2488](https://github.com/livekit/agents-js/pull/2488) ([@swayamg20](https://github.com/swayamg20))
- Place recorded audio where the sink reports it actually played, instead of inferring it from the moment playback finished. - [#2327](https://github.com/livekit/agents-js/pull/2327) ([@longcw](https://github.com/longcw))
Related Repositories
openclaw/openclaw★ 392,712
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
nilbuild/developer-roadmap★ 370,078
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
morluto/rea★ 358,632
Reverse engineer anything with agents, from app behavior down to native binaries.
anomalyco/opencode★ 219,745
The open source coding agent.
n8n-io/n8n★ 208,266
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.