個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Python SDK that gives xAI Grok Voice agents persistent memory across sessions, devices, and models. LiveKit-enabled. MIT licensed.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Home: faf.one/voice Live demo: faf-voice.vercel.app Voice agents that remember. The Voice Memory Layer (VML) for Grok Voice. .fafm 🐘🎙️ LiveKit enabled. Two profiles, one .fafm format. This is the voice profile (the Voice Memory Layer). For the knowledge profile — typed, cross-linked agent memory — see claude-fafm-sdk. What's New in v0.5.0 — Standing string VoiceAgent() opens on the standing soul stored at your namepoint. It does not etch the call back into that soul unless you pass etch=True. The realtime model is pinned to grok-voice-think-fast-2.0. What's New in v0.4.0 — FastMCP 4檢視完整 README ↗
Home: faf.one/voice Live demo: faf-voice.vercel.app
⭐ Star it on GitHub: bookmarks it for you, helps other devs find it too.
Voice agents that remember.
The Voice Memory Layer (VML) for Grok Voice. .fafm 🐘🎙️ LiveKit enabled.
Two profiles, one
.fafmformat. This is the voice profile (the Voice Memory Layer). For the knowledge profile — typed, cross-linked agent memory — see claude-fafm-sdk.
VoiceAgent() opens on the memory stored at your namepoint, and only writes the call back when you pass etch=True. 202 tests.
etch=True the session opens on what is stored and the tool list has no etch_memory. etch=True brings back the etch log, the etch / recall / merge tools and auto-merge.grok-voice-think-fast-2.0.pip install grok-faf-voice
from grok_faf_voice import VoiceAgent
VoiceAgent().run()
That's it. First run, your agent gets a namepoint — your @handle
for FAF memory. Auto-generated free, no email needed. Want a branded
handle tied to your email (or your X username)? Claim one anytime at
mcpaas.live/voice/setup — one per
valid email address.
XAI_API_KEY — get one at x.ai/apiThat's it. Namepoint and Voice key are provisioned for you.
Run it:
python my_bot.py console
console mode talks locally — no LiveKit cloud needed.
Deploy to LiveKit later via python my_bot.py start.
Voice swappable, memory permanent. ElevenLabs and Hume land in upcoming releases.
xAI shipped Custom Voices on 2026-05-01. We shipped support 48h later.
from grok_faf_voice import CustomVoiceClient, VoiceAgent
# Clone a voice from a 90-120s WAV sample
cv = CustomVoiceClient() # uses $XAI_API_KEY
voice = cv.create_voice("sample.wav", name="My Clone", language="en")
# Use the cloned voice in your agent — same two-line shape
VoiceAgent(voice=voice["voice_id"]).run()
Custom voice IDs (8-char lowercase alphanumeric, e.g. nlbqfwie) flow through
VoiceAgent(voice=...) unchanged. The 30 free voices via console.x.ai
work too — paste the voice_id and go.
.fafm files)Read and write souls straight off disk — no MCPaaS, no API key. Great for inspection, tests, backups, and loading souls written by other FAF-family tools (cross-vendor interop).
from grok_faf_voice import FAFMemory
# Load a .fafm soul from disk (any profile — voice or knowledge)
mem = FAFMemory.from_file("soul.fafm")
body = await mem.get() # the soul body
recall = await mem.recall_for_prompt() # ready for the prompt
# Write it back out (byte-identical roundtrip)
await mem.to_file("backup.fafm")
# Typed views — no manual parsing (v0.3.1)
mem.profile # "voice" | "knowledge"
mem.facts # parsed list of memory facts
mem.index # top-level index (knowledge profile)
.fafm is the IANA-registered FAF Memory format (application/vnd.fafm+yaml).
Validate documents against the published JSON Schema.
Claim your branded @handle | mcpaas.live/voice/setup |
Advanced setup — FAFMemory, FAFContext, custom ledgers, env-var configuration, retention tiers | mcpaas.live/voice/about |
| Source + issues | github.com/Wolfe-Jam/grok-faf-voice |
| Contribute | CONTRIBUTING.md |
If you use grok-faf-voice or the .fafm format in research or production, please cite the format paper. The Agents paper is the companion for the agentic era:
Wolfe, J. (2026). Permanent Memory and Instant Recall: The .fafm Standard for Multi-Profile AI Agent Memory. Zenodo. https://doi.org/10.5281/zenodo.20348942
Wolfe, J. (2026). Why Agents Need a Passport: .fafa — Portable Identity for the Agentic Era. Zenodo. https://doi.org/10.5281/zenodo.21951641
@article{wolfe2026fafm,
title = {Permanent Memory and Instant Recall: The .fafm Standard for Multi-Profile AI Agent Memory},
author = {Wolfe, James},
year = {2026},
month = {may},
publisher = {Zenodo},
doi = {10.5281/zenodo.20348942},
url = {https://doi.org/10.5281/zenodo.20348942}
}
@article{wolfe2026fafa,
title = {Why Agents Need a Passport: .fafa — Portable Identity for the Agentic Era},
author = {Wolfe, James},
year = {2026},
month = {aug},
publisher = {Zenodo},
doi = {10.5281/zenodo.21951641},
url = {https://doi.org/10.5281/zenodo.21951641}
}
DOI: 10.5281/zenodo.20348942 (.fafm) · 10.5281/zenodo.21951641 (.fafa)
We are the Open-Ended answer to Voice memory, and don't you Forget It. We won't.
.fafm 🐘🎙️ · application/vnd.fafm+yaml (IANA registered)
· part of the FAF.one family · MIT licensed