Bio-inspired memory for AI agents with 5 memory types, logarithmic reinforcement, exponential decay, and composite recall scoring. Mimics biological memory consolidation. Zero runtime dependencies.
Implements the core algorithm described in the "Autonomous Memory Evolution" patent (December 2025) by 577 Industries.
Input ──► Store ──► [Duplicate?] ──yes──► Reinforce
│ │
no confidence +=
│ 0.1/ln(count+2)
▼
New Memory (0.5)
Recall ──► Score = similarity × 0.7 + confidence × 0.3 ──► Ranked Results
Decay ──► confidence *= 0.95 (per 30d unreinforced) ──► delete if < 0.1
npm install @577-industries/agent-memoryimport { MemoryStore } from "@577-industries/agent-memory";
const store = new MemoryStore({ agentId: "my-agent" });
// Store memories (auto-deduplicates)
await store.store("pattern", "Users ask about pricing first");
await store.store("preference", "Prefers bullet-point summaries");
// Reinforce when pattern repeats
await store.store("pattern", "Users ask about pricing first");
// → { reinforced: true } — confidence increases logarithmically
// Recall top memories
const memories = await store.recall(undefined, 5);
// Format for LLM system prompt
const prompt = store.format(memories);
// → "## Agent Memory\n- [pattern] Users ask about..."
// Simulate time passing and decay
store.advanceTime(35); // 35 days
store.decay(); // → { decayed: N, deleted: M }| Type | Purpose |
|---|---|
pattern |
Recurring workflow or behavior |
preference |
User preference or style |
baseline |
Metric or normal value |
entity |
Key entity or relationship |
insight |
Strategic observation |
| Method | Description |
|---|---|
new MemoryStore(config) |
Create a store with optional embedding provider |
store(type, content) |
Store or reinforce a memory |
recall(query?, limit?) |
Recall ranked memories |
reinforce(id) |
Manually reinforce a memory |
decay() |
Run a decay cycle |
format(memories?) |
Format for LLM prompt injection |
getAll() |
Get all stored memories |
advanceTime(days) |
Simulate time passing |
interface EmbeddingProvider {
embed(text: string): Promise<number[]>;
}Without an embedding provider, the store falls back to substring matching for deduplication and confidence-only ranking for recall.
| Function | Description |
|---|---|
computeReinforcement(confidence, count) |
Logarithmic reinforcement formula |
applyDecay(memories, config) |
Exponential decay with cleanup |
scoreMemories(memories, embedding?, options?) |
Composite recall scoring |
cosineSimilarity(a, b) |
Vector cosine similarity |
formatMemoriesForPrompt(memories) |
Format for LLM injection |
Three bio-inspired mechanisms:
- Reinforcement —
confidence += 0.1 / ln(count + 2)— logarithmic growth with diminishing returns - Decay —
confidence *= 0.95per 30-day unreinforced cycle — exponential fade - Recall —
score = similarity × 0.7 + confidence × 0.3— composite ranking
Based on the "Autonomous Memory Evolution" patent by 577 Industries.
Extracted from FORGE OS by 577 Industries.