An AI-powered autonomous agent that detects, correlates, and responds to cyber security incidents in real-time.
- Multi-source log ingestion - Accepts events from SIEM, EDR, firewalls, etc.
- Intelligent threat detection - Anomaly detection + behavioral analytics + signature matching
- Cross-system correlation - Automatically connects related events into incidents
- MITRE ATT&CK mapping - Maps attacks to kill chain stages
- AI-powered analysis - Local LLM generates plain English summaries
- Automated response - Context-specific playbooks with human approval gates
- Real-time dashboard - Web interface for monitoring and control
- Python 3.11 or 3.12
- Node.js 18+ (for dashboard)
- Ollama (optional, for AI features)
Windows:
- Go to https://ollama.com/download
- Download Ollama for Windows
- Run the installer
- Open Command Prompt and type:
ollama pull llama3.2:3b
- Wait for download to complete (~2GB)
Mac:
brew install ollama
ollama serve
ollama pull llama3.2:3bLinux:
curl -fsSL https://ollama.com/install.sh | sh
ollama serve
ollama pull llama3.2:3b- Open Command Prompt/Terminal
- Navigate to project folder:
cd path/to/cyber-agent-mvp/backend
- Install Python dependencies:
pip install -r requirements.txt
- Open a NEW Command Prompt/Terminal window
- Navigate to frontend folder:
cd path/to/cyber-agent-mvp/frontend
- Install Node dependencies:
npm install
Terminal 1 - Backend:
cd backend
python main.py
Wait until you see: Uvicorn running on http://0.0.0.0:8000
Terminal 2 - Frontend:
cd frontend
npm start
Wait until you see: Compiled successfully!
Your browser should automatically open to http://localhost:3000
-
Dashboard loads - You'll see the Cyber Incident Response Agent interface
-
Run a demo scenario - Click one of the scenario buttons:
- 🔑 Credential Compromise
- 🔒 Ransomware Attack
- 📤 Data Exfiltration
-
Watch the pipeline - The system will:
- Ingest events (~8 events)
- Run detection (~5-6 alerts generated)
- Correlate into incidents (~1-2 incidents)
- Generate response plans with AI
-
View incident details - Click on an incident card to see:
- MITRE ATT&CK kill chain
- AI-generated summary (if Ollama is running)
- Step-by-step response playbook
- Specific containment actions
-
Approve actions - Click "✓ Approve" on containment actions to simulate response execution
Simulates an attacker using stolen credentials to access systems, dump credentials, and move laterally.
Attack chain:
- Login from unusual location (Romania)
- Credential dumping with Mimikatz
- Lateral movement to file server
- Data exfiltration (2.3GB)
Simulates a ransomware infection through phishing email.
Attack chain:
- Malicious email attachment
- Malware execution
- C2 communication
- File encryption
- Ransom note deployment
Simulates an insider threat exfiltrating sensitive data.
Attack chain:
- After-hours VPN access
- Access to confidential files
- Database query (50K records)
- Upload to personal cloud storage
- Make sure Python 3.11+ is installed:
python --version - Install dependencies:
pip install -r requirements.txt - Check port 8000 is not in use
- Make sure Node.js is installed:
node --version - Install dependencies:
npm install - Clear cache:
npm cache clean --force
- Make sure Ollama is running:
ollama serve - Pull the model:
ollama pull llama3.2:3b - Check Ollama is accessible:
curl http://localhost:11434/api/tags
- Click "🔄 Refresh Data" button
- Make sure you clicked a scenario button first
- Check browser console for errors (F12)
Frontend (React) ←→ Backend API (FastAPI) ←→ Local LLM (Ollama)
↓
Detection Engine
↓
Correlation Engine
↓
Response Orchestrator
- Backend: Python, FastAPI, NetworkX, PyOD, scikit-learn
- Frontend: React, Axios, Recharts
- AI: Ollama (Llama 3.2 3B)
- Storage: SQLite (for demo), In-memory for MVP
cyber-agent-mvp/
├── backend/ # Python backend
│ ├── main.py # FastAPI application
│ ├── detection.py # Threat detection
│ ├── correlation.py # Event correlation
│ ├── response.py # Response generation
│ └── ...
├── frontend/ # React dashboard
│ ├── src/
│ │ ├── App.js # Main component
│ │ └── App.css # Styles
│ └── ...
├── sample_data/ # Demo scenarios
│ ├── credential_compromise.json
│ ├── ransomware.json
│ └── data_exfiltration.json
└── playbooks/ # Response playbooks
├── credential_compromise.yaml
├── ransomware.yaml
└── data_exfiltration.yaml
- Event Processing: <100ms per event
- Detection: ~500ms for 8 events
- Correlation: <2 seconds
- Full Pipeline: <5 seconds (without LLM), <30 seconds (with LLM)
- Add Elasticsearch for scalable storage
- Implement actual EDR/SIEM API connectors
- Add authentication and RBAC
- Deploy action execution framework
- Implement feedback loop and learning
- Add comprehensive test suite
- Create Docker deployment
MIT License - See LICENSE file for details
For issues or questions, please open an issue on GitHub or contact the development team.