JavaScript SDK + AI SDK Tools
Use @epitomefyi/sdk with Vercel AI SDK tool calling.
The SDK ships an AI SDK adapter at@epitomefyi/sdk/ai-sdkso you can expose Epitome memory tools directly in model tool-calling flows.
What It Is
searchMemory: semantic retrieval.saveMemory: write new memory entries.getUserContext: structured context snapshot.
Install
bash
npm install @epitomefyi/sdk ai @ai-sdk/openaiSDK package page: npmjs.com/package/@epitomefyi/sdk
generateText Example
ts
import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
import { epitomeTools } from '@epitomefyi/sdk/ai-sdk';
const tools = epitomeTools({
apiKey: process.env.EPITOME_API_KEY!,
// Optional:
// baseUrl: 'http://localhost:3000',
collectionDefaults: {
searchMemory: 'memories',
saveMemory: 'memories',
},
});
const result = await generateText({
model: openai('gpt-4o-mini'),
tools,
prompt: 'What do you know about my project priorities?',
});
console.log(result.text);streamText Example
ts
import { streamText } from 'ai';
import { openai } from '@ai-sdk/openai';
import { epitomeTools } from '@epitomefyi/sdk/ai-sdk';
const { textStream } = streamText({
model: openai('gpt-4o-mini'),
tools: epitomeTools({ apiKey: process.env.EPITOME_API_KEY! }),
prompt: 'Save that I prefer short updates, then summarize what you stored.',
});
for await (const chunk of textStream) {
process.stdout.write(chunk);
}Tool Behavior
If you pass an existingEpitomeClient, the tool adapter uses that instance. Otherwise it creates one from `apiKey`/`baseUrl`.
ts
import { EpitomeClient } from '@epitomefyi/sdk';
import { epitomeTools } from '@epitomefyi/sdk/ai-sdk';
const client = new EpitomeClient({ apiKey: process.env.EPITOME_API_KEY! });
const tools = epitomeTools({ client });