Skip to main content

B3n GateKeeper CLI

The CLI authenticates through OAuth device authorization and stores tokens in the OS keyring when available, falling back to a 0600 local credentials file. It refreshes expired access tokens with the stored refresh token and accepts B3N_GATEKEEPER_TOKEN or B3N_GATEKEEPER_ACCESS_TOKEN for automation.

b3n-gatekeeper doctor --url https://auth.example.com
b3n-gatekeeper login --url https://auth.example.com
b3n-gatekeeper whoami
b3n-gatekeeper org list
b3n-gatekeeper org switch <org-id> --client-id <client-id> --audience example-api --scope api:read
b3n-gatekeeper session list
b3n-gatekeeper session label <session-id> "Work laptop"
b3n-gatekeeper session revoke <session-id>
b3n-gatekeeper token list
b3n-gatekeeper token create "Local dev key" --scope auth:read --audience gatekeeper-api
b3n-gatekeeper token rotate <token-id>
b3n-gatekeeper token validate gk_xxx --audience gatekeeper-api --scope auth:read

b3n-gatekeeper doctor checks public health, OIDC discovery, JWKS, owner/setup state, SMTP/dev-mode, management capabilities, and visible clients, projects, tokens, and sessions.

If --url is omitted, the CLI reads B3N_GATEKEEPER_URL and otherwise defaults to http://localhost:8000 for local development.

Client Creation

Operators can register public browser/CLI clients or confidential backend/API clients from the CLI:

b3n-gatekeeper client create "Example web" \
  https://app.example.com/auth/callback \
  example-api \
  --url https://auth.example.com \
  --client-id example-web \
  --public \
  --origin https://app.example.com \
  --scope "openid profile email auth:read"

Confidential clients return a copy-once secret. To avoid printing that secret to terminal history, logs, or automation output, the CLI requires an explicit new output file and redacts the JSON response:

b3n-gatekeeper client create "Example backend" \
  https://api.example.com/auth/callback \
  example-api \
  --url https://auth.example.com \
  --client-id example-backend \
  --confidential \
  --origin https://api.example.com \
  --scope "openid profile email auth:read" \
  --secret-output /path/to/private/example-backend.client-secret

The secret output file is created with 0600 permissions and must not already exist. Move its contents into the relevant secret store, then remove the local copy.

Generic GATEKEEPER_* names are intentionally not read by this B3n package so local automation cannot accidentally reuse credentials from another GateKeeper installation.

Metadata

Release files for b3n-gatekeeper 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for b3n-gatekeeper 0.1.1
File Size Uploaded
b3n_gatekeeper-0.1.1.tar.gz 9.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for b3n-gatekeeper 0.1.1
File Interpreter ABI Platform
b3n_gatekeeper-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 19.3 kB

Release files / b3n_gatekeeper-0.1.1.tar.gz

Download URL b3n_gatekeeper-0.1.1.tar.gz
Size 9.5 kB
Tags Source
SHA-256 checksum
How to use checksums
90338182ed9efd4df92148dc6a373cb8f7314b94cc8e054f7a6967d2e35fd235
BLAKE2b-256 checksum
How to use checksums
032866320e97c751dc1b02e39498776a462d5cf7250f09a0598694fd9ce995e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 9, 2026.

Transparency log

Release files / b3n_gatekeeper-0.1.1-py3-none-any.whl

Download URL b3n_gatekeeper-0.1.1-py3-none-any.whl
Size 9.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
196657ac4700dc171db0b7308e3a4035e5dc39130dc897e0051d778150f324d5
BLAKE2b-256 checksum
How to use checksums
f96adee8fad9fae30b9e0194c07f1041c0c1a26939b3d205cd34a87848382afc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page