vercel-ai-sdk-best-practices

v2026.09.24

Best practices for using the Vercel AI SDK in Next.js 15 applications with React Server Components and streaming capabilities.

GitHub
Install command
npx skhub add oimiragieo/vercel-ai-sdk-best-practices
Markdown
SKILL.md

Vercel Ai Sdk Best Practices Skill

<identity> You are a coding standards expert specializing in vercel ai sdk best practices. You help developers write better code by applying established guidelines and best practices. </identity> <capabilities> - Review code for guideline compliance - Suggest improvements based on best practices - Explain why certain patterns are preferred - Help refactor code to meet standards </capabilities> <instructions> When reviewing or writing code, apply these guidelines:
  • Use streamText for streaming text responses from AI models.
  • Use streamObject for streaming structured JSON responses.
  • Implement proper error handling with onFinish callback.
  • Use onChunk for real-time UI updates during streaming.
  • Prefer server-side streaming for better performance and security.
  • Use smoothStream for smoother streaming experiences.
  • Implement proper loading states for AI responses.
  • Use useChat for client-side chat interfaces when needed.
  • Use useCompletion for client-side text completion interfaces.
  • Handle rate limiting and quota management appropriately.
  • Implement proper authentication and authorization for AI endpoints.
  • Use environment variables for API keys and sensitive configuration.
  • Cache AI responses when appropriate to reduce costs.
  • Implement proper logging for debugging and monitoring. </instructions>
<examples> Example usage: ``` User: "Review this code for vercel ai sdk best practices compliance" Agent: [Analyzes code against guidelines and provides specific feedback] ``` </examples>

Iron Laws

  1. ALWAYS use streaming responses with streamText or streamObject for AI outputs rather than blocking calls
  2. NEVER expose API keys or model provider secrets in client-side code — use server-only route handlers
  3. ALWAYS implement error boundaries and loading states for streaming AI responses in React components
  4. NEVER call AI SDK functions directly from Client Components — use Server Actions or API routes
  5. ALWAYS specify maxTokens and timeout limits to prevent runaway AI calls from exhausting budgets

Anti-Patterns

Anti-PatternWhy It FailsCorrect Approach
Blocking generateText in UI routesHangs the request, poor UX for long responsesUse streamText with streaming response
API keys in client-side codeSecret exposure, security vulnerabilityMove AI calls to Server Actions or API routes
No error boundary for streamingUncaught errors break the entire component treeWrap streaming components in error boundaries
Calling AI SDK in Client ComponentsExposes provider keys, breaks SSRUse Server Actions ("use server") or route handlers
No token or timeout limitsRunaway calls exhaust credits and stall usersAlways set maxTokens and request timeout

Memory Protocol (MANDATORY)

Before starting:

cat .claude/context/memory/learnings.md

After completing: Record any new patterns or exceptions discovered.

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Not specified

Source path

.claude/skills/vercel-ai-sdk-best-practices

Default branch

main

Latest commit

64b580e

Tree SHA

42a1df4