Advisory AI CLI Usage

Audience: CI authors and operators driving Advisory AI from the command line, especially in offline and air-gapped pipelines.

This guide shows how to drive Advisory AI from the Stella Ops CLI (stella) using the advise run verb, with deterministic fixtures (CLI-VULN-29-001, CLI-VEX-30-001). It is designed for CI and offline use, and mirrors the guardrail and policy contracts captured in Guardrails and evidence and Policy assistant parameters.

Prerequisites

Quickstart

stella advise run summary \
  --advisory-key csaf:redhat:RHSA-2025:1001 \
  --artifact-id registry.stella-ops.internal/runtime/api \
  --policy-version "$ADVISORYAI__POLICYVERSION" \
  --profile fips-local \
  --timeout 30 \
  --json

Exit codes

CodeMeaningNotes
0Success (cache hit or miss; output cached or freshly generated)Includes outputHash and citations.
2Validation error (missing advisory key, bad profile)Mirrors HTTP 400.
3Context unavailable (SBOM/LNM/policy missing)Mirrors HTTP 409 advisory.contextUnavailable.
4Guardrail block (PII, citation gap, prompt too large)Mirrors HTTP 422 advisory.guardrail.blocked.
5Timeout waiting for outputRespect --timeout in seconds (0 = no wait).
7Transport/auth failureNetwork, TLS, or token issues.
12Remote profile disabledReturned when cloud-openai is selected without recorded tenant consent.

Scripting patterns

Sample output (trimmed)

{
  "taskType": "Summary",
  "profile": "fips-local",
  "generatedAt": "2025-11-24T00:00:00Z",
  "outputHash": "sha256:cafe...babe",
  "citations": [{"index":1,"kind":"advisory","sourceId":"concelier:csaf:redhat:RHSA-2025:1001:paragraph:12"}],
  "context": {
    "planCacheKey": "adv-summary:csaf:redhat:RHSA-2025:1001:fips-local",
    "sbom": {"artifactId":"registry.stella-ops.internal/runtime/api","versionTimeline":8,"dependencyPaths":5}
  }
}

Offline kit notes

Troubleshooting