{"id":"src_UGWFk_DrhtiAXEVPT_9q2","slug":"elevenlabs-agents-sdk-typescript","name":"Agents SDK (TypeScript)","type":"github","url":"https://github.com/elevenlabs/packages","orgId":"org_bL4F7oNaEtnASmH-CtFHR","org":{"slug":"elevenlabs","name":"ElevenLabs"},"isPrimary":false,"metadata":"{\"evaluatedMethod\":\"github\",\"evaluatedAt\":\"2026-04-07T17:18:44.810Z\",\"changelogDetectedAt\":\"2026-04-07T17:27:47.756Z\"}","releaseCount":110,"releasesLast30Days":37,"avgReleasesPerWeek":7,"latestVersion":"@elevenlabs/react-native@1.1.1","latestDate":"2026-04-14T03:56:04.000Z","changelogUrl":null,"hasChangelogFile":false,"lastFetchedAt":"2026-04-21T04:02:38.912Z","lastPolledAt":"2026-04-21T04:01:03.090Z","trackingSince":"2025-12-04T04:35:44.000Z","releases":[{"id":"rel_fq0wn9QoIpnjH8tdrRTjH","version":"@elevenlabs/react-native@1.1.1","title":"@elevenlabs/react-native@1.1.1","summary":"### Patch Changes\n\n-   Updated dependencies [4237f72]\n    -   @elevenlabs/client@1.2.1\n    -   @elevenlabs/react@1.1.1\n","content":"### Patch Changes\n\n-   Updated dependencies [4237f72]\n    -   @elevenlabs/client@1.2.1\n    -   @elevenlabs/react@1.1.1\n","publishedAt":"2026-04-14T03:56:04.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react-native%401.1.1","media":[]},{"id":"rel_JXiHdADIxEVoeRCVt4Svz","version":"@elevenlabs/convai-widget-embed@0.11.4","title":"@elevenlabs/convai-widget-embed@0.11.4","summary":"\n","content":"\n","publishedAt":"2026-04-14T03:56:01.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-embed%400.11.4","media":[]},{"id":"rel_sMMVg-imTtFfh3q3S2_LY","version":"@elevenlabs/react@1.1.1","title":"@elevenlabs/react@1.1.1","summary":"### Patch Changes\n\n-   4237f72: Fix conversation startup readiness so `onConnect` runs after the session is marked connected and React has synchronize...","content":"### Patch Changes\n\n-   4237f72: Fix conversation startup readiness so `onConnect` runs after the session is marked connected and React has synchronized `conversationRef`. Also expose and forward `onConversationCreated` for consumers that need the created `Conversation` instance before `onConnect`.\n-   Updated dependencies [4237f72]\n    -   @elevenlabs/client@1.2.1\n","publishedAt":"2026-04-14T03:55:58.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react%401.1.1","media":[]},{"id":"rel_YuVkRpPqfzuoDiOTMgAOu","version":"@elevenlabs/client@1.2.1","title":"@elevenlabs/client@1.2.1","summary":"### Patch Changes\n\n-   4237f72: Fix conversation startup readiness so `onConnect` runs after the session is marked connected and React has synchronize...","content":"### Patch Changes\n\n-   4237f72: Fix conversation startup readiness so `onConnect` runs after the session is marked connected and React has synchronized `conversationRef`. Also expose and forward `onConversationCreated` for consumers that need the created `Conversation` instance before `onConnect`.\n","publishedAt":"2026-04-14T03:55:55.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/client%401.2.1","media":[]},{"id":"rel_HH6FGPLn-ubnXbfkGowpb","version":"@elevenlabs/convai-widget-core@0.11.4","title":"@elevenlabs/convai-widget-core@0.11.4","summary":"### Patch Changes\n\n-   Updated dependencies [4237f72]\n    -   @elevenlabs/client@1.2.1\n","content":"### Patch Changes\n\n-   Updated dependencies [4237f72]\n    -   @elevenlabs/client@1.2.1\n","publishedAt":"2026-04-14T03:55:52.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-core%400.11.4","media":[]},{"id":"rel_O86qCtbQ41lKyoTM-e9dz","version":"@elevenlabs/convai-widget-core@0.11.3","title":"@elevenlabs/convai-widget-core@0.11.3","summary":"### Patch Changes\n\n-   4bc8747: Fix transcript message ordering in voice mode where agent responses could appear before user messages.\n-   Updated dep...","content":"### Patch Changes\n\n-   4bc8747: Fix transcript message ordering in voice mode where agent responses could appear before user messages.\n-   Updated dependencies [0d5c368]\n    -   @elevenlabs/client@1.2.0\n","publishedAt":"2026-04-10T14:05:41.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-core%400.11.3","media":[]},{"id":"rel_G8jTr-GDtudjNf_hQfStt","version":"@elevenlabs/react-native@1.1.0","title":"@elevenlabs/react-native@1.1.0","summary":"### Minor Changes\n\n-   0d5c368: Fix getInputVolume/getOutputVolume returning 0 in React Native by adding native volume providers using LiveKit's RMS a...","content":"### Minor Changes\n\n-   0d5c368: Fix getInputVolume/getOutputVolume returning 0 in React Native by adding native volume providers using LiveKit's RMS and multiband FFT processors.\n\n    **Breaking:** `getByteFrequencyData()` now returns data focused on the human voice range (100-8000 Hz) instead of the full spectrum (0 to sampleRate/2). On web, `getVolume()` is also computed from this range. The deprecated `getAnalyser()` method still provides direct access to the raw `AnalyserNode` for consumers needing full-spectrum data.\n\n### Patch Changes\n\n-   Updated dependencies [806edd0]\n-   Updated dependencies [0d5c368]\n    -   @elevenlabs/react@1.1.0\n    -   @elevenlabs/client@1.2.0\n","publishedAt":"2026-04-10T14:05:38.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react-native%401.1.0","media":[]},{"id":"rel_IhG0jihRooIbNqWZuOdQi","version":"@elevenlabs/convai-widget-embed@0.11.3","title":"@elevenlabs/convai-widget-embed@0.11.3","summary":"\n","content":"\n","publishedAt":"2026-04-10T14:05:35.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-embed%400.11.3","media":[]},{"id":"rel_BVbMS7eT41uW6JK11Clix","version":"@elevenlabs/client@1.2.0","title":"@elevenlabs/client@1.2.0","summary":"### Minor Changes\n\n-   0d5c368: Fix getInputVolume/getOutputVolume returning 0 in React Native by adding native volume providers using LiveKit's RMS a...","content":"### Minor Changes\n\n-   0d5c368: Fix getInputVolume/getOutputVolume returning 0 in React Native by adding native volume providers using LiveKit's RMS and multiband FFT processors.\n\n    **Breaking:** `getByteFrequencyData()` now returns data focused on the human voice range (100-8000 Hz) instead of the full spectrum (0 to sampleRate/2). On web, `getVolume()` is also computed from this range. The deprecated `getAnalyser()` method still provides direct access to the raw `AnalyserNode` for consumers needing full-spectrum data.\n","publishedAt":"2026-04-10T14:05:32.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/client%401.2.0","media":[]},{"id":"rel_wbBgRS4nYeo4GK53ZYnNT","version":"@elevenlabs/react@1.1.0","title":"@elevenlabs/react@1.1.0","summary":"### Minor Changes\n\n-   0d5c368: Fix getInputVolume/getOutputVolume returning 0 in React Native by adding native volume providers using LiveKit's RMS a...","content":"### Minor Changes\n\n-   0d5c368: Fix getInputVolume/getOutputVolume returning 0 in React Native by adding native volume providers using LiveKit's RMS and multiband FFT processors.\n\n    **Breaking:** `getByteFrequencyData()` now returns data focused on the human voice range (100-8000 Hz) instead of the full spectrum (0 to sampleRate/2). On web, `getVolume()` is also computed from this range. The deprecated `getAnalyser()` method still provides direct access to the raw `AnalyserNode` for consumers needing full-spectrum data.\n\n### Patch Changes\n\n-   806edd0: Fix `startSession` errors being swallowed instead of surfaced via `onError` in `ConversationProvider`. Previously, when `Conversation.startSession()` rejected (e.g. \"agent not found\"), the UI would get stuck in \"connecting\" with no error feedback.\n-   Updated dependencies [0d5c368]\n    -   @elevenlabs/client@1.2.0\n","publishedAt":"2026-04-10T14:05:29.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react%401.1.0","media":[]},{"id":"rel_ZuRa1yC6mbX_7qpYdc3PJ","version":"@elevenlabs/convai-widget-core@0.11.2","title":"@elevenlabs/convai-widget-core@0.11.2","summary":"### Patch Changes\n\n-   Updated dependencies [50ea6ef]\n    -   @elevenlabs/client@1.1.2\n","content":"### Patch Changes\n\n-   Updated dependencies [50ea6ef]\n    -   @elevenlabs/client@1.1.2\n","publishedAt":"2026-04-06T15:31:36.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-core%400.11.2","media":[]},{"id":"rel_GRFrHTeO9Kx9kXYq7WcbT","version":"@elevenlabs/types@0.9.1","title":"@elevenlabs/types@0.9.1","summary":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler...","content":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler` to `nodenext` and add `.js` extensions to all relative imports. The published packages use `\"type\": \"module\"` but the compiled output had extensionless imports, which breaks Node.js ESM resolution. Also add `\"type\": \"module\"` to `@elevenlabs/types`.\n","publishedAt":"2026-04-06T15:31:33.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/types%400.9.1","media":[]},{"id":"rel_0ovShrFm0cqV_BaLsjFzf","version":"@elevenlabs/client@1.1.2","title":"@elevenlabs/client@1.1.2","summary":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler...","content":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler` to `nodenext` and add `.js` extensions to all relative imports. The published packages use `\"type\": \"module\"` but the compiled output had extensionless imports, which breaks Node.js ESM resolution. Also add `\"type\": \"module\"` to `@elevenlabs/types`.\n\n-   Updated dependencies [50ea6ef]\n    -   @elevenlabs/types@0.9.1\n","publishedAt":"2026-04-06T15:31:30.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/client%401.1.2","media":[]},{"id":"rel_WA4EBZBMcpG7hOFuZiwY7","version":"@elevenlabs/react@1.0.3","title":"@elevenlabs/react@1.0.3","summary":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler...","content":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler` to `nodenext` and add `.js` extensions to all relative imports. The published packages use `\"type\": \"module\"` but the compiled output had extensionless imports, which breaks Node.js ESM resolution. Also add `\"type\": \"module\"` to `@elevenlabs/types`.\n\n-   Updated dependencies [50ea6ef]\n    -   @elevenlabs/client@1.1.2\n","publishedAt":"2026-04-06T15:31:27.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react%401.0.3","media":[]},{"id":"rel_dM6ttBAVy-LCz5PL8Yiji","version":"@elevenlabs/react-native@1.0.3","title":"@elevenlabs/react-native@1.0.3","summary":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler...","content":"### Patch Changes\n\n-   50ea6ef: fix: use explicit .js extensions in ESM imports for Node.js compatibility\n\n    Switch `moduleResolution` from `bundler` to `nodenext` and add `.js` extensions to all relative imports. The published packages use `\"type\": \"module\"` but the compiled output had extensionless imports, which breaks Node.js ESM resolution. Also add `\"type\": \"module\"` to `@elevenlabs/types`.\n\n-   Updated dependencies [50ea6ef]\n    -   @elevenlabs/client@1.1.2\n    -   @elevenlabs/react@1.0.3\n","publishedAt":"2026-04-06T15:31:24.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react-native%401.0.3","media":[]},{"id":"rel_2uvvB16ZYO-XdvoabbLiH","version":"@elevenlabs/convai-widget-embed@0.11.2","title":"@elevenlabs/convai-widget-embed@0.11.2","summary":"\n","content":"\n","publishedAt":"2026-04-06T15:31:21.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-embed%400.11.2","media":[]},{"id":"rel_l66UChlxdCeXKJCMinWIH","version":"@elevenlabs/react@1.0.2","title":"@elevenlabs/react@1.0.2","summary":"### Patch Changes\n\n-   f29c44b: Expose `sendMultimodalMessage` in `useConversationControls` hook. Export `MultimodalMessageInput` type from `@elevenla...","content":"### Patch Changes\n\n-   f29c44b: Expose `sendMultimodalMessage` in `useConversationControls` hook. Export `MultimodalMessageInput` type from `@elevenlabs/client`.\n-   Updated dependencies [f29c44b]\n    -   @elevenlabs/client@1.1.1\n","publishedAt":"2026-04-03T03:34:05.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/react%401.0.2","media":[]},{"id":"rel_VB4u26G-UH5gFikY_O-gp","version":"@elevenlabs/client@1.1.1","title":"@elevenlabs/client@1.1.1","summary":"### Patch Changes\n\n-   f29c44b: Expose `sendMultimodalMessage` in `useConversationControls` hook. Export `MultimodalMessageInput` type from `@elevenla...","content":"### Patch Changes\n\n-   f29c44b: Expose `sendMultimodalMessage` in `useConversationControls` hook. Export `MultimodalMessageInput` type from `@elevenlabs/client`.\n","publishedAt":"2026-04-03T03:34:02.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/client%401.1.1","media":[]},{"id":"rel_su4BRYi_2oetj9nyUA0Yf","version":"@elevenlabs/convai-widget-core@0.11.1","title":"@elevenlabs/convai-widget-core@0.11.1","summary":"### Patch Changes\n\n-   Updated dependencies [f29c44b]\n    -   @elevenlabs/client@1.1.1\n","content":"### Patch Changes\n\n-   Updated dependencies [f29c44b]\n    -   @elevenlabs/client@1.1.1\n","publishedAt":"2026-04-03T03:33:59.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-core%400.11.1","media":[]},{"id":"rel_jTrCMtjqnBOzqQxcpRj4s","version":"@elevenlabs/convai-widget-embed@0.11.1","title":"@elevenlabs/convai-widget-embed@0.11.1","summary":"\n","content":"\n","publishedAt":"2026-04-03T03:33:56.000Z","url":"https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs/convai-widget-embed%400.11.1","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":6,"totalItems":110},"summaries":{"rolling":{"windowDays":90,"summary":"The SDK shipped three major versions in quick succession, fundamentally reshaping the API surface. In late March, `@elevenlabs/client` and `@elevenlabs/react` introduced breaking changes: the `Input` class disappeared in favor of methods like `getInputByteFrequencyData()` and `setMicMuted()` on the conversation object, while `useConversation` now requires a `ConversationProvider` ancestor and exposes granular hooks (`useConversationControls`, `useConversationStatus`, etc.) instead of a monolithic return shape. `@elevenlabs/react-native` underwent a complete rewrite, ditching its custom LiveKit-based provider to re-export the React package's API, with side-effects on import to polyfill WebRTC and configure native audio. After stabilization in early April, the SDK focused on multimodal and feature refinement: `sendMultimodalMessage` surfaced in hook controls, tool response mocking landed in the client, and the widget gained intelligent language auto-selection from localStorage and browser preferences. A late-April fix addressed Node.js ESM compatibility by switching to explicit `.js` file extensions in imports.","releaseCount":50,"generatedAt":"2026-04-07T17:27:54.033Z"},"monthly":[{"year":2026,"month":3,"summary":"March delivered two major API overhauls. Early in the month, guardrail detection arrived via `onGuardrailTriggered` callback and type discriminants for `TextConversation` and `VoiceConversation`, letting developers distinguish conversation modes at compile time. Mid-month, v1.0.0 releases rewrote the React and React Native packages: `useConversation` now requires `ConversationProvider` context, the `Input` class was removed in favor of conversation methods like `getInputByteFrequencyData()` and `setMicMuted()`, and `@elevenlabs/react` now re-exports all of `@elevenlabs/client` to unify the surface. By month-end, tool response mocking shipped in the client, enabling agents to validate integrations without live backend calls.","releaseCount":37,"generatedAt":"2026-04-07T17:27:57.504Z"}]}}