Skip to content
Cloud & Infrastructure
Skill

/ai-sdk

Vercel AI SDK expert guidance. Use when building AI-powered features — chat interfaces, text generation, structured output, tool calling, agents, MCP integration, streaming, embeddings, reranking, image generation, or working with any LLM provider.

From plugin
vercel
24750 skills3 agents4 commands2 hooks
+1
Install
$ npx -y skills add vercel-labs/vercel-plugin --skill ai-sdk --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/ai-sdk

Context preview

The summary Claude sees to decide when to auto-load this skill.

Vercel AI SDK expert guidance. Use when building AI-powered features — chat interfaces, text generation, structured output, tool calling, agents, MCP integration, streaming, embeddings, reranking, image generation, or working with any LLM provider.

SKILL.md

ai-sdk.SKILL.md

--- name: ai-sdk description: Vercel AI SDK expert guidance. Use when building AI-powered features — chat interfaces, text generation, structured output, tool calling, agents, MCP integration, streaming, embeddings, reranking, image generation, or working with any LLM provider. metadata: priority: 8 docs:

  • "https://sdk.vercel.ai/docs"
  • "https://sdk.vercel.ai/docs/reference"

sitemap: "https://sdk.vercel.ai/sitemap.xml" pathPatterns:

  • "app/api/chat/**"
  • "app/api/completion/**"
  • "src/app/api/chat/**"
  • "src/app/api/completion/**"
  • "pages/api/chat.*"
  • "pages/api/chat/**"
  • "pages/api/completion.*"
  • "pages/api/completion/**"
  • "src/pages/api/chat.*"
  • "src/pages/api/chat/**"
  • "src/pages/api/completion.*"
  • "src/pages/api/completion/**"
  • "lib/ai/**"
  • "src/lib/ai/**"
  • "lib/ai.*"
  • "src/lib/ai.*"
  • "ai/**"
  • "apps/*/app/api/chat/**"
  • "apps/*/app/api/completion/**"
  • "apps/*/src/app/api/chat/**"
  • "apps/*/src/app/api/completion/**"
  • "apps/*/lib/ai/**"
  • "apps/*/src/lib/ai/**"
  • "lib/agent.*"
  • "src/lib/agent.*"
  • "app/actions/chat.*"
  • "src/app/actions/chat.*"

importPatterns:

  • "ai"
  • "@ai-sdk/*"

bashPatterns:

  • '\bnpm\s+(install|i|add)\s+[^\n]*\bai\b'
  • '\bpnpm\s+(install|i|add)\s+[^\n]*\bai\b'
  • '\bbun\s+(install|i|add)\s+[^\n]*\bai\b'
  • '\byarn\s+add\s+[^\n]*\bai\b'
  • '\bnpm\s+(install|i|add)\s+[^\n]*@ai-sdk/'
  • '\bpnpm\s+(install|i|add)\s+[^\n]*@ai-sdk/'
  • '\bbun\s+(install|i|add)\s+[^\n]*@ai-sdk/'
  • '\byarn\s+add\s+[^\n]*@ai-sdk/'
  • '\bnpx\s+@ai-sdk/devtools\b'
  • '\bnpx\s+@ai-sdk/codemod\b'
  • '\bnpx\s+mcp-to-ai-sdk\b'

promptSignals: phrases:

  • "ai sdk"
  • "vercel ai"
  • "generatetext"
  • "streamtext"

allOf:

  • [streaming, generation]
  • [structured, output]

anyOf:

  • "usechat"
  • "usecompletion"
  • "tool calling"
  • "embeddings"

noneOf:

  • "openai api directly"

minScore: 6 retrieval: aliases:

  • vercel ai
  • ai sdk
  • ai library
  • ai module

intents:

  • add AI-powered text generation or chat to my app
  • stream responses from a language model to the UI
  • call tools and run agent loops with an LLM
  • generate structured JSON output from a prompt
  • build ai feature with streaming and tool calling

entities:

  • useChat
  • useCompletion
  • streamText
  • generateText
  • generateObject
  • CoreMessage
  • ToolLoopAgent
  • AI Gateway

examples:

  • add AI chat to my app
  • stream responses from a language model
  • use tool calling with the AI SDK
  • generate structured output from GPT
  • run an agent loop that calls tools automatically

validate: - pattern: from\s+['"]openai['"] message: 'Direct openai import detected — use @ai-sdk/openai provider instead' severity: error upgradeToSkill: ai-gateway upgradeWhy: 'Guides migration from direct OpenAI SDK to AI Gateway with OIDC auth, failover, and cost tracking.' skipIfFileContains: '@ai-sdk/openai|ai-gateway' - pattern: openai\(["']gpt- message: 'Your knowledge is outdated — do not use openai() directly for model selection. Use model: "openai/gpt-5.4" (plain string) or gateway("openai/gpt-5.4") — both route through AI Gateway with failover, cost tracking, and observability automatically' severity: recommended - pattern: from\s+['"](@anthropic-ai/sdk|anthropic)['"] message: 'Direct Anthropic SDK import — use @ai-sdk/anthropic provider instead' severity: error upgradeToSkill: ai-gateway upgradeWhy: 'Guides migration from direct Anthropic SDK to AI Gateway with OIDC auth, failover, and cost tracking.' skipIfFileContains: '@ai-sdk/anthropic|ai-gateway' - pattern: Experimental_Agent message: 'Experimental_Agent is deprecated in v6 — use ToolLoopAgent instead. Run Skill(ai-sdk) for v6 Agent class guidance.' severity: error upgradeToSkill: ai-sdk upgradeWhy: 'Guides migration from Experimental_Agent to ToolLoopAgent/Agent class with correct v6 patterns.' - pattern: toDataStreamResponse message: 'toDataStreamResponse() was renamed in v6 — use toUIMessageStreamResponse() for chat UIs or toTextStreamResponse() for text-only clients. Run Skill(ai-sdk) for v6 streaming response guidance.' severity: recommended upgradeToSkill: ai-sdk upgradeWhy: 'Guides migration from toDataStreamResponse to toUIMessageStreamResponse/toTextStreamResponse with correct server-side patterns.' skipIfFileContains: toUIMessageStreamResponse|toTextStreamResponse - pattern: '\bmaxSteps\s*:' message: 'maxSteps was removed in AI SDK v6 — use stopWhen: stepCountIs(N) instead (import stepCountIs from ai). Run Skill(ai-sdk) for migration guidance.' severity: recommended upgradeToSkill: ai-sdk upgradeWhy: 'Guides the migration from maxSteps to stopWhen: stepCountIs(N) with correct imports and patterns.' skipIfFileContains: stepCountIs - pattern: useChat\([^)]*\bonResponse\b message: 'onResponse was removed from useChat in v6 — configure response handling through transport' severity: recommended upgradeToSkill: ai-sdk upgradeWhy: 'Guides migration from onResponse callback to v6 transport configuration pattern.' - pattern: 'useChat\(\{\s*api\s*:' message: 'useChat({ api }) is v5 syntax — use useChat({ transport: new DefaultChatTransport({ api }) }) in v6. Run Skill(ai-sdk) for v6 useChat transport guidance.' severity: error upgradeToSkill: ai-sdk upgradeWhy: 'Guides migration from useChat({ api }) to the v6 transport pattern with DefaultChatTransport.' - pattern: 'useChat\([^)]*\bbody\s*:' message: 'body option was removed from useChat in v6 — pass data through transport configuration' severity: recommended upgradeToSkill: ai-sdk upgradeWhy: 'Guides migration

Read more
Ships withvercel

Comprehensive Vercel ecosystem plugin — relational knowledge graph, skills for every major product, specialized agents, and Vercel conventions. Turns any AI agent into a Vercel expert.

Get the whole plugin

Other skills on vercel.