Skip to content

fix voice config - #111

Merged
dyi1 merged 1 commit into
masterfrom
dyi/cleanup-interfaces
Sep 16, 2026
Merged

dyi1 merged 1 commit into
masterfrom
dyi/cleanup-interfaces

Conversation

@dyi1

@dyi1 dyi1 commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator

Proposed changes

Voice chat is now always-on by default. The voiceChat field in SessionConfig has been narrowed from boolean | VoiceChatConfig to VoiceChatConfig only, and the SDK applies voiceChat: {} (microphone on, unmuted) when the field is omitted entirely. To start a session with the microphone muted, pass voiceChat: { defaultMuted: true }.

A normalizeSessionConfig shim handles callers still passing the old boolean form at runtime: voiceChat: true maps to {} and voiceChat: false maps to { defaultMuted: true }, both with a console.warn pointing to the replacement. The shim is marked for removal in 0.0.20.

The configureSession method no longer conditionally starts voice chat — it always calls voiceChat.start, relying on the normalized config. The redundant typeof voiceChat === "object" guard in the constructor was also removed.

All call sites in the demo and bg-removal apps have been updated to pass VoiceChatConfig objects instead of booleans, and the LiveAvatarSession and ElevenLabsAgentProvider prop types have been updated to match. Tests cover the new default-on behavior, defaultMuted, and both deprecated boolean migrations.

An AGENTS.md has been added to the SDK source documenting the config design rules (one type per field, no union shorthands, alphabetical field order, JSDoc on every field, and deprecation shim policy) to prevent the boolean-union pattern from being reintroduced.

Bumps the SDK to 0.0.19.

dyi1 commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@dyi1
dyi1 marked this pull request as ready for review September 16, 2026 04:44
@dyi1
dyi1 changed the base branch from dyi/add-auto-keep-alive to graphite-base/111 September 16, 2026 04:44
@dyi1
dyi1 force-pushed the dyi/cleanup-interfaces branch from a718d3a to 1cc4ed5 Compare September 16, 2026 04:49
@dyi1
dyi1 force-pushed the graphite-base/111 branch from 57f75bd to 287f14b Compare September 16, 2026 04:49
@dyi1
dyi1 changed the base branch from graphite-base/111 to dyi/add-auto-keep-alive September 16, 2026 04:49
@dyi1
dyi1 changed the base branch from dyi/add-auto-keep-alive to graphite-base/111 September 16, 2026 04:54
@dyi1
dyi1 force-pushed the graphite-base/111 branch from 287f14b to 685d5b7 Compare September 16, 2026 04:54
@dyi1
dyi1 force-pushed the dyi/cleanup-interfaces branch from 1cc4ed5 to 3bd4c09 Compare September 16, 2026 04:54
@dyi1
dyi1 changed the base branch from graphite-base/111 to master September 16, 2026 04:54
@dyi1
dyi1 merged commit 9faaf2d into master Sep 16, 2026
2 checks passed
@dyi1
dyi1 deleted the dyi/cleanup-interfaces branch September 16, 2026 05:03
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.

1 participant