| name | WazuhDashboard |
| description | Real-time Wazuh SIEM security dashboard with PAI chat integration. USE WHEN user mentions wazuh dashboard, security alerts, SIEM monitoring, alert analysis, OR wants to view security events with AI assistance. |
WazuhDashboard
Real-time security monitoring dashboard for Wazuh SIEM alerts with integrated PAI chat for contextual analysis.
Architecture
Wazuh (10.0.0.60) โ n8n webhook โ JSONL file โ Dashboard Server (WebSocket) โ Vue Client
โ
PAI API (localhost:3001)
Features
- Real-time Alert Feed: Live streaming of Wazuh security alerts via WebSocket
- Severity Color-coding: Visual priority indicators (Critical, High, Medium, Low)
- Split-screen Layout: 60% alerts feed, 40% PAI chat panel
- Alert Filtering: Filter by severity, agent, rule group
- PAI Chat Integration: Context-aware security analysis
- Quick Actions: "Analyze", "Remediation", "Related?" buttons
Ports
Severity Levels
| Level | Range | Color | Hex |
|---|
| Critical | 12+ | Red | #f7768e |
| High | 7-11 | Amber | #e0af68 |
| Medium | 3-6 | Purple | #bb9af7 |
| Low | 0-2 | Green | #9ece6a |
Management
~/.claude/skills/WazuhDashboard/manage.sh start
~/.claude/skills/WazuhDashboard/manage.sh stop
~/.claude/skills/WazuhDashboard/manage.sh restart
~/.claude/skills/WazuhDashboard/manage.sh status
Configuration
Environment Variables
Add to ~/.claude/.env:
WAZUH_PAI_API_KEY=<your-claude-api-key>
WAZUH_ALERTS_PATH=/path/to/your/wazuh-alerts/alerts.jsonl
n8n Webhook
Configure n8n workflow to receive Wazuh alerts and append to JSONL file:
- Webhook URL:
https://n8n.home.yourdomain.com/webhook/wazuh-alerts
- Output: Append JSON to
$WAZUH_ALERTS_PATH
Wazuh Integration
Add to /var/ossec/etc/ossec.conf on Wazuh manager (configure your Wazuh IP):
<integration>
<name>custom-webhook</name>
<hook_url>https://n8n.home.yourdomain.com/webhook/wazuh-alerts</hook_url>
<level>5</level>
<alert_format>json</alert_format>
</integration>
File Structure
WazuhDashboard/
โโโ SKILL.md
โโโ manage.sh
โโโ apps/
โ โโโ server/
โ โ โโโ package.json
โ โ โโโ tsconfig.json
โ โ โโโ src/
โ โ โโโ index.ts
โ โ โโโ alert-ingest.ts
โ โ โโโ pai-client.ts
โ โ โโโ types.ts
โ โโโ client/
โ โโโ package.json
โ โโโ vite.config.ts
โ โโโ tailwind.config.js
โ โโโ postcss.config.js
โ โโโ index.html
โ โโโ src/
โ โโโ main.ts
โ โโโ App.vue
โ โโโ types.ts
โ โโโ styles/
โ โ โโโ main.css
โ โโโ composables/
โ โ โโโ useWebSocket.ts
โ โ โโโ usePAIChat.ts
โ โโโ components/
โ โโโ AlertFeed.vue
โ โโโ AlertRow.vue
โ โโโ AlertStats.vue
โ โโโ ChatPanel.vue
โ โโโ FilterPanel.vue
โโโ workflows/
โโโ Deploy.md
Examples
Example 1: View live security alerts
User: "Start wazuh dashboard"
โ Runs manage.sh start
โ Opens dashboard at http://localhost:5173
โ Live alerts stream in real-time
Example 2: Analyze specific alert
User: "What does this brute force alert mean?"
โ PAI analyzes selected alert context
โ Provides explanation and remediation steps
Example 3: Filter high-severity alerts
User: "Show only critical and high alerts"
โ Applies severity filter
โ Displays filtered alert stream