name: libmemory description: > libmemory - Memory management for LLM context windows. WindowBuilder constructs token-limited context from conversation history and tools. createWindow factory simplifies window creation. MemoryIndex stores conversation identifiers. Use for managing chat history, building LLM prompts, and context window optimization.
libmemory Skill
When to Use
- Building context windows for LLM calls
- Managing conversation history with token limits
- Constructing prompts from messages and tools
- Optimizing context for model token budgets
Key Concepts
WindowBuilder: Constructs context windows by selecting messages and tools that fit within token budget.
MemoryIndex: Stores conversation message identifiers for retrieval.
Token budgeting: Allocates tokens across system prompt, history, and tools.
Usage Patterns
Pattern 1: Build context window
import { WindowBuilder } from "@copilot-ld/libmemory";
const builder = new WindowBuilder(tokenizer);
const window = await builder.build({
messages: conversationHistory,
tools: availableTools,
budget: 4000,
});
Pattern 2: Factory usage
import { createWindow } from "@copilot-ld/libmemory";
const window = await createWindow(resourceId, {
maxTokens: 4000,
systemPrompt: "You are a helpful assistant.",
});
Integration
Used by Memory service and Agent service. Works with libllm for token counting.