The Voice Memory Layer (VML) for Grok Voice. LiveKit enabled.
.fafm 🐘🎙️ — the voice variant of the .faf 🐘 family.
Five minutes from a fresh terminal to a voice agent that remembers across sessions.
Four keys. Get them once, paste into .env.
Where your agent's memories live. Free tier: name + 2 digits:
james77 · amy123 · atlanta96
Premium tiers (paid): 3-letter $9, 4+ letters $2. Claim yours at mcpaas.live, then set FAF_SOUL=<your-namepoint> in .env.
The namepoint is your etch destination — not a token. Reads against public souls (grok, faf, nelly, spacex) work today without any auth.
A free Voice API key flow is launching on mcpaas.live. Once shipped, set MCPAAS_API_KEY=<your-voice-api-key> in .env and your namepoint becomes write-capable.
Until then, FAFMemory is read-only against public souls — useful for exercising the recall path. Don't use the paid /slash/dashboard tokens for Voice writes; that's the Slash API gateway product, separate path.
git clone https://github.com/Wolfe-Jam/grok-faf-voice
cd grok-faf-voice
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
cp .env.example .env # paste your 4 keys + namepoint
./scripts/wjttc.sh # BRAKE + ENGINE + AERO (default)
./scripts/wjttc.sh --tyres # + live probes against xAI + MCPaaS
Green across every tier = your setup is healthy. Red on a tier tells you which layer broke. WJTTC.md explains what each tier guards against.
python examples/hello_grok_with_etch.py console
In the voice loop, try:
"Etch this — first contact verified."
Close the session. Restart. Then ask:
"What do you remember?"
The agent recalls — that's the cross-session loop, persisted to your namepoint via MCPaaS.
Voice swappable; memory permanent.