Repository navigation
Releases: AgoraIO-Conversational-AI/agent-client-toolkit-ts
Releases · AgoraIO-Conversational-AI/agent-client-toolkit-ts
Release list
v2.10.0
v2.9.1
v2.9.0
v1.2.0
Release title: v1.2.0
Release body:
What's changed
- TypeScript public config contracts now use toolkit-owned structural interfaces:
RTCEngineandRTMEngine AgoraVoiceAI.init()now accepts compatible RTC/RTM client objects without requiringas unknown ascasts in strict package-manager layouts- Public type surface no longer depends on
agora-rtmevent/class types (RTMClient,RTMEvents) for config and transcript event payload typing - Tightened RTC structural typing with transcript-focused helper interfaces (
RTCStreamMessageLike,RTCDataStreamParamsLike) and stricterRTCEngine.on/offoverloads for'stream-message'and'audio-pts' - Added development-time engine-shape validation in
AgoraVoiceAI.init()with actionable error messages when required RTC/RTM methods are missing - Improved public API discoverability with expanded JSDoc for
AgoraVoiceAIConfig,renderMode, React hooks, andTranscriptHelperItem<T>generic typing
Added
- Interop type-check fixture:
packages/conversational-ai/__typetests__/interop.tswithtypecheck:interopscript - Coverage command surface (
test:coverage) for root, core, and React packages - CI coverage summary output in GitHub Actions step summary
- Additional lifecycle tests for invalid RTC/RTM engine inputs and React hook test coverage expansion
Upgrade notes
- Quick guide: see MIGRATION.md#11x---120 for
1.1.x -> 1.2.0. AgoraVoiceAIConfig.rtcEngineandRTMConfig.rtmEnginenow use structural contracts (RTCEngine,RTMEngine) instead of peer SDK class/interface types.- Existing real Agora RTC/RTM clients continue to work without code changes.
- If your app previously used casts (for example
as unknown as), they are now redundant and can be removed. - If you authored custom wrappers, ensure they implement the required methods:
- RTC:
on,off - RTM:
publish,addEventListener,removeEventListener
- RTC:
- Runtime checks now fail fast in development when required engine methods are missing; align custom test doubles with the structural contracts.
- Coverage policy now explicitly aligns with the configured Vitest thresholds in
CONTRIBUTING.md.
agora-agent-client-toolkit-react
Changed
- Removed internal
rtcEnginecast workaround when passinguseRTCClient()intoAgoraVoiceAI.init()
Full Changelog: v1.1.0...v1.2.0
1.1.0
Release title: v1.1.0
Release body:
What's changed
Bug fixes
- Chunked message assembly —
rawPartIdx === 0(invalid for 1-based wire format) previously
passed through as chunk index 0, causing silent incorrect message assembly. Now explicitly
rejected. - Transcript uid resolution — agent transcriptions were sometimes attributed to the wrong uid
whenstream_idwas absent. Uid is now resolved viamessage.objecttype check, making it
reliable in all cases. - PTS reset on reconnect —
setPts(0)was silently ignored, causing word rendering to freeze
after a stream restart. PTS can now reset to 0 correctly. - React context exports — context.ts updated to correctly import from the renamed core
package.
Packages
| Package | Version |
|---|---|
agora-agent-client-toolkit |
1.1.0 |
agora-agent-client-toolkit-react |
1.1.0 |
Full changelog:
https://github.com/AgoraIO-Conversational-AI/agent-client-toolkit-ts/blob/main/CHANGELOG.md
1.0.0
[v1.0.0] — 2026-03-11
Initial public release.
agora-agent-client-toolkit
AgoraVoiceAIsingleton with asyncinit()- Event system:
TRANSCRIPT_UPDATED,AGENT_STATE_CHANGED,AGENT_ERROR,AGENT_METRICS,AGENT_INTERRUPTED,MESSAGE_ERROR,MESSAGE_RECEIPT_UPDATED,MESSAGE_SAL_STATUS,DEBUG_LOG - RTC-only mode — RTM is optional; methods requiring RTM (
sendText,sendImage,interrupt) throwRTMRequiredError CovSubRenderControllerwith TEXT, WORD, and AUTO rendering modesChunkedMessageAssemblerfor stream message reassembly with input validation and cache size limits- Structured error classes:
ConversationalAIError,NotInitializedError,RTMRequiredError - Optional Agora metrics via
enableAgoraMetrics: true(requires@agora-js/report) - Zero required runtime dependencies
agora-agent-client-toolkit-react
useConversationalAI— flagship lifecycle hook (init, subscribe, destroy)useTranscript— standalone transcript observeruseAgentState— standalone agent state observeruseAgentError— standalone error observer (AGENT_ERROR + MESSAGE_ERROR)useAgentMetrics— standalone metrics observer