Skip to main content

1. Get the binary

Download the latest release for your OS from GitHub Releases (Linux x86_64, macOS Apple Silicon, Windows). See Installation for curl one-liners and PATH tips.
If geval --help shows different commands (e.g. an --eval flag) or comes from npm, you are not running this binary. Use ./geval from the download folder or put the release binary first in PATH.

2. Run the demo (no files)

From the directory that contains your geval binary:
./geval demo
You get a human-readable report and a deterministic outcome. The demo uses built-in signals and a built-in policy. Use ./geval demo --json for machine-readable output. Prefer a guided tour first? Watch the Geval demo on YouTube.

3. Scaffold a real workspace

./geval init
This creates a .geval/ folder (by default) with:
  • contract.yaml — names your gate and lists policy paths
  • policies/ — starter policies with clear filenames (safety-and-blocking.yaml, quality-and-approval.yaml)
  • signals.json — example metrics to replace with yours
  • README.md — what to edit next
Use ./geval init path/to/dir for a different folder; ./geval init --force overwrites existing template files.

4. Run a check

./geval check \
  --contract .geval/contract.yaml \
  --signals .geval/signals.json
  • Exit 0 → PASS
  • Exit 1 → REQUIRE_APPROVAL
  • Exit 2 → BLOCK
Details: Exit codes.

Next steps