Metadata-Version: 2.4
Name: cogmemory
Version: 0.1.0a1
Summary: Cognitive memory architecture for LLM agents with principled forgetting
Project-URL: Homepage, https://github.com/mnemo-ai/mnemo
Project-URL: Repository, https://github.com/mnemo-ai/mnemo
Project-URL: Documentation, https://github.com/mnemo-ai/mnemo#readme
Project-URL: Issues, https://github.com/mnemo-ai/mnemo/issues
Author-email: Mnemo Contributors <mnemo-dev@example.com>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Requires-Dist: numpy>=1.21.0
Requires-Dist: scipy>=1.7.0
Provides-Extra: embeddings
Requires-Dist: sentence-transformers>=2.2.0; extra == 'embeddings'
Description-Content-Type: text/markdown

# Mnemo

**Cognitive memory architecture for LLM agents with principled forgetting.**

Mnemo provides a biologically-inspired memory system for AI agents, implementing tiered storage (sensory → working → long-term) with automatic decay and consolidation. Built on Ebbinghaus forgetting curves and modern memory consolidation theory, it lets agents maintain relevant context while gracefully forgetting stale information — just like humans do.

## Installation

```bash
pip install mnemo
```

For real embedding support (sentence-transformers):

```bash
pip install mnemo[embeddings]
```

## Quick Start

```python
import mnemo

# Create a three-tier memory system
system = mnemo.create_memory_system()

# Store a memory
mem = mnemo.MemoryUnit(content="User prefers concise answers", importance=0.8)
system["working"].append(mem)

# Simulate retrieval (strengthens the memory)
mem.access()

# Check if it should be promoted to long-term storage
model = system["model"]
if model.should_consolidate(mem):
    system["long_term"].append(mem)
```

## How It Works

Mnemo models agent memory as three tiers:

| Tier | Purpose | Capacity | Decay |
|------|---------|----------|-------|
| Sensory | Raw input buffer | High | Very fast |
| Working | Active context | Limited | Moderate |
| Long-term | Consolidated knowledge | Large | Slow |

Memories decay exponentially based on time since last access, modulated by importance and retrieval frequency. Frequently accessed working memories consolidate into long-term storage.

## Paper

> *Principled Forgetting in LLM Agent Memory Systems*
> [Link to paper forthcoming]

## License

Apache 2.0 — see [LICENSE](LICENSE) for details.
