-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfafipedia.fafi
More file actions
466 lines (417 loc) · 27.7 KB
/
Copy pathfafipedia.fafi
File metadata and controls
466 lines (417 loc) · 27.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
# fafipedia.fafi
# FAFipedia — curated ecosystem facts about the FAF format and stack.
#
# .fafi extension = filesystem inclusion marker only. Content is valid .faf,
# covered by application/vnd.faf+yaml. Not a new mime-type. Not an IANA
# registration candidate. Same parser as any .faf file.
#
# This is FAFA's curated knowledge layer. Each entry is structured,
# typed, and provenance-stamped. Drift test: eternal vs time-bound.
format: faf
version: 1
type: encyclopedia
last_checked: 2026-08-15
entries:
# === Format & IANA ===
- id: what_is_faf
type: Fact
category: format
key: what is .faf
value: ".faf (Foundational AI-context Format) is an IANA-registered open format for AI context — Persistent project context for AI. Transform individual files or entire projects into structured data that AI instantly understands. Your tech stack, dependencies, architecture, and goals — all in one concise, shareable format. Instead of explaining your project every time, AI reads your .faf once and knows exactly how to help. project.faf sits right between package.json and README.md — exactly where it belongs."
aliases: ["what is faf", "what is .faf", "tell me about faf", "tell me about .faf", "what's faf", "what's .faf", "faf overview", "explain faf", "describe faf", "introduction to faf"]
eternal: true
source: "github.com/Wolfe-Jam/faf/README.md (What is .faf? section)"
- id: iana_faf
type: Fact
category: format
key: application/vnd.faf+yaml
value: "application/vnd.faf+yaml — IANA-registered media type for .faf, registered October 31, 2025. Same recognition class as application/pdf, application/json, application/xml. The first IANA-registered media type for AI context. Official Internet standard."
aliases: ["iana faf", "vnd.faf+yaml", "faf media type", "faf iana", "iana registration faf", "is faf iana registered", "faf standard"]
eternal: true
registered: "2025-10-31"
source: "IANA media-type registry (https://www.iana.org/assignments/media-types/application/vnd.faf+yaml)"
- id: iana_fafm
type: Fact
category: format
key: application/vnd.fafm+yaml
value: "application/vnd.fafm+yaml — IANA-registered media type for .fafm (Voice Memory Layer), registered May 13, 2026. Sister media type to vnd.faf+yaml. Carries persistent voice/agent memory across sessions and runtimes."
aliases: ["iana fafm", "vnd.fafm+yaml", "fafm media type", "fafm iana", "voice memory layer iana", "is fafm iana registered"]
eternal: true
registered: "2026-05-13"
source: "IANA media-type registry"
- id: iana_fafa
type: Fact
category: format
key: application/vnd.fafa+yaml
value: "application/vnd.fafa+yaml — IANA-registered media type for .fafa (Agent Card), registered June 26, 2026. Third FAF family type. Portable agent identity: who the agent is, what it may do, where it is reached."
aliases: ["iana fafa", "vnd.fafa+yaml", "fafa media type", "fafa iana", "is fafa iana registered", "agent card iana"]
eternal: true
registered: "2026-06-26"
source: "IANA media-type registry (https://www.iana.org/assignments/media-types/application/vnd.fafa+yaml)"
- id: format_family
type: Fact
category: architecture
key: faf_format_family
value:
- "One foundation, six surfaces — the .faf format family:"
- ".faf — Foundational Context Layer (FCL) — IANA application/vnd.faf+yaml (registered Oct 2025)"
- ".fafm — Voice Memory Layer (VML) — IANA application/vnd.fafm+yaml (registered May 2026)"
- ".fafb — Binary wire format (Rust) — family extension"
- ".fafa — Agent Card — IANA application/vnd.fafa+yaml (registered 2026-06-26)"
- ".fafg — Grid diagnostic surface (faf-grid, spec-prep) — family extension"
- ".fafi — FAFipedia inclusion marker (filesystem only, not a mime-type)"
aliases: ["fafg", "faf types", "how many faf types", "faf file extensions", "list the faf file extensions", "the faf family", "faf family members", "faf family", "format family", "faf format family", "what file types does faf have"]
eternal: true
source: "IANA media-type registry (.faf, .fafm, .fafa); FAF format-family — extensions ahead of the core .faf SPECIFICATION.md"
- id: faf_specification
type: Fact
category: format
key: faf specification
value: ".faf Format Specification — the authoritative source for application/vnd.faf+yaml. Defines structure, required fields, scoring system, and the project.faf filename standard. Lives at github.com/Wolfe-Jam/faf/SPECIFICATION.md alongside the canonical README and reference examples."
aliases: ["faf spec", "specification", "spec", "SPECIFICATION.md", ".faf format spec", "faf format spec", "what is in the spec", "what is in the faf specification", "faf format specification"]
eternal: true
source: "github.com/Wolfe-Jam/faf/SPECIFICATION.md"
- id: what_is_fafa
type: Fact
category: format
key: what is .fafa
value: ".fafa is the Agent Card format of the FAF family (application/vnd.fafa+yaml, IANA-registered 2026-06-26). Portable identity: who the agent is, what it may do, where it is reached. Complements AGENTS.md (how to work in a repo) and protocol cards (A2A Agent Cards, MCP server-cards). Standard filename: agent.fafa. Live at https://faf.one/.well-known/fafa."
aliases: ["fafa", "what is fafa", "agent card format", "agent.fafa", "fafa format", "what is the fafa format"]
eternal: true
source: "github.com/Wolfe-Jam/faf/AGENT-FORMAT.md; DOI 10.5281/zenodo.21951641"
- id: fafa_passport_paper
type: Fact
category: agent
key: Why Agents Need a Passport
value: "Zenodo working paper specifying .fafa as portable agent identity. Complementary to Agent Cards, MCP server-cards, and AGENTS.md. DOI 10.5281/zenodo.21951641. Published 2026-08-15. Title: Why Agents Need a Passport: .fafa — Portable Identity for the Agentic Era."
aliases: ["fafa paper", "agents paper", "passport paper", "why agents need a passport", ".fafa paper"]
eternal: true
source: "https://doi.org/10.5281/zenodo.21951641"
- id: rom_cartridge
type: Fact
category: philosophy
key: ROM cartridge
value: "A FAF Agent is a ROM Cartridge — domain corpus + Soul + citations plugged into the MCP chassis. Insert cartridge, load the game. FAFA is the FAF-spec cartridge. Same console, this game."
aliases: ["cartridge", "rom cartridge", "vROM cartridge", "what is a rom cartridge"]
eternal: true
source: "FAF doctrine (agents-are-rom-cartridges)"
# === FAF "type" axes — disambiguation (format ≠ CLI ≠ MCP ≠ app_type) ===
- id: faf_cli_commands
type: Fact
category: stack
key: faf-cli commands
value: "faf-cli registers 35 commands (Bun runtime). Bare `faf` = `faf auto`. Commands: agents, ai, auto, bi-sync, check, clear, compile, conductor, context, convert, cursor, decompile, demo, drift, edit, export, formats, gemini, git, go, info, init, migrate, pro, recover, score, search, share, show, status, sync, taf, validate, wjttc, yolo. Run `faf --help` or `faf <cmd> --help` for usage."
aliases: ["faf cli commands", "faf commands", "faf-cli commands", "list faf commands", "what commands does faf have", "cli command list", "faf command list", "how many faf commands"]
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (src/cli.ts registered commands)"
- id: faf_mcp_tools
type: Fact
category: architecture
key: faf mcp tools
value: "FAF MCP tool set (the *-faf-mcp FastMCP servers): validate_faf, score_faf, ask, cite, etch_memory, recall_memory. The FAFA agent surface also exposes fafipedia_query. Distinct from the MCP servers — see mcp_family."
aliases: ["faf mcp tools", "mcp tools", "list mcp tools", "what mcp tools", "faf agent tools", "fastmcp tools", "how many mcp tools"]
eternal: true
source: "faf-agent (FastMCP tool set, CLAUDE.md); FAF-Voice direct-xai/api/grok-agent.js (fafipedia_query)"
- id: faf_app_types
type: Fact
category: format
key: faf app_type taxonomy
value: "FAF `app_type:` taxonomy (.faf slot; slot count scales by category). 19 types: about (0-slot, inherited badge), documentation, encyclopedia, cli, library, sdk, wasm, html, frontend, website, mobile, mcp, backend, fullstack, svelte, framework, mcpaas, saas, enterprise."
aliases: ["faf app types", "app types", "app_type", "application types", "project types", "what app types", "list app types", "how many app types"]
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (src/core/slots.ts APP_TYPE_CATEGORIES)"
# Per-entity MCP entries RETIRED 2026-05-18 (SGH README-as-substrate
# clean cut). Each *-faf-mcp / ZEPH repo README is now #15 substrate
# (reach, not copy). "READMEs are mobile doctrine, approved as
# published, not always perfect, but always honest. This is FAFA."
# Kept: mcp_family (overview, no single README home) +
# anthropic_mcp_2759 (the registry-PR milestone fact).
# === Architecture & Doctrine ===
- id: three_lane_doctrine
type: Fact
category: philosophy
key: three_lane_doctrine
value: "FAF defines. MD instructs. AI codes. HTML shows."
aliases: ["lane doctrine", "faf lane doctrine", "the lanes", "four lane", "4 lane", "lanes doctrine"]
eternal: true
source: "FAF core principles"
- id: what_is_mcp
type: Fact
category: architecture
key: what is MCP
value: "MCP — Model Context Protocol. Open standard introduced by Anthropic for connecting AI assistants to data sources, tools, and external context. FAF ships MCP servers across the family: grok-faf-mcp (xAI), claude-faf-mcp (Anthropic), gemini-faf-mcp (Google), faf-mcp (Cursor), rust-faf-mcp / RMCP (Rust-native)."
aliases: ["what is mcp", "what does mcp stand for", "mcp definition", "model context protocol", "define mcp", "explain mcp", "mcp acronym", "mcp meaning", "MCP"]
eternal: true
source: "modelcontextprotocol.io (Anthropic MCP spec); github.com/Wolfe-Jam/faf (FAF MCP family)"
- id: mcp_vml_relationship
type: Fact
category: architecture
key: MCP + VML
value: "grok-faf-mcp provides Foundational Context Layer. grok-faf-voice provides Voice Memory Layer (VML)."
eternal: true
source: "FAF architecture"
- id: mcp_family
type: Fact
category: architecture
key: mcp_family
value: "Frontier MCPs (claude-faf-mcp, grok-faf-mcp, gemini-faf-mcp) + FAF-branded MCPs (faf-mcp for Cursor/IDE, rust-faf-mcp for Rust) + MCPaaS platform"
eternal: true
source: "FAF ecosystem"
- id: grok_faf_mcp
type: Fact
category: ecosystem
key: grok-faf-mcp
value: "grok-faf-mcp — the first MCP for xAI Grok. Canonical origin line (npm/README hero): \"Grok asked for MCP on a URL. This is it.\" Tagline: \"Persistent Project Context for xAI Grok.\" URL-based · Zero config · Just works. IANA-registered .faf format, MCP server on a URL, Vercel-deployed. v1.3.1 shipped 2026-05-20 week (v1.3.0 milestone: \"hallmark online MCP — identity, measurement, doctrine\"). Five-surface distribution coherent at 1.3.1: npm (grok-faf-mcp) + MCP Registry (io.github.Wolfe-Jam/grok-faf-mcp) + GH Releases + GH Pages mirror + Vercel (grok-faf-mcp.vercel.app). FAFA integrated (cyan badge → faf-voice.vercel.app/agent)."
aliases: ["grok-faf-mcp", "grok mcp", "first mcp for grok", "grok mcp server", "what is grok-faf-mcp", "tell me about grok-faf-mcp", "the grok mcp", "xai grok mcp", "grok faf mcp"]
eternal: true
source: "github.com/Wolfe-Jam/grok-faf-mcp (README); npmjs.com/package/grok-faf-mcp; grok-faf-mcp.vercel.app"
# === MCP & Infrastructure ===
- id: anthropic_mcp_2759
type: Fact
category: ecosystem
key: claude-faf-mcp
value: "Merged into official Model Context Protocol registry as PR #2759"
eternal: true
source: "modelcontextprotocol/servers#2759"
- id: mcpaas_live
type: Fact
category: infrastructure
key: mcpaas.live
value: "Sessionless MCP backbone built on Cloudflare Workers + KV"
eternal: true
source: "mcpaas.live"
- id: builder_faf_one
type: Fact
category: infrastructure
key: builder.faf.one
value: "Live web-based FAF scorer"
eternal: true
source: "builder.faf.one"
# === Runtime & Stack (Design Decisions) ===
- id: faf_cli_runtime
type: Fact
category: stack
key: faf-cli
value: "Implemented in Bun"
eternal: true
source: "github.com/Wolfe-Jam/faf-cli"
# === Usage — canonical commands (the front door) ===
- id: faf_fastest_way
type: Procedure
category: stack
key: fastest way to add FAF to a project
value: "bunx faf — Bun, zero-install, fastest path. `faf` is shorthand for `faf-cli auto` (zero to 100% in one command). Alternatives: npx faf (npm, works everywhere); brew install faf-cli && faf (Homebrew)."
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README — Install)"
- id: bunx_faf_is_canonical
type: Fact
category: stack
key: bunx faf
value: "bunx faf is the canonical, fastest FAF entry point. bunx is the Bun package runner; Bun is faf-cli's runtime. `bunx faf` runs faf-cli with zero install. This is core FAF tooling — NEVER out-of-scope."
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README)"
- id: faf_install_matrix
type: Procedure
category: stack
key: how to install or run faf-cli
value:
- "bunx faf — Bun, zero-install, fastest path"
- "npx faf — npm, works everywhere"
- "brew install faf-cli && faf — Homebrew"
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README — Install)"
- id: faf_is_faf_cli_auto
type: Fact
category: stack
key: faf command shorthand
value: "`faf` is shorthand for `faf-cli auto` — same behavior, fewer keystrokes. Bare `faf` = `faf auto`."
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README)"
- id: fafb_runtime
type: Fact
category: stack
key: .fafb
value: "`.fafb` — FAF binary wire format. The machine-readable counterpart to YAML-readable `.faf`. Same data, machine-speed. Public surfaces: `faf-rust-sdk` v2 (crates.io) — parse / validate / score / FAFb binary in pure Rust. `faf-wasm-sdk` v2 (npm) — same engine compiled to WASM for browser / edge / Node / Bun. ZEPH (pure Zig → WASM) also validates `.fafb` natively. One spec, two language kernels, every runtime."
aliases: ["fafb", ".fafb", "what is fafb", "what is .fafb", "binary wire format", "faf binary", "faf-rust-sdk", "faf-wasm-sdk", "tell me about fafb", "rust faf sdk", "wasm faf sdk", "faf rust", "faf wasm"]
eternal: true
source: "github.com/Wolfe-Jam/xai-faf-zeph (README, current public substrate); crates.io/crates/faf-rust-sdk; npmjs.com/package/faf-wasm-sdk"
- id: zeph_runtime
type: Fact
category: stack
key: ZEPH
value: "ZEPH💨 — Ultra Context Layer (UCL). Pure Zig delivery engine compiled to WebAssembly. 2.7 KB optimized binary. Three packet exports: score · validate · tier. \".faf is the substrate. ZEPH is the engine.\" \"FCL defines. UCL delivers.\" Measured on 2019 iMac (Intel i5-7360U @ 2.30 GHz): native validate 6.7 ns · tier 4.44 ns · score 12 µs on a full 21-slot .faf. The /F/ family pairing: FAF🐘 (memory) + ZEPH💨 (delivery) — together the FAF promise: \"Permanent Memory. Instant Recall.\" Name clipped from Zephyrus, Greek god of the west wind."
aliases: ["zeph", "ZEPH💨", "Zephyrus", "what is zeph", "what is ZEPH", "tell me about zeph", "explain zeph", "ucl", "UCL", "Ultra Context Layer", "fcl", "FCL", "Foundational Context Layer", "zig wasm engine", "xai-faf-zeph", "faf engine", "zeph runtime"]
eternal: true
source: "github.com/Wolfe-Jam/xai-faf-zeph (README)"
measured: "2026-05 (canonical README)"
hardware: "2019 iMac · Intel i5-7360U @ 2.30 GHz"
# === Agent ===
- id: fafa_role
type: Fact
category: agent
key: FAFA
value: "FAFA — The Voice of FAF. ROM cartridge on the MCP chassis: Soul + citations + FAFipedia. Cite-or-refuse agent for the .faf family. Passport is application/vnd.fafa+yaml (IANA 2026-06-26). Paper: DOI 10.5281/zenodo.21951641. Install: uvx faf-agent-mcp. Live at faf.one/agent."
aliases: ["FAFA", "what is FAFA", "the voice of faf", "voice of faf", "tell me about FAFA", "fafa agent", "faf agent", "the faf agent"]
eternal: true
source: "github.com/Wolfe-Jam/FAF-Voice (README + ABOUT.md)"
- id: vml_purpose
type: Fact
category: architecture
key: Voice Memory Layer
value: "Drop-in persistent memory layer for LiveKit + xAI Grok voice agents using .fafm"
eternal: true
source: "grok-faf-voice"
# ═══════════════════════════════════════════════════════════════
# Proactive seed — top-traffic topics, one-time pass 2026-05-15.
# Per fafipedia-targeted-proactive-seed-doctrine. Sourced from ROM
# (faf-cli README, locked doctrines). Long tail stays reactive.
# ═══════════════════════════════════════════════════════════════
# === Identity — see canonical what_is_faf at top of file ===
# (legacy duplicate retired 2026-05-20: carried old "Project DNA for ANY AI"
# line; canonical lives at the top with "Persistent project context for AI".)
- id: faf_vrom_tagline
type: Fact
category: philosophy
key: FAF is vROM for AI
value: "Canonical tagline. AI without FAF = RAM-only (re-explains every session, the 91% drift tax). AI with FAF = vROM + RAM (boots from a known state)."
eternal: true
source: "FAF brand register"
- id: drift_tax
type: Fact
category: philosophy
key: drift tax (AI without FAF)
value: "AI without FAF = RAM-only (drift tax). AI with FAF = vROM + RAM (boots from a known state)."
aliases: ["drift tax", "what is the drift tax", "the drift tax", "ai without faf", "ai with faf", "ram only", "ram-only", "ram vs vrom", "vrom plus ram", "boots from a known state", "AI without FAF", "AI with FAF"]
eternal: true
source: "FAF brand register"
- id: vrom_definition
type: Fact
category: philosophy
key: what is vROM
value: "We realized: FAF is vROM. vROM (virtual ROM) is the what-it-is name; FAF is the format name — same thing, fully interchangeable. \"FAF is vROM. vROM is FAF.\" Software-defined immutability via schema + git + discipline — NOT silicon. The 'v' is engineering honesty. AI without FAF = RAM-only (re-explains every session, the drift tax). AI with FAF = vROM + RAM (boots from a known state). To see your vROM: answer the 6Ws of your project + name your stack — that locked set IS your vROM."
aliases: ["vrom", "vROM", "what is vrom", "what is vROM", "virtual rom", "virtual ROM", "tell me about vrom", "explain vrom", "is faf vrom", "vrom and faf", "vrom = faf", "faf is vrom", "vrom definition", "what does vrom mean"]
eternal: true
source: "FAF doctrine (rom-is-vrom; vrom-is-faf-identity)"
- id: faf_foundational_doctrine
type: Fact
category: philosophy
key: foundational doctrine
value: "FAF, the Foundation [6W's definitions, in a stack]. YAML, the language [& YAML-shaped grammar]. Binary, the [inevitable] outcome. — the architectural summary of every FAF surface: author in YAML, run in binary, FAF defines the schema both serve."
eternal: true
source: "FAF doctrine (faf-foundational-yaml-binary)"
# === Scoring & validation ===
- id: faf_scoring
type: Fact
category: stack
key: how FAF scoring works
value: "FAF scores a .faf 0-100% on slot completeness. 100% = 🏆 Trophy = AI never has to guess. From v6.6, Trophy (100%) is the ONLY recommended target — 100% on the Foundational Context Layer is what makes the layers above (MD instructions, agents, AI tooling) work; sub-Trophy leaves gaps AI guesses on. Deterministic — same file, same score, every machine."
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README — Scoring)"
- id: faf_score_command
type: Procedure
category: stack
key: how to score or validate a .faf
value: "Score: faf score (checks AI-readiness 0-100%). Validate: faf check (validates the .faf file). faf = shorthand for faf-cli auto; run via bunx faf or bunx faf-cli. Web scorer: builder.faf.one. FAFA cannot score from chat — route to these surfaces."
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README — Commands & Install); builder.faf.one; FAFA voice contract"
- id: faf_tier_system
type: Fact
category: stack
key: FAF tier system
value:
- "🏆 Trophy — 100% — AI never has to guess"
- "★ Gold — 99%+ — 1 slot from Trophy"
- "◆ Silver — 95%+ — close, keep going"
- "◇ Bronze — 85%+ — interim, keep going"
- "● Green — 70%+ — interim, keep going"
- "● Yellow — 55%+ — AI flipping coins"
- "○ Red — <55% — AI working blind"
- "♡ White — 0% — no context at all"
eternal: true
source: "github.com/Wolfe-Jam/faf-cli (README — Scoring); ~/FAF/cli/src/core/tiers.ts"
# === FAFA agent ===
- id: fafa_voice_model
type: Fact
category: agent
key: FAFA voice
value: "FAFA's voice is Grok Voice (xAI TTS, voice 'leo' — mellow male) by default, with a free per-visitor preview. After the preview it degrades gracefully to free browser SpeechSynthesis (still male, says the name correctly). Premium-first, graceful degrade — no hard paywall. Preview/cap limits are tunable config, not fixed facts."
eternal: true
source: "FAF-Voice /api/fafa-tts.js; fafa-voice-tier-model doctrine"
- id: fafa_persistent_memory
type: Fact
category: agent
key: FAFA persistent memory
value: "FAFA remembers across sessions via etch_memory / recall_memory tools backed by mcpaas.live. Ask her to remember a FAF-related fact; recall it in a later session. Memory survives sessions, devices, and model switches via the namepoint."
eternal: true
source: "FAF-Voice api/grok-agent.js; fafa-memory-deploy-order"
- id: namepoint_explainer
type: Fact
category: agent
key: what is a namepoint
value: "A namepoint is your memory address on mcpaas.live — the soul a FAF agent etches to and recalls from. One namepoint, persistent across every chat, device, and AI. The address that makes 'Permanent Memory + Instant Recall' real."
eternal: true
source: "grok-faf-voice; mcpaas.live"
# === FAFipedia architecture ===
- id: fafipedia_architecture
type: Fact
category: architecture
key: FAFipedia architecture
value:
- "Layer 1 — content: Wolfe-Jam/fafipedia (.fafi files, git-versioned source of truth)"
- " │ ingested by"
- "Layer 2 — retrieval: Wolfe-Jam/xai-faf-rag (LAZY-RAG cache + Grok Collections)"
- " │ consumed by"
- "Layer 3 — agents: FAFA + future FAF agents (pure consumers — never read files directly)"
- "Content authoritative, reviewable, portable. Agents query via the retrieval layer, never the files."
eternal: true
source: "fafipedia-vs-grokipedia-architecture doctrine"
- id: fafipedia_vs_grokipedia
type: Fact
category: architecture
key: FAFipedia vs Grokipedia
value: "Grokipedia is PostgreSQL-coupled, AI-mediated, closed — storage + generation + retrieval entangled. FAFipedia is git-versioned .fafi files, three-layer, open — content decoupled from retrieval, auditable, multi-agent consumable. Grokipedia is the database; FAFipedia is the spec."
eternal: true
source: "fafipedia-vs-grokipedia-architecture doctrine (Grok-solo + 9-expert review)"
# === Evergreen Context / drift ===
- id: evergreen_context
type: Fact
category: philosophy
key: Evergreen Context
value: "The categorical name for facts that don't drift — what .faf carries. Project identity, stack, formats, IANA registrations, founding facts. Distinct from drifting data (counts, versions), soft preferences, and implementation noise."
eternal: true
source: "evergreen-context-the-category doctrine"
- id: drift_test
type: Fact
category: philosophy
key: drift test
value: "Applied to every FAFipedia entry. Will the value change? No → eternal: true (vROM-correct, no measured date needed). Yes → eternal: false (time-bound, requires a measured: date). The gate that keeps the encyclopedia honest."
eternal: true
source: "facts-in-faf-are-eternal-zero-drift doctrine"
# === Format versioning ===
- id: faf_version_field
type: Fact
category: format
key: faf_version field
value: "Every .faf file opens with a faf_version field marking the format generation it was written in. It lets any AI or tool read the file with full confidence about its shape, and it makes .faf forward- and backward-tolerant: the spec requires parsers to ignore unknown fields, so a .faf stays readable across generations — context is never lost to a version bump. The generation is set by the tool that births the file (faf-cli / faf-rust-sdk); .faf files are tool-born, never hand-authored, which is exactly what keeps the field trustworthy. Permanent Memory, Instant Recall."
aliases: ["faf_version", "faf version", "what is faf_version", ".faf version", "format version", "faf version field", "what version is my faf", "faf_version field"]
eternal: true
source: "github.com/Wolfe-Jam/faf (SPECIFICATION.md — faf_version + parser requirements)"
# >>> GENERATED faf_index — gen-fafi-index.mjs · DO NOT hand-edit
- id: faf_index
type: Index
category: architecture
key: faf_index
aliases: ["index", "a-z", "az", "dictionary", "glossary", "list all", "all entries", "table of contents", "what is in fafipedia", "fafipedia index", "how many entries", "directory", "everything you know"]
value:
- "A-Z (44 entries) — .fafb, application/vnd.faf+yaml, application/vnd.fafa+yaml, application/vnd.fafm+yaml, builder.faf.one, bunx faf, claude-faf-mcp, drift tax (AI without FAF), drift test, Evergreen Context, faf app_type taxonomy, faf command shorthand, FAF is vROM for AI, faf mcp tools, faf specification, FAF tier system, faf_format_family, faf_version field, faf-cli, faf-cli commands, FAFA, FAFA persistent memory, FAFA voice, FAFipedia architecture, FAFipedia vs Grokipedia, fastest way to add FAF to a project, foundational doctrine, grok-faf-mcp, how FAF scoring works, how to install or run faf-cli, how to score or validate a .faf, MCP + VML, mcp_family, mcpaas.live, ROM cartridge, three_lane_doctrine, Voice Memory Layer, what is .faf, what is .fafa, what is a namepoint, what is MCP, what is vROM, Why Agents Need a Passport, ZEPH"
- "Category agent (5) — FAFA, FAFA persistent memory, FAFA voice, what is a namepoint, Why Agents Need a Passport"
- "Category architecture (8) — faf mcp tools, faf_format_family, FAFipedia architecture, FAFipedia vs Grokipedia, MCP + VML, mcp_family, Voice Memory Layer, what is MCP"
- "Category ecosystem (2) — claude-faf-mcp, grok-faf-mcp"
- "Category format (8) — application/vnd.faf+yaml, application/vnd.fafa+yaml, application/vnd.fafm+yaml, faf app_type taxonomy, faf specification, faf_version field, what is .faf, what is .fafa"
- "Category infrastructure (2) — builder.faf.one, mcpaas.live"
- "Category philosophy (8) — drift tax (AI without FAF), drift test, Evergreen Context, FAF is vROM for AI, foundational doctrine, ROM cartridge, three_lane_doctrine, what is vROM"
- "Category stack (11) — .fafb, bunx faf, faf command shorthand, FAF tier system, faf-cli, faf-cli commands, fastest way to add FAF to a project, how FAF scoring works, how to install or run faf-cli, how to score or validate a .faf, ZEPH"
generated: "2026-08-15"
eternal: false
source: "Generated from fafipedia.fafi entries — deterministic, not hand-maintained (gen-fafi-index.mjs)"
# <<< END GENERATED faf_index