VibeCodingStudio commited on
Commit
b3b10d2
ยท
verified ยท
1 Parent(s): b7d634d

Upload data/index.js with huggingface_hub

Browse files
Files changed (1) hide show
  1. data/index.js +211 -0
data/index.js ADDED
@@ -0,0 +1,211 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ export const kpiData = [
2
+ { label: 'Total Computers', value: '24', change: '+3', icon: 'Monitor', color: 'purple' },
3
+ { label: 'Running', value: '18', change: '+2', icon: 'Play', color: 'green' },
4
+ { label: 'Idle', value: '4', change: '-1', icon: 'Pause', color: 'amber' },
5
+ { label: 'Provisioning', value: '2', change: '+1', icon: 'Loader', color: 'cyan' },
6
+ { label: 'Workflows Active', value: '7', change: '+2', icon: 'GitBranch', color: 'purple' },
7
+ { label: 'Storage Usage', value: '1.8 TB', change: '+12%', icon: 'HardDrive', color: 'cyan' },
8
+ { label: 'Active Sessions', value: '12', change: '+4', icon: 'Users', color: 'green' },
9
+ ];
10
+
11
+ export const quickActions = [
12
+ { label: 'New Desktop', icon: 'Plus', color: 'purple' },
13
+ { label: 'Launch Browser Lab', icon: 'Globe', color: 'cyan' },
14
+ { label: 'Open Dev Container', icon: 'Code', color: 'green' },
15
+ { label: 'Resume Session', icon: 'RotateCcw', color: 'amber' },
16
+ { label: 'Run Workflow', icon: 'Play', color: 'purple' },
17
+ { label: 'View Logs', icon: 'ScrollText', color: 'cyan' },
18
+ ];
19
+
20
+ export const computers = [
21
+ { id: 1, name: 'Ubuntu 24.04 LTS', os: 'ubuntu', status: 'running', cpu: 45, ram: 62, disk: 38, tags: ['production', 'web'], lastActive: '2m ago', favorite: true, ip: '10.0.1.42' },
22
+ { id: 2, name: 'Debian 13 Trixie KDE', os: 'debian', status: 'running', cpu: 28, ram: 41, disk: 22, tags: ['dev', 'kde'], lastActive: '5m ago', favorite: false, ip: '10.0.1.43' },
23
+ { id: 3, name: 'Arch Linux', os: 'arch', status: 'idle', cpu: 5, ram: 18, disk: 55, tags: ['rolling', 'minimal'], lastActive: '1h ago', favorite: true, ip: '10.0.1.44' },
24
+ { id: 4, name: 'Kali Linux', os: 'kali', status: 'running', cpu: 72, ram: 85, disk: 61, tags: ['security', 'pentest'], lastActive: 'now', favorite: false, ip: '10.0.1.45' },
25
+ { id: 5, name: 'Parrot Security', os: 'parrot', status: 'provisioning', cpu: 0, ram: 0, disk: 12, tags: ['security', 'forensics'], lastActive: 'provisioning', favorite: false, ip: '10.0.1.46' },
26
+ { id: 6, name: 'QubesOS Lab', os: 'qubes', status: 'stopped', cpu: 0, ram: 0, disk: 45, tags: ['security', 'isolated'], lastActive: '3d ago', favorite: false, ip: '10.0.1.47' },
27
+ { id: 7, name: 'Pop!_OS COSMIC', os: 'popos', status: 'running', cpu: 33, ram: 54, disk: 29, tags: ['desktop', 'cosmic'], lastActive: '12m ago', favorite: true, ip: '10.0.1.48' },
28
+ { id: 8, name: 'Chrome with CDP', os: 'chrome', status: 'running', cpu: 56, ram: 71, disk: 18, tags: ['browser', 'automation'], lastActive: 'now', favorite: false, ip: '10.0.1.49' },
29
+ { id: 9, name: 'Chromium + Claude', os: 'chromium', status: 'running', cpu: 61, ram: 78, disk: 24, tags: ['browser', 'ai-agent'], lastActive: '1m ago', favorite: true, ip: '10.0.1.50' },
30
+ { id: 10, name: 'Firefox ForgeStudio', os: 'firefox', status: 'idle', cpu: 8, ram: 32, disk: 15, tags: ['browser', 'devtools'], lastActive: '45m ago', favorite: false, ip: '10.0.1.51' },
31
+ { id: 11, name: 'Dev Container', os: 'container', status: 'running', cpu: 42, ram: 56, disk: 31, tags: ['dev', 'docker'], lastActive: '3m ago', favorite: true, ip: '10.0.1.52' },
32
+ ];
33
+
34
+ export const templates = [
35
+ { id: 1, name: 'Ubuntu 24.04 Desktop', category: 'desktops', baseImage: 'ubuntu:24.04', cpu: 4, ram: '8GB', disk: '40GB', tools: ['GNOME', 'Firefox', 'VS Code', 'Docker'], tags: ['stable', 'LTS'], lastUpdated: '2h ago', description: 'Full Ubuntu desktop environment with GNOME and essential dev tools.' },
36
+ { id: 2, name: 'Debian 13 KDE Plasma', category: 'desktops', baseImage: 'debian:trixie', cpu: 4, ram: '8GB', disk: '35GB', tools: ['KDE Plasma', 'Konsole', 'Kate', 'Docker'], tags: ['stable', 'KDE'], lastUpdated: '1d ago', description: 'Debian Trixie with KDE Plasma desktop environment.' },
37
+ { id: 3, name: 'Arch Linux Minimal', category: 'desktops', baseImage: 'archlinux:latest', cpu: 2, ram: '4GB', disk: '20GB', tools: ['i3wm', 'Alacritty', 'Neovim', 'yay'], tags: ['rolling', 'minimal'], lastUpdated: '6h ago', description: 'Minimal Arch Linux with i3 window manager.' },
38
+ { id: 4, name: 'Chrome CDP Sandbox', category: 'browsers', baseImage: 'chrome:latest', cpu: 2, ram: '4GB', disk: '15GB', tools: ['Chrome', 'CDP', 'Puppeteer', 'DevTools'], tags: ['automation', 'CDP'], lastUpdated: '4h ago', description: 'Headless Chrome with Chrome DevTools Protocol access.' },
39
+ { id: 5, name: 'Firefox Playwright', category: 'browsers', baseImage: 'firefox:latest', cpu: 2, ram: '4GB', disk: '15GB', tools: ['Firefox', 'Playwright', 'GeckoDriver'], tags: ['automation', 'testing'], lastUpdated: '12h ago', description: 'Firefox browser with Playwright automation framework.' },
40
+ { id: 6, name: 'Kali Linux Full', category: 'security', baseImage: 'kalilinux/kali-rolling', cpu: 4, ram: '8GB', disk: '60GB', tools: ['Metasploit', 'Burp Suite', 'Nmap', 'Wireshark', 'John'], tags: ['pentest', 'security'], lastUpdated: '1d ago', description: 'Full Kali Linux penetration testing distribution.' },
41
+ { id: 7, name: 'Parrot Security OS', category: 'security', baseImage: 'parrotsec/security', cpu: 4, ram: '8GB', disk: '50GB', tools: ['Metasploit', 'Hashcat', 'Aircrack', 'Volatility'], tags: ['forensics', 'security'], lastUpdated: '3d ago', description: 'Parrot Security for digital forensics and pentesting.' },
42
+ { id: 8, name: 'Node.js Dev Container', category: 'dev-containers', baseImage: 'mcr.microsoft.com/devcontainers/javascript-node', cpu: 2, ram: '4GB', disk: '20GB', tools: ['Node 20', 'npm', 'TypeScript', 'ESLint', 'Prettier'], tags: ['node', 'dev'], lastUpdated: '8h ago', description: 'Pre-configured Node.js development container.' },
43
+ { id: 9, name: 'Python Dev Container', category: 'dev-containers', baseImage: 'mcr.microsoft.com/devcontainers/python', cpu: 2, ram: '4GB', disk: '20GB', tools: ['Python 3.12', 'pip', 'Poetry', 'Jupyter'], tags: ['python', 'dev'], lastUpdated: '5h ago', description: 'Python development container with Jupyter support.' },
44
+ { id: 10, name: 'QubesOS Isolated Lab', category: 'experimental', baseImage: 'qubes:latest', cpu: 8, ram: '16GB', disk: '80GB', tools: ['Xen', 'Whonix', 'Disposable VMs'], tags: ['isolated', 'experimental'], lastUpdated: '1w ago', description: 'Isolated QubesOS environment for high-security workflows.' },
45
+ ];
46
+
47
+ export const agents = [
48
+ { id: 1, name: 'Claude Code', provider: 'Anthropic', model: 'claude-opus-4', status: 'active', sandboxes: 3, icon: '๐Ÿค–', description: 'Advanced coding assistant with shell and filesystem access.' },
49
+ { id: 2, name: 'OpenCode', provider: 'OpenAI', model: 'gpt-4o', status: 'active', sandboxes: 2, icon: 'โšก', description: 'Open-source coding agent with multi-language support.' },
50
+ { id: 3, name: 'Codex CLI', provider: 'OpenAI', model: 'codex-1', status: 'idle', sandboxes: 1, icon: '๐Ÿ”ง', description: 'CLI-based code generation and execution agent.' },
51
+ { id: 4, name: 'OpenClaw', provider: 'Community', model: 'openclaw-v2', status: 'active', sandboxes: 4, icon: '๐Ÿฆ€', description: 'Open-source agent with tool-use capabilities.' },
52
+ { id: 5, name: 'Kilo Code', provider: 'Kilo Labs', model: 'kilo-v3', status: 'idle', sandboxes: 0, icon: '๐ŸŽฏ', description: 'Lightweight code agent optimized for speed.' },
53
+ { id: 6, name: 'Cursor CLI', provider: 'Cursor', model: 'cursor-v1', status: 'active', sandboxes: 2, icon: '๐Ÿ“', description: 'AI-powered code editor agent with context awareness.' },
54
+ { id: 7, name: 'Hermes Agent', provider: 'NousResearch', model: 'hermes-3', status: 'provisioning', sandboxes: 1, icon: '๐Ÿ•Š๏ธ', description: 'Multi-modal agent for complex reasoning tasks.' },
55
+ { id: 8, name: 'Pi', provider: 'Inflection', model: 'pi-v2', status: 'idle', sandboxes: 0, icon: 'ฯ€', description: 'Conversational AI with code execution capabilities.' },
56
+ ];
57
+
58
+ export const modelRouting = [
59
+ { name: 'GPT-5.5', provider: 'OpenAI', latency: '120ms', status: 'available', color: 'green' },
60
+ { name: 'Claude Opus', provider: 'Anthropic', latency: '95ms', status: 'available', color: 'purple' },
61
+ { name: 'Gemini Ultra', provider: 'Google', latency: '150ms', status: 'available', color: 'cyan' },
62
+ { name: 'Kimi K2', provider: 'Moonshot', latency: '200ms', status: 'degraded', color: 'amber' },
63
+ { name: 'OpenRouter Mix', provider: 'OpenRouter', latency: '180ms', status: 'available', color: 'green' },
64
+ { name: 'Local Fallback', provider: 'Ollama', latency: '350ms', status: 'standby', color: 'slate' },
65
+ ];
66
+
67
+ export const toolPermissions = [
68
+ { tool: 'Browser', agent: true, sandbox: true, approval: false, icon: 'Globe' },
69
+ { tool: 'Shell', agent: true, sandbox: true, approval: true, icon: 'Terminal' },
70
+ { tool: 'Filesystem', agent: true, sandbox: true, approval: false, icon: 'FolderOpen' },
71
+ { tool: 'Clipboard', agent: false, sandbox: true, approval: true, icon: 'Clipboard' },
72
+ { tool: 'Network', agent: true, sandbox: false, approval: true, icon: 'Wifi' },
73
+ { tool: 'API Keys', agent: false, sandbox: false, approval: true, icon: 'Key' },
74
+ { tool: 'Terminal', agent: true, sandbox: true, approval: false, icon: 'TerminalSquare' },
75
+ { tool: 'Screenshots', agent: true, sandbox: true, approval: false, icon: 'Camera' },
76
+ { tool: 'Workflows', agent: true, sandbox: false, approval: true, icon: 'GitBranch' },
77
+ ];
78
+
79
+ export const workflows = [
80
+ { id: 1, name: 'Deploy Staging', status: 'running', column: 'running', trigger: 'push to main', progress: 65, startTime: '2m ago', node: 'Boot Container' },
81
+ { id: 2, name: 'Security Scan', status: 'queued', column: 'queued', trigger: 'schedule */6h', progress: 0, startTime: 'pending', node: 'Start' },
82
+ { id: 3, name: 'Browser Test Suite', status: 'waiting', column: 'waiting', trigger: 'manual', progress: 40, startTime: '15m ago', node: 'Attach Browser' },
83
+ { id: 4, name: 'Snapshot Backup', status: 'completed', column: 'completed', trigger: 'schedule daily', progress: 100, startTime: '2h ago', node: 'Cleanup' },
84
+ { id: 5, name: 'Image Pull + Cache', status: 'queued', column: 'queued', trigger: 'webhook', progress: 0, startTime: 'pending', node: 'Start' },
85
+ { id: 6, name: 'Agent Health Check', status: 'running', column: 'running', trigger: 'cron */5m', progress: 80, startTime: '1m ago', node: 'Health Check' },
86
+ { id: 7, name: 'Log Rotation', status: 'completed', column: 'completed', trigger: 'schedule weekly', progress: 100, startTime: '1d ago', node: 'Notify' },
87
+ ];
88
+
89
+ export const workflowNodes = [
90
+ { id: 'start', label: 'Start', type: 'trigger', x: 50, y: 150, status: 'completed' },
91
+ { id: 'pull', label: 'Pull Image', type: 'process', x: 200, y: 150, status: 'completed' },
92
+ { id: 'boot', label: 'Boot Container', type: 'process', x: 350, y: 150, status: 'running' },
93
+ { id: 'health', label: 'Health Check', type: 'check', x: 500, y: 150, status: 'pending' },
94
+ { id: 'browser', label: 'Attach Browser', type: 'process', x: 650, y: 100, status: 'pending' },
95
+ { id: 'snapshot', label: 'Snapshot', type: 'process', x: 650, y: 200, status: 'pending' },
96
+ { id: 'cleanup', label: 'Cleanup', type: 'process', x: 800, y: 150, status: 'pending' },
97
+ { id: 'notify', label: 'Notify', type: 'output', x: 950, y: 150, status: 'pending' },
98
+ ];
99
+
100
+ export const workflowEdges = [
101
+ { from: 'start', to: 'pull' },
102
+ { from: 'pull', to: 'boot' },
103
+ { from: 'boot', to: 'health' },
104
+ { from: 'health', to: 'browser' },
105
+ { from: 'health', to: 'snapshot' },
106
+ { from: 'browser', to: 'cleanup' },
107
+ { from: 'snapshot', to: 'cleanup' },
108
+ { from: 'cleanup', to: 'notify' },
109
+ ];
110
+
111
+ export const terminalSessions = [
112
+ { id: 1, name: 'ubuntu-main', shell: '/bin/bash', cwd: '~/projects/ghostnode', status: 'active' },
113
+ { id: 2, name: 'kali-pentest', shell: '/bin/zsh', cwd: '~/pentest/target', status: 'active' },
114
+ { id: 3, name: 'dev-container', shell: '/bin/bash', cwd: '/workspace/api', status: 'idle' },
115
+ ];
116
+
117
+ export const terminalOutput = [
118
+ { type: 'prompt', text: 'ghostnode@ubuntu:~/projects/ghostnode$' },
119
+ { type: 'command', text: 'docker ps --format "table {{.Names}}\\t{{.Status}}\\t{{.Ports}}"' },
120
+ { type: 'output', text: 'NAMES STATUS PORTS' },
121
+ { type: 'output', text: 'ghostnode-api Up 2 hours 0.0.0.0:3000->3000/tcp' },
122
+ { type: 'output', text: 'ghostnode-worker Up 2 hours 0.0.0.0:4000->4000/tcp' },
123
+ { type: 'output', text: 'chrome-cdp Up 45 minutes 0.0.0.0:9222->9222/tcp' },
124
+ { type: 'output', text: 'dev-container Up 3 hours 0.0.0.0:8080->8080/tcp' },
125
+ { type: 'prompt', text: 'ghostnode@ubuntu:~/projects/ghostnode$' },
126
+ { type: 'command', text: 'kubectl get pods -n ghostnode' },
127
+ { type: 'output', text: 'NAME READY STATUS RESTARTS AGE' },
128
+ { type: 'output', text: 'api-deployment-7d8f9c6b5-x2k1 1/1 Running 0 2h' },
129
+ { type: 'output', text: 'worker-deployment-5c4d3a2f1-m9n7 1/1 Running 0 2h' },
130
+ { type: 'output', text: 'chrome-cdp-9b8a7c6d5-p4q3 1/1 Running 0 45m' },
131
+ { type: 'output', text: 'redis-master-0 1/1 Running 0 5d' },
132
+ { type: 'prompt', text: 'ghostnode@ubuntu:~/projects/ghostnode$' },
133
+ { type: 'command', text: 'gh workflow run deploy-staging.yml' },
134
+ { type: 'output', text: 'โœ“ Created workflow_run event for deploy-staging.yml' },
135
+ { type: 'output', text: ' Run ID: 89456123' },
136
+ { type: 'output', text: ' Status: queued' },
137
+ { type: 'prompt', text: 'ghostnode@ubuntu:~/projects/ghostnode$' },
138
+ { type: 'command', text: 'ghostnode status --all' },
139
+ { type: 'output', text: 'โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ' },
140
+ { type: 'output', text: 'โ”‚ Ghostnode Cluster Status โ”‚' },
141
+ { type: 'output', text: 'โ”‚ โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ” โ”‚' },
142
+ { type: 'output', text: 'โ”‚ Computers: 24 total, 18 running, 4 idle โ”‚' },
143
+ { type: 'output', text: 'โ”‚ Agents: 6 active, 2 idle โ”‚' },
144
+ { type: 'output', text: 'โ”‚ Workflows: 3 running, 2 queued โ”‚' },
145
+ { type: 'output', text: 'โ”‚ Storage: 1.8 TB / 4.0 TB (45%) โ”‚' },
146
+ { type: 'output', text: 'โ”‚ Uptime: 99.97% (30d rolling) โ”‚' },
147
+ { type: 'output', text: 'โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ' },
148
+ { type: 'prompt', text: 'ghostnode@ubuntu:~/projects/ghostnode$' },
149
+ ];
150
+
151
+ export const logLines = [
152
+ { time: '14:32:01', level: 'info', source: 'api', message: 'Container ubuntu-main health check passed' },
153
+ { time: '14:32:03', level: 'info', source: 'worker', message: 'Workflow deploy-staging step 3/8 started' },
154
+ { time: '14:32:05', level: 'warn', source: 'scheduler', message: 'Agent hermes-3 provisioning timeout, retrying...' },
155
+ { time: '14:32:08', level: 'info', source: 'browser', message: 'Chrome CDP session established for sandbox-7d2f' },
156
+ { time: '14:32:10', level: 'error', source: 'network', message: 'Outbound connection blocked by policy: 203.0.113.42:443' },
157
+ { time: '14:32:12', level: 'info', source: 'api', message: 'Snapshot created: kali-pentest-snap-20240115' },
158
+ { time: '14:32:15', level: 'info', source: 'worker', message: 'Health check passed for dev-container' },
159
+ { time: '14:32:18', level: 'debug', source: 'agent', message: 'Claude Code tool call: read_file(/workspace/api/src/index.ts)' },
160
+ { time: '14:32:20', level: 'info', source: 'scheduler', message: 'Cron job agent-health-check triggered' },
161
+ { time: '14:32:22', level: 'info', source: 'api', message: 'New session established: user@firefox-forge' },
162
+ ];
163
+
164
+ export const browserLabs = [
165
+ { id: 1, name: 'Chrome CDP Session', type: 'chrome-cdp', status: 'active', url: 'https://app.ghostnode.dev', actions: 47, screenshots: 12 },
166
+ { id: 2, name: 'Playwright Test Suite', type: 'playwright', status: 'running', url: 'http://localhost:3000', actions: 156, screenshots: 34 },
167
+ { id: 3, name: 'Scraping Task - Docs', type: 'scraping', status: 'queued', url: 'https://docs.ghostnode.dev', actions: 0, screenshots: 0 },
168
+ { id: 4, name: 'Firefox Forge Session', type: 'firefox', status: 'idle', url: 'about:blank', actions: 23, screenshots: 5 },
169
+ { id: 5, name: 'HAR Capture - API', type: 'har-capture', status: 'active', url: 'https://api.ghostnode.dev/v2', actions: 89, screenshots: 0 },
170
+ { id: 6, name: 'Browser-use Agent', type: 'browser-use', status: 'running', url: 'https://github.com/ghostnode', actions: 312, screenshots: 45 },
171
+ { id: 7, name: 'Session Replay #42', type: 'replay', status: 'completed', url: 'https://app.ghostnode.dev/dashboard', actions: 67, screenshots: 18 },
172
+ ];
173
+
174
+ export const apiKeys = [
175
+ { id: 1, provider: 'Anthropic', key: 'sk-ant-...7x2k', status: 'active', lastUsed: '2m ago', model: 'Claude Opus 4' },
176
+ { id: 2, provider: 'OpenAI', key: 'sk-proj-...m9n7', status: 'active', lastUsed: '5m ago', model: 'GPT-5.5' },
177
+ { id: 3, provider: 'Google AI', key: 'AIza...4q3p', status: 'active', lastUsed: '1h ago', model: 'Gemini Ultra' },
178
+ { id: 4, provider: 'OpenRouter', key: 'sk-or-...8j5l', status: 'active', lastUsed: '3h ago', model: 'Multi-model' },
179
+ { id: 5, provider: 'Vercel AI Gateway', key: 'vk_aigw-...2d9f', status: 'active', lastUsed: '30m ago', model: 'BYOK Gateway' },
180
+ { id: 6, provider: 'Ollama Local', key: 'http://localhost:11434', status: 'standby', lastUsed: '1d ago', model: 'Llama 3.1 70B' },
181
+ ];
182
+
183
+ export const securityPolicies = [
184
+ { name: 'Outbound-Only Networking', enabled: true, description: 'Block all inbound connections except through approved proxies.' },
185
+ { name: 'Secret Redaction', enabled: true, description: 'Automatically redact API keys and tokens in logs and output.' },
186
+ { name: 'Audit Logging', enabled: true, description: 'Log all agent actions, shell commands, and file access.' },
187
+ { name: 'Screenshot Permissions', enabled: false, description: 'Require approval before agents can capture screenshots.' },
188
+ { name: 'Command Approval', enabled: true, description: 'Require human approval for destructive shell commands.' },
189
+ { name: 'Sandbox TTL', enabled: true, description: 'Auto-terminate sandboxes after 24h of inactivity.' },
190
+ { name: 'Network Isolation', enabled: false, description: 'Full network isolation for high-security sandboxes.' },
191
+ { name: 'Resource Limits', enabled: true, description: 'Enforce CPU/memory limits on all containers.' },
192
+ ];
193
+
194
+ export const recentActivity = [
195
+ { id: 1, action: 'Container ubuntu-main started', time: '2m ago', type: 'success', icon: 'Play' },
196
+ { id: 2, action: 'Agent Claude Code executed shell command', time: '5m ago', type: 'info', icon: 'Terminal' },
197
+ { id: 3, action: 'Workflow deploy-staging reached step 3', time: '8m ago', type: 'info', icon: 'GitBranch' },
198
+ { id: 4, action: 'Snapshot created: kali-pentest-snap', time: '15m ago', type: 'success', icon: 'Camera' },
199
+ { id: 5, action: 'Security alert: outbound connection blocked', time: '22m ago', type: 'warning', icon: 'Shield' },
200
+ { id: 6, action: 'Browser CDP session established', time: '30m ago', type: 'info', icon: 'Globe' },
201
+ { id: 7, action: 'Container parrot-security provisioning', time: '45m ago', type: 'info', icon: 'Loader' },
202
+ { id: 8, action: 'API key rotated for OpenAI', time: '1h ago', type: 'success', icon: 'Key' },
203
+ ];
204
+
205
+ export const systemHealth = {
206
+ cpu: { used: 67, total: 100, label: 'CPU', cores: 32 },
207
+ memory: { used: 48, total: 128, label: 'Memory', unit: 'GB' },
208
+ storage: { used: 1.8, total: 4.0, label: 'Storage', unit: 'TB' },
209
+ network: { inbound: '2.4 Gbps', outbound: '1.8 Gbps', label: 'Network' },
210
+ sessions: { active: 12, total: 24, label: 'Sessions' },
211
+ };