Learn-skills.dev agora

Write code using Agora SDKs (agora.io) for real-time communication. Covers RTC (video/voice calling, live streaming, screen sharing), RTM (signaling, messaging, presence), Conversational AI (voice AI agents), Cloud Recording, Server Gateway, 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, record RTC sessions, or build Conversational AI with the agent-toolkit. Triggers on mentions of Agora, agora.io, RTC, RTM, video calling, voice calling, real-time communication, screen share, screen sharing, record session, record calls, Cloud Recording, Server Gateway, Linux media SDK, agora-rtc-sdk-ng, agora-rtc-react, agora-rtm, conversational AI with Agora, Agora token generation, Agora authentication, agora-agent-client-toolkit, agora-agent-client-toolkit-react, agora-agent-server-sdk, AgoraVoiceAI, AgoraClient, useConversationalAI, useTranscript, useAgentState, agent transcript, agent state hook.

install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/agoraio/skills/agora" ~/.claude/skills/neversight-learn-skills-dev-agora && rm -rf "$T"
manifest: data/skills-md/agoraio/skills/agora/SKILL.md
source content

Agora (agora.io)

Skill version: 1.1.0

Build real-time communication applications using Agora SDKs across Web, iOS, Android, and server-side platforms.

Core Concepts

  • App ID: Project identifier from Agora Console. Required for all SDK calls.
  • App Certificate: A unique key generated by the Agora Console, unique to each project, for use in creating authentication tokens.
  • Token: Time-limited auth key generated server-side from App ID + App Certificate. Never expose App Certificate on client. For testing, disable token authentication in Agora Console and pass
    null
    as the token.
  • Channel: Auto-created when first user joins, destroyed when last leaves. Users in same channel can communicate.
  • UID: Unique user identifier per channel. Pass
    null
    /
    0
    for auto-assignment. Duplicate UIDs cause undefined behavior.

Products

Read the README for the product the user needs. Only load what is needed.

RTC (Video/Voice SDK)

Real-time audio and video. Users join channels, publish local tracks, subscribe to remote tracks.

references/rtc/README.md — Platforms: Web, React, iOS, Android

RTM (Signaling / Messaging)

Text messaging, signaling, presence, and metadata. Independent from RTC — channel namespaces are separate.

references/rtm/README.md — Platforms: Web

Conversational AI (Voice AI Agents)

REST API-driven voice AI agents. Create agents that join RTC channels and converse with users via speech. Front-end clients connect via RTC+RTM.

references/conversational-ai/README.md — REST API, agent config, 6 recipe repos (agent-samples, agent-toolkit, agent-client-toolkit-react, agent-ui-kit, server-custom-llm, server-mcp)

Cloud Recording

Server-side recording of RTC channel audio/video. REST API only — no client SDK needed.

references/cloud-recording/README.md

Server-Side

Token generation and server utilities. Required for production authentication.

references/server/README.md — Token generation for Node.js, Python, Go

Server Gateway SDK

Self-hosted Linux SDK for server-side audio/video stream transmission. Use when a server process needs to send or receive media in an Agora RTC channel (call centers, AI audio processing, network testing).

references/server-gateway/README.md — C++, Java, Go, Python

Testing Guidance

Mocking patterns and testing requirements for Agora SDK integration code.

references/testing-guidance/SKILL.md

Routing

Clear, product-specific request: Route directly to the relevant product README. Do not load

intake/SKILL.md
.

Examples of clear requests:

  • "RTC Web video call" →
    references/rtc/web.md
  • "ConvoAI Python" →
    references/conversational-ai/README.md
  • "Generate RTC token in Go" →
    references/server/tokens.md

Vague or multi-product request: Route through

intake/SKILL.md
. Intake handles product identification, combination recommendations, and routing.

Documentation Lookup

Check bundled references first (Level 1). If they don't cover the detail needed, fetch

https://docs.agora.io/en/llms.txt
, find the relevant URL, and fetch it (Level 2). See references/doc-fetching.md for the full procedure, fallback URLs, and freeze-forever decision table.

Always fetch Level 2 before answering questions about: TTS/ASR/LLM vendor configs, model names, full request/response schemas, error code listings, or release notes. These change frequently — do not answer from training data or memory.

If MCP is unavailable or Level 2 fetch fails: use the fallback URLs in

doc-fetching.md
to reach the official markdown docs directly. Never fabricate API parameters — always tell the user to verify against official docs if live fetch is unavailable.

If a user explicitly asks about the Agora MCP server, see references/mcp-tools.md.

Web Framework Notes

Next.js / SSR

Agora SDKs are browser-only. See references/rtc/nextjs.md for the required dynamic import patterns —

next/dynamic
with
ssr: false
does not work in Next.js 14+ Server Components without extra steps.