Data & AnalyticsDocumentedScanned
osint-graph-analyzer
Build knowledge graphs from OSINT data and discover hidden patterns using Neo4j graph algorithms.
Share:
Installation
npx clawhub@latest install osint-graph-analyzerView the full skill documentation and source below.
Documentation
OSINT Graph Analyzer π΅οΈ
Build knowledge graphs from OSINT data and discover hidden patterns using Neo4j graph algorithms.
What It Does
Ingests OSINT data from multiple sources and creates a Neo4j knowledge graph for:
- Entity linking β Connect same person across platforms
- Community detection β Find clusters of related entities
- Centrality analysis β Identify key influencers in networks
- Path analysis β Trace connections between entities
- Pattern recognition β Detect anomalies and hidden relationships
Use Cases
- Investigation workflows β Map relationships in complex cases
- Threat intelligence β Identify central nodes in attack networks
- Social network analysis β Discover communities and influence patterns
- Counter-OSINT β Understand your own exposure surface
Requirements
- Neo4j 5.x (local or remote)
- Python 3.9+
- neo4j-driver package
Usage
# Start Neo4j instance (local)
docker run -d \
--name neo4j \
-p 7474:7474 -p 7687:7687 \
-e NEO4J_AUTH=neo4j/password \
neo4j:5.23
# Ingest data
python3 scripts/osint-graph.py --ingest data/sources.csv
# Run community detection
python3 scripts/osint-graph.py --community-detection
# Find most central entities
python3 scripts/osint-graph.py --centrality --top 10
# Trace path between two entities
python3 scripts/osint-graph.py --path "Entity A" "Entity B"
# Export graph as visualization
python3 scripts/osint-graph.py --export graph.json
Data Format
Supported formats:
- CSV (node + edge files)
- JSON (Cypher queries)
- Direct API ingestion (Telegram, Twitter, etc.)
CSV example:
nodes.csv:
id,name,type,properties
1,@target_account,person,"{country:US,verified:true}"
2,@associated_handle,person,"{country:RU}"
edges.csv:
source,target,relationship,timestamp
1,2,MENTIONED,2026-01-31
Graph Algorithms
| Algorithm | What It Finds | Use Case |
| Louvain | Community clusters | Find groups working together |
| PageRank | Influence centrality | Identify key influencers |
| Betweenness | Bridge nodes | Find connection points between communities |
| Shortest Path | Connection chains | Trace indirect relationships |
| Weakly Connected | Disconnected subgraphs | Find isolated clusters |
Architecture
βββββββββββββββββββ
β Ingestion β β CSV/JSON/API sources
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Neo4j Graph β β Nodes + Relationships
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Algorithms β β GraphX / Neo4j Graph Algorithms
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Visualization β β JSON export + D3.js / Cytoscape
βββββββββββββββββββ
Inspiration
- CRIS β Multi-agent criminal intelligence system with Neo4j
- Context Graphs β Semantic search + structural analysis
- osint-analyser β LLM-powered OSINT automation
Local-Only Promise
- Data stays local (Neo4j instance)
- No external API calls for analysis
- Optional offline mode
Version History
- v0.1 β MVP: CSV ingest, basic algorithms, JSON export
- Roadmap: API integration, ML anomaly detection, real-time updates