TypeScript SDK
Official TypeScript/JavaScript SDK for MemoryKit.
Installation
npm install memorykitQuick setup
import { MemoryKit } from "memorykit";
const mk = new MemoryKit({
apiKey: process.env.MEMORYKIT_API_KEY,
});Memories
// Create
const memory = await mk.memories.create({
content: "User prefers dark mode.",
tags: ["preferences"],
userId: "user_123",
});
// List
const list = await mk.memories.list({ limit: 20 });
// Search
const results = await mk.memories.search({
query: "dark mode preferences",
});
// Query (RAG)
const answer = await mk.memories.query({
query: "What does the user prefer?",
mode: "balanced",
});
// Stream
for await (const event of mk.memories.stream({
query: "Summarize preferences",
})) {
if (event.event === "text") {
process.stdout.write(event.data.content);
}
}
// Delete
await mk.memories.delete("mem_abc123");Chats
// Create a chat
const chat = await mk.chats.create({
userId: "user_123",
title: "Support",
});
// Send message
const response = await mk.chats.sendMessage(chat.id, {
message: "How do I reset my password?",
});
// Stream message
for await (const event of mk.chats.streamMessage(chat.id, {
message: "Tell me more",
})) {
process.stdout.write(event.data.content);
}Users
// Upsert user
await mk.users.upsert({
id: "user_123",
name: "Alice",
metadata: { plan: "pro" },
});
// Track event
await mk.users.createEvent("user_123", {
type: "page_view",
data: { page: "/settings" },
});