catalog/repos/agoraio--skills.md

193 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Agora AI编程助手技能库
`Agora` `实时通信` `AI编程助手` `RTC` `RTM` `对话式AI` `SDK`
# Agora Skills
为 [Agora](https://www.agora.io)agora.io实时 AI 与通信 SDK 提供的结构化参考知识库,专为 AI 编程助手设计。涵盖对话式 AI语音 AI 智能体、RTC视频/语音、RTM信令/消息)以及服务端 Token 生成。
## 安装
### Skills CLI推荐
```bash
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/`
```bash
git clone https://github.com/AgoraIO/skills.git ~/agora-skills
```
### 配置你的智能体或 IDE可选
**Claude Code — 符号链接(用户级):**
使用 Skills CLI 安装技能后,可以将技能符号链接到主目录,使其对所有智能体可用。
```bash
ln -s ~/agora-skills/skills/agora ~/.claude/skills/agora
```
**Claude Code — 复制(项目级,与团队共享):**
使用 Claude Code 插件安装技能后,可以将技能复制到项目目录,使其对该项目的所有智能体可用。
```bash
mkdir -p .claude/skills
cp -r ~/agora-skills/skills/agora .claude/skills/agora
```
**Cursor** 复制或符号链接到 `.cursor/rules/`。参见 [Cursor skills 文档](https://cursor.com/docs/skills#skill-directories)。
**Windsurf**`skills/agora/` 添加到 Cascade 上下文。参见 [Windsurf skills 文档](https://docs.windsurf.com/windsurf/cascade/skills)。
**GitHub Copilot** 通过 `@workspace` 引用,或添加到 `.github/copilot-instructions.md`。参见 [Copilot CLI skills](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/create-skills) 和 [Copilot Agents skills](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/create-skills)。
**其他工具:** 技能文件均为纯 Markdown 格式。将工具指向 `skills/agora/`,或直接加载单个文件。以 `SKILL.md` 作为入口——它链接到所有其他内容。
---
## 这是什么
本仓库包含 Markdown 技能文件,为 AI 编程助手提供对 Agora 平台的深度知识。当开发者寻求 Agora 相关帮助时,助手会加载相应的参考资料——从高层产品概览到特定平台的代码示例和 API 详情。
**涵盖产品:**
- **RTC视频/语音 SDK** — Web、React、Next.js、iOSSwift、AndroidKotlin/Java、React Native、Flutter
- **RTM信令** — WebJS/TS、iOSSwift、AndroidKotlin——均为 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 SDKC++
- **服务端** — 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** | 概览、关键规则、主题链接 | 20100 行 | 按产品加载 |
| **第 4 层 — 主题文件** | 实现细节、代码示例、API 参考或目录+链接 | 34500 行 | 按主题加载 |
导航路径:`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](https://github.com/orgs/AgoraIO-Conversational-AI/repositories) 中的仓库一一对应。每个文件映射一个仓库,并链接到其 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-reacthooks、编解码器互操作、自定义模式
│ ├── nextjs.md Next.js / SSR 动态导入模式
│ ├── ios.md AgoraRtcEngineKitSwift设置、委托
│ ├── android.md RtcEngineKotlin/Java设置、回调
│ ├── react-native.md react-native-agora引擎初始化、事件、视频视图
│ ├── flutter.md agora_rtc_engineDart引擎初始化、AgoraVideoView
│ └── cross-platform-coordination.md UID 策略、编解码器互操作、屏幕共享
├── rtm/ RTM 信令 SDK v2
│ ├── README.md 核心概念、注意事项、平台链接
│ ├── web.md agora-rtm v2消息、在线状态、流频道
│ ├── ios.md AgoraRtmClientKitSwift初始化、登录、订阅、发布
│ └── android.md RtmClientKotlin初始化、登录、订阅、发布
├── conversational-ai/ 对话式 AI语音 AI 智能体)
│ ├── README.md 架构、接口端点、认证、生命周期、注意事项
│ ├── agent-samples.md 后端、React 客户端、配置文件、MLLM、部署
│ ├── agent-toolkit.md @agora/conversational-ai SDKAPI、辅助工具、hooks
│ ├── agent-client-toolkit-react.md React hooksprovider、转录、状态
│ ├── 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
```
## 维护与扩展
### 添加新产品
1. 创建 `references/{product}/README.md`(第 3 层)
2.`SKILL.md` 的**产品**部分添加条目
3. 按需创建主题文件(第 4 层)
### 添加新平台
1. 创建 `references/{product}/{platform}.md`(第 4 层)
2. 在产品的 `README.md` 中添加链接
### 更新内容
- 编辑具体的第 4 层文件。
- **内联文件**RTC、RTM、TEN保持代码示例最新在底部保留**官方文档** URL。
- **链接优先文件**ConvoAI、服务端当上游仓库重构时更新目录链接。仅将 LLM 容易出错且上游文档未明确说明的注意事项/怪异行为保留为内联内容。
- 不要重复上游仓库 README 或 AGENT.md 中已有的内容——改为链接。
### 验证 URL
```bash
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
```
### Agora 发布说明
- 对话式 AIhttps://docs.agora.io/en/conversational-ai/overview/release-notes
- Video SDKhttps://docs.agora.io/en/video-calling/overview/release-notes
- 信令RTMhttps://docs.agora.io/en/signaling/overview/release-notes