Documentation
¶
Index ¶
Constants ¶
const ( ExitSuccess = apicontract.ExitSuccess ExitError = apicontract.ExitError ExitUsageError = apicontract.ExitUsageError ExitFuzzMatch = apicontract.ExitFuzzMatch ExitFailOnGate = apicontract.ExitFailOnGate ExitIncomplete = apicontract.ExitIncomplete )
Process exit codes. The table itself lives in pkg/apicontract, shared with the REST API's error vocabulary; these names keep pkg/cli's call sites short.
`1` used to mean both "the scan crashed" and "the scan worked and found a high-severity finding" — opposite outcomes that a CI job or an agent has to react to differently, and could not tell apart. Splitting them is the whole change; the rest of the table is written down so a consumer can rely on it.
0 success 1 error 2 usage error (bad flag, bad combination) 3 fuzz --fail-on-match matched 4 --fail-on <severity> gate tripped 5 incomplete: the work ran but did not finish (timed_out, budget_exhausted, partial)
--soft-fail still forces 0 everywhere, unchanged: a caller that has opted out of exit-code gating opted out of all of it.
const AgentSchemaVersion = apicontract.SchemaVersion
AgentSchemaVersion is the contract version of every -j/--json envelope. A consumer gates on it; it is bumped on any breaking field change.
Its absence was the real problem. A driver could not write one parser, because different commands (and different vigolium versions) named the same thing differently — the row array was `data` or `records` or `traffic` or `results` or `http_records` depending on where you asked, and drift was discovered as a parse failure in production rather than as a version check at startup. There is now one shape, one canonical name per field, and a number to check.
const DiscoveryAuthors = "@j3ssie"
DiscoveryAuthors credits the discovery and spidering phases.
Variables ¶
var ( Name = "vigolium" Description = "High-fidelity vulnerability scanner that combines speed, modularity, and precision" Author = "@j3ssie" InitialContributor = "@theblackturtle" Version = "v0.5.3" Commit = "" BuildTime = "" )
Functions ¶
func FormatExamples ¶
FormatExamples builds a colored example block for cobra commands. Lines starting with "#" are rendered as gray comments. All other lines are rendered as cyan commands.
func GetDiscoveryBanner ¶
func GetDiscoveryBanner() string
GetDiscoveryBanner returns the banner crediting the discovery/spidering co-author alongside the default author.
func GetOliumBanner ¶
func GetOliumBanner() string
GetOliumBanner returns the startup banner for the olium agent CLI. Uses a cooler palette (cyan body + magenta eye) to distinguish it from the scanner banner at a glance.
func MachineContractCommands ¶ added in v0.5.3
MachineContractCommands returns every runnable command path (without the root name; "" is the root) and the kind of -j output it declares: read, mutation, scan, stream or interactive.
It is the machine_kinds.go table, which TestMachineContractCobraTree keeps equal to the runnable command tree. Exported for the runtime smoke matrix (test/e2e/machine_contract_e2e_test.go), which must cover every leaf and cannot reach the cobra tree from outside the package.
Types ¶
type Liveness ¶ added in v0.5.3
type Liveness struct {
// LastWriteAt is the newest write across every signal; zero when there is
// none.
LastWriteAt time.Time
// Sources names the signals that were present, newest-first is not implied.
Sources []string
// Stale: no signal has advanced within livenessStaleAfter, or the writing
// process is confirmed gone. Only meaningful for a session whose status is
// still "running".
Stale bool
// ProcessGone is set when the runner's PID could be checked — it ran on this
// host — and says whether that process has exited. Nil when it could not be
// checked (another host, or no PID recorded).
ProcessGone *bool
}
Liveness is what every reader that asks "is this session still running?" gets: the newest write any signal shows, which signals contributed, and the verdict.
type ResolvedInput ¶
type ResolvedInput struct {
Target string // resolved target URL
InputData string // raw input data (may be empty)
}
ResolvedInput holds the result of resolving raw input and target from CLI flags/stdin.
Source Files
¶
- agent.go
- agent_audit.go
- agent_audit_auth.go
- agent_audit_report.go
- agent_auth_file.go
- agent_autopilot.go
- agent_autopilot_knowledge_base.go
- agent_autopilot_knowledge_base_traffic.go
- agent_autopilot_olium.go
- agent_autopilot_prior_context.go
- agent_autopilot_resume.go
- agent_child_env.go
- agent_envelope.go
- agent_error.go
- agent_input.go
- agent_list_modes.go
- agent_olium.go
- agent_olium_overrides.go
- agent_piolium.go
- agent_preflight_flags.go
- agent_run_document.go
- agent_runtime_log.go
- agent_session.go
- agent_session_tui.go
- agent_setup_hint.go
- agent_stateless_export.go
- agent_swarm.go
- agent_swarm_multiapp.go
- agent_swarm_records.go
- agent_triage.go
- agentview.go
- audit_helpers.go
- banner.go
- bridge_url_flag.go
- burp_bridge_import.go
- burp_scope_targets.go
- cmd_import.go
- cmd_init.go
- config_load.go
- config_path.go
- confirm.go
- curl_output.go
- date_filter.go
- db.go
- db_clean.go
- db_clean_selection.go
- db_compact.go
- db_export.go
- db_intent.go
- db_list.go
- db_migrate.go
- db_path_env.go
- db_seed.go
- db_seed_findings.go
- db_seed_findings_longform.go
- db_seed_records.go
- db_seed_scans.go
- db_stats.go
- discovery_flags.go
- discovery_wordlist.go
- doctor.go
- doctor_skill.go
- endpoints.go
- examples.go
- exit_codes.go
- export.go
- export_bundle.go
- extensions.go
- extensions_eval.go
- extensions_example.go
- extensions_json.go
- extensions_lint.go
- extensions_run.go
- extensions_testcmd.go
- filter_summary.go
- finding.go
- finding_burp.go
- finding_curl.go
- finding_glob_records.go
- finding_id_flag.go
- finding_lifecycle.go
- finding_load.go
- finding_mark.go
- finding_tree.go
- finding_tui.go
- finding_verify.go
- flag_helpers.go
- flag_suggest.go
- flag_value.go
- fsexport.go
- fuzz.go
- fuzz_net.go
- global_options.go
- import_bridge_filters.go
- ingest.go
- ingest_batch.go
- ingest_outcome.go
- init.go
- input_modes.go
- inventory.go
- js.go
- json_legacy_keys.go
- json_output_file.go
- jsruntime.go
- kit.go
- kit_harvest.go
- kit_js_beautify.go
- kit_js_beautify_extract.go
- kit_jwt_crack.go
- kit_oast.go
- kit_param_mine.go
- kit_payload.go
- kit_secret_scan.go
- kit_tmp_clean.go
- kit_wordlist.go
- liveness.go
- log.go
- log_json.go
- log_staleness.go
- log_transcript.go
- log_tui.go
- machine.go
- machine_commands.go
- machine_kinds.go
- markdown_highlight.go
- markdown_view.go
- module.go
- module_enable.go
- module_selection.go
- mutation_output.go
- oast_ingest.go
- output_budget.go
- output_hygiene.go
- pace_flag.go
- package_manager.go
- params.go
- presentation_mode.go
- probe_flags.go
- project.go
- project_settings.go
- project_source.go
- project_tui.go
- read_context.go
- readonly_flag.go
- recover_db.go
- replay.go
- replay_browser.go
- replay_bulk.go
- replay_output.go
- report_flags.go
- request_budget.go
- root.go
- run.go
- scan.go
- scan_admission.go
- scan_all_records.go
- scan_dbisolate.go
- scan_diff.go
- scan_direct_oast.go
- scan_document.go
- scan_dry_run.go
- scan_events.go
- scan_events_pipe_unix.go
- scan_execute.go
- scan_export.go
- scan_fail_on.go
- scan_flags.go
- scan_formats.go
- scan_pace.go
- scan_parallel.go
- scan_print_finding.go
- scan_print_traffic.go
- scan_reachability.go
- scan_request.go
- scan_request_scheme.go
- scan_resolve.go
- scan_resume.go
- scan_setup.go
- scan_signals.go
- scan_status.go
- scan_summary.go
- scan_targets.go
- scan_url.go
- scan_url_probe.go
- scan_url_row.go
- scan_wait.go
- scan_webhook.go
- schema.go
- schema_registry.go
- scope.go
- scope_set.go
- scratch_db.go
- server.go
- server_ca.go
- server_proxy.go
- session_check.go
- session_lint.go
- session_load.go
- session_ls.go
- session_retention.go
- session_totp.go
- session_view.go
- severity_gate.go
- shims.go
- skills.go
- skills_genflags.go
- skills_manifest.go
- source_must_exist.go
- spider_fanout_tip.go
- stateless_db.go
- stateless_flag.go
- stdin.go
- stdout_protocol.go
- storage.go
- storage_download.go
- storage_io.go
- storage_ls.go
- storage_presign.go
- storage_results.go
- storage_rm.go
- storage_upload.go
- strategy.go
- strategy_json.go
- target_seed.go
- traffic.go
- traffic_bridge.go
- traffic_burp_glob.go
- traffic_curl.go
- traffic_extract.go
- traffic_group.go
- traffic_import_limit.go
- traffic_replay.go
- traffic_tree_redirects.go
- traffic_tui.go
- transcript.go
- update.go
- updatecheck.go
- updatecheck_reexec_unix.go
- usage.go
- usage_examples.go
- version.go
- wire.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package configcmd implements the `vigolium config` command group.
|
Package configcmd implements the `vigolium config` command group. |
|
internal
|
|
|
clicommon
Package clicommon holds shared, leaf-level helpers used across the vigolium CLI command tree: the database-connection cache, project resolution, the --watch loop, logger flushing, and display formatting.
|
Package clicommon holds shared, leaf-level helpers used across the vigolium CLI command tree: the database-connection cache, project resolution, the --watch loop, logger flushing, and display formatting. |
|
Package tui provides a reusable list picker for CLI list subcommands.
|
Package tui provides a reusable list picker for CLI list subcommands. |