Docs

Getting Started

Xalgorix is the most comprehensive open-source autonomous penetration testing platform. It combines the power of AI with 85+ security tools to deliver enterprise-grade pentesting — completely free.

What is Xalgorix?

Xalgorix is an AI-powered autonomous pentesting agent. Give it a target URL, and it will:

  • Automatically discover subdomains, endpoints, and parameters
  • Run 85+ security tools across a 20-phase methodology
  • Find exploitable vulnerabilities with precision
  • Generate professional PDF reports
  • Send Discord alerts on findings

Key Highlights

FeatureDescription
AutonomousNo human intervention needed. Set a target, watch it work.
AI-PoweredLeverages LLMs (GPT, Claude, DeepSeek, Gemini) for intelligent decisions.
100% FreeNo SaaS, no per-scan fees, no limits. MIT licensed.
Self-HostedYour data never leaves your machine.
Web UIDark mode dashboard with live feed, chat, and token tracking.
Multi-LLM7+ providers: OpenAI, Anthropic, DeepSeek, Google, Groq, Ollama, MiniMax.

Quick Overview

# Install GOPROXY=direct go install -v github.com/xalgord/xalgorix/v4/cmd/xalgorix@latest # Configure (~/.xalgorix.env) XALGORIX_LLM=openai/gpt-5.4 XALGORIX_API_KEY=sk-your-key # Run xalgorix --web

Installation

Install Xalgorix via Go, build from source, or use the pre-built binary.

Requirements

  • Go 1.24+ — Check with go version
  • Linux recommended (also works on macOS, WSL)
  • An LLM API key (OpenAI, Anthropic, etc.)

Install Go (if needed)

# Quick install Go 1.24 on Linux sudo rm -rf /usr/local/go wget -q https://go.dev/dl/go1.24.2.linux-amd64.tar.gz sudo tar -C /usr/local -xzf go1.24.2.linux-amd64.tar.gz && rm go1.24.2.linux-amd64.tar.gz export PATH=/usr/local/go/bin:$HOME/go/bin:$PATH

Install via Go (Recommended)

GOPROXY=direct go install -v github.com/xalgord/xalgorix/v4/cmd/xalgorix@latest

Build from Source

git clone https://github.com/xalgord/xalgorix.git cd xalgorix make install

Update

# Option 1: Self-update xalgorix --update # Option 2: Reinstall latest GOPROXY=direct go install -v github.com/xalgord/xalgorix/v4/cmd/xalgorix@latest
Xalgorix also auto-updates on every start, so you're always running the latest version.

Systemd Service

# Install and start as a systemd service xalgorix --start # Other service commands xalgorix --stop xalgorix --restart xalgorix --uninstall

Configuration

All configuration is done via the ~/.xalgorix.env file. Xalgorix will refuse to start if required variables are missing.

Required Variables

VariableDescriptionExample
XALGORIX_LLMModel name with provider prefixopenai/gpt-5.4
XALGORIX_API_KEYYour LLM API keysk-...

Minimal Configuration

# ~/.xalgorix.env XALGORIX_LLM=openai/gpt-5.4 XALGORIX_API_KEY=sk-your-api-key

Optional — API Base

VariableDescriptionExample
XALGORIX_API_BASEAPI base URL (auto-detected from provider)https://api.openai.com/

Optional — Web Search

VariableDescription
GEMINI_API_KEYGoogle Gemini API key for web search. Falls back to Brave/Google/Bing/DuckDuckGo scraping.

Optional — Model Settings

VariableDefaultDescription
XALGORIX_REASONING_EFFORThighReasoning effort: low, medium, high
XALGORIX_LLM_MAX_RETRIES5Max retries on API failure
XALGORIX_MEMORY_COMPRESSOR_TIMEOUT60Context compression timeout (seconds)
XALGORIX_MAX_ITERATIONS0Max iterations (0 = unlimited)

Optional — Integrations

VariableDescription
XALGORIX_DISCORD_WEBHOOKDiscord webhook URL for alerts
XALGORIX_USERNAMEDashboard username (enables auth)
XALGORIX_PASSWORDDashboard password

Optional — Rate Limiting

VariableDefaultDescription
XALGORIX_RATE_LIMIT_REQUESTS60Requests per window
XALGORIX_RATE_LIMIT_WINDOW60Window in seconds

Optional — Browser

VariableDefaultDescription
XALGORIX_DISABLE_BROWSERfalseSet to true to disable browser automation

Full Configuration Example

# ~/.xalgorix.env — Full configuration # Required XALGORIX_LLM=openai/gpt-5.4 XALGORIX_API_KEY=sk-your-key # Optional — Custom API endpoint # XALGORIX_API_BASE=https://api.openai.com/ # Optional — Web search GEMINI_API_KEY=AIza... # Optional — Discord alerts XALGORIX_DISCORD_WEBHOOK=https://discord.com/api/webhooks/... # Optional — Dashboard auth XALGORIX_USERNAME=admin XALGORIX_PASSWORD=your-secure-password # Optional — Rate limiting XALGORIX_RATE_LIMIT_REQUESTS=60 XALGORIX_RATE_LIMIT_WINDOW=60

Quick Start

Get Xalgorix up and running in under 2 minutes.

Step 1 — Install

GOPROXY=direct go install -v github.com/xalgord/xalgorix/v4/cmd/xalgorix@latest

Step 2 — Configure

nano ~/.xalgorix.env

Add your LLM provider and API key:

XALGORIX_LLM=openai/gpt-5.4 XALGORIX_API_KEY=sk-your-key

Step 3 — Run

# Web UI (recommended) xalgorix --web # Or CLI mode xalgorix --target https://example.com
The Web UI launches at http://localhost:1337 by default. Change the port with --port 8080.

Web UI Guide

Xalgorix includes a full-featured dark mode Web UI dashboard with live feed, chat, and scan management.

Launching the Web UI

xalgorix --web # Or with custom port xalgorix --web --port 8080

Dashboard Features

FeatureUsage
Single ScanEnter URL, click Start
DAST ScanSelect "DAST" mode for deep URL vuln testing
Wildcard ScanSelect "Wildcard" for subdomain enum + scan each
Multi-TargetUpload a .txt file with one target per line
Severity FilterCheck only Critical/High to skip Low/Info
Out of ScopeExclude specific targets from testing
Custom InstructionsTell Xalgorix what to focus on
LLM ProviderSwitch providers in settings
DiscordAdd webhook for real-time alerts

Example Custom Instructions

# Focus on specific vulns "Focus on SQL Injection and IDOR. Skip XSS." # Authenticated testing "Login with: admin@email.com / Password123" # Bug bounty rules "This is a HackerOne program. Out of scope: DoS, social engineering." # Internal network "Scan 10.0.0.0/24. Focus on SMB and database services."

Authentication

Protect your dashboard with optional login:

# Add to ~/.xalgorix.env XALGORIX_USERNAME=admin XALGORIX_PASSWORD=your-secure-password

CLI Reference

Complete command-line flag reference for Xalgorix.

All Flags

FlagAliasDescription
--web-wLaunch the Web UI dashboard
--port-pWeb UI port (default: 1337)
--target-tTarget URL, IP, or local path (repeatable)
--instruction-iCustom instructions for the agent
--model-mLLM model (overrides XALGORIX_LLM)
--update-upUpdate to latest version
--version-vShow version
--startInstall and start as systemd service
--stopStop the service
--restartRestart the service
--uninstallRemove from system
--help-hShow help

Usage Examples

# Launch web UI xalgorix --web # Scan a target from CLI xalgorix --target https://example.com # Multiple targets xalgorix --target https://a.com --target https://b.com # Custom model + instructions xalgorix --target https://example.com --model anthropic/claude-sonnet-4.6 -i "Focus on API vulns"

Scan Modes

Xalgorix supports three scan modes, each designed for different testing scenarios.

Single Scan

Scan a single URL or target with full vulnerability testing using the 20-phase methodology. Best for quick assessments of individual targets.

DAST Scan

Deep Application Security Testing. Designed for thorough web application testing:

  • Crawl the target to discover all endpoints
  • Parameter discovery and fuzzing
  • Nuclei scanning on all discovered URLs
  • Manual exploitation attempts on promising findings

Wildcard Scan

The most comprehensive mode. Performs full subdomain enumeration, then scans each subdomain individually:

  • Passive subdomain enumeration (subfinder, assetfinder, crt.sh)
  • Active subdomain enumeration (amass, brute-force)
  • DNS resolution on all discovered subdomains
  • Each live subdomain gets a full individual scan
  • DAST-level testing on each target
Wildcard scans can take a long time depending on the number of subdomains discovered. Use the queue system to manage long-running scans.

LLM Providers

Xalgorix supports 7+ LLM providers out of the box, plus any custom OpenAI-compatible endpoint.

Supported Providers

ProviderPrefixExample ModelsAuto-Detected Endpoint
OpenAIopenai/gpt-5.4, gpt-5.4, o1, o3https://api.openai.com/v1
Anthropicanthropic/claude-opus-4.6, claude-sonnet-4.6https://api.anthropic.com
DeepSeekdeepseek/deepseek-v3, deepseek-v3https://api.deepseek.com/v1
Googlegoogle/gemini-3.1-pro, gemini-2.0-flashhttps://generativelanguage.googleapis.com/v1
Groqgroq/llama-4, qwen3, mixtralhttps://api.groq.com/openai/v1
Ollamaollama/llama4, qwen3 (local)http://localhost:11434/v1
MiniMaxminimax/M3, Text-01https://api.minimax.io/v1

Custom Providers

To use any OpenAI-compatible provider, set a custom prefix and API base:

XALGORIX_LLM=custom/my-model XALGORIX_API_KEY=your-key XALGORIX_API_BASE=https://your-custom-llm.com/v1

Tools (85+)

Complete catalog of 85+ security tools that Xalgorix integrates with. All tools are auto-installed when needed.

Recon & Subdomain Enumeration (15 tools)

#ToolPurpose
1subfinderPassive subdomain enumeration
2findomainSubdomain discovery
3assetfinderFind related subdomains
4dnsxDNS resolution & bruteforce
5amassSubdomain enumeration
6gospiderWeb spidering
7katanaNext-gen crawling
8hakrawlerWeb crawling
9gauGet All URLs
10waybackurlsWayback Machine URLs
11paramspiderParameter discovery
12crt.shCertificate transparency
13bufferoverDNS enumeration
14webarchiveHistorical URLs
15shufflednsDNS bruteforce

HTTP & Scanning (15 tools)

#ToolPurpose
1httpxHTTP probing
2nucleiVulnerability scanning
3gobusterDirectory busting
4ffufFuzzing
5feroxbusterRecursive fuzzing
6dirsearchWeb path scanning
7niktoWeb server scanning
8whatwebWeb technology fingerprint
9wpscanWordPress scanner
10sqlmapSQL injection testing

Exploitation (15 tools)

#ToolPurpose
1nmapPort & service scanning
2masscanFast port scanner
3naabuFast port scanner
4hydraPassword cracking
5johnPassword cracking
6hashcatGPU password cracking
7impacketWindows exploitation
8responderLLMNR/NBTNS spoofing
9crackmapexecNetwork exploitation
10dalfoxXSS scanner

Agent Built-in Tools

ToolDescription
terminal_executeRun shell commands with auto-install
browserBrowser automation (headless Chrome)
playwrightBrowser control for testing
websearchWeb search via Gemini/Brave/Google/Bing
notesTrack findings and endpoints
reportingGenerate PDF reports
thinkingAI reasoning and planning
finishComplete and summarize scan

Auto-Install

Xalgorix automatically installs any missing tools when needed. Supported package managers:

  • Gogo install
  • APTapt install
  • PIPpip install
  • Cargocargo install
  • Gemgem install
  • NPMnpm install

20-Phase Methodology

Xalgorix follows a comprehensive, systematic approach to penetration testing.

#PhaseDescription
01ReconSubdomains, ports, directories
02Vuln ScanNuclei, nmap scripts
03ContentFuzzing, backups, admin panels
04SSL/TLSCipher suites, certificates, headers
05AuthSQLi login, brute-force, OAuth
06InjectionXSS, SQLi, Command, XXE, SSTI
07SSRFParam fuzzing, cloud metadata
08IDORAccess control, privilege escalation
09APIGraphQL, REST, rate limiting
10UploadExtension bypass, webshells
11RCEDeserialization, Log4j
12RaceTOCTOU, business logic
13TakeoverSubdomain, CNAME
14EmailSPF, DKIM, DMARC
15CloudS3, Azure, GCP, K8s
16WebSocketOrigin, injection
17CMSWordPress, Joomla, Drupal
18LinksBroken link hijacking
19Supply ChainJS libs, dependencies
20ReportJSON + PDF generation

Architecture

Technical overview of Xalgorix's system architecture and internal components.

System Overview

┌────────────────────────────────────────────────────────┐
│                     USER LAYER                         │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│  │  Web UI  │ │   CLI    │ │   API    │ │ Discord  │ │
│  └────┬─────┘ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
└───────┼──────────���──┼───────────┼─────────────┼───────┘
        └─────────────┼───────────┼─────────────┘
                      ▼           ▼
┌────────────────────────────────────────────────────────┐
│                     CORE LAYER                         │
│  ┌──────────────────────────────────────────────────┐  │
│  │              WEB SERVER (Go)                     │  │
│  │  HTTP Server │ WebSocket │ Queue Mgr │ Config    │  │
│  └──────────────────────────────────────────────────┘  │
│  ┌──────────────────────────────────────────────────┐  │
│  │              AGENT ENGINE                        │  │
│  │  LLM Client │ Tool Exec │ State │ Memory Mgr    │  │
│  └──────────────────────────────────────────────────┘  │
└────────────────────────────────────────────────────────┘
                      │
                      ▼
┌────────────────────────────────────────────────────────┐
│                    TOOL LAYER                          │
│  RECON      │ SCANNING   │ EXPLOIT    │ UTILITY       │
│  subfinder  │ nuclei     │ sqlmap     │ terminal      │
│  amass      │ nmap       │ dalfox     │ browser       │
│  katana     │ ffuf       │ hydra      │ websearch     │
└────────────────────────────────────────────────────────┘
                      │
                      ▼
┌────────────────────────────────────────────────────────┐
│                INTEGRATION LAYER                       │
│  OpenAI │ Anthropic │ DeepSeek │ Google │ Exploit-DB  │
│  NIST NVD │ Discord │ Caido Proxy                     │
└────────────────────────────────────────────────────────┘

Directory Structure

xalgorix/ ├── cmd/xalgorix/ # CLI entry point ├── internal/ │ ├── agent/ # Core agent loop │ ├── config/ # Configuration │ ├── llm/ # LLM client & parser │ ├── tools/ # 11 built-in tools │ │ ├── terminal/ # Command execution │ │ ├── browser/ # Headless Chrome │ │ ├── python/ # Python scripts │ │ ├── reporting/ # Vulnerability reports │ │ └── ... │ ├── web/ │ │ ├── server.go # HTTP + WebSocket │ │ └── static/ # Web UI (HTML/CSS/JS) │ └── tui/ # Terminal UI └── skills/ # Vulnerability knowledge

Data Storage

~/xalgorix-data/ └── target.com/ └── 2026-01-15/ └── example.com_abc123/ └── scan.json └── queue_state.json
  • 30-day auto-cleanup
  • Survives page refresh
  • Queue resume after restart

Skills System

Skills are specialized knowledge packages that enhance Xalgorix agents with deep expertise in specific vulnerability types, technologies, and testing methodologies.

How Skills Work

When an agent is created, it can load up to 5 specialized skills relevant to the specific subtask. Skills are dynamically injected into the agent's system prompt for deep, contextual expertise.

Skill Categories

CategoryPurpose
/vulnerabilitiesAdvanced techniques for auth bypasses, business logic, race conditions
/frameworksFramework-specific testing: Django, Express, FastAPI, Next.js
/technologiesSupabase, Firebase, Auth0, payment gateways
/protocolsGraphQL, WebSocket, OAuth patterns
/cloudAWS, Azure, GCP, Kubernetes security
/reconnaissanceAdvanced information gathering and enumeration
/customCommunity-contributed specialized skills

Creating Custom Skills

A good skill includes:

  • Advanced techniques — Non-obvious methods specific to the domain
  • Practical examples — Working payloads and test cases
  • Validation methods — Confirm findings, avoid false positives
  • Context-specific insights — Version nuances, edge cases
  • YAML frontmattername and description fields

API Reference

REST API endpoints for programmatic control of Xalgorix scans.

Scan Endpoints

MethodEndpointDescription
POST/api/scanStart a new scan
POST/api/stopStop current scan
GET/api/statusGet current status
GET/api/scansList all scans
GET/api/scans/:idGet scan details
GET/api/report/:idDownload PDF report

Queue Endpoints

MethodEndpointDescription
GET/api/queue/statusCheck interrupted queue
POST/api/queue/resumeResume interrupted scan
POST/api/queue/clearClear scan queue

Settings Endpoints

MethodEndpointDescription
GET/api/settings/rate-limitGet rate limit config
POST/api/settings/rate-limitUpdate rate limit config

Safety & Security

Xalgorix includes multiple safety mechanisms to prevent destructive actions.

Blocked Commands

# Filesystem destruction rm -rf / | rm -rf ~ | mkfs | dd # SQL destruction DROP TABLE | DELETE FROM | UPDATE (bulk) # System commands shutdown | reboot | halt | poweroff # Code destruction shutil.rmtree | os.remove

Encoding Bypass Detection

Xalgorix detects obfuscated destructive commands:

TechniqueExample
Base64echo cm0gL3JmIC8= | base64 -d
Hex\x72\x6d\x20\x2d\x72\x66
URL%72%6d%20%2d%72%66

Circuit Breaker

After 5 consecutive failures, a tool is temporarily blocked for 60 seconds to prevent wasting time and resources.

Rate Limiting

Configurable rate limiting protects your IP from being blocked by target services. Default: 60 requests per 60-second window.

Integrations

Xalgorix integrates with several external services for notifications, security testing, and authentication.

Discord Alerts

Get real-time notifications for scan start, vulnerability discovery, and completion.

# Add to ~/.xalgorix.env XALGORIX_DISCORD_WEBHOOK=https://discord.com/api/webhooks/...

Caido Proxy

Integration with Caido for HTTP request capture and replay:

  • Auto-installs Caido if not present
  • Auto-starts if not running
  • HTTP request capture during scans
  • Request replay and modification
CAIDO_PORT=8080 CAIDO_API_TOKEN=your-caido-token

AgentMail

Built-in email system for automated testing of sign-up flows and OTP verification.

# Example instruction for authenticated testing "AgentMail credentials: api_key=xxx, email=user@agentmail.to"

PDF Reports

Xalgorix auto-generates professional pentest reports in PDF format.

Report Contents

  • Cover page — Target name and scan date
  • Executive summary — Vulnerability counts by severity
  • Vulnerability details — CVSS scoring, proof-of-concept, remediation steps
  • Tested endpoints — All URLs and endpoints tested
  • Methodology — Phases applied during the scan
  • Legal disclaimer — Standard pentest disclaimer

Downloading Reports

Reports are available via the Web UI or API:

# Via API curl http://localhost:1337/api/report/{scan-id} -o report.pdf

FAQ

Frequently asked questions about Xalgorix.

Is Xalgorix free?

Yes, 100% free and open source under the MIT license. No SaaS, no per-scan fees, no limits.

What LLM should I use?

For best results, use GPT-5.4 or Claude Opus 4.6. For budget-friendly options, DeepSeek-V3 or Groq (free tier) work well.

Can I use it for bug bounty?

Yes! Xalgorix is designed for bug bounty programs. Use custom instructions to follow program rules and scope.

Does it work on internal networks?

Yes. You can scan IPs, CIDR ranges, and internal services. Use Ollama for local LLM if you need air-gapped operation.

How do I update?

Run xalgorix --update or reinstall via Go. Xalgorix also auto-updates on every start.

Where is scan data stored?

In ~/xalgorix-data/. Data is organized by target and date with 30-day auto-cleanup.

Can I contribute?

Yes! Pull requests are welcome. See the GitHub repository for contribution guidelines.