@basegrid-io/core
v1.0.1
Published
BaseGrid SDK - Memory Infrastructure for AI Agents | Sub-200ms Retrieval
Maintainers
Readme
@basegrid-io/core
Memory infrastructure for AI agents. Sub-200ms retrieval with hybrid search.
Features
- ⚡ Sub-200ms P95 latency - Lightning-fast memory retrieval
- 🔍 Hybrid search - Combines semantic + keyword search
- 🎯 3-tier architecture - Optimized for different query types
- 🔒 Type-safe - Full TypeScript support
- 🚀 Production-ready - Built for scale
Installation
npm install @basegrid-io/coreQuick Start
import { BaseGrid } from '@basegrid-io/core';
const bg = new BaseGrid({
apiKey: 'your-api-key',
baseUrl: 'https://basegrid-production.up.railway.app' // Optional
});
// Add memory
await bg.add({
agentId: 'customer-support-bot',
content: 'User prefers dark mode and wants email notifications disabled',
metadata: { category: 'preferences', userId: '123' }
});
// Search memory
const results = await bg.search({
agentId: 'customer-support-bot',
query: 'user preferences',
limit: 5
});
console.log(results);API Reference
new BaseGrid(config)
Create a new BaseGrid client.
Parameters:
apiKey(string, required) - Your BaseGrid API keybaseUrl(string, optional) - API base URL (defaults to localhost)
bg.add(params)
Add a memory to an agent.
Parameters:
agentId(string, required) - Agent identifiercontent(string, required) - Memory contentmetadata(object, optional) - Additional metadataimportance(number, optional) - Memory importance (0-1)ttl(string, optional) - Time-to-live (e.g., "30d")
Returns: Promise<Memory>
bg.search(params)
Search agent memories.
Parameters:
agentId(string, required) - Agent identifierquery(string, required) - Search querylimit(number, optional) - Max results (default: 10)
Returns: Promise<SearchResult[]>
bg.delete(memoryId)
Delete a specific memory.
Parameters:
memoryId(string, required) - Memory ID
Returns: Promise<{ deleted: boolean; id: string }>
bg.list(agentId, options?)
List all memories for an agent.
Parameters:
agentId(string, required) - Agent identifieroptions.limit(number, optional) - Max resultsoptions.offset(number, optional) - Pagination offsetoptions.search(string, optional) - Filter by search term
Returns: Promise<{ data: Memory[]; total: number }>
Advanced Features
Bulk Operations
// Bulk delete
await bg.bulkDelete(['memory-id-1', 'memory-id-2']);
// Delete all agent memories
await bg.deleteAgentMemories('agent-id');Data Export
// Export all data
const data = await bg.exportAllData();Retention Policies
// Create retention policy
await bg.createRetentionPolicy({
policy_type: 'auto_delete_old',
retention_days: 90,
applies_to: 'all_memories'
});
// List policies
const policies = await bg.getRetentionPolicies();Documentation
Full documentation: https://basegrid.io/docs
Support
- 📧 Email: [email protected]
- 💬 Discord: Join our community
- 🐛 Issues: GitHub Issues
License
MIT © BaseGrid
