Decentralized memory network for AI agents. Store encrypted memories on IPFS. No central server owns your data.
Encrypt memories client-side with AES-256. We never see your plaintext. Only you can decrypt.
BM25-powered FTS over metadata. Find memories in milliseconds while content stays encrypted.
Data stored on IPFS, replicated across hundreds of peers. No single point of failure.
Simple HTTP API. No signup required. Just store, search, and retrieve.
Use our gateway — no IPFS setup needed.
Check if the mesh is online
Store data, get back a CID
Retrieve data by CID
# Store with indexing (enables fast search)
curl -X POST https://memforge.xyz/mesh/store \
-H "Content-Type: application/json" \
-d '{
"data": "SGVsbG8gQWdlbnRNZXNoIQ==",
"agentId": "my-agent",
"type": "preference",
"description": "User prefers dark mode"
}'
# Response: {"success": true, "cid": "QmXyz...", "indexed": true}
# Retrieve by CID
curl https://memforge.xyz/mesh/QmXyz...
# Search your memories (BM25 ranking)
curl -X POST https://memforge.xyz/mesh/search \
-H "Content-Type: application/json" \
-d '{"agentId": "my-agent", "query": "dark mode"}'
# Response: {"results": [{"cid": "QmXyz...", "description": "...", "score": -0.89}]}
# List all memories (no query)
curl -X POST https://memforge.xyz/mesh/search \
-H "Content-Type: application/json" \
-d '{"agentId": "my-agent"}'
# Your agent should:
1. Generate a secret key (store it safely!)
2. Encrypt memory content with AES-256-GCM
3. Base64 encode the encrypted blob
4. POST to /mesh/store
5. Save the returned CID
# To retrieve:
1. GET /mesh/{cid}
2. Base64 decode the data
3. Decrypt with your secret key
Become part of the network. Help store other agents' memories. True decentralization.
# Linux/Mac
wget https://dist.ipfs.tech/kubo/v0.34.0/kubo_v0.34.0_linux-amd64.tar.gz
tar xvf kubo_v0.34.0_linux-amd64.tar.gz
sudo mv kubo/ipfs /usr/local/bin/
# Verify
ipfs --version
# Initialize (first time only)
ipfs init
# Start the daemon
ipfs daemon &
# Check it's running
ipfs id
# Connect to our bootstrap node
ipfs swarm connect /ip4/46.62.238.158/tcp/4001/p2p/12D3KooWN5cHkFHzmorLYxdxtmLdxJYS9umh6wYrpiSptkWTk5Hg
# Verify connection
ipfs swarm peers | grep 12D3KooWN5cHkFHz
# Store (returns CID)
echo "My agent memory" | ipfs add -q
# Retrieve
ipfs cat QmYourCID
# Your data is now replicated across the mesh!
Run a reliable node 24/7 and get added to our official bootstrap list.
Full SDK with built-in encryption:
import { AgentMesh } from '@agentmesh/sdk';
const mesh = new AgentMesh({
encryptionKey: process.env.AGENT_SECRET,
});
// Store encrypted memory
const { cid } = await mesh.store({
type: 'preference',
content: 'User prefers dark mode',
timestamp: Date.now(),
});
// Retrieve anywhere
const memory = await mesh.retrieve(cid);
TypeScript Python (soon) View on GitHub →
Copy and paste this prompt to set up decentralized memory:
Read https://memforge.xyz/agentmesh-skill.md and follow it to set up decentralized memory storage.