Inspiration
Every time you switch AI models, your agent loses everything it learned. Not because it has to — because every provider wants to be the one holding your memory hostage.
We were sitting on this problem for a while. MNEME actually started at another hackathon earlier this year, but OpenAI Build Week gave us the push to build the actual infrastructure — the full stack, the contracts, the MCP server — in one week. Hassan focused on the backend and blockchain; Mrunmayee took the dashboard and compliance flows. Codex ran alongside us the entire time, helping us move faster than a two-person team realistically should.
What it does
MNEME gives AI agents a memory they actually own.
Here's the three-sentence version: Your agent writes memories to a sovereign vault. Those memories are hashed and fingerprinted on Monad's blockchain so nobody can tamper with or deny them. And when you switch from Claude to GPT to Gemini, same vault, same memories, same context — zero rebuilding.
The GDPR piece surprised us. We built a Deletion Prover — a smart contract that issues cryptographic tombstones when you delete a memory. So a compliance officer can verify, on-chain, that a specific user's data is gone. Without seeing what the data was. That one feature alone opens up enterprise use cases that nobody in this space has touched.
How we built it
- Fastify REST API connected to PostgreSQL with pgvector for semantic search
- Neo4j for the temporal knowledge graph (what did the agent know on date X?)
- Redis queue for write resilience — the system never drops a memory even if Monad RPC is slow
- Four Solidity contracts on Monad Testnet: VaultRegistry, AttestationAggregator, DeletionProver, MemoryMarket
- An MCP server that works out of the box with Claude Desktop, Cursor, and Windsurf
- Next.js dashboard with a full demo mode — judges can try everything without a wallet
Codex helped us particularly with the Drizzle schema, the viem contract clients, and the Python extraction microservice. We'd write the shape of what we needed, Codex would scaffold the implementation, and we'd review and wire it together.
Challenges
Getting the attestation batching right was harder than expected. Monad is fast, but you still don't want to fire a transaction per memory write at scale. We built a batcher that aggregates up to 100 attestations per transaction, flushes every 10 seconds, and queues offline without data loss. Getting that retry logic correct without race conditions took most of day three.
The other one: PII scanning before Memory Market listings. Regex alone isn't enough. SpaCy NER catches names and contact info that regex misses. Getting both layers to agree without false positives that would block legitimate pack listings was genuinely annoying.
What we learned
Sovereignty is harder than persistence. Every existing memory solution solves "remember this across sessions." Nobody solves "remember this across providers, with cryptographic proof you own it." Those are completely different problems and they require completely different architecture.
Also: two people can ship a lot in a week if they're not fighting about scope.
What's next
The Memory Market is live on Monad Testnet. Next step is mainnet, getting the first real memory pack listed and sold, and building native plugins for LangGraph and CrewAI so MNEME works inside the frameworks people already use.
Built With
- codex
- docker
- drizzle-orm
- fastify
- hardhat
- mcp
- monad
- neo4j
- next.js
- node.js
- openzeppelin
- pgvector
- postgresql
- python
- redis
- solidity
- spacy
- tailwind-css
- turborepo
- typescript
- vercel
- viem
- zustand
Log in or sign up for Devpost to join the conversation.