agentleFS
ronniepinnellronniepinnell/casper/skills/gate/SKILL.md

gate

Skill1 starsChanged 4 months agoMITView on GitHub

Numeric kill-gate authoring. No plan, experiment, or migration is accepted without a measurable abort condition — what's measured, what threshold, what happens on fail. Use at plan time, before long-running work, and when adjudicating "is this good enough to continue".

32 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use new, build and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • codebycoreySkill

    new

    Start a new change with a proposal. Use when starting a feature, creating a proposal, or beginning planned work.

    Also in 3 projects that use this

  • Microsoft AzureSkill

    build

    Build the TypeSpec Rust emitter from source. Run this after cloning the repo, after pulling changes, or when TypeScript source files have been modified.

    Also in 5 projects that use this

  • AWSSkill

    ship

    Finalize dev work on an issue branch — update docs, push, and open a PR.

    Also in 8 projects that use this

  • genomewalkerSkill

    checkpoint

    Save a checkpoint of task status, decisions, active files, and next steps

    Also in 3 projects that use this

  • VercelSkill

    investigate

    Investigate an issue report, or analyze the constraints of a proposed change, with strict, evidence-driven diagnosis.

    Also in 3 projects that use this

  • BlockSkill

    plan

    Draft a TDD, PRD, or lightweight plan in the conversation without committing it.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 30 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Run each gate's measurement command.

    line 48

“Common” is measured: kept by at least 6 in 10 of the 30 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/gate — No Plan Without a Kill Condition

"We'll see how it goes" is how three-week tangents happen. A kill-gate is a pre-agreed, mechanical stop: numbers decided BEFORE the work, so the decision to abort doesn't depend on the judgment (or sunk-cost bias) of whoever is executing.

Invocation

/gate migrate search to pgvector      # author gates for a plan
/gate                                 # gate the plan currently under discussion
/gate check                           # adjudicate: measure current state against declared gates

Authoring procedure (before work starts)

For the plan, write 1–3 gates. Each gate is one line with four mandatory parts:

GATE: <metric> | <threshold> | <measured how + when> | on-fail: <action>
  • Metric — a number obtainable by running a command. Not "quality", not "feels fast". Latency ms, error count, test pass rate, rows matched, diff size, $ cost.
  • Threshold — the abort line, with direction. p95 > 200ms, accuracy < baseline, > 2× the estimate (schedule/effort gates are legitimate).
  • Measured how + when — the exact command/query and the checkpoint ("after first batch", "at 25% rollout", "after 2 hours of work").
  • On-fail — one of: STOP + report (default), rollback, escalate to <person>, fall back to <alternative>. "Investigate further" is not an on-fail action.

Universal gates worth defaulting to:

  • GATE: new-vs-baseline | new < baseline | run both, compare | on-fail: STOP — a replacement that underperforms what it replaces stops immediately.
  • GATE: effort | > 2× estimate | honest check at checkpoint | on-fail: STOP + report

Adjudication procedure (/gate check)

  1. Locate the declared gates (plan doc, issue body, PR description).
  2. Run each gate's measurement command. Paste real output.
  3. Verdict per gate: PASS <value> or TRIPPED <value> → executing on-fail.
  4. A tripped gate is executed, not argued with. Overriding a gate requires the person who owns the plan to say so explicitly, in writing, with the new number. Silent threshold-moving is the failure the gate exists to prevent.

Rules

  • A gate you can't measure with a command is a wish, not a gate. Rewrite it.
  • Borderline result (within ~10% of threshold) = report both the number and the ambiguity; don't round in your own favor.
  • Gates protect the executor too: a tripped gate is a no-fault stop.

Worked example (real ruling, 2026-07-09 — reproduced as a static transcript)

Plan: repo CI + hygiene pass. Gate authored before the work:

GATE: coupling-lint warnings | > 0 | lint script in CI, every push | on-fail: STOP + fix to 0

Adjudication when it fired:

  1. Lint ran on the PR → TRIPPED: 14 warnings → executing on-fail.
  2. Work stopped; no "close enough", no threshold-moving. Each warning fixed until the command printed 0.
  3. The honest-scoping move: one skill genuinely coupled to one project and couldn't be decoupled inside this PR — so it got a declared project_scope marker (which the lint respects), not a fake fix. Scoping a warning honestly is allowed; silently muting it is the failure the gate exists to prevent.
  4. Merged only at PASS 0.

Composes with

  • /door — every one-way door exits with a gate.
  • /refute — a gate is a standing refutation with a pre-agreed threshold.
  • /premortem — top premortem risks become gates with thresholds.
  • scope-creep hook — is exactly this pattern applied to files-touched.
  • /verdict — gate authorings and adjudications are logged there.
  • /calibrate — estimate-skew findings feed back into default gate thresholds.
  • /escalate — borderline results (within ~10% of threshold) queue there rather than round.
  • /sweep — sweeps run on gate budgets and set recurrence tripwires here.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.