Your review queue,
sorted by provenance.
Backed adds one check to every PR and one label to unverified ones. Nothing is blocked, nothing is read — the queue simply knows which contributions a verified human stands behind.
One optional file
Backed works with zero configuration. Everything below is a default you can change.
# all keys optional — these are the defaults unverified: label: needs-verification # removed the moment the author verifies comment: polite-template # the one-time PR comment, or 'none' triage_priority: low # orders the queue — never blocks anything agent_backed: require_operator_approval: false # require a signed operator approval ref on agent PRs limits: open_prs_per_human: ~ # counted across ALL accounts and agents of a human human_presence: # approve-on-phone, per exact commit (✓✓) require_on: branches: [] # e.g. [main] — matched against the PR's base branch paths: [] # e.g. ["payments/**"] enforce: false # true: held check fails → branch protection can block reverify: # lighter: fresh World ID proof, ~2s, no ceremony require_on: branches: [] paths: [] enforce: false # presence satisfies reverify; never the reverse first_time_contributors: require: none # or 'device' / 'orb' verification tier
Optional: a hard merge gate
By default Backed only reports. To make provenance binding on a branch: set human_presence.enforce: true in backed.yml (the held check then reports failure instead of neutral), and require the backed / human status check in your branch protection rules. The gate lives in your repo settings — Backed reports, your ruleset enforces. Confirmations are per-commit and only the PR's backing human can provide them: verifying less never bypasses more.
What Backed will never do
A spam operation running fifty accounts and a hundred agents counts as one person — one quota, one reputation. The first ban that actually sticks.