soul.py adds persistent memory to local LLMs with simple file-based approach

soul.py is a Python library that provides persistent memory for local LLM sessions by storing conversation history in human-readable markdown files, eliminating the need for databases or running servers.
How it works
The library creates two markdown files: SOUL.md for identity information and MEMORY.md for conversation logs. Every time you call agent.ask(), the system reads both files into the system prompt, processes the query, then appends the exchange to MEMORY.md. This allows memory to survive across processes and sessions.
Basic usage
Installation and setup:
pip install soul-agent
soul initExample implementation with Ollama:
from soul import Agent
agent = Agent(
provider="openai-compatible",
base_url="http://localhost:11434/v1",
model="llama3.2",
api_key="ollama"
)
agent.ask("My name is Prahlad, I'm working on an AI research lab.")
Later, in a new session:
agent.ask("What do you know about me?")
Returns: "You're Prahlad, working on an AI research lab."
Key features
- Works with Ollama, OpenAI, and Anthropic models
- No database or server required
- Human-readable markdown files
- Git-versionable and editable by hand
- Memory persists across processes and sessions
- Built specifically for adding persistent memory to local models
The tool was created to solve the problem of local LLMs forgetting information between sessions, providing a lightweight alternative to database-backed solutions.
📖 Read the full source: r/LocalLLaMA
👀 See Also

Caddie: Slack-Based OpenClaw Alternative Launches Next Week
Caddie is a Slack-based version of OpenClaw that requires no local installation or MCP configuration. Users authorize it through the Slack App Directory in 60 seconds, then type commands to automate tasks across Gmail, LinkedIn, CRM, calendar, and 100+ other tools.

Open-source Claude Code skill /unzuck curates social media feeds into dashboard
A free, open-source Claude Code skill called /unzuck scans feeds across Hacker News, Reddit, LinkedIn, YouTube, Twitter/X, Instagram, and Facebook in parallel using browser automation, scores items against user interest profiles, and generates interactive HTML dashboards.

ClawMetry adds remote monitoring with E2E encryption for OpenClaw agents
ClawMetry v0.1.0 now includes cloud sync for remote monitoring of OpenClaw agents from any browser or Mac menu bar app, with end-to-end encryption that keeps data encrypted until it reaches your client.

Engram: Hybrid Memory Plugin for OpenClaw Agents — Vector + Semantic Search with Decay
Engram gives OpenClaw agents persistent memory across sessions using SQLite+FTS5 for exact recall and LanceDB for semantic search, with decay classes and auto-capture hooks.