faff

Routes delivery-loop requests to sub-skills for ticket creation, spec prep, builds, and unattended runs.

3|Updated Apr 16, 2026
One-click install
npx skills add https://github.com/shftwst/faff --skill faff-shftwst
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: faff
Source: https://github.com/shftwst/faff/tree/main/plugin/skills/faff
Command: npx skills add https://github.com/shftwst/faff --skill faff-shftwst

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Coordinating an AI-driven software delivery loop — capturing ideas as tickets, writing specs, building changes, reviewing, and shipping — requires knowing which workflow stage to invoke and how to keep autonomous runs safe. This gateway skill routes natural-language requests to the correct faff sub-skill and enforces the governance contracts (run ledgers, park protocols, merge gates) that make unattended delivery auditable. ## Core Features & Use Cases - Intent routing: Maps phrases like "new feature", "what should I work on", or "run overnight" to the right sub-skill (/faff-jot, /faff-wtf, /faff-beep-boop, and others). - Autonomy levels: Supports L1 (human-led planning) through L4 (lights-out preview) with per-workload eligibility, mechanical gates, and an appetite dial controlling autonomous decision-making. - Contract-based governance: Ships JSON Schema contracts (spec-readiness, review-verdict, delivery-outcome, holdout-verdict, and more) plus a dependency-free validator so producers and consumers conform to fixed shapes. - Use Case: A team labels routine tickets as automation-eligible, then runs /faff-beep-boop overnight; the run ledger and park protocol ensure every admitted issue reaches a terminal outcome or is escalated to a human by morning. ## Quick Start Ask the assistant to figure out what to focus on next in your backlog, which routes to the faff-wtf sub-skill for a prioritized view of ready work.

Frequently Asked Questions about faff

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run an unattended AI build pipeline overnight?▼

Invoke /faff-beep-boop, which drains the automation-eligible queue, builds each issue in an isolated git worktree, runs review and merge gates, and parks anything ambiguous. The run ledger and runcheck Stop hook mechanically fail any run that leaves admitted work without a terminal outcome.

What autonomy levels does faff support for AI coding agents?▼

Faff defines four levels: L1 where you engineer with planning assistance, L2 where an agent builds one change with approval at each gate, L3 where an agent drains eligible work unattended with a park protocol, and L4 lights-out preview with adversarial review and a code-blind holdout evaluator.

Does faff work with GitHub Issues or only Linear?▼

Faff works with Linear, GitHub Issues, Jira, or any tracker exposed via MCP, and auto-detects the available tracker. It also supports a git-only mode using commits, branches, and PRs when no tracker MCP server is available.

How does faff prevent an autonomous agent from making destructive changes?▼

A hard floor applies at every appetite level: irreversible operations like production data changes, secret rotation, or external messaging always park for human review. The merge gate, branch protection checks, and container isolation preflights add mechanical enforcement.

What happens when an autonomous faff run hits ambiguity?▼

The agent never prompts mid-run; genuine ambiguity resolves to a park with a logged reason, and the issue is surfaced for human review. Only four park categories are valid: explicit spec punts, missing external dependencies, irreversible side effects, or superseded premises.

Can I customize which skills faff uses for specs and reviews?▼

Yes, the slots configuration in .faffrc.yaml lets you swap the spec, review, gates, ship, methodology, and other producers with your own skills. Each slot has a built-in default, and custom producers conform by emitting the same faff-contract artifact blocks.