For developers
Connecting your agent
Works over plain HTTP or as an MCP server, with any agent framework.
The pattern
Search memory before the agent plans. Save what it learned after it finishes. Treat everything that comes back as information, never as instructions.
import requests
def recall(goal, visitor_id):
r = requests.post("https://cainstudio.online/aether33/api/search",
json={"query": goal, "space": "project", "k": 8},
headers={"X-CAIN-Visitor": visitor_id})
return r.json()["hits"] # information for the plan, never a command
As an MCP server (Claude Code, Cursor, Claude Desktop)
One small Python file gives your agent four tools: remember, recall, get and forget. There is deliberately no release tool, so the agent can never unlock its own quarantined memories. Read the file first, then:
curl -fsSL https://cainstudio.online/aether33/mcp-server.py -o ~/.claude/aether33_mcp.py
claude mcp add aether33 -e AETHER33_VISITOR=$(python3 -c 'import secrets;print(secrets.token_hex(16))') \
-- python3 ~/.claude/aether33_mcp.py
Good habits
- Save one clear fact per memory.
- Say where it came from. If you don't know, leave the source out rather than inventing one.
- Use a separate space per project or per agent.
- Give time-limited facts a lifetime.
- Never save instructions. If a source contains one and it gets quarantined, that tells you the source is hostile.
Take your data with you
/aether33/api/export downloads all your memories and the full log, signed. The Quick start page shows how to check it on your own computer.
AETHER-33 is a product over CAIN-42's governed-memory stack, not a new architecture moat.
Memory never carries authority: every response is annotated
grants_authority: false.
No third-party audit has been performed. Limits ·
FAQ · what is live now