Score .faf
faf_scoreScores a project's .faf with faf-cli to report 0–100%, tier, populated/active slots, and a faf-parity/v1 hash. Set details to list each slot's status; read-only.
Instructions
Score the project's .faf with faf-cli's scorer — the one score every faf tool reports: 0–100%, the tier, populated/active slots, and a faf-parity/v1 hash of the result. details: true lists every slot as populated, empty or slotignored. Reads only. Use faf_doctor for what to fix.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Project path. Sets session context for subsequent calls. | |
| details | No | List every slot as populated, empty or slotignored, and the tools that fill the empty ones |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Path that was scored | |
| tier | Yes | Tier name for this score (e.g. BRONZE, TROPHY) | |
| empty | No | Active slots still empty | |
| score | Yes | AI-readiness score, 0-100 (-1 only together with unknown: true) | |
| slots | No | Slot paths by state | |
| total | No | Total slots | |
| active | No | Slots active for this app_type | |
| hasFaf | Yes | Whether a readable, valid project.faf was scored | |
| parity | No | faf-parity/v1 — claude-faf-mcp's own spec (no other engine computes it yet): sha256 over a canonical projection of faf-cli's score for these exact bytes. Check it yourself: sha256(projection) === parityHash. | |
| ignored | No | Slots marked slotignored (inactive for this app_type) | |
| unknown | No | True when the score is not known: an About repo with no about.source_score. Shown as "unknown (—)", never as a number. | |
| nextTier | No | Next tier above the current score, or null at top tier | |
| inherited | No | True if the score is attested from a source repo (an about: block) | |
| populated | No | Active slots that are filled |