RCLL — self-hosted shared memory for a team of AI agents. Canonical repository; pushed out to github.com/Holetron-lab/fleet-memory. Fork of vectorize-io/hindsight (MIT).
https://rcll.ai
agent-fleetagent-memoryai-agentsclaude-codecoding-agentscross-agentcross-agent-memoryllmlocal-firstmcpmcp-servermemorymodel-context-protocolmulti-agentpersistent-memorypgvectorpostgresragself-hostedshared-memory
| .github/workflows | ||
| docker | ||
| helm | ||
| memora | ||
| memora-cli | ||
| memora-clients | ||
| memora-control-plane | ||
| memora-dev | ||
| memora-docs | ||
| memora-langmem | ||
| memora-openai | ||
| scripts | ||
| .env.example | ||
| .gitignore | ||
| .python-version | ||
| .sesskey | ||
| CLAUDE.md | ||
| openapi.json | ||
| PAPER_PERSONALITY.md | ||
| PAPER_RETRIEVAL.md | ||
| pyproject.toml | ||
| README.md | ||
| RELEASE.md | ||
| uv.lock | ||
Memora
Long-term memory for AI agents.
AI assistants forget everything between sessions. Memora fixes that with a memory system that handles temporal reasoning, entity connections, and personality-aware responses.
Why Memora?
- Temporal queries — "What did Alice do last spring?" requires more than vector search
- Entity connections — Knowing "Alice works at Google" + "Google is in Mountain View" = "Alice works in Mountain View"
- Agent opinions — Agents form and recall beliefs with confidence scores
- Personality — Big Five traits influence how agents process and respond to information
5-Minute Setup
1. Start the server
# Clone and start with Docker
git clone https://github.com/anthropics/memora.git
cd memora/docker
./start.sh
Server runs at http://localhost:8080
2. Install the Python client
pip install memora-client
3. Use it
from memora_client import Memora
client = Memora(base_url="http://localhost:8080")
# Store memories
client.store(agent_id="my-agent", content="Alice works at Google")
client.store(agent_id="my-agent", content="Bob prefers Python over JavaScript")
# Search memories
results = client.search(agent_id="my-agent", query="What does Alice do?")
for r in results:
print(f"{r['text']} ({r['weight']:.2f})")
# Generate personality-aware responses
answer = client.think(agent_id="my-agent", query="Tell me about Alice")
print(answer["text"])
Documentation
Full documentation: memora-docs
- Architecture — How ingestion, storage, and retrieval work
- Python Client — Full API reference
- API Reference — REST API endpoints
- Personality — Big Five traits and opinion formation
License
MIT