Skip to main content
prb is the official command-line interface for Probo. Use it to manage risks, vendors, controls, evidence, and more — from scripts, CI pipelines, or your terminal.

Installation

git clone https://github.com/getprobo/probo.git
cd probo
make build
# Binary is at bin/prb

Authentication

Run prb auth login to configure the CLI. It will prompt you for your Probo hostname, API token, and a default organization ID.
prb auth login
For non-interactive use (CI pipelines):
prb auth login \
  --hostname app.getprobo.com \
  --token YOUR_API_KEY \
  --org YOUR_ORG_ID
Generate an API key in Probo under Settings → Access → API keys (see API keys).

Configuration file

prb stores credentials in a YAML config file. The location follows the OS convention:
OSPath
macOS~/Library/Application Support/prb/config.yaml
Linux~/.config/prb/config.yaml
Windows%APPDATA%\prb\config.yaml

Environment variables

VariableEffect
PROBO_NO_INTERACTIVE=1Disable all interactive prompts
CI=trueSame as PROBO_NO_INTERACTIVE=1
NO_COLORDisable ANSI color output
You can also pass --no-interactive or --no-color as persistent flags to any command.

Commands

prb auth — authentication

SubcommandDescription
prb auth loginAuthenticate with a Probo host
prb auth logoutRemove stored credentials
prb auth statusShow current authentication status
# Interactive login
prb auth login

# Non-interactive
prb auth login --hostname app.getprobo.com --token TOKEN --org ORG_ID

prb org — organizations

SubcommandDescription
prb org listList organizations the authenticated user belongs to

prb risk — risk management

SubcommandDescription
prb risk listList risks in an organization
prb risk createCreate a new risk
prb risk view <id>View a risk
prb risk update <id>Update a risk
prb risk delete <id>Delete a risk
Key flags for prb risk list:
FlagDefaultDescription
--orgconfig defaultOrganization ID
--limit, -L30Maximum number of results
--filter, -qSearch query
--order-byField to sort by (CREATED_AT, NAME, CATEGORY, TREATMENT, INHERENT_RISK_SCORE, RESIDUAL_RISK_SCORE)
--order-directionDESCSort direction (ASC, DESC)
--output, -otableOutput format (table, json)
Key flags for prb risk create:
FlagRequiredDescription
--nameYes (interactive fallback)Risk name
--categoryYes (interactive fallback)Risk category
--treatmentYes (interactive fallback)MITIGATED, ACCEPTED, AVOIDED, or TRANSFERRED
--inherent-likelihoodYesLikelihood score 1–5
--inherent-impactYesImpact score 1–5
--residual-likelihoodResidual likelihood 1–5
--residual-impactResidual impact 1–5
--descriptionRisk description
--noteRisk note
--ownerOwner profile ID
# Create a risk interactively
prb risk create --inherent-likelihood 3 --inherent-impact 4

# Create a risk non-interactively
prb risk create \
  --name "Data breach via third-party vendor" \
  --category "Security" \
  --treatment MITIGATED \
  --inherent-likelihood 3 \
  --inherent-impact 4

# List risks as JSON
prb risk list --output json

prb control — control management

SubcommandDescription
prb control listList controls
prb control createCreate a new control
prb control view <id>View a control
prb control update <id>Update a control
prb control delete <id>Delete a control

prb framework — framework management

SubcommandDescription
prb framework listList frameworks
prb framework createCreate a new framework
prb framework view <id>View a framework
prb framework update <id>Update a framework
prb framework delete <id>Delete a framework

prb evidence — evidence management

SubcommandDescription
prb evidence listList evidence records
prb evidence view <id>View an evidence record
prb evidence delete <id>Delete an evidence record

prb user — user management

SubcommandDescription
prb user listList users in an organization
prb user view <id>View a user profile

prb finding — finding management

SubcommandDescription
prb finding listList findings (nonconformities, observations, exceptions)
prb finding createCreate a new finding
prb finding view <id>View a finding
prb finding update <id>Update a finding
prb finding delete <id>Delete a finding

prb soa — statement of applicability

SubcommandDescription
prb soa listList statements of applicability
prb soa createCreate a new SoA
prb soa view <id>View an SoA
prb soa update <id>Update an SoA
prb soa delete <id>Delete an SoA
prb soa statementManage individual applicability statements within an SoA

prb webhook — webhook subscriptions

SubcommandDescription
prb webhook listList webhook subscriptions
prb webhook createCreate a new webhook subscription
prb webhook view <id>View a webhook subscription
prb webhook update <id>Update a webhook subscription
prb webhook delete <id>Delete a webhook subscription
prb webhook eventList or view webhook events

prb context — organization context

Manage the structured context sections that describe your organization to AI agents (product, architecture, team, processes, customers).
SubcommandDescription
prb context getGet the current organization context
prb context updateUpdate one or more context sections
# View the current context
prb context get --org YOUR_ORG_ID

# View as JSON
prb context get --output json
The organization context is used by Probo’s AI agents to understand your company’s product, technical architecture, team structure, processes, and customer base when generating compliance suggestions.

prb config — CLI configuration

SubcommandDescription
prb config listList all configuration keys and values
prb config get <key>Get the value of a configuration key
prb config set <key> <value>Set a configuration key
Available keys: editor, browser, pager, prompt, http_timeout.

prb version — show version

prb version

prb api — raw API access

Send raw GraphQL queries to the Probo API.

prb browse — open in browser

Open the current organization in a browser.

prb auditlog — audit log

Browse the organization audit log.

Shell completion

Generate and install tab-completion for your shell:
# Load in current session
source <(prb completion bash)

# Install permanently (Linux)
prb completion bash > /etc/bash_completion.d/prb

# Install permanently (macOS with Homebrew)
prb completion bash > $(brew --prefix)/etc/bash_completion.d/prb

Using prb in CI

Set PROBO_NO_INTERACTIVE=1 (or CI=true) to disable all interactive prompts. Always pass --org explicitly, or configure a default organization during login.
export PROBO_NO_INTERACTIVE=1

prb auth login \
  --hostname app.getprobo.com \
  --token "$PROBO_API_KEY" \
  --org "$PROBO_ORG_ID"

# List risks as JSON for processing
prb risk list --output json

API keys

Create API keys for authenticating prb and other integrations.

MCP integration

Connect AI agents directly to Probo via the Model Context Protocol.

Build docs developers (and LLMs) love