Metadata-Version: 2.4
Name: gitosintx
Version: 0.1.0
Summary: GitHub OSINT tool for finding public repository mentions of domains and URLs.
Author: Harith Dilshan
License-Expression: MIT
Project-URL: Homepage, https://h4rithd.com
Project-URL: Repository, https://github.com/h4rithd/GitOSINTX
Project-URL: Issues, https://github.com/h4rithd/GitOSINTX/issues
Keywords: osint,github-osint,bug-bounty,domain-recon,github-search,security-research
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Security
Classifier: Topic :: Internet :: WWW/HTTP :: Indexing/Search
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.31.0
Dynamic: license-file

# GitOSINTX

**GitOSINTX** is a GitHub OSINT command-line tool for finding public repository mentions of domains, URLs, and email-style references.

```text
   ______ _ __  ____  _____ _____   _______  ______
  / ____/(_) /_/ __ \/ ___//  _/ | / /_  __/ |/ /  |
 / / __/ / __/ / / /\__ \ / //  |/ / / /  |   / /| |
/ /_/ / / /_/ /_/ /___/ // // /|  / / /  /   | ___ |
\____/_/\__/\____//____/___/_/ |_/ /_/  /_/|_|/  |_|

 GitOSINTX - GitHub Domain & URL Mention Enumerator
 Developed by Harith Dilshan | h4rithd.com
```

## What it does

GitOSINTX accepts a domain or URL, normalizes it into a bare domain, generates multiple GitHub Search API queries, deduplicates results, classifies risky-looking references, and exports a clean JSON or HTML report.

It is useful for:

- Bug bounty passive recon
- Public code exposure discovery
- Domain and URL mention enumeration
- Finding hardcoded API endpoints in public repositories
- Identifying config, CI/CD, and sensitive-keyword references

## What it does **not** do

GitOSINTX does not bypass GitHub limits, scrape private repositories, validate leaked credentials, or exploit anything. It only queries public GitHub data available to your GitHub API access level.

## Install

From PyPI after publication:

```bash
pip install gitosintx
```

For local development:

```bash
git clone https://github.com/h4rithd/GitOSINTX
cd GitOSINTX
python3 -m pip install -e .
```

## GitHub token

Authenticated GitHub requests are strongly recommended.

```bash
export GITHUB_TOKEN='ghp_xxxxxxxxxxxxxxxxxxxx'
```

Avoid passing tokens directly on the command line because shell history may store them.

## Usage

Search a single domain or URL and export HTML:

```bash
gitosintx -u https://h4rithd.com -o html --out h4rithd-github-osint.html
```

Search a single domain and export JSON:

```bash
gitosintx -u h4rithd.com -o json --out h4rithd-github-osint.json
```

Search a list of domains/URLs:

```bash
gitosintx -list examples/domains.txt -o html --out multi-domain-report.html
```

Run deeper extension/config-focused queries:

```bash
gitosintx -u h4rithd.com --deep -o html --out deep-report.html
```

Be friendlier to GitHub rate limits:

```bash
gitosintx -u h4rithd.com --max-pages 1 --sleep 2 --wait-rate-limit
```

Show help:

```bash
gitosintx -h
```

## CLI options

```text
-u, --url              Single target domain or URL
-list, --list          File containing domains/URLs, one per line
-o, --output           Output format: html or json
--out                  Output report path
--token                GitHub token; prefer GITHUB_TOKEN env var
--max-pages            Maximum GitHub result pages per query
--per-page             Results per GitHub API page, max 100
--sleep                Delay between paginated requests
--wait-rate-limit      Sleep and continue when rate limited
--deep                 Run additional config/extension-focused queries
--no-repo-search       Disable repository metadata search
--no-email-query       Disable @domain query
--include-forks        Include forks in repository search where supported
--quiet                Suppress banner/progress output
-v, --verbose          Print query progress to stderr
--version              Print version
-h, --help             Show help
```

## Output tags

GitOSINTX applies simple triage tags to help prioritize manual review:

| Tag | Meaning |
| --- | --- |
| `sensitive-keyword` | Match appears near words like token, secret, password, api_key, private_key, etc. |
| `config-file` | Match appears in config-style files such as `.env`, `.yml`, `.json`, `.properties`, `.tfvars`, etc. |
| `cicd-devops` | Match appears in CI/CD or deployment files such as GitHub Actions, Dockerfile, Jenkinsfile, etc. |
| `url-reference` | Match contains URL-style syntax. |
| `email-reference` | Match contains email-style syntax. |

## Responsible use

Do not use discovered credentials. Do not validate tokens. Do not access systems without explicit authorization. For bug bounty, preserve evidence: repository, file path, commit/hash when available, matched snippet, exposure type, and remediation recommendation.

## License

MIT License.
