Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion skills/agora/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: agora
description: Write code using Agora SDKs (agora.io) for real-time communication. Covers RTC (video/voice calling, live streaming), RTM (signaling, messaging, presence), Conversational AI (voice AI agents), Cloud Recording, and server-side token generation. Use when the user wants to build real-time audio/video applications, integrate Agora SDKs (Web JS/TS, React, iOS Swift, Android Kotlin/Java, Go, Python), manage channels, tracks, tokens, use RTM for messaging/signaling, or build Conversational AI with the agent-toolkit. Triggers on mentions of Agora, agora.io, RTC, RTM, video calling, voice calling, real-time communication, agora-rtc-sdk-ng, agora-rtc-react, agora-rtm, conversational AI with Agora, Agora token generation, Cloud Recording, @agora/agent-client-toolkit, @agora/agent-client-toolkit-react, AgoraVoiceAI, useConversationalAI, useTranscript, useAgentState, agent transcript, agent state hook.
description: Write code using Agora SDKs (agora.io) for real-time communication. Covers RTC (video/voice calling, live streaming), RTM (signaling, messaging, presence), Conversational AI (voice AI agents), Cloud Recording, and server-side token generation. Use when the user wants to build real-time audio/video applications, integrate Agora SDKs (Web JS/TS, React, iOS Swift, Android Kotlin/Java, Go, Python), manage channels, tracks, tokens, use RTM for messaging/signaling, or build Conversational AI with the agent-toolkit. Triggers on mentions of Agora, agora.io, RTC, RTM, video calling, voice calling, real-time communication, agora-rtc-sdk-ng, agora-rtc-react, agora-rtm, conversational AI with Agora, Agora token generation, Cloud Recording, agora-agent-client-toolkit, agora-agent-client-toolkit-react, AgoraVoiceAI, useConversationalAI, useTranscript, useAgentState, agent transcript, agent state hook.
metadata:
author: agora
version: '1.1.0'
Expand Down
2 changes: 1 addition & 1 deletion skills/agora/references/conversational-ai/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ https://api.agora.io/api/conversational-ai-agent/v2/projects/{appid}
Each file maps to one repo in [AgoraIO-Conversational-AI](https://github.com/AgoraIO-Conversational-AI):

- **[agent-samples.md](agent-samples.md)** — Backend (simple-backend), React clients, profile system, MLLM/Gemini config, deployment
- **[agent-toolkit.md](agent-toolkit.md)** — `@agora/agent-client-toolkit` + `@agora/agent-client-toolkit-react`: AgoraVoiceAI, events, transcript, sendText, interrupt, React hooks
- **[agent-toolkit.md](agent-toolkit.md)** — `agora-agent-client-toolkit` + `agora-agent-client-toolkit-react`: AgoraVoiceAI, events, transcript, sendText, interrupt, React hooks
- **[agent-client-toolkit-react.md](agent-client-toolkit-react.md)** — React hooks detail: ConversationalAIProvider, useTranscript, useAgentState, useAgentError, useAgentMetrics, useConversationalAI
- **[agent-ui-kit.md](agent-ui-kit.md)** — `@agora/agent-ui-kit` React components: voice, chat, video, settings
- **[server-custom-llm.md](server-custom-llm.md)** — Custom LLM proxy: RAG, tool calling, conversation memory
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
name: agora-agent-client-toolkit-react
description: |
React hooks for Agora Conversational AI client integration. Use when the user is building
a React app with Agora ConvoAI and needs @agora/agent-client-toolkit-react hooks.
a React app with Agora ConvoAI and needs agora-agent-client-toolkit-react hooks.
Triggers on useTranscript, useAgentState, useAgentError, useAgentMetrics,
ConversationalAIProvider, @agora/agent-client-toolkit-react, React ConvoAI hooks,
ConversationalAIProvider, agora-agent-client-toolkit-react, React ConvoAI hooks,
agent transcript React, agent state React hook.
license: MIT
metadata:
Expand All @@ -14,15 +14,15 @@ metadata:

# Agent Client Toolkit — React

React hooks for `@agora/agent-client-toolkit`. Wraps the `AgoraVoiceAI` singleton into React state and effects. Must be used alongside `agora-rtc-react` — this package handles ConvoAI concerns only, not RTC primitives (mic tracks, camera, remote users).
React hooks for `agora-agent-client-toolkit`. Wraps the `AgoraVoiceAI` singleton into React state and effects. Must be used alongside `agora-rtc-react` — this package handles ConvoAI concerns only, not RTC primitives (mic tracks, camera, remote users).

**npm:** `@agora/agent-client-toolkit-react`
**Requires:** `@agora/agent-client-toolkit`, `agora-rtc-react`, React >= 18
**npm:** `agora-agent-client-toolkit-react`
**Requires:** `agora-agent-client-toolkit`, `agora-rtc-react`, React >= 18

## Installation

```bash
npm install @agora/agent-client-toolkit-react @agora/agent-client-toolkit agora-rtc-react agora-rtm
npm install agora-agent-client-toolkit-react agora-agent-client-toolkit agora-rtc-react agora-rtm
```

## Usage
Expand All @@ -41,7 +41,7 @@ import {
useAgentState,
useAgentError,
useAgentMetrics,
} from '@agora/agent-client-toolkit-react';
} from 'agora-agent-client-toolkit-react';

const rtcClient = AgoraRTC.createClient({ mode: 'rtc', codec: 'vp8' });
const rtmClient = new AgoraRTM.RTM('APP_ID', 'USER_ID');
Expand Down
18 changes: 9 additions & 9 deletions skills/agora/references/conversational-ai/agent-toolkit.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
name: agora-agent-client-toolkit
description: |
Client-side TypeScript SDK for adding Agora Conversational AI features to applications
already using the Agora RTC SDK. Use when the user needs to integrate @agora/agent-client-toolkit
or @agora/agent-client-toolkit-react, receive transcripts, track agent state, send messages
already using the Agora RTC SDK. Use when the user needs to integrate agora-agent-client-toolkit
or agora-agent-client-toolkit-react, receive transcripts, track agent state, send messages
to an AI agent, handle agent events, or build a ConvoAI front-end client. Triggers on
@agora/agent-client-toolkit, AgoraVoiceAI, useConversationalAI, useTranscript, useAgentState,
agora-agent-client-toolkit, AgoraVoiceAI, useConversationalAI, useTranscript, useAgentState,
agent transcript, agent state, TRANSCRIPT_UPDATED, AGENT_STATE_CHANGED, ConversationalAIProvider.
license: MIT
metadata:
Expand All @@ -17,18 +17,18 @@ metadata:

Client-side SDK for adding Agora Conversational AI features to applications already using the Agora RTC SDK. Runs in the browser — adds transcript rendering, agent state tracking, and RTM-based messaging controls on top of `agora-rtc-sdk-ng`.

**npm:** `@agora/agent-client-toolkit` (core) · `@agora/agent-client-toolkit-react` (React hooks)
**npm:** `agora-agent-client-toolkit` (core) · `agora-agent-client-toolkit-react` (React hooks)
**Repo:** <https://github.com/AgoraIO-Conversational-AI/agent-client-toolkit-ts>

> This toolkit is a **client add-on** — it does not start agents. Start agents via the ConvoAI REST API first. See [README.md](README.md) for the REST API.

## Installation

```bash
npm install @agora/agent-client-toolkit agora-rtc-sdk-ng agora-rtm
npm install agora-agent-client-toolkit agora-rtc-sdk-ng agora-rtm

# React
npm install @agora/agent-client-toolkit-react agora-rtc-react
npm install agora-agent-client-toolkit-react agora-rtc-react
```

## Initialization
Expand All @@ -38,7 +38,7 @@ npm install @agora/agent-client-toolkit-react agora-rtc-react
```typescript
import AgoraRTC from 'agora-rtc-sdk-ng';
import AgoraRTM from 'agora-rtm';
import { AgoraVoiceAI } from '@agora/agent-client-toolkit';
import { AgoraVoiceAI } from 'agora-agent-client-toolkit';

// Your existing RTC + RTM setup
const rtcClient = AgoraRTC.createClient({ mode: 'rtc', codec: 'vp8' });
Expand Down Expand Up @@ -75,7 +75,7 @@ ai.subscribeMessage('CHANNEL');
Register handlers before calling `subscribeMessage()`. All 9 events:

```typescript
import { AgoraVoiceAIEvents } from '@agora/agent-client-toolkit';
import { AgoraVoiceAIEvents } from 'agora-agent-client-toolkit';

// Transcript — delivers FULL history every time, replace don't append
ai.on(AgoraVoiceAIEvents.TRANSCRIPT_UPDATED, (transcript) => {
Expand Down Expand Up @@ -123,7 +123,7 @@ ai.on(AgoraVoiceAIEvents.DEBUG_LOG, (message) => {});
Requires `rtmConfig` — throws `RTMRequiredError` if called without RTM.

```typescript
import { ChatMessageType, ChatMessagePriority } from '@agora/agent-client-toolkit';
import { ChatMessageType, ChatMessagePriority } from 'agora-agent-client-toolkit';

// Send text to the agent
await ai.sendText(agentUserId, {
Expand Down