Memory · Working
The scratchpad that decays.
Working memory holds the slots an agent is currently using — bounded by Miller's 7±2 capacity model, decaying on configurable curves, with variable binding and attention gating. The bridge between perception and reasoning.
Capabilities
What it does.
Every capability is production-grade. No flags, no betas — these ship the day you adopt Minds.
Miller 7±2
Slot count tunable per agent; default 7. Eviction policy: oldest-low-importance first.
4 decay functions
Linear · exponential · power-law · ACT-R. Per-slot, per-agent.
Variable binding
Slots can reference other slots; binding survives consolidation.
Attention gating
The attention filter chooses which slot the cognitive cycle reads from next.
MVCC
Concurrent reads/writes safe across the cognitive cycle.
Consolidation
Slots that persist long enough are promoted to episodic memory.
API
A few lines is all it takes.
The SDK reflects the conceptual model directly. No glue code, no orchestrator, no learning curve beyond the data shape.
exampletypescript
// Put something in working memory.
const slot = await minds.memory.working.put({
key: "current_question",
value: "Why did Q3 revenue dip?",
importance: 0.9,
decay: { fn: "act-r", rate: 0.18 },
});
// Bind another slot to it.
await minds.memory.working.bind({
key: "current_evidence",
to: slot.id,
value: { sources: ["10-Q", "CFO interview"] },
});
const snapshot = await minds.memory.working.read();
// snapshot.slots is bounded by capacity, sorted by importance × recencySpecs
What it costs, what it guarantees.
Performance
- Default capacity
- 7 slots
- Min/max capacity
- 3 · 11
- Decay functions
- linear · exponential · power-law · ACT-R
- Slot read latency
- <0.3ms
- Tests
- 155 (working-memory crate)
Guarantees
- Durability
- fsync per WAL commit
- Isolation
- MVCC · snapshot
- Audit
- BLAKE3 Merkle chain
- Encryption
- AES-256-GCM per-namespace
- Concurrency
- 100K+ ops/sec
Build it on Minds.
Start with the SDK. Ship in an afternoon. Run anywhere — Akasha Cloud, on-prem, or air-gapped.