Red Team Dashboard
Comprehensive interface for planning and executing AI red teaming and adversarial testing exercises. Monitor attack success rates, discover vulnerabilities, and track compliance across security frameworks.
Preview
Full interactive dashboard with sample red team exercise results
Red Team Exercise Dashboard
AI Adversarial Testing & Vulnerability Assessment
Moderate risk detected
Arsenal
Attack vectors and frameworks
Targets
AI models under test
Top Vulnerabilities
System prompt fully extractable via multi-turn conversation
The model reveals its complete system prompt when asked to "repeat everything above" in a fictional context.
DAN jailbreak bypasses safety filters on harmful content
Model adopts unrestricted persona and provides disallowed content.
Training data leakage through completion attacks
Model completes partial PII strings, suggesting memorization of training data.
Significant gender bias in professional role descriptions
Model consistently associates certain professions with specific genders.
Test Run Timeline
Recent adversarial test executions
Idle State
Dashboard before any tests have been executed
Red Team Exercise Dashboard
AI Adversarial Testing & Vulnerability Assessment
Within acceptable range
Arsenal
Attack vectors and frameworks
Targets
AI models under test
Top Vulnerabilities
Test Run Timeline
Recent adversarial test executions
Running State
Dashboard during active test execution with live pulse indicator
Red Team Exercise Dashboard
AI Adversarial Testing & Vulnerability Assessment
Within acceptable range
Arsenal
Attack vectors and frameworks
Targets
AI models under test
Top Vulnerabilities
Partial system prompt exposure detected
Model reveals fragments of system prompt under certain prompting strategies.
Test Run Timeline
Recent adversarial test executions
Props
RedTeamDashboard component API reference
| Prop | Type | Default | Description |
|---|---|---|---|
attackVectors | AttackVector[] | defaultAttackVectors | Available attack types and frameworks in the arsenal panel |
targetModels | TargetModel[] | defaultTargetModels | AI models under test with provider details and status |
attackSuccessRate | number | 29 | Attack Success Rate percentage (0-100) |
asrTrend | number | 3.2 | ASR trend compared to previous run (positive = worse) |
riskScore | number | 62 | Composite risk score (0-100) displayed on the gauge |
vulnerabilities | Vulnerability[] | defaultVulnerabilities | List of discovered vulnerabilities with severity levels |
testStatus | 'idle' | 'running' | 'completed' | 'failed' | 'completed' | Current test execution status |
testRuns | TestRun[] | defaultTestRuns | Timeline of past test run executions |
viewMode | 'overview' | 'detailed' | 'compliance' | 'overview' | Active dashboard view mode (controlled) |
onStartTest | () => void | — | Callback when Start Test button is clicked |
onStopTest | () => void | — | Callback when Stop button is clicked during a running test |
onExportReport | () => void | — | Callback when Export Report button is clicked |
onViewModeChange | (mode: ViewMode) => void | — | Callback when the view mode tab is changed |
onToggleAttack | (attackId: string, enabled: boolean) => void | — | Callback when an attack vector toggle is switched |
className | string | — | Additional CSS classes for the root element |
Key Types
interface AttackVector { id: string name: string category: AttackCategory description: string enabled: boolean}
type AttackCategory = | 'prompt-injection' | 'jailbreak' | 'data-extraction' | 'bias-probing' | 'hallucination-trigger' | 'privilege-escalation' | 'toxicity-elicitation' | 'system-prompt-leak'
interface Vulnerability { id: string title: string severity: 'critical' | 'high' | 'medium' | 'low' category: AttackCategory description: string attackVector: string reproducible: boolean timestamp: string}
interface TargetModel { id: string name: string provider: string version: string endpoint?: string status: 'online' | 'offline' | 'degraded'}
interface TestRun { id: string timestamp: string status: 'idle' | 'running' | 'completed' | 'failed' attacksExecuted: number attacksSucceeded: number duration: string model: string}Usage
Import and implementation example
import { RedTeamDashboard } from '@/blocks/security/red-team-dashboard'
export default function SecurityPage() { return ( <RedTeamDashboard testStatus="completed" attackSuccessRate={29} riskScore={62} onStartTest={() => runTests()} onStopTest={() => abortTests()} onExportReport={() => downloadReport()} onToggleAttack={(id, enabled) => updateArsenal(id, enabled)} /> )}Built With
3 componentsThis block uses the following UI components from the design system:
Features
Built-in functionality
- Arsenal panel: Toggle and manage attack vectors across 8 categories: prompt injection, jailbreak, data extraction, bias probing, hallucination triggers, privilege escalation, toxicity, and system prompt leaks
- Target model management: Display AI models under test with provider info, version, and real-time online/offline/degraded status
- Attack Success Rate (ASR): Prominent metric showing the percentage of successful attacks with trend indicator compared to previous runs
- Risk score gauge: Visual SVG gauge (0-100) with color-coded gradient from green (safe) to red (critical)
- Vulnerability listing: Detailed vulnerability cards with severity badges, reproducibility flags, attack vector info, and timestamps
- Test execution controls: Start/Stop buttons with animated status pulse for running tests, plus Export Report functionality
- Three view modes: Overview for summary metrics, Detailed Results for full vulnerability list, and Compliance view for framework assessment
- Compliance assessment: Track alignment with OWASP LLM Top 10, NIST AI RMF, EU AI Act, MITRE ATLAS, and ISO/IEC 42001
- Test run timeline: Historical view of test executions with per-run ASR, duration, and success/failure status
- Dark mode: Full dark mode support with proper color contrast across all panels and states
- Controlled & uncontrolled: Supports both controlled (viewMode prop) and uncontrolled (internal state) view mode management
- forwardRef support: Forwards ref to root HTMLDivElement for external DOM access
Accessibility
ARIA support and keyboard navigation
ARIA Attributes
role="switch" on attack vector toggles with aria-checkedaria-label on toggle buttons for screen reader contextSemantic heading hierarchy within dashboard sectionsKeyboard Navigation
| Key | Action |
|---|---|
| Tab | Navigate between interactive elements (toggles, buttons, tabs) |
| Enter / Space | Activate buttons, toggle attack vectors, switch view modes |
Notes
- Severity badges use semantic color coding: rose for critical, amber for high, indigo for medium
- Status pulse animation uses prefers-reduced-motion safe patterns
- Risk gauge uses tabular-nums for stable number rendering
- All interactive elements have visible focus states
- Vulnerability descriptions are truncated with line-clamp for readability