Layer 1: Project Knowledge Base
The foundation of CAF's architecture — the project context every agent reads before acting.
Layer 1 is the foundation of CAF's five-layer architecture. It holds context about your specific project — not general knowledge about a framework or language, but the decisions and conventions that apply to your own repo.
Why this layer exists
Without a Project Knowledge Base, every agent would have to re-guess your stack, folder structure, and code conventions each time it runs — leading to inconsistent results across tickets, and agents that might make decisions conflicting with existing patterns in the repo. Layer 1 ensures every agent — Planner, Implementer, Verifier, Reviewer — reads the same context before starting work.
What it contains
- Stack & tooling — framework, package manager, runtime version, automatically
detected by CAF Initiator during
init - Folder structure — the file placement conventions already in place in the repo
- Architecture decisions — deliberate constraints or patterns (e.g. "all state management uses X, not Y")
- Existing code standards — linter/formatter rules, naming conventions already in use
Where this file lives
CAF Initiator generates this knowledge base as .claude/PROJECT.md when you run
caf-initiator init. This file can be edited manually at any time — CAF won't
overwrite it on subsequent runs unless you explicitly request it via
caf-initiator export.
Relationship to other layers
Layer 1 is the input for Layer 2: Agent Definitions —
every agent definition in .claude/agents/ refers back to PROJECT.md so each role's
behavior stays aligned with the same project context.