stella risk — Command Guide

Overview

The stella risk command group manages risk profiles, simulates risk scoring against SBOMs and assets, retrieves evaluation results, and verifies signed risk bundles.

Audience: security engineers and release operators who tune risk profiles and gate releases on risk grades.

Outputs are deterministic — results are stably ordered and timestamps are UTC ISO-8601 — so simulations and bundle verifications can be reproduced and audited.

Commands

Risk Profile Management (CLI-RISK-66-001)

# List risk profiles
stella risk profile list \
  [--tenant <id>] \
  [--include-disabled] \
  [--category <category>] \
  [--limit <num>] \
  [--offset <num>] \
  [--json]

Options:

FlagDescription
--include-disabledInclude disabled profiles in listing
--categoryFilter by profile category
--limitMaximum number of results (default 100)
--offsetPagination offset

Output Columns:

Risk Simulation (CLI-RISK-66-002)

# Simulate risk scoring
stella risk simulate \
  [--tenant <id>] \
  [--profile-id <id>] \
  [--sbom-id <id>] \
  [--sbom-path <path>] \
  [--asset-id <id>] \
  [--diff] \
  [--baseline-profile-id <id>] \
  [--json] \
  [--csv] \
  [--output <path>]

Options:

FlagDescription
--profile-idRisk profile to use for simulation
--sbom-idSBOM identifier for risk evaluation
--sbom-pathLocal path to SBOM file
--asset-idAsset identifier for risk evaluation
--diffEnable diff mode to compare with baseline
--baseline-profile-idBaseline profile for diff comparison

Required: At least one of --sbom-id, --sbom-path, or --asset-id.

Output:

Risk Results (CLI-RISK-67-001)

# Get risk evaluation results
stella risk results \
  [--tenant <id>] \
  [--asset-id <id>] \
  [--sbom-id <id>] \
  [--profile-id <id>] \
  [--min-severity <severity>] \
  [--max-score <score>] \
  [--explain] \
  [--limit <num>] \
  [--offset <num>] \
  [--json] \
  [--csv]

Options:

FlagDescription
--min-severityMinimum severity threshold (critical, high, medium, low, info)
--max-scoreMaximum score threshold (0-100)
--explainInclude explainability information

Output:

Risk Bundle Verification (CLI-RISK-68-001)

# Verify a risk bundle
stella risk bundle verify \
  [--tenant <id>] \
  --bundle-path <path> \
  [--signature-path <path>] \
  [--check-rekor] \
  [--json]

Options:

FlagDescription
--bundle-pathPath to the risk bundle file (required)
--signature-pathPath to detached signature file
--check-rekorVerify transparency log entry in Sigstore Rekor

Output:

Exit Codes

CodeMeaning
0Success (for verify: bundle is valid)
1Error or invalid bundle
4Input validation error
130Operation cancelled by user

JSON Schema: RiskSimulateResult

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "success": { "type": "boolean" },
    "profileId": { "type": "string" },
    "profileName": { "type": "string" },
    "overallScore": { "type": "number" },
    "grade": { "type": "string" },
    "findings": {
      "type": "object",
      "properties": {
        "critical": { "type": "integer" },
        "high": { "type": "integer" },
        "medium": { "type": "integer" },
        "low": { "type": "integer" },
        "info": { "type": "integer" },
        "total": { "type": "integer" }
      }
    },
    "componentScores": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "componentId": { "type": "string" },
          "componentName": { "type": "string" },
          "score": { "type": "number" },
          "grade": { "type": "string" },
          "findingCount": { "type": "integer" }
        }
      }
    },
    "diff": {
      "type": "object",
      "properties": {
        "baselineScore": { "type": "number" },
        "candidateScore": { "type": "number" },
        "delta": { "type": "number" },
        "improved": { "type": "boolean" },
        "findingsAdded": { "type": "integer" },
        "findingsRemoved": { "type": "integer" }
      }
    },
    "simulatedAt": { "type": "string", "format": "date-time" },
    "errors": { "type": "array", "items": { "type": "string" } }
  }
}

Examples

List all enabled risk profiles

stella risk profile list --json

Simulate risk for a local SBOM

stella risk simulate \
  --sbom-path ./my-sbom.json \
  --profile-id RP-security-baseline \
  --json

Compare risk between profiles

stella risk simulate \
  --asset-id my-app \
  --profile-id RP-strict \
  --diff \
  --baseline-profile-id RP-permissive

Get high-severity results with explanations

stella risk results \
  --asset-id my-app \
  --min-severity high \
  --explain

Verify a signed risk bundle

stella risk bundle verify \
  --bundle-path ./risk-bundle.tar.gz \
  --signature-path ./risk-bundle.sig \
  --check-rekor

Risk Grading Scale

GradeScore RangeDescription
A+95-100Excellent
A90-94Very Good
B+85-89Good
B80-84Above Average
C+75-79Average
C70-74Below Average
D+65-69Poor
D60-64Very Poor
F0-59Failing

See also