Skip to main content

Installation

Step 1: Install Vigolium Open Source

If ~/.local/bin was not already on your PATH, activate it without restarting your shell:

Step 2: Validate the installation

doctor reports any missing optional dependencies (a browser for SPA spidering, nuclei templates for the known-issue scan, bun/pi for agent drivers) and confirms your config is valid. Let it auto-install anything missing:
--only accepts any of: nuclei, chrome, bun, claude, agent-browser, pi, piolium.
Everything Vigolium stores lives under ~/.vigolium/ (override with VIGOLIUM_HOME): config at vigolium-configs.yaml, scan DB at database-vgnm.sqlite, agent artifacts under agent-sessions/. Run vigolium init to create the workspace explicitly.

Step 3: Run a full scan

vigolium scan runs the full multi-phase pipeline (discovery → spidering → dynamic-assessment) using the balanced strategy by default:
Tune the depth/speed trade-off with a strategy preset:
--intensity quick|balanced|deep is a higher-level alias that also tunes the scanning profile. Not sure which mode to use? See Choosing a Scan Mode.

Step 4: One-shot stateless scan

For CI/CD pipelines, scripting, or quick ad-hoc checks where you don’t want anything left behind on disk, add --stateless and export results with -o. Vigolium spins up a temporary SQLite database, runs the requested phases, writes the output, then deletes the database on exit.
Multiple targets each get an isolated temp database and a per-host filename suffix so results don’t overwrite:
--stateless and --db are mutually exclusive. See Native Scan & Stateless Scanning for the full recipe book.

Step 5: Choose what to scan

Supported input modes (-I): urls, openapi, swagger, wsdl (soap, svc), postman, curl, burpraw, burpxml, nuclei, har. An unknown -I value is rejected with a clear error (no silent fallback).

Step 6: Pick specific modules (optional)

Step 7: Get results out

By default findings stream to the console. For files or machine-readable output, use --format with -o:

Step 8: Run a single phase

Use run <phase> (an alias for scan --only <phase>) when you only want one stage of the pipeline:
Phases: ingestion, discovery, external-harvest, spidering, known-issue-scan, dynamic-assessment, extension.

A note on persistence

vigolium scan writes results to a persistent SQLite database at ~/.vigolium/database-vgnm.sqlite, so you can browse them afterward:
For one-shot runs that leave nothing behind (CI, ad-hoc checks), add --stateless and export with -o. See Native Scan & Stateless Scanning for the full set of recipes.

Updating & uninstalling

Homebrew, npm, and Docker installs are upgraded through their own tooling (brew upgrade vigolium / npm update -g @vigolium/vigolium / docker pull), not vigolium update.
Releases are signed, and the update verifies the signature (v0.5.3). vigolium update now updates in process with minisign verification rather than shelling out to an installer script, and the installers fail closed on a missing checksum or signature instead of proceeding. VIGOLIUM_UPDATE_BASE_URL points the whole mechanism at a mirror or an internal release host.VIGOLIUM_AUTO_UPDATE only acts at an interactive terminal as of v0.5.3 — a CI job or an agent harness will not have its binary swapped mid-pipeline.

Next steps