Skip to content

feat(voice): add dynamic endpointing#1350

Open
u9g wants to merge 4 commits intomainfrom
rosetta/port-dynamic-endpointing-py-to-node
Open

feat(voice): add dynamic endpointing#1350
u9g wants to merge 4 commits intomainfrom
rosetta/port-dynamic-endpointing-py-to-node

Conversation

@u9g
Copy link
Copy Markdown
Contributor

@u9g u9g commented Apr 30, 2026

Summary

  • Port Python BaseEndpointing/DynamicEndpointing behavior and ExpFilter parity into the Node voice runtime.
  • Wire endpointing state through AgentActivity and AudioRecognition, including VAD/STT, no-VAD realtime speech events, agent speech lifecycle, and endpointing option replacement.
  • Add 1:1 parity coverage for all tests/test_endpointing.py cases plus target-specific runtime/update coverage and a changeset.

Verification

  • pnpm test -- agents/src/voice/endpointing.test.ts agents/src/voice/audio_recognition_span.test.ts agents/src/voice/audio_recognition_handoff.test.ts agents/src/voice/turn_config/utils.test.ts agents/src/voice/agent.test.ts agents/src/voice/report.test.ts agents/src/voice/agent_activity.test.ts agents/src/voice/agent_activity_handoff.test.ts agents/src/voice/agent_session_handoff.test.ts
  • pnpm --filter @livekit/agents build
  • pnpm --filter @livekit/agents lint (passes with existing warnings)
  • pnpm format:check
  • pnpm --filter @livekit/agents-plugin-silero build
  • pnpm --filter @livekit/agents api:check [blocked: API Extractor rejects the existing export * as ___ syntax in dist/index.d.ts]

Mapping Note

  • Python AgentSession.update_options(endpointing_opts=...) has no current target AgentSession.updateOptions public API. The target AgentActivity.updateOptions and AudioRecognition.updateOptions endpointing replacement seams are wired and covered.

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Apr 30, 2026

🦋 Changeset detected

Latest commit: 28f4964

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 28 packages
Name Type
@livekit/agents Patch
@livekit/agents-plugin-anam Patch
@livekit/agents-plugin-assemblyai Patch
@livekit/agents-plugin-baseten Patch
@livekit/agents-plugin-bey Patch
@livekit/agents-plugin-cartesia Patch
@livekit/agents-plugin-cerebras Patch
@livekit/agents-plugin-deepgram Patch
@livekit/agents-plugin-elevenlabs Patch
@livekit/agents-plugin-google Patch
@livekit/agents-plugin-hedra Patch
@livekit/agents-plugin-inworld Patch
@livekit/agents-plugin-lemonslice Patch
@livekit/agents-plugin-liveavatar Patch
@livekit/agents-plugin-livekit Patch
@livekit/agents-plugin-minimax Patch
@livekit/agents-plugin-mistral Patch
@livekit/agents-plugin-neuphonic Patch
@livekit/agents-plugin-openai Patch
@livekit/agents-plugin-phonic Patch
@livekit/agents-plugin-resemble Patch
@livekit/agents-plugin-rime Patch
@livekit/agents-plugin-runway Patch
@livekit/agents-plugin-sarvam Patch
@livekit/agents-plugin-silero Patch
@livekit/agents-plugins-test Patch
@livekit/agents-plugin-trugen Patch
@livekit/agents-plugin-xai Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Rosetta Bot seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 7 additional findings.

Open in Devin Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants