Skip to main content

vulkro-sf ai

Chooses and tests the optional local AI model that the advisory commands use. The AI layer never changes a finding, its severity, the readiness report, SARIF or SBOM output, or an exit code.

vulkro-sf ai setup # pick, pull and test a model
vulkro-sf ai setup --model qwen2.5-coder:7b --yes --no-install # scripted
vulkro-sf ai status

By default it uses a local Ollama runtime on loopback, so nothing leaves your machine, and it still works under VULKRO_OFFLINE. A cloud endpoint is refused offline. The selection is stored in ~/.vulkro/scans.db and shared with vulkro ai.

SubcommandWhat it does
setupWizard: install Ollama if missing (only after you confirm), recommend a model, pull it, self-test, save. Flags: --model, --url, --yes, --no-install, --byok (cloud, key from VULKRO_AI_KEY only, never written to disk).
listInstalled models plus the recommended Apache-2.0 and MIT models.
use <model>Set the active model. --pull pulls it if missing.
pull <model>Pull a model.
statusCurrent model, runtime, reachability and offline mode. --format json for tools.
testRun a short self-test against the active model.
offTurn the AI layer off, keeping the selection.

Precedence: the per-run flags --ai-model, --ai-url, --no-ai, then VULKRO_AI_MODEL and VULKRO_AI_URL, then the saved selection, then a default for the machine.

Where it is used​

CommandFlagWhat you get
scan--ai-explainA plain-language note on why each finding matters for the security review.
triageon by defaultAdvisory explanations for the classes a reviewer always checks.
fix--ai, --ai --writeApex patches, kept only if a re-scan shows the finding gone.
org perms--explainWhy each posture finding is risky.

If the runtime is unreachable, the command says so and the deterministic result stands.

Exit codes​

CodeMeaning
0Success.
2Error (runtime unreachable, model missing and declined, bad arguments).