AI-Powered Reconnaissance Orchestrator for Penetration Testing
ReconPilot is an intelligent reconnaissance automation framework that chains together security tools based on discoveries, prioritizes targets, and provides real-time feedback through an interactive TUI dashboard.
- π€ Intelligent Orchestration - Automatically chains tools based on discoveries
- π― Smart Prioritization - Scores assets and findings based on risk
- π Real-time TUI Dashboard - Beautiful terminal UI with live updates
- π Async Execution - Parallel task execution for speed
- πΎ Session Management - Save, load, and resume scans
- π Professional Reports - HTML, Markdown, and JSON output formats
- π οΈ Extensible - Easy to add custom tools and rules
- π 15+ Tools Supported - DNS, subdomain, port scanning, web, and vulnerability tools
git clone https://github.com/gh0stshe11/reconpilot.git
cd reconpilot
chmod +x scripts/install-kali.sh
sudo ./scripts/install-kali.sh# Install Python dependencies
pip install -e .
# Install reconnaissance tools manually
# See scripts/check-tools.py for the full list# Start a scan with TUI dashboard
reconpilot scan example.com
# Scan without dashboard (CLI only)
reconpilot scan example.com --no-dashboard
# Passive reconnaissance only
reconpilot scan example.com --passive-only
# Stealth mode with limited parallelism
reconpilot scan example.com --stealth --max-parallel 1# Auto mode (default) - intelligently chains tools
reconpilot scan example.com --mode auto
# Interactive mode - prompts before running tools
reconpilot scan example.com --mode interactive
# Passive mode - only passive reconnaissance
reconpilot scan example.com --mode passive
# With scope restrictions
reconpilot scan example.com --scope "*.example.com" --exclude "dev.example.com"
# Custom timeout and parallelism
reconpilot scan example.com --timeout 600 --max-parallel 5# List all scan sessions
reconpilot sessions list
# Show session details
reconpilot sessions show <session-id>
# Delete a session
reconpilot sessions delete <session-id># Generate HTML report (default)
reconpilot report <session-id>
# Generate Markdown report
reconpilot report <session-id> --format md
# Generate JSON report
reconpilot report <session-id> --format json
# Custom output path
reconpilot report <session-id> --output /path/to/report.html# List all supported tools
reconpilot tools list
# Check which tools are installed
reconpilot tools check# Show current configuration
reconpilot config show
# Edit configuration file
reconpilot config edit
# Reset to defaults
reconpilot config reset- whois - Domain registration information
- dnsrecon - DNS enumeration
- dnsx - Fast DNS resolution
- subfinder - Passive subdomain discovery
- amass - Advanced subdomain enumeration
- assetfinder - Find related domains and subdomains
- nmap - Network port scanner with service detection
- masscan - Fast port scanner
- rustscan - Ultra-fast port scanner
- httpx - HTTP probe with technology detection
- whatweb - Web technology identifier
- wafw00f - WAF detection
- nuclei - Template-based vulnerability scanner
- nikto - Web server scanner
- wpscan - WordPress vulnerability scanner
reconpilot/
βββ reconpilot/
β βββ core/ # Core orchestration logic
β βββ tools/ # Tool adapters
β βββ dashboard/ # TUI dashboard
β βββ reports/ # Report generation
β βββ utils/ # Utilities
β βββ cli.py # CLI interface
β βββ config.py # Configuration management
βββ tests/ # Test suite
βββ scripts/ # Installation and utility scripts
βββ .github/ # CI/CD workflows
When running with the TUI dashboard:
- P - Pause the scan
- R - Resume the scan
- S - Skip current task
- Q - Quit (saves session)
ReconPilot stores configuration in ~/.reconpilot/config.yaml:
general:
max_parallel_tasks: 3
stealth_mode: false
passive_only: false
scope:
include: []
exclude: []
in_scope_only: true
reporting:
format: html
auto_save: true
output_dir: ./reports
notifications:
enabled: false
webhook_url: null
email: nullContributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
ReconPilot is designed for legal security testing and research purposes only. Users are responsible for complying with applicable laws and regulations. The authors assume no liability for misuse of this tool.
- All the amazing open-source reconnaissance tools this project integrates with
- The security research community
- Project Discovery for their excellent Go-based tools
- GitHub: @gh0stshe11
- Issues: GitHub Issues
Made with β€οΈ by gh0stshe11