10 KiB
Agora AI编程助手技能库
Agora 实时通信 AI编程助手 RTC RTM 对话式AI SDK
Agora Skills
为 Agora(agora.io)实时 AI 与通信 SDK 提供的结构化参考知识库,专为 AI 编程助手设计。涵盖对话式 AI(语音 AI 智能体)、RTC(视频/语音)、RTM(信令/消息)以及服务端 Token 生成。
安装
Skills CLI(推荐)
npx skills add github:AgoraIO/skills
当你的智能体检测到相关任务时(例如"构建语音智能体"、"集成 Agora RTC"、"生成 Token"),技能将自动激活。
Claude Code 插件(使用 Claude 时推荐)
将 Agora skills 和 Agora Docs MCP 服务器作为 Claude Code 插件安装。在 Claude Code 中运行以下两条斜杠命令:
/plugin marketplace add AgoraIO/skills
/plugin install agora@agora-skills
Agora MCP 服务器(mcp.agora.io)会自动捆绑安装,无需单独配置 MCP。
Git 克隆
克隆仓库后,将工具指向 skills/agora/:
git clone https://github.com/AgoraIO/skills.git ~/agora-skills
配置你的智能体或 IDE(可选)
Claude Code — 符号链接(用户级):
使用 Skills CLI 安装技能后,可以将技能符号链接到主目录,使其对所有智能体可用。
ln -s ~/agora-skills/skills/agora ~/.claude/skills/agora
Claude Code — 复制(项目级,与团队共享):
使用 Claude Code 插件安装技能后,可以将技能复制到项目目录,使其对该项目的所有智能体可用。
mkdir -p .claude/skills
cp -r ~/agora-skills/skills/agora .claude/skills/agora
Cursor: 复制或符号链接到 .cursor/rules/。参见 Cursor skills 文档。
Windsurf: 将 skills/agora/ 添加到 Cascade 上下文。参见 Windsurf skills 文档。
GitHub Copilot: 通过 @workspace 引用,或添加到 .github/copilot-instructions.md。参见 Copilot CLI skills 和 Copilot Agents skills。
其他工具: 技能文件均为纯 Markdown 格式。将工具指向 skills/agora/,或直接加载单个文件。以 SKILL.md 作为入口——它链接到所有其他内容。
这是什么
本仓库包含 Markdown 技能文件,为 AI 编程助手提供对 Agora 平台的深度知识。当开发者寻求 Agora 相关帮助时,助手会加载相应的参考资料——从高层产品概览到特定平台的代码示例和 API 详情。
涵盖产品:
- RTC(视频/语音 SDK) — Web、React、Next.js、iOS(Swift)、Android(Kotlin/Java)、React Native、Flutter
- RTM(信令) — Web(JS/TS)、iOS(Swift)、Android(Kotlin)——均为 v2;消息、在线状态、元数据、流频道
- 对话式 AI — REST API、智能体配置、Gemini Live + OpenAI Realtime MLLM、iOS/Android 工具包,6 个示例仓库(agent-samples、agent-toolkit、agent-client-toolkit-react、agent-ui-kit、server-custom-llm、server-mcp)
- 云端录制 — REST API 的 acquire/start/query/stop 生命周期
- 服务器网关 — 服务端 RTC 的 Linux SDK(C++)
- 服务端 — Node.js、Python、Go 的 Token 生成
- 多产品集成 — RTC + RTM + ConvoAI 的初始化顺序、UID 策略、编解码器选择、Token 矩阵
- 测试指南 — 所有平台的 Mock 模式(Web、React、iOS、Android、React Native、Flutter、RTM)
设计——四层渐进式信息披露
LLM 的上下文窗口是有限的。加载所需的最少内容,仅在必要时深入加载。
| 层级 | 内容 | 大小 | 加载时机 |
|---|---|---|---|
| 第 1 层 — 描述 | SKILL.md frontmatter 中的触发关键词 |
~100 词 | 始终加载(技能索引) |
| 第 2 层 — SKILL.md 主体 | 核心概念、产品索引、框架说明 | ~72 行 | 激活时加载 |
| 第 3 层 — 产品 README | 概览、关键规则、主题链接 | 20–100 行 | 按产品加载 |
| 第 4 层 — 主题文件 | 实现细节、代码示例、API 参考或目录+链接 | 34–500 行 | 按主题加载 |
导航路径:SKILL.md → 产品 README.md → 主题文件(如 web.md、agent-samples.md)。
链接优先 vs 内联
并非所有内容都适合内联。该技能根据上游内容的变更频率和文档完善程度采用两种策略:
| 产品 | 策略 | 原因 |
|---|---|---|
| 对话式 AI | 目录 + 链接到仓库 README 和 AGENT.md | 迭代快,5 个上游仓库文档完善 |
| RTC / RTM | 内联代码示例 | API 稳定,官方文档缺乏优质示例 |
| 服务端 / Token | 目录 + 链接到官方文档 | docs.agora.io 文档完善 |
ConvoAI 文件与 AgoraIO-Conversational-AI 中的仓库一一对应。每个文件映射一个仓库,并链接到其 README 和 AGENT.md 作为权威来源。LLM 经常出错的注意事项和怪异行为仍以内联方式保留在 ConvoAI README 中。
文件结构
skills/
└── agora/ 技能根目录
├── SKILL.md 入口文件,产品索引(v1.2.0)
├── intake/
│ └── SKILL.md 多产品需求分析路由器
└── references/
├── doc-fetching.md 两级查找流程(面向智能体)
├── mcp-tools.md MCP 工具参考与优雅降级
├── integration-patterns.md RTC+RTM+ConvoAI:初始化顺序、UID 策略、编解码器、Token
├── rtc/ RTC(视频/语音 SDK)
│ ├── README.md 关键规则、编码器配置、跨平台说明
│ ├── web.md agora-rtc-sdk-ng:客户端、音轨、事件、屏幕共享
│ ├── react.md agora-rtc-react:hooks、编解码器互操作、自定义模式
│ ├── nextjs.md Next.js / SSR 动态导入模式
│ ├── ios.md AgoraRtcEngineKit(Swift):设置、委托
│ ├── android.md RtcEngine(Kotlin/Java):设置、回调
│ ├── react-native.md react-native-agora:引擎初始化、事件、视频视图
│ ├── flutter.md agora_rtc_engine(Dart):引擎初始化、AgoraVideoView
│ └── cross-platform-coordination.md UID 策略、编解码器互操作、屏幕共享
├── rtm/ RTM 信令 SDK v2
│ ├── README.md 核心概念、注意事项、平台链接
│ ├── web.md agora-rtm v2:消息、在线状态、流频道
│ ├── ios.md AgoraRtmClientKit(Swift):初始化、登录、订阅、发布
│ └── android.md RtmClient(Kotlin):初始化、登录、订阅、发布
├── conversational-ai/ 对话式 AI(语音 AI 智能体)
│ ├── README.md 架构、接口端点、认证、生命周期、注意事项
│ ├── agent-samples.md 后端、React 客户端、配置文件、MLLM、部署
│ ├── agent-toolkit.md @agora/conversational-ai SDK:API、辅助工具、hooks
│ ├── agent-client-toolkit-react.md React hooks:provider、转录、状态
│ ├── agent-ui-kit.md @agora/agent-ui-kit React 组件
│ ├── agent-toolkit-ios.md iOS ConversationalAIAPIImpl Swift 工具包
│ ├── agent-toolkit-android.md Android ConversationalAIAPIImpl Kotlin 工具包
│ ├── server-custom-llm.md 自定义 LLM 代理:RAG、工具、记忆
│ ├── server-mcp.md MCP 记忆服务器:持久化每用户记忆
│ ├── auth-flow.md 直接 REST API 实现者的三 Token 流程
│ ├── python-sdk.md agora-agent Python SDK 模式
│ ├── go-sdk.md agora-agent-server-sdk-go 模式
│ └── server-sdks.md TypeScript/Node.js 服务端 SDK 模式
├── cloud-recording/ 云端录制(REST API)
│ └── README.md acquire/start/query/stop 生命周期、存储配置
├── server-gateway/ 服务器网关(Linux SDK)
│ ├── README.md 概览、使用场景、关键说明
│ └── linux-cpp.md C++ SDK:设置、回调、媒体管线
├── server/ 服务端(Token)
│ ├── README.md Token 类型、使用场景
│ └── tokens.md Token 生成目录 + 官方文档链接
└── testing-guidance/ 测试模式
└── SKILL.md Mock 模式:Web、React、iOS、Android、RN、Flutter、RTM
维护与扩展
添加新产品
- 创建
references/{product}/README.md(第 3 层) - 在
SKILL.md的产品部分添加条目 - 按需创建主题文件(第 4 层)
添加新平台
- 创建
references/{product}/{platform}.md(第 4 层) - 在产品的
README.md中添加链接
更新内容
- 编辑具体的第 4 层文件。
- 内联文件(RTC、RTM、TEN):保持代码示例最新,在底部保留官方文档 URL。
- 链接优先文件(ConvoAI、服务端):当上游仓库重构时更新目录链接。仅将 LLM 容易出错且上游文档未明确说明的注意事项/怪异行为保留为内联内容。
- 不要重复上游仓库 README 或 AGENT.md 中已有的内容——改为链接。
验证 URL
grep -roh 'https://[^ )]*' skills/ | sort -u | while read url; do
code=$(curl -s -o /dev/null -w "%{http_code}" -L --max-time 10 "$url")
echo "$code $url"
done