Search the Virginia ABC catalog and check live store inventory from your terminal — including allocated and online-only bottles the price list never shows. One command, real stock, ranked by distance.
vabc inventory check 953714 --near 22182 | Store | City | Qty | Miles |
|---|---|---|---|
| #219 | Vienna | 21 | 0.0 |
| #231 | Vienna | 26 | 1.2 |
| #76 | Falls Church | 33 | 2.8 |
| #346 | Falls Church | 14 | 2.9 |
| #267 | McLean | out | 3.3 |
A single static binary, no runtime deps, no login. Pick your poison.
curl -fsSL https://vabc-cli.vercel.app/install.sh | sh brew install rnwolfe/tap/vabc go install github.com/rnwolfe/vabc/cmd/vabc@latest The curl script verifies the SHA-256 before installing. Then run vabc doctor.
The website makes you click. vabc answers in one line — and returns the
product code, so the next call just works.
Every command is engineered for autonomous callers: structured, bounded, self-describing, and safe by default.
JSON on stdout, notes on stderr. Field projection and bounded results.
vabc --json product search rum \ --select productCode,name
Distinct, documented codes — not a bare 1. 5 not found, 7 rate-limited…
{ "error": …, "code": "NOT_FOUND",
"remediation": … } The full usage contract ships inside the binary — no repo, no network.
vabc agent vabc schema --json
No mutating commands. A default-deny gate guards any future write.
vabc inventory check … # safe
Untrusted target text is wrapped so an agent won't execute it.
⟦UNTRUSTED⟧ … ⟦/UNTRUSTED⟧
Persistent cross-process throttle. No login, no secrets, no scraping evasion.
go get github.com/rnwolfe/vabc
go install github.com/rnwolfe/vabc/cmd/vabc@latest