--- title: "AI SDK Integration" description: "Use Supermemory with Vercel AI SDK for seamless memory management" sidebarTitle: "Overview" --- The Supermemory AI SDK provides native integration with Vercel's AI SDK through two approaches: **User Profiles** for automatic personalization and **Memory Tools** for agent-based interactions. Check out the NPM page for more details ## Installation ```bash npm install @supermemory/tools ``` ## User Profiles with Middleware Automatically inject user profiles into every LLM call for instant personalization. Customize how memories are formatted with the `promptTemplate` option for XML-based prompting, custom branding, or model-specific formatting. ```typescript import { generateText } from "ai" import { withSupermemory } from "@supermemory/tools/ai-sdk" import { openai } from "@ai-sdk/openai" // Wrap your model with Supermemory - profiles are automatically injected const modelWithMemory = withSupermemory(openai("gpt-5"), "user-123") const result = await generateText({ model: modelWithMemory, messages: [{ role: "user", content: "What do you know about me?" }] }) // The model automatically has the user's profile context! ``` **Memory saving is disabled by default.** The middleware only retrieves existing memories. To automatically save new memories from conversations, enable it explicitly: ```typescript const modelWithMemory = withSupermemory(openai("gpt-5"), "user-123", { addMemory: "always" }) ``` ```typescript ``` ## Memory Tools Add memory capabilities to AI agents with search, add, and fetch operations. ```typescript import { streamText } from "ai" import { createAnthropic } from "@ai-sdk/anthropic" import { supermemoryTools } from "@supermemory/tools/ai-sdk" const anthropic = createAnthropic({ apiKey: "YOUR_ANTHROPIC_KEY" }) const result = await streamText({ model: anthropic("claude-3-sonnet"), prompt: "Remember that my name is Alice", tools: supermemoryTools("YOUR_SUPERMEMORY_KEY") }) ``` ## When to Use | Approach | Use Case | |----------|----------| | User Profiles | Personalized LLM responses with automatic user context | | Memory Tools | AI agents that need explicit memory control | ## Next Steps Automatic personalization with profiles Agent-based memory management