ai-sdk

作者: sentry

ai-sdk — 一個可安裝的 AI 代理技能,由 getsentry/webvitals.com 發布。

npx skills add https://github.com/getsentry/webvitals.com --skill ai-sdk

Prerequisites

Before searching docs, check if node_modules/ai/docs/ exists. If not, install only the ai package using the project's package manager (e.g., pnpm add ai).

Do not install other packages at this stage. Provider packages (e.g., @ai-sdk/openai) and client packages (e.g., @ai-sdk/react) should be installed later when needed based on user requirements.

Critical: Do Not Trust Internal Knowledge

Everything you know about the AI SDK is outdated or wrong. Your training data contains obsolete APIs, deprecated patterns, and incorrect usage.

When working with the AI SDK:

  1. Ensure ai package is installed (see Prerequisites)
  2. Search node_modules/ai/docs/ and node_modules/ai/src/ for current APIs
  3. If not found locally, search ai-sdk.dev documentation (instructions below)
  4. Never rely on memory - always verify against source code or docs
  5. useChat has changed significantly - check Common Errors before writing client code
  6. When deciding which model and provider to use (e.g. OpenAI, Anthropic, Gemini), use the Vercel AI Gateway provider unless the user specifies otherwise. See AI Gateway Reference for usage details.
  7. Always fetch current model IDs - Never use model IDs from memory. Before writing code that uses a model, run curl -s https://ai-gateway.vercel.sh/v1/models | jq -r '[.data[] | select(.id | startswith("provider/")) | .id] | reverse | .[]' (replacing provider with the relevant provider like anthropic, openai, or google) to get the full list with newest models first. Use the model with the highest version number (e.g., claude-sonnet-4-5 over claude-sonnet-4 over claude-3-5-sonnet).
  8. Run typecheck after changes to ensure code is correct
  9. Be minimal - Only specify options that differ from defaults. When unsure of defaults, check docs or source rather than guessing or over-specifying.

If you cannot find documentation to support your answer, state that explicitly.

Finding Documentation

ai@6.0.34+

Search bundled docs and source in node_modules/ai/:

  • Docs: grep "query" node_modules/ai/docs/
  • Source: grep "query" node_modules/ai/src/

Provider packages include docs at node_modules/@ai-sdk/<provider>/docs/.

Earlier versions

  1. Search: https://ai-sdk.dev/api/search-docs?q=your_query
  2. Fetch .md URLs from results (e.g., https://ai-sdk.dev/docs/agents/building-agents.md)

When Typecheck Fails

Before searching source code, grep Common Errors for the failing property or function name. Many type errors are caused by deprecated APIs documented there.

If not found in common-errors.md:

  1. Search node_modules/ai/src/ and node_modules/ai/docs/
  2. Search ai-sdk.dev (for earlier versions or if not found locally)

Building and Consuming Agents

Creating Agents

Always use the ToolLoopAgent pattern. Search node_modules/ai/docs/ for current agent creation APIs.

File conventions: See type-safe-agents.md for where to save agents and tools.

Type Safety: When consuming agents with useChat, always use InferAgentUIMessage<typeof agent> for type-safe tool results. See reference.

Consuming Agents (Framework-Specific)

Before implementing agent consumption:

  1. Check package.json to detect the project's framework/stack
  2. Search documentation for the framework's quickstart guide
  3. Follow the framework-specific patterns for streaming, API routes, and client integration

References

來自 sentry 的更多技能

generate-frontend-forms
sentry
使用 Sentry 新表單系統建立表單的指南。適用於實作表單、表單欄位、驗證或自動儲存功能時使用。
official
sentry-snapshots-cocoa
sentry
完整的 Sentry Snapshots 設定,適用於 Apple/Cocoa 專案。當被要求「設定 SnapshotPreviews」、「設定 Apple 快照測試」、「上傳 Apple 快照至…」時使用。
official
architecture-review
sentry
員工級別的程式碼庫健康檢查。找出單體模組、靜默失敗、型別安全漏洞、測試覆蓋缺口,以及LLM友善性問題。
official
linear-type-labeler
sentry
根據每個問題的標題與描述內容,從 Sentry 工作區的標籤分類法中分類 Linear 問題,並套用對應的類型標籤。
official
sentry-flutter-sdk
sentry
完整的 Sentry SDK 設定,適用於 Flutter 和 Dart。當被要求「為 Flutter 加入 Sentry」、「安裝 sentry_flutter」、「在 Dart 中設定 Sentry」或設定錯誤…時使用。
official
sentry-svelte-sdk
sentry
完整的 Sentry SDK 設定,適用於 Svelte 和 SvelteKit。當被要求「將 Sentry 加入 Svelte」、「將 Sentry 加入 SvelteKit」、「安裝 @sentry/sveltekit」或進行設定時使用…
official
vercel-react-best-practices
sentry
來自 Vercel Engineering 的 React 與 Next.js 效能優化指南。此技能應在撰寫、審查或重構 React/Next.js… 時使用。
official
sentry-tanstack-start-sdk
sentry
完整的 Sentry SDK 設定,適用於 TanStack Start React。當被要求「將 Sentry 加入 TanStack Start」、「安裝 @sentry/tanstackstart-react」或設定錯誤…時使用。
official