Skip to main content

Vigil

Vigil

AI-powered red team framework

version python license


Install

curl -sSfL https://raw.githubusercontent.com/zimkk/vigil/main/install.sh | bash

Or with pip / pipx:

pipx install vigil-redteam
# or
pip install vigil-redteam

Requires Python 3.11+.

Desktop app

With desktop support installed, running vigil opens the native Windows, Linux, and macOS desktop client. The CLI and Textual TUI remain available for automation and terminal-first workflows. Install the optional desktop client with PySide6:

pipx install "vigil-redteam[desktop]"
vigil gui

Use vigil tui to explicitly open the terminal UI. Standard help never opens a graphical window:

vigil --help
vigil gui --help
vigil review --help

The desktop app calls the same Python application services as the CLI. It does not create shell commands from UI actions; active operations retain explicit authorization and code-review LLM consent checks.


What it does

Vigil drives an agentic red team engagement from a single CLI. Each command maps to a phase of the PTES methodology and spins up one or more AI agents that plan, call real security tools, interpret output, and write findings to a local SQLite database.

Phase Command Description
OSINT / Passive recon vigil enumerate Subdomain enum, DNS, WHOIS, cert transparency — no active probing
Developer / Blue Team vigil review ./src Local static code review for injection, session, TLS, secret, and other security gaps
Active recon vigil active Port scan, service fingerprint, web crawl
Vulnerability assessment vigil assess Nuclei, nikto, SSL/TLS checks, tech-stack CVEs
Validation vigil validate Confirm findings, eliminate false positives
Exploitation vigil exploit Controlled PoC against validated findings
Post-exploitation vigil post-exploit Enumerate from foothold
Privilege escalation vigil privesc Local privesc vector detection
Credential access vigil cred-access Credential hunting
Discovery vigil discover Users, files, services, internal hosts
Lateral movement vigil lateral Pivot via harvested credentials
Persistence vigil persist Persistence mechanism identification
Defense evasion vigil evade Security control detection and evasion planning
C2 assessment vigil c2 C2 channel feasibility and evasion-aware planning
Collection vigil collect Sensitive data staging for exfil simulation
Exfiltration vigil exfil Channel testing and impact estimation
Impact vigil impact Business risk quantification
Cleanup vigil cleanup Remove Vigil-created artifacts from target
Report vigil report Final engagement report across all phases

Usage

# Passive recon (no authorization required)
vigil enumerate example.com

# Full active assessment (requires written authorization)
vigil active example.com
vigil assess example.com
vigil validate
vigil report --output report.md

Run a local developer / blue-team review without sending traffic or source code externally:

vigil review ./src --output blue-team-review.md
# Use a .json extension to write machine-readable findings.
vigil review ./src --output blue-team-review.json

For contextual, advisory triage, add the configured LLM backend. Local OpenAI-compatible endpoints (for example Ollama) are supported directly. An API backend requires an explicit acknowledgement before Vigil sends redacted, size-limited source excerpts:

vigil review ./src --llm
vigil review ./src --llm --allow-remote-code --llm-max-chars 60000

The review flags likely SQL and command injection, disabled TLS verification (MITM risk), cookie and session hijacking gaps, hardcoded secrets, weak cryptography, unsafe deserialization, SSRF, path traversal, open redirects, and unsafe CORS. Findings are static-analysis signals and should be validated in application context.

Run any phase in --mode sequential (single agent) or the default --mode parallel (multi-agent wave).

vigil enumerate --mode sequential example.com

List the tools registered for any phase:

vigil tools enumerate

LLM backend

Vigil works with Anthropic Claude (default) or any OpenAI-compatible endpoint — Ollama, vLLM, LM Studio, OpenRouter.

Create a .env file in your working directory:

# Anthropic (default)
VIGIL_BACKEND=anthropic
VIGIL_API_KEY=sk-ant-...
VIGIL_MODEL=claude-sonnet-4-6

# Ollama (local)
VIGIL_BACKEND=openai_compat
VIGIL_BASE_URL=http://localhost:11434/v1
VIGIL_API_KEY=ollama
VIGIL_MODEL=qwen2.5:7b

External tools

Vigil calls real security binaries. Install them all at once:

curl -sSfL https://raw.githubusercontent.com/zimkk/vigil/main/install-tools.sh | bash

Key tools installed: nmap, masscan, nuclei, subfinder, httpx, ffuf, gobuster, sqlmap, nikto, dalfox, gitleaks, trufflehog, rustscan, feroxbuster, wpscan, and more (426 total across Go, Cargo, pip, npm, and gem).


Vigil is built for authorized security testing. Running it against systems you do not own or have explicit written permission to test is illegal. The authors accept no liability for unauthorized use.


Release files for vigil-redteam 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vigil-redteam 0.1.0
File Size Uploaded
vigil_redteam-0.1.0.tar.gz 572.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vigil-redteam 0.1.0
File Interpreter ABI Platform
vigil_redteam-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / vigil_redteam-0.1.0.tar.gz

Download URL vigil_redteam-0.1.0.tar.gz
Size 572.5 kB
Tags Source
SHA-256 checksum
How to use checksums
67cca643958c59d4f887b61273cde9e4e17ddac8bc9c771875eaf438da0fbf24
BLAKE2b-256 checksum
How to use checksums
eaf3ca4f6f623a1bfb37c3dfce01cd039adb4f1cbc5a14130b78d16137f287e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / vigil_redteam-0.1.0-py3-none-any.whl

Download URL vigil_redteam-0.1.0-py3-none-any.whl
Size 696.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dd9c03b08f421cab014d67001b22f37b1b171936c9ef6359b241f87b81ad0e3c
BLAKE2b-256 checksum
How to use checksums
7b10da688b592b2db87325b23c7bb6dee26f95d70b56758e49f398202e29ac2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page