Pin install.sh / install.ps1 to a specific tag. install.sh now walks back through /releases?per_page=10 to find the most recent release with binaries attached, surviving a one-off release-workflow failure without forcing an explicit pin.
KEYHOG_VARIANT
auto (cuda on hosts with the full CUDA toolkit, cpu otherwise)
Force the cuda or cpu variant of the Linux build during install. cpu is the WGPU + SIMD default which already dispatches on any compatible adapter via Vulkan; cuda adds the native-CUDA backend on hosts with libcuda + the matching toolkit.
Where the Hyperscan compiled database is cached across runs. Must be a user-owned dir; cold start (~3 s) becomes warm start (~150 ms) when the cache hits.
Set to 1 to make keyhog --version also print the full hardware probe (SIMD ISA, GPU adapter, CUDA / WGPU availability). Hidden by default because the probe initializes wgpu/Vulkan (~200 ms + a 134 MB MAP_SHARED segment), which makes keyhog --version 9× slower than keyhog --help. The same probe runs unconditionally for keyhog backend.
One of auto, cpu_fallback, simd_cpu, gpu, megascan. Overrides hardware-probe selection. Mostly useful for benchmarking.
KEYHOG_NO_GPU
(unset)
If set to 1, skip the GPU probe entirely. Useful for CI where the runner reports a software-rendered GPU and you’d rather force CPU. Mirrored by CI=true/GITHUB_ACTIONS=true auto-detection.
KEYHOG_REQUIRE_GPU
(unset)
If set to 1, refuse to run when no usable GPU adapter is detected. Useful for self-hosted runners where a regression on GPU initialization should fail loudly, not silently fall back to CPU.
KEYHOG_GPU_KERNEL
auto
Override the GPU dispatch kernel pick. Mostly a development knob for benchmarking individual kernel implementations.
Standard env var. Routes verifier traffic through a proxy. keyhog scan --proxy <URL> overrides.
KEYHOG_PROXY
auto
off disables proxy resolution entirely (useful for air-gapped builds where HTTPS_PROXY is set but no proxy is reachable). Also disables DNS pinning when off, so don’t set it to off casually.
NO_PROXY
(unset)
Standard env var. Hostnames to bypass the proxy on.
KEYHOG_* flags for changing detector behavior. Detector tuning is
via .keyhog.toml only, so the same scan reproduces across
developer machines without env-var contamination.
Anything named KEYHOG_API_KEY / KEYHOG_TOKEN. The scanner never
reports findings upstream; there’s no service to authenticate to.
KEYHOG_TELEMETRY_*. There is no telemetry. Findings stay local.