Skip to content

v8.5.0 — The Agent Skills Edition

Latest

Choose a tag to compare

@Wolfe-Jam Wolfe-Jam released this 27 Oct 04:21
2f46632

faf knows a skills repo when it sees one, and the skills types name their framework: skills is 10 slots, skills-plugin is 14. 2246 tests.

Added

  • faf knows a skills repo when it sees one. faf init reads a repo that ships SKILL.md folders (under skills/, at the top level, or one SKILL.md at the root) as skills, and one with a Claude Code plugin manifest (.claude-plugin/plugin.json) as skills-plugin: # found: 7 SKILL.md folders + .claude-plugin/plugin.json. The framework slot names the format: Agent Skills, or Claude Code plugin. Skills are checked last, after every code signal, so a CLI or library that ships a skill keeps its type (faf-cli ships skills/faf-expert and stays cli). A project's own .claude/skills, and SKILL.md files deeper down (test fixtures), don't count. faf auto keeps the type a file already has.

Changed

  • The skills app-types name their framework and runtime. skills is 10 slots (was 9): project + human, plus the framework (the skills format, such as Agent Skills or a Claude Code plugin). skills-plugin is 14 (was 12): project + human + universal, plus the framework and the runtime (what runs its build and scripts). A type can now add single slots from outside its categories (APP_TYPE_ADDS), the reverse of the slots a framework repo leaves out.
  • faf auto opens a slot the type adds by name, even where the file says slotignored (a file from faf init, before its type was set). When the slot's other name holds a real value, the stale name is removed. faf auto leaves a file already at 100% as it is, so a stale name there stays until you delete it (the score is right either way). Other types keep the file's own slotignored, as before.

Install: npm install -g faf-cli · brew install wolfe-jam/faf/faf-cli

FAF defines. AGENTS.md instructs. AI codes.