Skip to content

Releases: HumeAI/hume-typescript-sdk

0.15.2

30 Oct 04:29
2230a7b

Choose a tag to compare

What's Changed

Full Changelog: 0.15.1...0.15.2

0.15.1

29 Oct 15:59
97b1dc9

Choose a tag to compare

What's Changed

Full Changelog: 0.15.0...0.15.1

0.15.0

28 Oct 23:21
68d48e2

Choose a tag to compare

What's Changed

  • Fern upgrade by @twitchard in #567

    • (feat) We now support the humeClient.tts.streamInput() bidirectional websocket endpoint!
    • (feat) The library is now provided as a dual ESM/CommonJS module
      • Note: bundlers like vite will now prefer importing hume as an ES Module. This may trigger import errors as the ES Module interface is stricter about what imports are allowed. Please either configure your bundler to import hume as a CommonJS module or follow the instructions below to migrate your imports.
    • (feat) Requests across the API now support specifying queryParams and headers.
    • (break) Resource clients (not typically instantiated directly by users) don't support accessToken anymore, or specifying environment as a URL. This is still possible in the overarching HumeClient.
    • .voiceId is deprecated in humeClient.evi.chat({...}) in favor of .sessionSettings.voiceId
    • (feat) Type of synthesizeFile return is now core.BinaryResponse rather than stream.Readable
    • (feat) chatSocket.sendBinary(...) will send raw audio bytes over the chat stream
    • await chatSocket.tillSocketOpen() is deprecated in favor of await chatSocket.waitForOpen()
    • (feat) When instantiating a HumeClient you can specify an object like
    • (feat) Deserialization is now more forgiving, which should improve error messages and forward compatibility with API changes.
      {
        base: "https://example.com/",
        evi: "wss://example.com/v0/evi",
        tts: "wss://example.com/v0/tts",
        stream: "wss://example.com/v0/stream",
      }
      where base determines the base for all REST api operations,
      evi determines the base for the EVI /chat websocket
      tts determines the base for the streamInput websocket
      stream determines the base for the expression measurement streaming websocket.
    • (break) HumeEnvironment.Production is now HumeEnvironment.Prod and it is no longer a single string.
    • (break) You can no longer instantiate resource clients directly with environment as a string, or directly with an accessToken. This does not affect typical users who instantiate HumeClient.
  • No no-cache by @twitchard in #562

Migrating to the ES-compatible exports

ES Modules are stricter about where you are allowed to import from. For example, each of these three imports will fail

import type { SubscribeEvent } from 'hume/api/resources/empathicVoice';
import { AssistantMessage } from 'hume/serialization/resources/empathicVoice/index.js';
import type { CloseEvent } from 'hume/core';

because only hume and hume/serialization are supported export paths. You must import these symbols from the supported import locations.

import { type Hume } from 'hume'
type SubscribeEvent = Hume.empathicVoice.SubscribeEvent

import * as HumeSerialization from 'hume/serialization'
const AssistantMessage = HumeSerialization.empathicVoice.AssistantMessage

// Not directly exported, will be exported in a future release, but available via reference
type CloseEvent = Parameters<NonNullable<Hume.empathicVoice.chat.ChatSocket.EventHandlers['close']>
+>[0];

Full Changelog: 0.14.1...0.15.0

0.14.1

01 Oct 22:15
1731e8a

Choose a tag to compare

What's Changed

  • Add support for specifying sessionSettings when connecting to EVI @ivaaan in #550

Full Changelog: 0.14.0...0.14.1

0.14.0

01 Oct 15:34
26c0dea

Choose a tag to compare

What's Changed

This is a significant release, corresponding to the release of our new multilingual Text-to-Speech model, Octave 2 (preview), and our multilingual-capable EVI version, 4-mini. See the announcement.

  • #548
    • TTS: version: "2" is now supported in all TTS requests. Octave 2 (preview) has multilingual capabilities, however does not currently support the description field. If you require acting instructions or voice design, please continue to use Octave 1. Voices saved with Octave 1 are forwards-compatible with Octave 2 -- however voices saved using Octave 2 are not backwards-compatible with Octave 1.
    • TTS: Word-level and phoneme-level timestamps are now available for TTS created using Octave 2. This enables use cases such as word highlighting or lip-syncing. Pass version: "2", includeTimestampTypes=['word', 'phoneme'] into synthesizeJsonStreaming to receive timestamp messages, or access the .timestamps field on Snippet.
    • (break) The type of messages yielded by synthesizeJsonStreaming has changed from SnippetAudioChunk to TtsOutput (= SnippetAudioChunk | TimestampMessage)
      • EVI: version 4-mini is now supported. Configs using 4-mini must specify a supplemental LLM and cannot enable quick responses.
    • EVI: new supplemental LLMs: claude-sonnet-4-5-20250929 and grok-4-fast-non-reasoning-latest

Full Changelog: 0.13.8...0.14.0

0.13.8

29 Sep 17:38
2708e51

Choose a tag to compare

What's Changed

Full Changelog: 0.13.7...0.13.8

0.13.7

26 Sep 19:32
f723b34

Choose a tag to compare

What's Changed

  • 🌿 Fern Regeneration -- September 26, 2025 by @fern-api[bot] in #535
    • Adds version field

Full Changelog: 0.13.6...0.13.7

0.13.6

19 Sep 17:39
9e1745d

Choose a tag to compare

What's Changed

Full Changelog: 0.13.5...0.13.6

0.13.5

16 Sep 16:31
9fde57c

Choose a tag to compare

What's Changed

  • #523: Fern Generation (@app/fern-api)
    • Add voiceId to session_settings. You can now change voices within an EVI chat!
    • Add requestId field to SnippetAudioChunk to aid in debugging.
  • #525: Add collate and SilenceFiller helpers (@twitchard)

Full Changelog: 0.13.4...0.13.5

0.13.4

08 Sep 22:23
ecafb3b

Choose a tag to compare

What's Changed

  • #517: Fern Generation (@app/fern-api)
  • #507: EVIWebAudioPlayer: add Regular Buffer Mode (@ivaaan)

Full Changelog: 0.13.3...0.13.4