@binclusive/cli
v0.2.0
Published
Binclusive accessibility CLI — run audits and view violation tickets from your terminal.
Downloads
736
Readme
@binclusive/cli
Run accessibility audits and view violation tickets from your terminal.
npm install -g @binclusive/cliThis installs two equivalent commands — use whichever you prefer:
b8e --help
binclusive --helpQuickstart
b8e login # authenticate with Binclusive (opens your browser)
b8e whoami # show the current user and organization
b8e audit # run an accessibility audit
b8e tickets # list and view violation ticketsRun b8e with no arguments in an interactive terminal to get a menu.
Accessibility
The CLI is screen-reader friendly. It auto-detects a running screen reader (VoiceOver, NVDA, JAWS, Orca) and switches to a linear mode where menus and pickers announce the focused item and its position, and audits announce progress and findings instead of drawing a dashboard.
- Force it on:
b8e --screen-reader …(or-a, orINK_SCREEN_READER=true) - Force it off:
b8e --no-screen-reader … - During an audit, press
rto hear the current status.
Audits
b8e audit --project <id> --format prettyCommon flags:
| Flag | Description |
| --- | --- |
| --project <id> | Project to audit |
| --journeys <id,id,...> | Journey IDs to audit, comma-separated — or all for every journey in the project |
| --org <id\|slug\|name> | Override the saved organization (also B8E_ORG_ID) |
| --config <path> | Path to .b8e.yml (default: ./.b8e.yml) |
| --format <pretty\|json\|sarif> | Output format (default: pretty) |
| --fail-on <critical\|major\|minor> | Exit non-zero at/above this severity |
| --max-violations <n> | Exit non-zero if violations exceed n |
| --output <path> | Write json/sarif output to a file |
| --timeout <ms> | Per-journey timeout (default: 600000) |
| --ci | CI mode (non-interactive) |
| --verbose | Verbose logging |
The sarif output drops straight into GitHub code scanning and other SARIF
consumers. Run b8e audit --help for the full list.
Browser setup (audits only)
Audits drive a real browser. The browser engine is downloaded on demand, not at install time, so the base CLI stays small. The first time you run an audit you'll be prompted to install Chromium:
npx playwright install chromiumIf you installed the CLI with --omit=optional (recommended for slim CI
images), also add the Playwright package first:
npm i -g playwright && npx playwright install chromiumCI usage
The CLI is non-interactive under --ci and exits with a non-zero status when
your thresholds are exceeded, so it drops into a pipeline step directly:
b8e audit --ci --project "$PROJECT_ID" --fail-on major --format sarif --output audit.sarifAuthenticate CI runs with a Binclusive API token via the environment rather than
b8e login. See the docs for token setup.
Audit every journey
Pass --journeys all to audit every journey in the project without listing IDs:
b8e audit --ci --project "$PROJECT_ID" --journeys all --fail-on majorJourneys run one at a time. If one fails, the rest still run — the command prints a summary of which journeys failed at the end and exits non-zero.
Exit codes
| Code | Meaning |
| --- | --- |
| 0 | All journeys passed and thresholds were met |
| 1 | A --fail-on or --max-violations threshold was exceeded |
| 2 | Not authenticated (run b8e login) |
| 3 | One or more journeys errored (timeout, no report) |
| 4 | Missing or invalid arguments (e.g. no --project/--journeys) |
| 5 | Browser engine not installed (see Browser setup) |
Configuration
Flags can also live in a .b8e.yml file in the working directory (override the
path with --config). Flags passed on the command line take precedence.
project: proj_abc
journeys:
- journey_1
- journey_2 # or a single `all` entry for every journey
fail_on: major
max_violations: 0
format: sarif
timeout: 600000| Environment variable | Purpose |
| --- | --- |
| B8E_ORG_ID | Override the saved organization (same as --org) |
| CI | Setting CI=true enables non-interactive mode (same as --ci) |
Support
Docs and help: binclusive.io · [email protected]
© 2026 Binclusive. Proprietary software distributed in compiled form. See LICENSE.md. Not open source.
