Quickstart

Get augur running on your project in under a minute. augur needs no API key, no LLM, and no configuration to start, just Swift 6 and git on PATH. It is Runs on macOS and Linux.


1. Install

augur is a Swift package. Build the release binary and drop it on your PATH:

swift build -c release
install -m 0755 .build/release/augur /usr/local/bin/augur
# or, with fledge:
fledge run install

Verify it:

augur check --help

Try it instantly (no setup)

Every script in examples/ builds the binary and runs it against a throwaway /tmp repo, so you get a real verdict in seconds:

bash examples/01-check.sh

2. Get a verdict

augur is range-first. With no scope flag it assesses the working tree (staged + unstaged) against HEAD:

augur check                         # working-tree changes
augur check --range main..HEAD      # an explicit git range
augur check --staged                # staged changes only (pre-commit)
augur check -v                      # show every contributing signal

A typical assessment:

$ augur check --range main..HEAD

augur · main..HEAD

  verdict     [!] REVIEW
  risk        [##########          ]  50/100
  confidence  50/100
  calibration history-backed (156 incidents / 500 commits)

  files (1), riskiest first:
    !    50  src/auth/token.swift
          · sensitivity: matches sensitive category 'auth'

  → an agent should request human review before merging

On a real terminal this is colored: the verdict is tinted by level (green proceed · amber review · red block), the risk meter renders as a gauge tinted by the same scale, file paths are cyan, and secondary detail is dimmed. Color is TTY-aware: augur emits plain text (exactly as shown above) whenever stdout is not a terminal, so piped, redirected, --json, and --sarif output stays clean and scriptable. Control it with --color auto|always|never (default auto), and augur honors the NO_COLOR convention.

check always exits 0: it reports, it does not gate.


3. Gate in CI or an agent loop

augur gate exits non-zero when the verdict meets or exceeds a threshold, so a pipeline fails or an agent escalates instead of merging blind:

augur gate --threshold review        # exit 1 if verdict >= review
augur gate --range origin/main..HEAD --threshold block
Exit codeMeaning
0Verdict below the threshold (or no changes).
1Verdict met or exceeded the threshold.
2Usage / validation error.

For agents

verdict=$(augur check --range main..HEAD --json | jq -r .verdict)
[ "$verdict" = "proceed" ] || echo "escalating to a human"

4. Sharpen it (optional)

Everything past here is additive; augur works without any of it.

WantDo thisGuide
Per-line test-gap precisionaugur check --coverage lcov.infoCoverage
Tune thresholds / weights / rulesDrop an .augur.toml at the repo rootConfiguration
Faster repeat runsaugur calibrate then augur check --cachedCLI reference
Inline PR annotationsaugur check --sarif-out augur.sarifCI integration
Durable trust recordsaugur check --json | attest sign --from-augur -CI integration

What’s next?

  • CLI reference: every command, flag, exit code, and the JSON shape.
  • Signals: what each of the eight signals catches and how to tune it.
  • Architecture: how the deterministic, zero-dependency engine works.