faf-cli — Summary
faf-cli is a TypeScript/Bun CLI for the .faf (Foundational AI Format) file — an IANA-registered media type (application/vnd.faf+yaml) for persistent AI project context. The .faf file versions with the codebase in git, provides a 0-100% "AI-readiness" score, and bi-syncs with CLAUDE.md/AGENTS.md. The v6.7 "HTML Edition" added faf show to render the .faf file as a human-visible HTML page — "FAF defines. MD instructs. AI codes. HTML shows."
Problem it solves: AI tools re-discover project context on every session, wasting tokens and producing inconsistent results. The .faf file defines the project's identity ("6 W's": who, what, where, why, when, how) in a structured YAML format that versions with git — every clone, fork, or checkout gets full AI context automatically.
Distinctive trait: IANA registration. The .faf format has an officially registered MIME type (application/vnd.faf+yaml) and a companion research paper (DOI on Zenodo). A WASM scoring kernel (faf-scoring-kernel 2.0.0) runs deterministic 0-100% scoring. The format has a "Trophy 100%" target as the only recommended score since v6.6.
Target audience: Developers who want AI context that travels with the code. "Every building requires a foundation. FAF is AI's foundational layer. You have a package.json. AI needs you to add a project.faf. Done."
Differs from seeds: No seed parallel — this is the only framework in the corpus that pursues a formal standards track (IANA registration, Zenodo DOI paper). Most similar to agent-os (Archetype 4 — markdown scaffold for AI context) but faf-cli goes further: structured YAML format (not markdown prose), bi-directional sync, binary compilation (.fafb), WASM scoring, and an HTML render layer. Where agent-os ships opinionated Anthropic standards, faf-cli ships a neutral format specification.