Skip to main content

reconx-py

AI-powered OSINT and security reconnaissance toolkit for Python.

A Python security reconnaissance library, command-line tool, and optional AI agent. It bundles a subdomain finder, WAF detector, JWT analyzer, email breach and SPF/DMARC checker, GitHub secret scanner, and website security audit into one package built for bug bounty, penetration testing, and OSINT workflows.

Python httpx License PRs Welcome

Overview

reconx-py provides penetration testers, bug bounty hunters, and security researchers with nine focused reconnaissance tools, exposed both as clean asynchronous Python functions and as a reconx command-line interface. Each tool works standalone with no configuration. An optional AI agent adds a natural-language layer that maps plain-English requests to the correct tool, runs it, and returns an explanation. The agent works with any OpenAI-compatible API, including OpenAI, DeepSeek, OpenRouter, and Groq.

Installation

pip install reconx-py

Optional WHOIS enrichment for the osint command:

pip install "reconx-py[whois]"

Library usage

import asyncio
from reconx import scan_website, find_subdomains, check_breach

print(asyncio.run(scan_website("example.com")))
print(asyncio.run(find_subdomains("github.com")))

Every tool returns a plain dict.

Function Description
scan_website(domain) Website security scanner. HTTP security-header audit with a graded score.
scan_github(username) GitHub secret scanner. Flags leaked API keys and credentials in public repositories.
osint_recon(domain) OSINT reconnaissance. DNS, WHOIS, and IP intelligence.
find_subdomains(domain) Subdomain finder and enumeration via Certificate Transparency logs (crt.sh).
check_breach(email) Email breach checker. Have I Been Pwned style lookup.
analyze_jwt(token) JWT analyzer and decoder with an offline security audit.
email_security(domain) SPF and DMARC checker for email spoofing protection.
waf_detect(domain) WAF and CDN detector using response fingerprinting.
brand_monitor(domain) Typosquatting and domain-impersonation finder.

All functions are asynchronous except analyze_jwt, which runs fully offline.

Command-line usage

reconx scan example.com
reconx subdomains github.com --json
reconx jwt "eyJhbGci..."
reconx email-sec github.com
reconx waf cloudflare.com

Add --json to any command for raw JSON output.

AI agent (optional)

Bring any OpenAI-compatible API key.

import asyncio
from reconx.agent import ask

asyncio.run(ask("scan example.com and explain the risks", api_key="sk-..."))
export OPENAI_API_KEY=sk-...
# For a non-OpenAI provider, also set:
# export OPENAI_BASE_URL=https://openrouter.ai/api/v1
# export OPENAI_MODEL=openai/gpt-4o-mini
reconx ask "does cloudflare.com have a WAF?"

The agent selects the correct tool, executes it, and explains the findings in plain English. Requests go only to the provider you configure.

Design notes

  • Light dependencies: httpx and dnspython only.
  • Data sources such as crt.sh and LeakCheck are free public services and can be rate-limited or briefly unavailable. Tools degrade gracefully and return a note rather than raising.
  • Set GITHUB_TOKEN to raise the GitHub API rate limit for scan_github.
  • Authorized testing only. Scan targets you own or have written permission to test.

Who it is for

Bug bounty hunters, penetration testers, red teams, and security researchers who want a scriptable Python reconnaissance toolkit, plus anyone who prefers to query an AI security assistant in plain English instead of memorizing commands.

Keywords

Python security tools, OSINT library, reconnaissance toolkit, subdomain enumeration, WAF detection, JWT decoder, email breach lookup, SPF and DMARC checker, GitHub secret scanning, typosquatting detection, bug bounty, penetration testing, AI security agent, LLM tool calling.

License

MIT. Copyright (c) 2025 Muhammad Adil.

Built by Muhammad Adil

Metadata

Release files for reconx-py 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 reconx-py 0.1.0
File Size Uploaded
reconx_py-0.1.0.tar.gz 12.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for reconx-py 0.1.0
File Interpreter ABI Platform
reconx_py-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 30.6 kB

Release files / reconx_py-0.1.0.tar.gz

Download URL reconx_py-0.1.0.tar.gz
Size 12.6 kB
Tags Source
SHA-256 checksum
How to use checksums
30da334fd19b6684ad1ca4e671f0c6da7bdd9616100a96ddb3e209032a35e05a
BLAKE2b-256 checksum
How to use checksums
ed765d721f7895850a21656768fa0432434a2d9f2d53b19b0b179c62e4dd293b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.0

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

Download URL reconx_py-0.1.0-py3-none-any.whl
Size 18.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
54c9f88c49acf695b5f92d665dab8e87a1c5a6fef0e5716b2965fa4fec136838
BLAKE2b-256 checksum
How to use checksums
81510c94de496bdccd30fe865a3f6aaf159b2530f68a372083ed2bdef9ddea24
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.0

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