Skip to main content

bonafide-raas-cli

Command-line client for Bonafide RaaS (retrieval-as-a-service). It returns cited answers from the Bonafide catalog, runs the multi-agent answer path, runs named skills, and calls the MCP tools. The CLI is a thin client over the REST API, so it holds no secrets of its own.

Install

pipx install bonafide-raas-cli          # or: pip install bonafide-raas-cli
raas --help

Add the AWS extra only if you use RAAS_CREDENTIALS_SECRET:

pipx install "bonafide-raas-cli[aws]"

Configure

Set the API base URL and sign in. Your administrator provides the URL and the credentials. A bearer token is the only credential the API needs.

Variable Purpose
RAAS_URL API base URL (required)
RAAS_TOKEN Bearer token, sent as Authorization: Bearer. Set the token only, without the Bearer prefix
RAAS_API_KEY Optional. Sent as x-api-key when set. The API no longer requires it
RAAS_ISSUER, RAAS_CLIENT_ID, RAAS_CLIENT_SECRET Client-credentials sign-in for automation
RAAS_CREDENTIALS_SECRET A secret name or ARN holding the client settings (needs the aws extra)

For a person signing in interactively, use device-code login: raas login. The token is cached locally.

Authentication

The API checks the bearer token at the gateway before any request reaches the service. The token must be a Keycloak access token issued to a client, and it must carry a client_id claim. A token without that claim is rejected with 401 Unauthorized.

Troubleshooting

Symptom Likely cause
401 Unauthorized Token missing, expired, issued by the wrong Keycloak realm, or without a client_id claim. Sign in again, or ask your administrator to check the client's token settings
401 after setting RAAS_TOKEN The value includes Authorization: or Bearer. Set the bare token
Exit code 3 No credentials set. See the table above

Use

raas health                                            # no credentials needed
raas retrieve "Which hotels are in New York City?"     # cited answer
raas retrieve "..." --mode sources                     # full source records
raas agent "..."                                       # multi-agent answer; read misalignment_flags
raas skills list
raas skills run facts "..."
raas mcp tools
raas mcp call retrieval_search --args '{"query": "..."}'
raas job <job_id>

Output is JSON on stdout. Exit codes: 0 success, 1 API error (details on stderr), 2 usage error, 3 missing configuration.

Changes

0.1.1: The API accepts a bearer token alone. RAAS_API_KEY is optional and no longer required, so existing configurations keep working. Added the Authentication and Troubleshooting sections.

0.1.0: First public release.

Compatibility

The version follows semantic versioning. A breaking change to the API contract is released as a new major version. Before 1.0, minor versions may still include breaking changes; each release notes them.

Support

Report problems with the command, its version (raas --version), and the exit code. Do not send API keys, tokens or secret names.

License

Apache License 2.0. See LICENSE. This license covers the CLI code only; use of the RaaS service and its data is governed by your service agreement.

Metadata

Release files for bonafide-raas-cli 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 bonafide-raas-cli 0.1.1
File Size Uploaded Provenance
bonafide_raas_cli-0.1.1.tar.gz 13.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for bonafide-raas-cli 0.1.1
File Interpreter ABI Platform
bonafide_raas_cli-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 29.1 kB

Release files / bonafide_raas_cli-0.1.1.tar.gz

Download URL bonafide_raas_cli-0.1.1.tar.gz
Size 13.5 kB
Tags Source
SHA-256 checksum
How to use checksums
dba2ed2939e45ebabbaa74eb6df999c2379044209d38f5e853b25362b34b9eca
BLAKE2b-256 checksum
How to use checksums
72f23809b4d48819128a970aede53ab33715dbaa4aaff4af6c9d5745ba977061
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 14, 2026.

Transparency log

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

Download URL bonafide_raas_cli-0.1.1-py3-none-any.whl
Size 15.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e40d2949a1b715d604109c9bd971df1ece9099ed80c1855e20f672d0a17eddbb
BLAKE2b-256 checksum
How to use checksums
1b02357489877ab29ac9c134cd5ccfe737d7140bf991b31ac18778d47d265590
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 14, 2026.

Transparency log

Security for bonafide-raas-cli 0.1.1

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for bonafide_raas_cli-0.1.1.tar.gz

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 Oct 14, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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