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:
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
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