The open-source memory operating system for AI agents. Persistent memory, semantic search, loop detection, agent messaging, crash recovery, and real-time observability.
# Add to your Claude Code skills
git clone https://github.com/RyjoxTechnologies/Octopoda-OSNo comments yet. Be the first to share your thoughts!
Octopoda is the missing layer between your AI agents and a working production system. Think of it as the brain stem your agents always needed but never had.
You write your agent however you like. Pure Python, LangChain, CrewAI, AutoGen, OpenAI Agents SDK, MCP. Octopoda sits underneath and quietly handles the boring stuff that makes agents actually usable. Persistent memory that survives every restart. Loop detection that flags a stuck agent in seconds with structured signals you can wire into your runtime to pause or alert. A full audit trail of every decision, every memory write, every recovery, with a verifiable hash chain available via the audit-v2 API. A live dashboard that finally lets you see what your agents are doing.
It runs locally with one pip install and zero infrastructure. When you outgrow that, the same code syncs to the cloud with a single environment variable. No re-architecture, no migration, no lock-in. The whole thing is open source under MIT.
If you have ever shipped an AI agent and watched it forget who you are, loop on a failing API call for hours, or just disappear into a black box you cannot debug, this is the thing you wished existed.
Three things go wrong when AI agents leave your laptop. Octopoda handles all three out of the box, with no config, so you can focus on the agent and not the plumbing.
Agents forget, until they do not. Every time your process restarts, your agent loses everything it ever knew about the user, the task, and the conversation. Octopoda gives every agent persistent memory that survives restarts, crashes, deployments, and process kills. Memory just works, the way you always assumed it would.
Agents loop, and silently burn money. A stuck agent retrying a failing tool call can quietly burn hundreds of dollars in tokens before anyone notices. Octopoda's loop detector catches retry, oscillation, ping pong, reflection, and recall write patterns in seconds, and surfaces exactly which calls caused it. Detection is automatic on every write; intervention (auto-pause, spend cap) is opt-in via the v2 circuit-breaker config so the right policy is yours to set, not ours.
Agents are black boxes, and that is terrifying in production. Why did it do that? You had no idea, until now. Octopoda logs every decision, every write, every recovery into a replayable audit trail you can diff over time. The dedicated audit-v2 endpoint additionally hash-chains its events (prev_hash → _this_hash) so you can verify integrity via GET /v1/auditv2/verify-chain. Pair it with the live dashboard and you can finally see what your agents are doing in real time.
pip install octopoda
from octopoda import AgentRuntime
agent = AgentRuntime("my_chatbot")
agent.remember("user_name", "Alice")
# kill the process. restart Python. then:
print(agent.recall("user_name").value)
# 'Alice' — still there. Survives every restart, deploy, and crash.
That is the entire setup. Your agent now has persistent memory, loop detection, crash recovery, and an audit trail. No config, no Docker, no Redis, no extra services.
pip install octopoda[server]
octopoda
Open http://localhost:7842 — the same dashboard as the cloud version, running against your local data. No account, no API key.
One command after install:
octopoda-init
It walks you through: paste an API key (or sign up free at octopodas.com), validates it, and saves it to ~/.octopoda/config.json. No environment variables to set, no shell config to edit. The SDK auto-loads the key on next import.
After octopoda-init, the same Python code above writes to the cloud and shows up live at octopodas.com/dashboard.
export OCTOPODA_API_KEY=sk-octopoda-...
Both methods work. The SDK checks the env var first, then the config file.
| | Local | Cloud |
|------------------------|--------------------------------|--------------------------------|
| Setup | pip install octopoda | Sign up at octopodas.com (free)|
| Storage | SQLite on your machine | PostgreSQL + pgvector |
| Dashboard | http://localhost:7842 | octopodas.com/dashboard |
| Account | Not needed | Free, then optional paid tiers |
| Multi-device sync | No | Yes |
| Semantic search | octopoda[ai] extra (33 MB) | Built-in |
| Upgrade path | Set OCTOPODA_API_KEY | Already there |
Start local. Move to cloud when you need sync, team access, or the managed dashboard. Same Python API both ways.
| | Octopoda | Mem0 | Zep | LangChain Memory | |------------------------|------------------------------------------------|------------------|------------------|------------------| | Open source | MIT | Apache 2.0 | Partial (CE) | MIT | | Local-first | Yes (SQLite) | Cloud-first | Cloud-first | In process | | Loop detection | 5 signal engine | No | No | No | | Agent messaging | Built in | No | No | No | | Audit trail | Hash chained (audit v2) | No | No | No | | Crash recovery | Snapshots + restore | N/A | No | No | | Shared memory | Built in | No | No | No | | MCP server | 29 tools | No | No | No | | Semantic search | Local embeddings | Cloud embeddings | Cloud embeddings | Needs vector DB | | Framework integrations | LangChain, CrewAI, AutoGen, OpenAI Agents SDK | LangChain | LangChain | Own only |
When you create an AgentRuntime, all of this runs in the background, automatically:
| Feature | What it does | |---------------------|---------------------------------------------------------------------------| | Persistent memory | Survives restarts, crashes, deployments. Versioned by default. | | Loop detection | 5-signal engine catches retry, oscillation, ping-pong, reflection, recall.| | Audit trail | Every write hashed and chained. Replayable, verifiable. | | Crash recovery | Automatic snapshots and heartbeat-based restore. | | Healt