
vigolium v0.3.6
Vigolium - Scanner di vulnerabilità ad alta fedeltà che combina IA agentiva con velocità nativa, modularità e precisione
Vigolium - Scanner di vulnerabilità ad alta fedeltà che fonde IA agentica con velocità nativa, modularità e precisione
Vigolium offre due modalità di scansione complementari:
-
Native Scan (
vigolium scan): Veloce, potente e flessibile. Scansione deterministica e multifase con 317 moduli tra scoperta dei contenuti, spidering di browser/SPA e audit attivo/passivo, che copre classi di vulnerabilità come injection, controllo degli accessi, file/percorsi, API/protocolli, framework-specifiche, cloud/infra e out-of-band (OAST). -
Agentic Scan (
vigolium agent): Esegue un audit approfondito del tuo codebase. Scansione basata su IA che pianifica autonomamente gli attacchi, seleziona i moduli, genera estensioni personalizzate e classifica i risultati, combinando l'audit approfondito del codice sorgente con una scansione delle vulnerabilità autonoma e mirata.
Installazione
Installazione rapida (consigliata)```bash
curl -fsSL https://vigolium.com/install.sh | bash
### [npm](https://www.npmjs.com/package/@vigolium/vigolium)```bash
npm install -g @vigolium/vigolium
Altri metodi come Docker o Build dal sorgente
Docker```bash
docker pull j3ssie/vigolium:latest docker run --rm j3ssie/vigolium:latest scan -h
### Compilare dal sorgente```bash
git clone https://github.com/vigolium/vigolium.git
cd vigolium
make build # build and install to $GOPATH/bin
Richiede Go 1.26+ e bun 1.3.11+. Vedi HACKING.md per prerequisiti e dettagli di build.
| Dashboard UI | Dashboard del traffico |
|---|---|
![]() | ![]() |
| Report statici | Report statici |
|---|---|
![]() | ![]() |
| Scansione nativa | Scansione agentica |
|---|---|
![]() | ![]() |
Funzionalità principali
Scansione nativa
- 323 moduli di scanner: 207 attivi (fuzzing) + 116 passivi (pattern matching), che coprono OWASP Top 10 e oltre
- Test out-of-band (OAST): iniezione cieca di XSS/SSRF/comandi tramite callback interactsh con correlazione automatica dei payload
- Mutazione value-aware: classifica i parametri per tipo semantico (integer, UUID, JWT, email) e muta in base all'intento
- Pipeline multi-fase: harvesting esterno, content discovery (Deparos), spidering browser/SPA (Spitolas) e audit, controllati da preset di strategia e profili di scansione
- Input flessibili: URL, OpenAPI/Swagger, Postman, Burp Suite, cURL, Nuclei JSONL
- Autenticazione multi-sessione: sessioni inline, file di sessione o configurazioni di autenticazione complete con flussi di login, estrazione di token e test IDOR/BOLA
- Estensioni JavaScript: moduli e hook personalizzati tramite motore JS integrato con API HTTP session-aware
- Scalabile e reportabile: pool di worker concorrenti con rate limiting per host, coda ibrida in-memory/disk/Redis e report HTML autonomi
Scansione agentica
- Runtime olium in-process: ogni modalità agente gira sul motore nativo Go
pkg/olium: loop turn-based, registro strumenti integrato, supporto skills e driver provider pluggabili (nessun pool SDK di sottoprocessi) - Autopilot: l'agente scopre autonomamente gli endpoint, esegue scansioni e triage dei risultati, con pipeline multi-specialista opzionale e ripresa della sessione
- Swarm: l'agente master seleziona i moduli, genera estensioni di attacco JS personalizzate, esegue code audit + SAST, effettua scansioni e triage dei risultati; mirato o full-scope (
--discover), con--diff/--last-commitsper esecuzioni focalizzate sulle modifiche - Driver source-audit:
audit,pioliume il dispatcher unificatoauditeseguono audit foreground del codice sorgente condividendo uno schema di finding e il tagging del DB - Modalità query: prompt singoli per code review, discovery di endpoint e rilevamento di segreti
- Provider pluggabili:
openai-compatible(default),openai-codex-oauth,openai-api-key,openai-responses,anthropic-api-key,anthropic-oauth,anthropic-cli,anthropic-compatible,anthropic-vertex,google-vertex. Le stesse modalità sono esposte tramite API REST con streaming SSE e un endpoint chat compatibile con OpenAI
Avvio rapido: scansione nativa```bash
Scan a single target (default: balanced strategy)
vigolium scan -t https://example.com
Scan with a strategy preset
vigolium scan -t https://example.com --strategy deep
Scan specific modules only
vigolium scan -t https://example.com -m xss-reflected,sqli-error
Scan from an OpenAPI spec
vigolium scan -T openapi.yaml -I openapi
Pipe URLs from stdin
cat urls.txt | vigolium scan
Run a single phase directly
vigolium run discovery -t https://example.com
Generate an HTML report
vigolium scan -t https://example.com --only discovery --format html -o report.html
Vedi la [panoramica dell'architettura](https://docs.vigolium.com/architecture/overview) per la pipeline completa e la [guida alle strategie](https://docs.vigolium.com/native-scan/strategies) per strategie, profili e configurazione del ritmo. Per un rapido riferimento ai comandi, consulta [docs.vigolium.com/getting-started/cheat-sheet](https://docs.vigolium.com/getting-started/cheat-sheet).
## Modalità Server```bash
# Start API server with authentication
vigolium server -k my-secret-key
# Enable transparent HTTP proxy for traffic recording
vigolium server -k my-key --ingest-proxy-port 9003
# Auto-scan ingested traffic
vigolium server -k my-key --scan-on-receive
在 macOS 上安装 Rust 和其他开发工具,我们建议使用自动安装脚本:```bash
Ingest traffic to a running server
cat urls.txt | vigolium ingest -s http://localhost:9002
Ingest an OpenAPI spec
vigolium ingest -s http://localhost:9002 -i api.yaml -I openapi
Consulta [esecuzione del server](https://docs.vigolium.com/server-mode/running-the-server) per la configurazione del server, [ingestion](https://docs.vigolium.com/server-mode/ingestion) per i flussi di lavoro di ingestion e la [panoramica API](https://docs.vigolium.com/api-overview) per il riferimento completo all'API REST.
> **Integrazione con Burp Suite**: inoltra il traffico live di Burp Suite a un server Vigolium in esecuzione con l'estensione [burp-vigolium](https://github.com/vigolium/burp-vigolium).
## Scansione autenticata
Vigolium supporta la scansione autenticata multi-sessione per test IDOR/BOLA e controlli di escalation dei privilegi:```bash
# Inline session via CLI flag (name:Header:value)
vigolium scan -t https://example.com \
--auth "admin:Cookie:session_id=abc123" \
--auth "user:Cookie:session_id=xyz789"
# Load session(s) from a YAML/JSON file
vigolium scan -t https://example.com --auth-file ./admin-session.yaml
# Auth file with an automated login flow (token extraction, etc.)
vigolium scan -t https://example.com --auth-file ./login-flow.yaml
# Add custom headers (works with sessions)
vigolium scan -t https://example.com -H "Authorization: Bearer token123"
I file di autenticazione supportano header statici, token bearer e flussi di login automatizzati con estrazione dei token da cookie, risposte JSON o header. Esempi predefiniti sono disponibili in public/presets/sessions/. Consulta la guida all'autenticazione per la guida completa.
I flag
--auth/--auth-fileerano in precedenza denominati--session/--session-file. I vecchi nomi funzionano ancora come alias deprecati.
Agentic Scan
Scansione basata sull'IA in cui gli agenti pianificano, eseguono e classificano autonomamente le valutazioni delle vulnerabilità con il motore di scansione nativo sottostante:```bash
Autopilot: autonomous AI-driven scanning (in-process olium engine)
vigolium agent autopilot -t https://example.com vigolium agent autopilot -t https://example.com --source ./src --prompt "focus on auth bypass" vigolium agent autopilot -t https://example.com --diff main...feature/auth # diff-focused vigolium agent autopilot -t https://example.com --intensity deep # preset bundle
Swarm: AI-guided targeted or full-scope vulnerability scanning
vigolium agent swarm -t https://example.com/api/users --vuln-type sqli vigolium agent swarm -t https://example.com --discover # full-scope vigolium agent swarm -t https://example.com --source ./src --discover # source-aware full-scope vigolium agent swarm --input "curl -X POST https://example.com/api/login -d '{"user":"admin"}'"
Source-audit drivers (separate harness, do not route through olium)
vigolium agent audit --source ./src # default: auto (audit, fall back to piolium) vigolium agent audit --source ./src --driver audit --mode deep # vigolium-audit only (claude/codex) vigolium agent audit --source ./src --driver piolium --mode balanced # Pi-native (pi extension) only vigolium agent audit --source ./src --driver both # audit then piolium, back-to-back vigolium agent audit --source ./src --modes deep,confirm # chain modes (same as --intensity deep) vigolium agent audit --source ./src -S --output-dir ./audit-out # throwaway DB + bundled HTML report vigolium audit --source ./src # top-level alias
Direct olium access (TUI or headless)
vigolium ol # launch the olium TUI vigolium ol --prompt "..." # one-shot prompt (-p implies headless)
Modalità di scansione agentica:
- **Autopilot**: scansione autonoma. La CLI chiama direttamente `pkg/olium/autopilot.Run`; il server aggiunge la preparazione di vigolium-audit, la configurazione dell'autenticazione e un bundle di contesto congelato attorno allo stesso ciclo
- **Swarm**: scansione delle vulnerabilità guidata dall'IA che supporta singole richieste mirate e scope completo (`--discover`). L'agente master analizza gli input, seleziona i moduli, genera estensioni JS personalizzate, esegue l'audit del codice e l'analisi SAST, lancia le scansioni e smista i risultati
- **Audit**: audit del codice sorgente tramite `vigolium agent audit` — un dispatcher unificato che esegue gli harness incorporati **vigolium-audit** (claude/codex) e/o **piolium** (Pi-native), selezionati con `--driver {auto|both|audit|piolium}` (predefinito `auto`: esegue l'audit e ripiega su piolium solo se l'audit fallisce). Harness separati; **non** instradarli attraverso olium. Righe figlie per driver sotto un unico AgenticScan padre con deduplicazione dei risultati a fine passaggio. Non esiste un sottocomando `agent piolium` autonomo — piolium viene eseguito tramite `--driver=piolium`
> **CLI di audit standalone**: l'audit di sicurezza agentico è disponibile anche come CLI standalone che puoi eseguire indipendentemente da Vigolium: [vigolium-audit](https://github.com/vigolium/vigolium-audit) (l'harness alla base di `vigolium agent audit`) e [piolium](https://github.com/vigolium/piolium) (il driver Pi-native alla base di `vigolium agent audit --driver=piolium`).
Per la guida completa, consulta la [guida alla modalità agent](https://docs.vigolium.com/agentic-scan/agent-mode).
## ⚡ Vigolium Cloud Console
Una soluzione cloud per i team che vogliono la potenza di Vigolium senza gestire l'infrastruttura. La Console è la **versione potenziata e completa di Vigolium**: scansione gestita, reportistica centralizzata, collaborazione di squadra e funzionalità extra costruite sopra il core open-source, così puoi concentrarti sulla correzione delle vulnerabilità invece che sulla manutenzione degli strumenti.
> Dai un'occhiata alla Cloud Console su [console.vigolium.com](https://console.vigolium.com/).
## Layer di scansione nativa
La pipeline di scansione nativa è composta da layer modulari, ciascuno documentato separatamente:
| Layer | Descrizione | Docs |
|-------|-------------|------|
| **Content Discovery (Deparos)** | Enumerazione adattiva di directory/file con rilevamento dei soft-404 basato su fingerprint | [docs.vigolium.com/native-scan/phases/discovery](https://docs.vigolium.com/native-scan/phases/discovery) |
| **Browser Spider (Spitolas)** | Crawler a macchina a stati basato su Chromium con cattura del traffico CDP | [docs.vigolium.com/native-scan/phases/spidering](https://docs.vigolium.com/native-scan/phases/spidering) |
| **Audit** | Scansione delle vulnerabilità attiva/passiva con estrazione dei punti di inserimento e framework DiffScan | [docs.vigolium.com/native-scan/phases/audit](https://docs.vigolium.com/native-scan/phases/audit) |
| **Moduli dello Scanner** | 207 moduli attivi e 116 passivi che coprono l'OWASP Top 10 e oltre | [docs.vigolium.com/native-scan/modules-reference](https://docs.vigolium.com/native-scan/modules-reference) |
## Documentazione
La documentazione completa è disponibile su [docs.vigolium.com](https://docs.vigolium.com/). Le note di rilascio e la cronologia delle versioni sono nel [CHANGELOG](https://github.com/vigolium/vigolium/blob/HEAD/CHANGELOG.md). Collegamenti rapidi:
| Argomento | Link |
|-------|------|
| Configurare gli agenti | [docs.vigolium.com/getting-started/setup-agent](https://docs.vigolium.com/getting-started/setup-agent) |
| Avviare una scansione nativa | [docs.vigolium.com/getting-started/native-scan](https://docs.vigolium.com/getting-started/native-scan) |
| Avviare una scansione agentica | [docs.vigolium.com/getting-started/agentic-scan](https://docs.vigolium.com/getting-started/agentic-scan) |
| Avviare un audit agentico | [docs.vigolium.com/getting-started/agentic-security-audit](https://docs.vigolium.com/getting-started/agentic-security-audit) |
| Avvio rapido | [docs.vigolium.com/getting-started/quickstart](https://docs.vigolium.com/getting-started/quickstart) |
| Cheat Sheet | [docs.vigolium.com/getting-started/cheat-sheet](https://docs.vigolium.com/getting-started/cheat-sheet) |
| Server e ingestione | [docs.vigolium.com/getting-started/server-and-ingestion](https://docs.vigolium.com/getting-started/server-and-ingestion) |
| Scrivere estensioni | [docs.vigolium.com/customization/writing-extensions](https://docs.vigolium.com/customization/writing-extensions) |
## Motore JavaScript
Esegui codice JavaScript/TypeScript direttamente oppure scrivi moduli di scansione e hook personalizzati senza ricompilare:```bash
# Execute inline JavaScript
vigolium js --code 'let r = vigolium.http.get(TARGET); console.log(r.status)' -t https://example.com
# Run a JS file with timeout
vigolium js --code-file ./my-script.js -t https://example.com --timeout 60s
# Manage extensions
vigolium ext ls # list loaded extensions
vigolium ext docs --example # browse API with code examples
vigolium ext preset # install starter scripts
Il motore JS espone API HTTP consapevoli della sessione per test autenticati:```javascript // Create a persistent session with shared cookie jar. // post() takes a string body — serialize objects yourself. let session = vigolium.http.session(); session.post( "https://app.example.com/login", JSON.stringify({ user: "admin", pass: "secret" }), { headers: { "Content-Type": "application/json" } } ); session.get("https://app.example.com/dashboard"); // cookies auto-sent
// Automated login flow with token extraction let authed = vigolium.http.login({ url: "https://app.example.com/api/auth", method: "POST", body: JSON.stringify({ username: "admin", password: "pass" }), extract: [{ source: "json", path: "$.token", apply_as: "Authorization: Bearer {value}" }] });
// IDOR/BOLA testing across multiple sessions let results = vigolium.http.authTest({ sessions: { admin: adminSession, user: userSession }, requests: [{ method: "GET", url: "https://app.example.com/api/users/1" }] });
// Multi-step authentication sequences let result = vigolium.http.sequence([ { url: "/csrf", extract: [{ source: "cookie", name: "csrf_token", as: "token" }] }, { url: "/login", method: "POST", body: "csrf={token}&user=admin" } ]);
// Parallel request batching (race conditions, IDOR) let responses = vigolium.http.batch([req1, req2, req3], { concurrency: 10 });
// CSRF token extraction let csrf = vigolium.http.csrf("https://app.example.com/form");
// HTTP request replay with variations let varied = vigolium.http.replay(rawRequest, [ { headers: { "Authorization": "Bearer admin_token" } }, { headers: { "Authorization": "Bearer user_token" } } ]);
Vedi [scrivere estensioni](https://docs.vigolium.com/customization/writing-extensions) per la guida alla creazione di estensioni e `pkg/jsext/vigolium.d.ts` per le definizioni complete delle API TypeScript.
## Riferimento CLI
<details>
<summary>Espandi il riferimento completo di comandi e flag</summary>
### Comandi```
Scanning:
vigolium scan Run a native scan (deterministic multi-phase vulnerability scanning)
vigolium run <phase> Run a single native scan phase (alias for scan --only <phase>)
vigolium scan-url <url> Quick native scan of a single URL
vigolium scan-request Native scan from a raw HTTP request
Agentic scan (in-process olium engine):
vigolium agent autopilot Autonomous AI-driven vulnerability scanning
vigolium agent swarm AI-guided targeted or full-scope vulnerability scanning
vigolium agent query Single-shot prompt (code review, endpoint discovery)
vigolium agent olium Direct olium TUI (or one-shot non-interactive via -p)
vigolium agent audit Unified driver dispatcher (vigolium-audit and/or piolium, --driver=auto|both|audit|piolium)
vigolium agent session Browse/replay agent session artifacts
vigolium olium | vigolium ol Top-level alias for `vigolium agent olium`
Server & ingestion:
vigolium server Start the API server with traffic ingestion
vigolium ingest Ingest traffic to a running server
vigolium storage Interact with cloud object storage (uploads, downloads)
Data & projects:
vigolium db Database operations (list, stats, export, clean, seed)
vigolium finding Browse and manage findings (load, tui)
vigolium traffic Browse and replay HTTP records (tui, replay)
vigolium replay Mutate a stored/supplied HTTP request and diff baseline vs replay
vigolium project Manage projects (create, list, use, config)
vigolium scope Manage scope rules
vigolium import Import findings/data from external sources
vigolium export Export scan results
Extensions & auth:
vigolium js Execute JavaScript/TypeScript code
vigolium ext Manage JavaScript extensions (eval, lint)
vigolium auth Manage authentication sessions (list, load, lint, totp)
Setup & introspection:
vigolium init Initialize a Vigolium workspace
vigolium config Manage configuration (ls, set, path, clean)
vigolium strategy Inspect scanning strategies and phases
vigolium module Inspect/enable scanner modules
vigolium doctor Diagnose environment & dependencies
vigolium version Show version info
Flag```
Native Scan (vigolium scan / run): -t, --target Target URL -T, --target-file File containing target URLs -i, --input Input file path (- for stdin) -I, --input-mode Input format: urls, openapi, swagger, burp, curl, nuclei, har -m, --modules Modules to run (comma-separated or 'all') --strategy Strategy preset: lite, balanced, deep --scanning-profile Scanning profile name or YAML path --only Phases to run (comma-separated): ingestion, discovery (deparos), external-harvest, spidering (spitolas), known-issue-scan, dynamic-assessment, extension --skip Phases to skip (repeatable, same names as --only) -S, --stateless Use a throwaway temp database, discarded after the scan --fail-on Exit non-zero when a finding at/above this severity is present
Authentication: --auth Inline session definition (name:Header:value, repeatable) --auth-file Session YAML/JSON file path, supports login flows (repeatable) -H, --header Custom HTTP header (repeatable)
Performance: -c, --concurrency Concurrent workers (default: 50) -r, --rate-limit Max requests/sec (default: 0 = unlimited) --max-per-host Per-host concurrency cap (default: 2) --proxy HTTP/SOCKS5 proxy URL --timeout HTTP request timeout (default: 15s)
Agentic Scan (vigolium agent autopilot / swarm / query):
--source Path to source code for source-aware scanning
--files Specific files to include relative to --source
--source-label Label for source code ingestion
--provider Olium provider: openai-compatible (default), openai-codex-oauth,
openai-api-key, openai-responses, anthropic-api-key,
anthropic-oauth, anthropic-cli, anthropic-compatible,
anthropic-claude-sdk-bridge, anthropic-vertex, google-vertex
--model Model ID override
--oauth-token OAuth bearer token (anthropic-oauth)
--oauth-cred OAuth/SA file path (openai-codex-oauth, anthropic-vertex,
google-vertex)
--llm-api-key API key (anthropic-api-key, openai-api-key)
--vuln-type Vulnerability type focus (sqli, xss, ssrf, ...)
--prompt Free-text task guidance (same as the positional [prompt])
--plan-file Plan file mixing guidance + raw seed HTTP request(s)
--knowledge-base File/dir describing the app; prose is distilled, traffic
exports (HAR/Burp/curl/OpenAPI/Postman) are ingested
--prior-context Front-load existing project traffic/findings: auto, summary, off
--intensity Preset bundle: quick, balanced, deep
--diff Diff range / PR URL / HEADN for change-focused scans
--last-commits Shorthand for --diff HEADN
--code-audit Enable AI code audit (default: on with --source)
--discover Run discovery+spidering before planning (swarm)
--audit vigolium-audit mode: lite, balanced, deep, mock, off
--piolium Piolium audit mode (empty = auto-pick)
--resume Resume a durable-autopilot run by agentic-scan UUID
--session-dir Pin the session dir for this run's debug artifacts
--transcript Copy transcript.jsonl out after the run
--max-iterations Max triage-rescan iterations
--max-commands Cap on agent tool calls
--token-budget Cap on aggregate tokens
--max-duration Max agent wall-clock time (0 = no limit)
--only / --skip / --start-from Phase control (swarm)
Source audit (vigolium agent audit / vigolium audit): --driver auto (default), both, audit, piolium --intensity Preset: quick, balanced, deep (deep = modes deep,confirm) --mode Mode override: lite, balanced, deep, revisit, confirm, merge, ... --modes Chain modes back-to-back (e.g. deep,confirm) --list-modes Print the audit mode graph and exit --agent Coding agent for the audit leg: claude or codex --keep-raw Keep raw output under /vigolium-results/ (on by default) --clean-raw Remove the source-tree raw copy after the run -S, --stateless Run into a throwaway DB and auto-render an HTML report --output-dir Bundle the HTML report + raw results into one folder (needs -S) --no-dedup Skip the post-pass project-wide findings dedup --no-preflight Skip the pre-audit auth/model roundtrip checks -i, --interactive Drive the audit yourself in the coding agent (audit driver only)
JavaScript: --code Inline JavaScript to execute --code-file Path to JS/TS file to execute --timeout Execution timeout (default: 30s)
Output: -j, --json Compact, token-aware JSON output (read/query commands) --format Output format (comma-separated for multiple): console, jsonl, html, sqlite (needs -S), fs (flat traffic/finding tree) -o, --output Output file path --silent Suppress all output except findings -v, --verbose Verbose logging
</details>
## Struttura del Repository
La directory `platform/` contiene strumenti esterni, la dashboard UI e non fa parte del core scanner. Non devono essere apportate modifiche alla stessa.
## Benchmark
Vigolium viene continuamente sottoposto a benchmark contro applicazioni intenzionalmente vulnerabili e ampiamente testato su obiettivi reali tramite programmi di bug bounty e divulgazione responsabile.
- **Self-hosted (Docker):** [DVWA](https://github.com/digininja/DVWA), [OWASP Juice Shop](https://github.com/juice-shop/juice-shop), [VAmPI](https://github.com/erev0s/VAmPI), [crAPI](https://github.com/OWASP/crAPI), [Vulnerable Java App](https://github.com/DataDog/vulnerable-java-application), [Vulnerable Nginx](https://github.com/detectify/vulnerable-nginx), [OopsSec Store](https://github.com/kOaDT/oss-oopssec-store) (app Next.js personalizzata)
- **Esterni (hosted):** [Acunetix TestPHP](http://testphp.vulnweb.com), [Gin & Juice Shop](https://ginandjuice.shop), [Testfire](http://demo.testfire.net)
- **XSS e multi-vuln:** [BruteLogic XSS](https://github.com/vigolium/vigolium/blob/HEAD/test/benchmark/xss_scanner/), [XBOW](https://github.com/vigolium/vigolium/blob/HEAD/test/benchmark/definitions/xbow/) (XSS, SQLi, SSTI, LFI, SSRF, XXE, command injection)
Esegui i benchmark con `make test-canary` (app Docker) o `make test-integration` (XSS).
## Sviluppo```bash
make build # build and install
make test # run all tests (auto-installs gotestsum)
make test-unit # fast unit tests (-short, no external deps)
make test-e2e # E2E tests (requires Docker)
make lint # run linter
make fmt # format code
Vedi HACKING.md per la guida completa alla build, la mappa del codebase e la guida allo sviluppo dei moduli.
Sicurezza
Vigolium è uno strumento di sicurezza offensiva e due sue parti sono intenzionalmente permissive: la modalità agent viene eseguita senza sandbox (l'LLM ha pieno accesso a shell, file e rete sull'host) e le estensioni possono eseguire comandi arbitrari. Esegui la modalità agent in un container/VM usa e getta limitato all'engagement e tratta le estensioni non fidate come codice non fidato. Vedi SECURITY.md prima di iniziare e segnala privatamente le vulnerabilità di Vigolium stesso a [email protected].
Licenza
Vigolium è rilasciato sotto la GNU Affero General Public License v3.0. Le opere derivate devono rimanere open source alle stesse condizioni.
Creato con ♥ da @j3ssie, con @theblackturtle come contributore iniziale chiave.





