用途:该技能用于回答 AI SDK 相关问题,并协助开发者构建 AI 驱动的功能,例如涉及 generateText、streamText 等函数时。
主要能力与用法:使用前先检查 node_modules/ai/docs/ 是否存在;若不存在,仅用项目包管理器安装 ai 包(如 pnpm add ai),此阶段不安装其他包,provider 包(如 @ai-sdk/openai)和客户端包(如 @ai-sdk/react)按需后续安装。核心原则是不信任内部知识,AI SDK 相关记忆可能过时或错误,应检索 node_modules/ai/docs/ 与 node_modules/ai/src/ 获取当前 API;本地找不到时再查 ai-sdk.dev 文档。ai@6.0.34+ 可用 grep 搜索本地文档与源码,provider 包文档位于 node_modules/@ai-sdk/<provider>/docs/;更早版本可用 https://ai-sdk.dev/api/search-docs?q=your_query 检索并抓取结果中的 .md 链接。
模型与 provider:除非用户另有指定,默认使用 Vercel AI Gateway provider。不要凭记忆写模型 ID,需先运行 curl -s https://ai-gateway.vercel.sh/v1/models | jq -r '[.data[] | select(.id | startswith("provider/")) | .id] | reverse | .[]'(将 provider 替换为 anthropic、openai、google 等)获取最新模型列表,并选用版本号最高的模型。
代理与类型安全:创建代理应使用 ToolLoopAgent 模式,文件约定见 type-safe-agents.md;用 useChat 消费代理时使用 InferAgentUIMessage<typeof agent> 获得类型安全的工具结果。实现代理消费前先查看 package.json 判断框架,再查对应框架的快速开始并遵循其流式、API 路由与客户端集成模式。
限制与排查:改动后运行类型检查;保持最小化,只指定与默认值不同的选项,不确定默认值时查文档或源码。类型检查失败时先在 Common Errors 中搜索相关属性或函数名,再查源码与文档。若找不到支持答案的文档,应明确说明。useChat 变化较大,编写客户端代码前需查看 Common Errors。其他细节如具体版本要求、DevTools 配置等资料未完整提供。