
Hermes — an ephemeral, Docker-powered OSINT framework for testing, tinkering, and secure investigative automation.
The Agentic OSINT Analyst
Conversational AI-driven investigations. Natural language. Expert results. 🤖✨
Hermes 3.0 represents a complete paradigm shift from pipeline-based tool orchestration to a conversational AI-driven investigation platform. Powered by local LLMs via Ollama, Hermes now understands natural language queries, autonomously selects and executes tools, and synthesizes findings into coherent intelligence reports.
/save and /load--headless --query "..." for scripting and automationhermes sherlock <user> for direct tool access without LLMHermes is a universal OSINT orchestration platform that unifies best-in-class open-source intelligence tools into a single, AI-powered workflow. Instead of manually running Sherlock, TheHarvester, Holehe, and other tools separately—wasting precious investigation time ⏰—Hermes's agentic core understands your intent, orchestrates tools intelligently, correlates results across sources, and delivers professional reports. 📊
What makes Hermes different: 🌟
~/.hermes_history)/help, /tools, /status, /save, /load, /export, /clear, /exit--workers flag for fine-tuned concurrency 🎛️# Clone and install
git clone https://github.com/Expert21/hermes-osint.git
cd hermes-osint
pip install -r requirements.txt
pip install .
# Install Ollama and pull a model
curl -fsSL https://ollama.com/install.sh | sh
ollama pull llama3.1:8b
# Health check
hermes --doctor # 🏥 Make sure everything's ready!
# 🧠 TUI Mode (default) - Conversational AI interface
hermes
# Then chat naturally: "Find social accounts for johndoe"
# 📜 Headless Mode - For scripting and automation
hermes --headless --query "Investigate the domain example.com"
# 🔧 Legacy Mode - Direct tool access (no LLM required)
hermes sherlock johndoe
hermes theharvester example.com
hermes holehe [email protected]
/help # Show all commands
/tools # List available investigation tools
/status # Show current session status
/save # Save session to file
/load # Load a previous session
/sessions # List all saved sessions
/export FILE # Export report (md, pdf, html, csv, stix)
/stealth # Toggle stealth mode
/clear # Clear conversation
/exit # Exit Hermes
# Stealth mode - passive tools only
hermes --stealth
# Blocks: sherlock, holehe, phoneinfoga
# Allows: theharvester, subfinder, h8mail
# Specific model selection
hermes --model mistral:7b
# Headless with output
hermes --headless --query "Find subdomains for target.com" --output report.md
| Tool | Purpose | Input Type | Stealth | Status |
|---|---|---|---|---|
| Sherlock 🕵️ | Username enumeration across 300+ sites | Username | ❌ | ✅ |
| TheHarvester 🌾 | Email/subdomain discovery from OSINT sources | Domain | ✅ | ✅ |
| h8mail 📧 | Breach data correlation and lookup | ✅ | ✅ | |
| Holehe 🔍 | Email account detection across 120+ platforms | ❌ | ✅ | |
| PhoneInfoga 📱 | Phone number OSINT and carrier lookup | Phone | ❌ | ✅ |
| Subfinder 🗺️ | Passive subdomain enumeration | Domain | ✅ | ✅ |
User Input → CLI (cli.py)
├── TUI Mode → AgentLoop → Ollama → ToolExecutor → Adapters
├── Headless → AgentLoop → Single Query → Report
└── Legacy → ToolExecutor Direct (no LLM)
┌─────────────┐
│ User Query │ 💬 "Find info about johndoe"
└──────┬──────┘
│
▼
┌─────────────────┐
│ AgentLoop │ 🧠 ReAct: Think → Act → Observe