@jaimevalasek/aioson 1.4.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. package/CHANGELOG.md +31 -1
  2. package/LICENSE +661 -21
  3. package/README.md +9 -1
  4. package/docs/design-previews/aurora-command-ui-website.html +884 -0
  5. package/docs/design-previews/aurora-command-ui.html +682 -0
  6. package/docs/design-previews/bold-editorial-ui-website.html +658 -0
  7. package/docs/design-previews/bold-editorial-ui.html +717 -0
  8. package/docs/design-previews/clean-saas-ui-website.html +1202 -0
  9. package/docs/design-previews/clean-saas-ui.html +549 -0
  10. package/docs/design-previews/cognitive-core-ui-website.html +1009 -0
  11. package/docs/design-previews/cognitive-core-ui.html +463 -0
  12. package/docs/design-previews/glassmorphism-ui-website.html +572 -0
  13. package/docs/design-previews/glassmorphism-ui.html +886 -0
  14. package/docs/design-previews/index.html +699 -0
  15. package/docs/design-previews/interface-design-website.html +1187 -0
  16. package/docs/design-previews/interface-design.html +513 -0
  17. package/docs/design-previews/neo-brutalist-ui-website.html +621 -0
  18. package/docs/design-previews/neo-brutalist-ui.html +797 -0
  19. package/docs/design-previews/premium-command-center-ui-website.html +1217 -0
  20. package/docs/design-previews/premium-command-center-ui.html +552 -0
  21. package/docs/design-previews/warm-craft-ui-website.html +684 -0
  22. package/docs/design-previews/warm-craft-ui.html +739 -0
  23. package/docs/en/cli-reference.md +20 -9
  24. package/docs/en/squad-dashboard.md +372 -0
  25. package/docs/openclaw-bridge.md +308 -0
  26. package/docs/pt/README.md +7 -0
  27. package/docs/pt/agent-sharding.md +132 -0
  28. package/docs/pt/agentes.md +131 -11
  29. package/docs/pt/busca-de-contexto.md +129 -0
  30. package/docs/pt/cache-de-contexto.md +156 -0
  31. package/docs/pt/cenarios.md +46 -2
  32. package/docs/pt/comandos-cli.md +88 -1
  33. package/docs/pt/design-hybrid-forge.md +107 -0
  34. package/docs/pt/inicio-rapido.md +72 -5
  35. package/docs/pt/inteligencia-adaptativa.md +324 -0
  36. package/docs/pt/monitor-de-contexto.md +104 -0
  37. package/docs/pt/recuperacao-de-sessao.md +125 -0
  38. package/docs/pt/sandbox.md +125 -0
  39. package/docs/pt/skills.md +98 -6
  40. package/docs/pt/squad-dashboard.md +373 -0
  41. package/docs/testing/genome-2.0-matrix.md +5 -5
  42. package/docs/testing/genome-2.0-rollout.md +9 -9
  43. package/package.json +2 -2
  44. package/src/agent-loader.js +280 -0
  45. package/src/backup-local.js +74 -0
  46. package/src/cli.js +192 -0
  47. package/src/commands/agent-loader.js +85 -0
  48. package/src/commands/backup-local-cmd.js +25 -0
  49. package/src/commands/context-cache.js +90 -0
  50. package/src/commands/context-monitor.js +92 -0
  51. package/src/commands/context-search.js +66 -0
  52. package/src/commands/design-hybrid-options.js +385 -0
  53. package/src/commands/health.js +214 -0
  54. package/src/commands/init.js +54 -13
  55. package/src/commands/install.js +52 -13
  56. package/src/commands/learning-evolve.js +355 -0
  57. package/src/commands/live.js +34 -0
  58. package/src/commands/recovery.js +43 -0
  59. package/src/commands/runtime.js +242 -0
  60. package/src/commands/sandbox.js +37 -0
  61. package/src/commands/setup-context.js +29 -4
  62. package/src/commands/setup.js +178 -0
  63. package/src/commands/skill.js +79 -32
  64. package/src/commands/squad-daemon.js +209 -0
  65. package/src/commands/squad-dashboard.js +39 -0
  66. package/src/commands/squad-deploy.js +64 -0
  67. package/src/commands/squad-doctor.js +52 -0
  68. package/src/commands/squad-mcp.js +270 -0
  69. package/src/commands/squad-processes.js +56 -0
  70. package/src/commands/squad-recovery.js +42 -0
  71. package/src/commands/squad-roi.js +291 -0
  72. package/src/commands/squad-score.js +250 -0
  73. package/src/commands/squad-status.js +37 -1
  74. package/src/commands/squad-validate.js +62 -1
  75. package/src/commands/squad-webhook.js +160 -0
  76. package/src/commands/squad-worker.js +191 -0
  77. package/src/commands/squad-worktrees.js +75 -0
  78. package/src/commands/tool-registry-cmd.js +232 -0
  79. package/src/commands/update.js +7 -0
  80. package/src/commands/web-map.js +70 -0
  81. package/src/commands/web-scrape.js +71 -0
  82. package/src/constants.js +17 -0
  83. package/src/context-cache.js +159 -0
  84. package/src/context-search.js +326 -0
  85. package/src/context-writer.js +45 -1
  86. package/src/design-variation-catalog.js +503 -0
  87. package/src/i18n/messages/en.js +159 -3
  88. package/src/i18n/messages/es.js +147 -2
  89. package/src/i18n/messages/fr.js +147 -2
  90. package/src/i18n/messages/pt-BR.js +158 -3
  91. package/src/install-animation.js +260 -0
  92. package/src/install-profile.js +143 -0
  93. package/src/install-wizard.js +474 -0
  94. package/src/installer.js +38 -10
  95. package/src/lib/webhook-server.js +328 -0
  96. package/src/mcp-connectors/registry.js +602 -0
  97. package/src/parser.js +7 -1
  98. package/src/recovery-context-session.js +154 -0
  99. package/src/runtime-store.js +355 -2
  100. package/src/sandbox.js +177 -0
  101. package/src/squad/external-session.js +180 -0
  102. package/src/squad/inter-squad.js +74 -0
  103. package/src/squad/recovery-context.js +201 -0
  104. package/src/squad/worktree-manager.js +114 -0
  105. package/src/squad-daemon.js +490 -0
  106. package/src/squad-dashboard/api.js +223 -0
  107. package/src/squad-dashboard/attachment-handler.js +93 -0
  108. package/src/squad-dashboard/context-monitor.js +157 -0
  109. package/src/squad-dashboard/execution-logs.js +115 -0
  110. package/src/squad-dashboard/hunk-review.js +209 -0
  111. package/src/squad-dashboard/metrics.js +133 -0
  112. package/src/squad-dashboard/process-monitor.js +125 -0
  113. package/src/squad-dashboard/renderer.js +858 -0
  114. package/src/squad-dashboard/server.js +232 -0
  115. package/src/squad-dashboard/styles.js +525 -0
  116. package/src/squad-dashboard/token-tracker.js +99 -0
  117. package/src/tool-executor.js +94 -0
  118. package/src/updater.js +11 -3
  119. package/src/web.js +284 -0
  120. package/src/worker-runner.js +339 -0
  121. package/template/.aioson/agents/analyst.md +62 -3
  122. package/template/.aioson/agents/architect.md +42 -0
  123. package/template/.aioson/agents/design-hybrid-forge.md +127 -0
  124. package/template/.aioson/agents/dev.md +223 -11
  125. package/template/.aioson/agents/deyvin.md +65 -0
  126. package/template/.aioson/agents/neo.md +152 -0
  127. package/template/.aioson/agents/orache.md +17 -0
  128. package/template/.aioson/agents/orchestrator.md +26 -0
  129. package/template/.aioson/agents/pm.md +58 -0
  130. package/template/.aioson/agents/product.md +88 -12
  131. package/template/.aioson/agents/qa.md +80 -0
  132. package/template/.aioson/agents/setup.md +128 -22
  133. package/template/.aioson/agents/sheldon.md +704 -0
  134. package/template/.aioson/agents/squad.md +191 -0
  135. package/template/.aioson/agents/tester.md +410 -0
  136. package/template/.aioson/agents/ux-ui.md +12 -0
  137. package/template/.aioson/config.md +21 -0
  138. package/template/.aioson/context/forensics/.gitkeep +0 -0
  139. package/template/.aioson/context/seeds/seed-example.md +27 -0
  140. package/template/.aioson/context/user-profile.md +42 -0
  141. package/template/.aioson/locales/en/agents/analyst.md +8 -0
  142. package/template/.aioson/locales/en/agents/architect.md +8 -0
  143. package/template/.aioson/locales/en/agents/dev.md +66 -7
  144. package/template/.aioson/locales/en/agents/deyvin.md +8 -0
  145. package/template/.aioson/locales/en/agents/neo.md +8 -0
  146. package/template/.aioson/locales/en/agents/orchestrator.md +26 -0
  147. package/template/.aioson/locales/en/agents/qa.md +49 -0
  148. package/template/.aioson/locales/en/agents/setup.md +35 -2
  149. package/template/.aioson/locales/en/agents/sheldon.md +340 -0
  150. package/template/.aioson/locales/en/agents/ux-ui.md +8 -0
  151. package/template/.aioson/locales/es/agents/analyst.md +8 -0
  152. package/template/.aioson/locales/es/agents/architect.md +8 -0
  153. package/template/.aioson/locales/es/agents/dev.md +66 -7
  154. package/template/.aioson/locales/es/agents/deyvin.md +8 -0
  155. package/template/.aioson/locales/es/agents/neo.md +48 -0
  156. package/template/.aioson/locales/es/agents/orchestrator.md +26 -0
  157. package/template/.aioson/locales/es/agents/qa.md +26 -0
  158. package/template/.aioson/locales/es/agents/setup.md +35 -2
  159. package/template/.aioson/locales/es/agents/sheldon.md +192 -0
  160. package/template/.aioson/locales/es/agents/squad.md +63 -0
  161. package/template/.aioson/locales/es/agents/ux-ui.md +8 -0
  162. package/template/.aioson/locales/fr/agents/analyst.md +8 -0
  163. package/template/.aioson/locales/fr/agents/architect.md +8 -0
  164. package/template/.aioson/locales/fr/agents/dev.md +66 -7
  165. package/template/.aioson/locales/fr/agents/deyvin.md +8 -0
  166. package/template/.aioson/locales/fr/agents/neo.md +48 -0
  167. package/template/.aioson/locales/fr/agents/orchestrator.md +26 -0
  168. package/template/.aioson/locales/fr/agents/qa.md +26 -0
  169. package/template/.aioson/locales/fr/agents/setup.md +35 -2
  170. package/template/.aioson/locales/fr/agents/sheldon.md +192 -0
  171. package/template/.aioson/locales/fr/agents/squad.md +63 -0
  172. package/template/.aioson/locales/fr/agents/ux-ui.md +8 -0
  173. package/template/.aioson/locales/pt-BR/agents/analyst.md +19 -0
  174. package/template/.aioson/locales/pt-BR/agents/architect.md +19 -0
  175. package/template/.aioson/locales/pt-BR/agents/dev.md +75 -12
  176. package/template/.aioson/locales/pt-BR/agents/deyvin.md +8 -0
  177. package/template/.aioson/locales/pt-BR/agents/neo.md +147 -0
  178. package/template/.aioson/locales/pt-BR/agents/orchestrator.md +26 -0
  179. package/template/.aioson/locales/pt-BR/agents/product.md +8 -3
  180. package/template/.aioson/locales/pt-BR/agents/qa.md +60 -0
  181. package/template/.aioson/locales/pt-BR/agents/setup.md +35 -2
  182. package/template/.aioson/locales/pt-BR/agents/sheldon.md +192 -0
  183. package/template/.aioson/locales/pt-BR/agents/squad.md +105 -0
  184. package/template/.aioson/locales/pt-BR/agents/ux-ui.md +8 -0
  185. package/template/.aioson/schemas/squad-blueprint.schema.json +21 -0
  186. package/template/.aioson/schemas/squad-manifest.schema.json +178 -1
  187. package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +243 -0
  188. package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -0
  189. package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -0
  190. package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -0
  191. package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -0
  192. package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -0
  193. package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +482 -0
  194. package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +387 -0
  195. package/template/.aioson/skills/design/bold-editorial-ui/SKILL.md +205 -0
  196. package/template/.aioson/skills/design/bold-editorial-ui/references/art-direction.md +338 -0
  197. package/template/.aioson/skills/design/bold-editorial-ui/references/components.md +977 -0
  198. package/template/.aioson/skills/design/bold-editorial-ui/references/dashboards.md +218 -0
  199. package/template/.aioson/skills/design/bold-editorial-ui/references/design-tokens.md +326 -0
  200. package/template/.aioson/skills/design/bold-editorial-ui/references/motion.md +461 -0
  201. package/template/.aioson/skills/design/bold-editorial-ui/references/patterns.md +293 -0
  202. package/template/.aioson/skills/design/bold-editorial-ui/references/websites.md +352 -0
  203. package/template/.aioson/skills/design/clean-saas-ui/SKILL.md +210 -0
  204. package/template/.aioson/skills/design/clean-saas-ui/references/art-direction.md +319 -0
  205. package/template/.aioson/skills/design/clean-saas-ui/references/components.md +365 -0
  206. package/template/.aioson/skills/design/clean-saas-ui/references/dashboards.md +196 -0
  207. package/template/.aioson/skills/design/clean-saas-ui/references/design-tokens.md +244 -0
  208. package/template/.aioson/skills/design/clean-saas-ui/references/motion.md +235 -0
  209. package/template/.aioson/skills/design/clean-saas-ui/references/patterns.md +215 -0
  210. package/template/.aioson/skills/design/clean-saas-ui/references/websites.md +295 -0
  211. package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +55 -9
  212. package/template/.aioson/skills/design/cognitive-core-ui/references/art-direction.md +339 -0
  213. package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +1 -1
  214. package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +100 -0
  215. package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +43 -9
  216. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +40 -0
  217. package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +1 -1
  218. package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +99 -12
  219. package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +222 -0
  220. package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -0
  221. package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -0
  222. package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -0
  223. package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -0
  224. package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -0
  225. package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -0
  226. package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -0
  227. package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +213 -0
  228. package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -0
  229. package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -0
  230. package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -0
  231. package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -0
  232. package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -0
  233. package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -0
  234. package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -0
  235. package/template/.aioson/skills/design/warm-craft-ui/SKILL.md +209 -0
  236. package/template/.aioson/skills/design/warm-craft-ui/references/art-direction.md +324 -0
  237. package/template/.aioson/skills/design/warm-craft-ui/references/components.md +508 -0
  238. package/template/.aioson/skills/design/warm-craft-ui/references/dashboards.md +223 -0
  239. package/template/.aioson/skills/design/warm-craft-ui/references/design-tokens.md +374 -0
  240. package/template/.aioson/skills/design/warm-craft-ui/references/motion.md +356 -0
  241. package/template/.aioson/skills/design/warm-craft-ui/references/patterns.md +288 -0
  242. package/template/.aioson/skills/design/warm-craft-ui/references/websites.md +289 -0
  243. package/template/.aioson/skills/premium-visual-design/SKILL.md +83 -0
  244. package/template/.aioson/skills/premium-visual-design/components/agent-badge.md +92 -0
  245. package/template/.aioson/skills/premium-visual-design/components/dependency-node.md +102 -0
  246. package/template/.aioson/skills/premium-visual-design/components/mention-autocomplete.md +136 -0
  247. package/template/.aioson/skills/premium-visual-design/components/notification-center.md +136 -0
  248. package/template/.aioson/skills/premium-visual-design/components/review-action-bar.md +188 -0
  249. package/template/.aioson/skills/premium-visual-design/components/team-switcher.md +131 -0
  250. package/template/.aioson/skills/premium-visual-design/patterns/agent-message-thread.md +198 -0
  251. package/template/.aioson/skills/premium-visual-design/patterns/notification-panel.md +275 -0
  252. package/template/.aioson/skills/premium-visual-design/patterns/review-workflow-ui.md +234 -0
  253. package/template/.aioson/skills/premium-visual-design/patterns/task-dependency-graph.md +147 -0
  254. package/template/.aioson/skills/premium-visual-design/tokens/status-extended.md +142 -0
  255. package/template/.aioson/skills/process/aioson-spec-driven/SKILL.md +45 -0
  256. package/template/.aioson/skills/process/aioson-spec-driven/references/approval-gates.md +109 -0
  257. package/template/.aioson/skills/process/aioson-spec-driven/references/artifact-map.md +44 -0
  258. package/template/.aioson/skills/process/aioson-spec-driven/references/classification-map.md +37 -0
  259. package/template/.aioson/skills/process/aioson-spec-driven/references/hardening-lane.md +49 -0
  260. package/template/.aioson/skills/process/aioson-spec-driven/references/maintenance-and-state.md +66 -0
  261. package/template/.aioson/skills/process/aioson-spec-driven/references/ui-language.md +75 -0
  262. package/template/.aioson/skills/process/design-hybrid-forge/SKILL.md +144 -0
  263. package/template/.aioson/skills/process/design-hybrid-forge/references/crossover-protocol.md +221 -0
  264. package/template/.aioson/skills/process/design-hybrid-forge/references/naming-registry.md +88 -0
  265. package/template/.aioson/skills/process/design-hybrid-forge/references/output-contract.md +291 -0
  266. package/template/.aioson/skills/process/design-hybrid-forge/references/pair-compatibility.md +117 -0
  267. package/template/.aioson/skills/process/design-hybrid-forge/references/quality-gates.md +188 -0
  268. package/template/.aioson/skills/process/design-hybrid-forge/references/variation-library.md +125 -0
  269. package/template/.aioson/skills/squad/formats/catalog.json +15 -0
  270. package/template/.aioson/skills/squad/formats/content/blog-post.md +47 -0
  271. package/template/.aioson/skills/squad/formats/content/newsletter.md +47 -0
  272. package/template/.aioson/skills/squad/formats/creative/podcast-script.md +43 -0
  273. package/template/.aioson/skills/squad/formats/creative/video-script.md +41 -0
  274. package/template/.aioson/skills/squad/formats/social/instagram-feed.md +42 -0
  275. package/template/.aioson/skills/squad/formats/social/linkedin-post.md +42 -0
  276. package/template/.aioson/skills/squad/formats/social/tiktok.md +39 -0
  277. package/template/.aioson/skills/squad/formats/social/twitter-thread.md +39 -0
  278. package/template/.aioson/skills/squad/formats/social/youtube-long.md +47 -0
  279. package/template/.aioson/skills/squad/formats/social/youtube-shorts.md +39 -0
  280. package/template/.aioson/skills/squad/patterns/multi-platform-pattern.md +108 -0
  281. package/template/.aioson/skills/squad/patterns/persona-based-pattern.md +98 -0
  282. package/template/.aioson/skills/squad/patterns/pipeline-pattern.md +106 -0
  283. package/template/.aioson/skills/squad/patterns/review-loop-pattern.md +81 -0
  284. package/template/.aioson/skills/squad/references/checklist-templates.md +122 -0
  285. package/template/.aioson/skills/squad/references/executor-archetypes.md +123 -0
  286. package/template/.aioson/skills/squad/references/workflow-templates.md +169 -0
  287. package/template/.aioson/skills/static/debugging-protocol.md +42 -0
  288. package/template/.aioson/skills/static/git-worktrees.md +36 -0
  289. package/template/.aioson/tasks/implementation-plan.md +19 -0
  290. package/template/.aioson/tasks/squad-design.md +28 -0
  291. package/template/.aioson/tasks/squad-profile.md +48 -0
  292. package/template/.aioson/tasks/squad-review.md +61 -0
  293. package/template/.aioson/tasks/squad-task-decompose.md +66 -0
  294. package/template/.claude/commands/aioson/agent/neo.md +5 -0
  295. package/template/.claude/commands/aioson/agent/tester.md +5 -0
  296. package/template/.gemini/GEMINI.md +1 -0
  297. package/template/.gemini/commands/aios-neo.toml +4 -0
  298. package/template/.gemini/commands/aios-tester.toml +6 -0
  299. package/template/AGENTS.md +26 -1
  300. package/template/CLAUDE.md +6 -2
  301. package/template/OPENCODE.md +2 -0
@@ -0,0 +1,682 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>Aurora Command UI — Dashboard Preview</title>
7
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
8
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
9
+ <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet" />
10
+ <style>
11
+ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
12
+
13
+ :root {
14
+ --bg-gradient: linear-gradient(135deg, #060910 0%, #0A0818 30%, #060C1A 70%, #08060F 100%);
15
+ --glass-shell: rgba(8, 12, 22, 0.78);
16
+ --glass-surface: rgba(10, 14, 26, 0.65);
17
+ --glass-elevated: rgba(14, 20, 36, 0.78);
18
+ --glass-border: rgba(255,255,255,0.09);
19
+ --glass-border-strong: rgba(255,255,255,0.16);
20
+ --glass-highlight: linear-gradient(180deg, rgba(255,255,255,0.07) 0%, transparent 50%);
21
+ --accent-primary: #00C8E8;
22
+ --accent-violet: #7C3AED;
23
+ --accent-gradient: linear-gradient(135deg, #00C8E8, #7C3AED);
24
+ --accent-dim: rgba(0,200,232,0.12);
25
+ --text-heading: #F0F4FA;
26
+ --text-primary: #C8D4E8;
27
+ --text-secondary: #8898B0;
28
+ --text-muted: #556070;
29
+ --green: #00D68F;
30
+ --amber: #F4A91D;
31
+ --red: #FF5A67;
32
+ --purple: #A78BFA;
33
+ }
34
+
35
+ html, body {
36
+ height: 100%;
37
+ font-family: 'Inter', system-ui, sans-serif;
38
+ font-size: 13px;
39
+ line-height: 1.5;
40
+ background: var(--bg-gradient);
41
+ background-attachment: fixed;
42
+ color: var(--text-primary);
43
+ overflow: hidden;
44
+ }
45
+
46
+ /* AIOSON badge */
47
+ .aioson-badge {
48
+ position: fixed; top: 10px; right: 10px; z-index: 9999;
49
+ background: var(--accent-gradient);
50
+ color: #fff;
51
+ font-size: 9.5px; font-weight: 700;
52
+ letter-spacing: 0.08em;
53
+ padding: 3px 10px; border-radius: 9999px;
54
+ box-shadow: 0 0 16px rgba(0,200,232,0.35);
55
+ pointer-events: none;
56
+ }
57
+
58
+ .mono { font-family: 'JetBrains Mono', monospace; }
59
+ .mono-label {
60
+ font-family: 'JetBrains Mono', monospace;
61
+ font-size: 0.625rem; font-weight: 600;
62
+ letter-spacing: 0.12em; text-transform: uppercase;
63
+ color: var(--text-muted);
64
+ }
65
+
66
+ /* Glass mixin base */
67
+ .glass {
68
+ background: var(--glass-surface);
69
+ backdrop-filter: blur(16px);
70
+ -webkit-backdrop-filter: blur(16px);
71
+ border: 1px solid var(--glass-border);
72
+ position: relative;
73
+ }
74
+ .glass::before {
75
+ content: '';
76
+ position: absolute;
77
+ inset: 0;
78
+ border-radius: inherit;
79
+ background: var(--glass-highlight);
80
+ pointer-events: none;
81
+ }
82
+
83
+ /* SHELL */
84
+ .shell { display: flex; flex-direction: column; height: 100vh; overflow: hidden; }
85
+
86
+ /* COMMAND STRIP */
87
+ .command-strip {
88
+ height: 28px;
89
+ background: rgba(0,200,232,0.05);
90
+ border-bottom: 1px solid rgba(0,200,232,0.12);
91
+ display: flex; align-items: center;
92
+ padding: 0 20px; gap: 24px;
93
+ flex-shrink: 0;
94
+ }
95
+ .cs-item {
96
+ display: flex; align-items: center; gap: 6px;
97
+ font-family: 'JetBrains Mono', monospace;
98
+ font-size: 0.58rem; font-weight: 600;
99
+ letter-spacing: 0.10em; text-transform: uppercase;
100
+ color: var(--text-secondary);
101
+ white-space: nowrap;
102
+ }
103
+ .cs-dot {
104
+ width: 5px; height: 5px; border-radius: 50%;
105
+ background: var(--accent-primary);
106
+ box-shadow: 0 0 5px var(--accent-primary);
107
+ animation: pulse-dot 2s ease-in-out infinite;
108
+ }
109
+ .cs-dot.amber { background: var(--amber); box-shadow: 0 0 5px var(--amber); }
110
+ .cs-dot.green { background: var(--green); box-shadow: 0 0 5px var(--green); }
111
+ @keyframes pulse-dot {
112
+ 0%,100% { opacity:1; box-shadow: 0 0 4px currentColor; }
113
+ 50% { opacity:0.7; box-shadow: 0 0 8px currentColor; }
114
+ }
115
+
116
+ /* TOP BAR */
117
+ .topbar {
118
+ height: 48px; flex-shrink: 0;
119
+ background: var(--glass-shell);
120
+ backdrop-filter: blur(24px);
121
+ -webkit-backdrop-filter: blur(24px);
122
+ border-bottom: 1px solid var(--glass-border);
123
+ display: flex; align-items: center;
124
+ padding: 0 20px; gap: 0;
125
+ position: relative; z-index: 10;
126
+ }
127
+ .topbar-logo {
128
+ width: 200px; flex-shrink: 0;
129
+ display: flex; align-items: center; gap: 9px;
130
+ }
131
+ .logo-mark {
132
+ width: 26px; height: 26px; border-radius: 6px;
133
+ background: var(--accent-gradient);
134
+ display: flex; align-items: center; justify-content: center;
135
+ flex-shrink: 0;
136
+ }
137
+ .logo-mark svg { width: 12px; height: 12px; }
138
+ .logo-text { font-size: 13px; font-weight: 700; color: var(--text-heading); letter-spacing: -0.02em; }
139
+
140
+ .tab-nav {
141
+ flex: 1; display: flex; align-items: stretch;
142
+ justify-content: center; gap: 0; height: 100%;
143
+ }
144
+ .tab {
145
+ display: flex; align-items: center; padding: 0 18px;
146
+ font-size: 12px; font-weight: 500; color: var(--text-secondary);
147
+ border-bottom: 2px solid transparent;
148
+ cursor: pointer; transition: color 160ms, border-color 160ms;
149
+ white-space: nowrap;
150
+ }
151
+ .tab.active { color: var(--text-heading); border-bottom-color: var(--accent-primary); }
152
+ .tab:hover:not(.active) { color: var(--text-primary); }
153
+
154
+ .topbar-actions {
155
+ display: flex; align-items: center; gap: 8px; margin-left: auto;
156
+ }
157
+ .avatar {
158
+ width: 28px; height: 28px; border-radius: 50%;
159
+ background: var(--accent-dim);
160
+ border: 1px solid rgba(0,200,232,0.30);
161
+ display: flex; align-items: center; justify-content: center;
162
+ font-size: 10px; font-weight: 600; color: var(--accent-primary);
163
+ }
164
+
165
+ /* BODY */
166
+ .body-row { display: flex; flex: 1; overflow: hidden; }
167
+
168
+ /* SIDEBAR */
169
+ .sidebar {
170
+ width: 200px; flex-shrink: 0;
171
+ background: var(--glass-shell);
172
+ backdrop-filter: blur(20px);
173
+ -webkit-backdrop-filter: blur(20px);
174
+ border-right: 1px solid var(--glass-border);
175
+ overflow-y: auto; padding: 16px 10px;
176
+ display: flex; flex-direction: column; gap: 4px;
177
+ }
178
+ .nav-section-label {
179
+ font-family: 'JetBrains Mono', monospace;
180
+ font-size: 0.56rem; font-weight: 600;
181
+ letter-spacing: 0.14em; text-transform: uppercase;
182
+ color: var(--text-muted);
183
+ padding: 10px 10px 4px;
184
+ }
185
+ .nav-item {
186
+ display: flex; align-items: center; gap: 8px;
187
+ padding: 7px 10px; border-radius: 7px;
188
+ font-size: 12px; font-weight: 500; color: var(--text-secondary);
189
+ cursor: pointer;
190
+ border-left: 2px solid transparent;
191
+ transition: all 160ms;
192
+ }
193
+ .nav-item:hover { background: rgba(255,255,255,0.04); color: var(--text-primary); }
194
+ .nav-item.active {
195
+ border-left-color: var(--accent-primary);
196
+ background: var(--glass-elevated);
197
+ color: var(--text-heading);
198
+ }
199
+ .nav-dot { width: 14px; height: 14px; border-radius: 4px; flex-shrink: 0; opacity:0.7; }
200
+
201
+ /* CONTENT */
202
+ .content { flex: 1; overflow-y: auto; padding: 20px 24px; }
203
+
204
+ /* SECTION HEADER */
205
+ .section-header {
206
+ display: flex; align-items: center; gap: 8px;
207
+ margin-bottom: 12px; margin-top: 20px;
208
+ }
209
+ .section-header:first-child { margin-top: 0; }
210
+ .section-icon { width: 16px; height: 16px; color: var(--accent-primary); }
211
+
212
+ /* STAT ROW */
213
+ .stat-row {
214
+ display: grid;
215
+ grid-template-columns: repeat(4, 1fr);
216
+ gap: 10px; margin-bottom: 16px;
217
+ }
218
+ .stat-card {
219
+ border-radius: 12px;
220
+ padding: 14px 16px;
221
+ }
222
+ .stat-label {
223
+ font-family: 'JetBrains Mono', monospace;
224
+ font-size: 0.58rem; font-weight: 600;
225
+ letter-spacing: 0.12em; text-transform: uppercase;
226
+ color: var(--text-muted);
227
+ margin-bottom: 8px;
228
+ }
229
+ .stat-number {
230
+ font-size: 1.8rem; font-weight: 700;
231
+ line-height: 1; letter-spacing: -0.02em;
232
+ font-variant-numeric: tabular-nums;
233
+ color: var(--text-heading);
234
+ }
235
+ .stat-number.gradient-text {
236
+ background: var(--accent-gradient);
237
+ -webkit-background-clip: text;
238
+ -webkit-text-fill-color: transparent;
239
+ background-clip: text;
240
+ }
241
+ .stat-trend {
242
+ font-size: 11px; font-weight: 500;
243
+ margin-top: 4px;
244
+ display: flex; align-items: center; gap: 3px;
245
+ }
246
+ .trend-up { color: var(--green); }
247
+ .trend-down { color: var(--red); }
248
+ .trend-neutral { color: var(--text-muted); }
249
+
250
+ /* SPLIT ROW */
251
+ .split-row {
252
+ display: grid;
253
+ grid-template-columns: 1fr 300px;
254
+ gap: 12px; margin-bottom: 16px;
255
+ }
256
+
257
+ /* GLASS PANEL */
258
+ .panel {
259
+ border-radius: 14px;
260
+ padding: 18px 20px;
261
+ }
262
+ .panel-title {
263
+ font-size: 12.5px; font-weight: 600;
264
+ color: var(--text-heading); margin-bottom: 14px;
265
+ }
266
+
267
+ /* CHART (simulated) */
268
+ .chart-area {
269
+ height: 140px; position: relative;
270
+ border-radius: 8px;
271
+ overflow: hidden;
272
+ }
273
+ .chart-grid-line {
274
+ position: absolute; left: 0; right: 0;
275
+ border-top: 1px solid rgba(255,255,255,0.05);
276
+ }
277
+ .chart-bars {
278
+ display: flex; align-items: flex-end;
279
+ gap: 6px; height: 100%; padding: 0 8px 0;
280
+ }
281
+ .bar {
282
+ flex: 1; border-radius: 4px 4px 0 0;
283
+ background: linear-gradient(180deg, rgba(0,200,232,0.7) 0%, rgba(124,58,237,0.4) 100%);
284
+ transition: opacity 200ms;
285
+ }
286
+ .bar:hover { opacity: 0.8; }
287
+
288
+ /* AREA CHART */
289
+ .area-chart {
290
+ width: 100%; height: 100%;
291
+ }
292
+
293
+ /* FEED */
294
+ .alert-feed {
295
+ display: flex; flex-direction: column; gap: 6px;
296
+ }
297
+ .alert-item {
298
+ display: flex; align-items: center; gap: 10px;
299
+ padding: 8px 10px; border-radius: 8px;
300
+ background: rgba(255,255,255,0.03);
301
+ border: 1px solid var(--glass-border);
302
+ font-size: 11.5px;
303
+ }
304
+ .alert-dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
305
+ .alert-dot.critical { background: var(--red); box-shadow: 0 0 5px var(--red); }
306
+ .alert-dot.warning { background: var(--amber); box-shadow: 0 0 5px var(--amber); }
307
+ .alert-dot.info { background: var(--accent-primary); box-shadow: 0 0 5px var(--accent-primary); }
308
+ .alert-text { flex: 1; color: var(--text-primary); }
309
+ .alert-time { font-family: 'JetBrains Mono', monospace; font-size: 0.62rem; color: var(--text-muted); }
310
+
311
+ /* TABLE */
312
+ .glass-table { width: 100%; border-collapse: collapse; font-size: 12px; }
313
+ .glass-table th {
314
+ font-family: 'JetBrains Mono', monospace;
315
+ font-size: 0.58rem; font-weight: 600;
316
+ letter-spacing: 0.10em; text-transform: uppercase;
317
+ color: var(--text-muted);
318
+ padding: 8px 12px; text-align: left;
319
+ border-bottom: 1px solid var(--glass-border);
320
+ }
321
+ .glass-table td {
322
+ padding: 9px 12px; color: var(--text-primary);
323
+ border-bottom: 1px solid rgba(255,255,255,0.04);
324
+ }
325
+ .glass-table tr:hover td { background: rgba(255,255,255,0.02); }
326
+ .status-badge {
327
+ display: inline-flex; align-items: center; gap: 5px;
328
+ padding: 2px 8px; border-radius: 9999px;
329
+ font-size: 10px; font-weight: 600;
330
+ }
331
+ .status-badge.active {
332
+ background: rgba(0,214,143,0.12);
333
+ color: var(--green); border: 1px solid rgba(0,214,143,0.25);
334
+ }
335
+ .status-badge.warning {
336
+ background: rgba(244,169,29,0.12);
337
+ color: var(--amber); border: 1px solid rgba(244,169,29,0.25);
338
+ }
339
+ .status-badge.critical {
340
+ background: rgba(255,90,103,0.12);
341
+ color: var(--red); border: 1px solid rgba(255,90,103,0.25);
342
+ }
343
+
344
+ /* Button */
345
+ .btn-gradient {
346
+ background: var(--accent-gradient);
347
+ color: #fff; border: none;
348
+ padding: 6px 14px; border-radius: 7px;
349
+ font-size: 11px; font-weight: 600;
350
+ cursor: pointer; letter-spacing: 0.02em;
351
+ box-shadow: 0 0 14px rgba(0,200,232,0.25);
352
+ }
353
+ .btn-ghost {
354
+ background: rgba(255,255,255,0.06);
355
+ color: var(--text-secondary); border: 1px solid var(--glass-border);
356
+ padding: 6px 12px; border-radius: 7px;
357
+ font-size: 11px; font-weight: 500; cursor: pointer;
358
+ }
359
+
360
+ /* Search */
361
+ .search-bar {
362
+ background: var(--glass-elevated);
363
+ border: 1px solid var(--glass-border);
364
+ border-radius: 7px;
365
+ padding: 5px 12px;
366
+ font-size: 11.5px; color: var(--text-secondary);
367
+ width: 180px; outline: none;
368
+ font-family: 'Inter', sans-serif;
369
+ }
370
+ .search-bar::placeholder { color: var(--text-muted); }
371
+ .search-bar:focus { border-color: rgba(0,200,232,0.30); }
372
+ </style>
373
+ </head>
374
+ <body>
375
+
376
+ <div class="aioson-badge">AURORA COMMAND UI</div>
377
+
378
+ <div class="shell">
379
+
380
+ <!-- COMMAND STRIP -->
381
+ <div class="command-strip">
382
+ <div class="cs-item">
383
+ <span class="cs-dot"></span>
384
+ LIVE
385
+ </div>
386
+ <div class="cs-item">
387
+ <span class="cs-dot amber"></span>
388
+ 3 ACTIVE ALERTS
389
+ </div>
390
+ <div class="cs-item">
391
+ <span class="cs-dot green"></span>
392
+ 12 AGENTS ONLINE
393
+ </div>
394
+ <div class="cs-item" style="margin-left:auto; margin-right: 50px;">
395
+ <span style="color: var(--text-muted)">LATENCY p99 —</span>&nbsp;
396
+ <span style="color: var(--accent-primary); font-family: 'JetBrains Mono', monospace;">847ms</span>
397
+ </div>
398
+ </div>
399
+
400
+ <!-- TOP BAR -->
401
+ <div class="topbar">
402
+ <div class="topbar-logo">
403
+ <div class="logo-mark">
404
+ <svg viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
405
+ <path d="M6 1L11 4V8L6 11L1 8V4L6 1Z" fill="white" fill-opacity="0.9"/>
406
+ </svg>
407
+ </div>
408
+ <div>
409
+ <div class="logo-text">NEXUS OPS</div>
410
+ </div>
411
+ </div>
412
+
413
+ <div class="tab-nav">
414
+ <div class="tab active">Overview</div>
415
+ <div class="tab">Incidents</div>
416
+ <div class="tab">Agents</div>
417
+ <div class="tab">Intel</div>
418
+ <div class="tab">Config</div>
419
+ </div>
420
+
421
+ <div class="topbar-actions">
422
+ <input class="search-bar" type="text" placeholder="Search..." />
423
+ <button class="btn-ghost">Export</button>
424
+ <button class="btn-gradient">+ New Incident</button>
425
+ <div class="avatar">JR</div>
426
+ </div>
427
+ </div>
428
+
429
+ <!-- BODY -->
430
+ <div class="body-row">
431
+
432
+ <!-- SIDEBAR -->
433
+ <div class="sidebar">
434
+ <div class="nav-section-label">Monitoring</div>
435
+ <div class="nav-item active">
436
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
437
+ <rect x="1" y="1" width="12" height="12" rx="3" fill="rgba(0,200,232,0.4)"/>
438
+ </svg>
439
+ Dashboard
440
+ </div>
441
+ <div class="nav-item">
442
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
443
+ <circle cx="7" cy="7" r="5" fill="rgba(255,90,103,0.35)"/>
444
+ </svg>
445
+ Alerts
446
+ <span style="margin-left:auto; background:rgba(255,90,103,0.18); color:var(--red); border-radius:9999px; padding:1px 7px; font-size:9px; font-weight:700;">3</span>
447
+ </div>
448
+ <div class="nav-item">
449
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
450
+ <rect x="1" y="6" width="12" height="2" rx="1" fill="rgba(167,139,250,0.5)"/>
451
+ <rect x="1" y="2" width="8" height="2" rx="1" fill="rgba(167,139,250,0.35)"/>
452
+ <rect x="1" y="10" width="10" height="2" rx="1" fill="rgba(167,139,250,0.35)"/>
453
+ </svg>
454
+ Activity Feed
455
+ </div>
456
+
457
+ <div class="nav-section-label" style="margin-top: 6px;">Infrastructure</div>
458
+ <div class="nav-item">
459
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
460
+ <rect x="1" y="3" width="12" height="3" rx="1.5" fill="rgba(0,214,143,0.4)"/>
461
+ <rect x="1" y="8" width="12" height="3" rx="1.5" fill="rgba(0,214,143,0.25)"/>
462
+ </svg>
463
+ Clusters
464
+ </div>
465
+ <div class="nav-item">
466
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
467
+ <path d="M7 1 L13 4 L13 10 L7 13 L1 10 L1 4 Z" fill="rgba(0,200,232,0.3)"/>
468
+ </svg>
469
+ Deployments
470
+ </div>
471
+ <div class="nav-item">
472
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
473
+ <circle cx="4" cy="7" r="2.5" fill="rgba(244,169,29,0.5)"/>
474
+ <circle cx="10" cy="7" r="2.5" fill="rgba(244,169,29,0.3)"/>
475
+ <line x1="6.5" y1="7" x2="7.5" y2="7" stroke="rgba(244,169,29,0.5)" stroke-width="1"/>
476
+ </svg>
477
+ Services
478
+ </div>
479
+
480
+ <div class="nav-section-label" style="margin-top: 6px;">Intelligence</div>
481
+ <div class="nav-item">
482
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
483
+ <path d="M7 1 C7 1 13 5 13 9 C13 11 10 13 7 13 C4 13 1 11 1 9 C1 5 7 1 7 1Z" fill="rgba(124,58,237,0.4)"/>
484
+ </svg>
485
+ Threat Intel
486
+ </div>
487
+ <div class="nav-item">
488
+ <svg class="nav-dot" viewBox="0 0 14 14" fill="none">
489
+ <rect x="2" y="2" width="4" height="4" rx="1" fill="rgba(0,200,232,0.4)"/>
490
+ <rect x="8" y="2" width="4" height="4" rx="1" fill="rgba(124,58,237,0.3)"/>
491
+ <rect x="2" y="8" width="4" height="4" rx="1" fill="rgba(0,200,232,0.25)"/>
492
+ <rect x="8" y="8" width="4" height="4" rx="1" fill="rgba(124,58,237,0.2)"/>
493
+ </svg>
494
+ Reports
495
+ </div>
496
+ </div>
497
+
498
+ <!-- CONTENT -->
499
+ <div class="content">
500
+
501
+ <!-- STAT ROW -->
502
+ <div class="section-header">
503
+ <svg class="section-icon" viewBox="0 0 16 16" fill="none">
504
+ <circle cx="8" cy="8" r="6" stroke="currentColor" stroke-width="1.5"/>
505
+ <path d="M8 5V8L10 10" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
506
+ </svg>
507
+ <span class="mono-label">Platform Status</span>
508
+ </div>
509
+
510
+ <div class="stat-row">
511
+ <div class="stat-card glass">
512
+ <div class="stat-label">Active Incidents</div>
513
+ <div class="stat-number" style="color:var(--amber)">3</div>
514
+ <div class="stat-trend"><span style="color:var(--amber)">▲</span>&nbsp;<span class="trend-neutral">+2 from yesterday</span></div>
515
+ </div>
516
+ <div class="stat-card glass">
517
+ <div class="stat-label">Events (24h)</div>
518
+ <div class="stat-number gradient-text">48,291</div>
519
+ <div class="stat-trend"><span class="trend-up">▲ 8.4%</span>&nbsp;<span class="trend-neutral">vs avg</span></div>
520
+ </div>
521
+ <div class="stat-card glass">
522
+ <div class="stat-label">Mean TTD</div>
523
+ <div class="stat-number" style="font-size:1.4rem; font-family:'JetBrains Mono'; color:var(--text-heading)">00:04:12</div>
524
+ <div class="stat-trend"><span class="trend-up">▼ 12s</span>&nbsp;<span class="trend-neutral">improvement</span></div>
525
+ </div>
526
+ <div class="stat-card glass">
527
+ <div class="stat-label">Agent Coverage</div>
528
+ <div class="stat-number" style="color:var(--green)">99.4%</div>
529
+ <div class="stat-trend"><span class="trend-neutral">12 agents online</span></div>
530
+ </div>
531
+ </div>
532
+
533
+ <!-- SPLIT ROW: Chart + Alert Feed -->
534
+ <div class="split-row">
535
+
536
+ <!-- Main chart panel -->
537
+ <div class="panel glass">
538
+ <div class="panel-title">Threat Events — Last 24 Hours</div>
539
+ <div class="chart-area">
540
+ <div class="chart-grid-line" style="top:25%"></div>
541
+ <div class="chart-grid-line" style="top:50%"></div>
542
+ <div class="chart-grid-line" style="top:75%"></div>
543
+
544
+ <!-- SVG area chart simulation -->
545
+ <svg width="100%" height="140" viewBox="0 0 600 140" preserveAspectRatio="none" style="position:absolute;inset:0;">
546
+ <defs>
547
+ <linearGradient id="areaGrad" x1="0" y1="0" x2="0" y2="1">
548
+ <stop offset="0%" stop-color="#00C8E8" stop-opacity="0.35"/>
549
+ <stop offset="100%" stop-color="#7C3AED" stop-opacity="0.0"/>
550
+ </linearGradient>
551
+ </defs>
552
+ <!-- Area fill -->
553
+ <path d="M0,120 C30,100 60,115 100,90 S160,50 200,70 S260,30 300,45 S360,80 400,55 S460,20 500,35 S560,60 600,40 L600,140 L0,140 Z"
554
+ fill="url(#areaGrad)" />
555
+ <!-- Line -->
556
+ <path d="M0,120 C30,100 60,115 100,90 S160,50 200,70 S260,30 300,45 S360,80 400,55 S460,20 500,35 S560,60 600,40"
557
+ fill="none" stroke="#00C8E8" stroke-width="2" />
558
+ <!-- Dots at peaks -->
559
+ <circle cx="300" cy="45" r="3" fill="#00C8E8" />
560
+ <circle cx="500" cy="35" r="3" fill="#00C8E8" />
561
+ </svg>
562
+ </div>
563
+ <div style="display:flex; gap:16px; margin-top:10px;">
564
+ <span class="mono-label">Peak: <span style="color:var(--accent-primary)">2,847</span></span>
565
+ <span class="mono-label">Avg: <span style="color:var(--text-secondary)">1,210</span></span>
566
+ <span class="mono-label" style="margin-left:auto">Past 24h</span>
567
+ </div>
568
+ </div>
569
+
570
+ <!-- Alert Feed -->
571
+ <div class="panel glass">
572
+ <div class="panel-title">Live Alert Tape</div>
573
+ <div class="alert-feed">
574
+ <div class="alert-item">
575
+ <span class="alert-dot critical"></span>
576
+ <span class="alert-text">SQL injection attempt — endpoint /api/v2/users</span>
577
+ <span class="alert-time">0:02</span>
578
+ </div>
579
+ <div class="alert-item">
580
+ <span class="alert-dot warning"></span>
581
+ <span class="alert-text">Rate limit exceeded — agent nexus-04</span>
582
+ <span class="alert-time">0:08</span>
583
+ </div>
584
+ <div class="alert-item">
585
+ <span class="alert-dot critical"></span>
586
+ <span class="alert-text">Brute force detected — IP 185.220.101.x</span>
587
+ <span class="alert-time">0:14</span>
588
+ </div>
589
+ <div class="alert-item">
590
+ <span class="alert-dot info"></span>
591
+ <span class="alert-text">Anomaly resolved — cluster k8s-prod-02</span>
592
+ <span class="alert-time">0:21</span>
593
+ </div>
594
+ <div class="alert-item">
595
+ <span class="alert-dot warning"></span>
596
+ <span class="alert-text">High memory usage — pod inference-worker-7</span>
597
+ <span class="alert-time">0:33</span>
598
+ </div>
599
+ <div class="alert-item">
600
+ <span class="alert-dot info"></span>
601
+ <span class="alert-text">Agent nexus-09 online — region eu-west</span>
602
+ <span class="alert-time">0:47</span>
603
+ </div>
604
+ </div>
605
+ </div>
606
+
607
+ </div>
608
+
609
+ <!-- TABLE SECTION -->
610
+ <div class="section-header">
611
+ <svg class="section-icon" viewBox="0 0 16 16" fill="none">
612
+ <rect x="1" y="3" width="14" height="2" rx="1" fill="currentColor" fill-opacity="0.8"/>
613
+ <rect x="1" y="7" width="14" height="2" rx="1" fill="currentColor" fill-opacity="0.5"/>
614
+ <rect x="1" y="11" width="14" height="2" rx="1" fill="currentColor" fill-opacity="0.5"/>
615
+ </svg>
616
+ <span class="mono-label">Incident Queue</span>
617
+ <span style="margin-left:auto; display:flex; gap:8px;">
618
+ <button class="btn-ghost">Filter</button>
619
+ <button class="btn-gradient">+ Open Incident</button>
620
+ </span>
621
+ </div>
622
+
623
+ <div class="panel glass" style="padding: 0; overflow:hidden;">
624
+ <table class="glass-table">
625
+ <thead>
626
+ <tr>
627
+ <th>ID</th>
628
+ <th>Severity</th>
629
+ <th>Source</th>
630
+ <th>Description</th>
631
+ <th>Detected</th>
632
+ <th>Status</th>
633
+ <th>Assignee</th>
634
+ </tr>
635
+ </thead>
636
+ <tbody>
637
+ <tr>
638
+ <td class="mono" style="color:var(--accent-primary); font-size:10.5px">INC-2841</td>
639
+ <td><span class="status-badge critical">Critical</span></td>
640
+ <td style="color:var(--text-secondary)">API Gateway</td>
641
+ <td>SQL injection attempt blocked on /users endpoint</td>
642
+ <td class="mono" style="font-size:10px; color:var(--text-muted)">00:02:14</td>
643
+ <td><span class="status-badge warning">Investigating</span></td>
644
+ <td style="color:var(--text-secondary)">A. Chen</td>
645
+ </tr>
646
+ <tr>
647
+ <td class="mono" style="color:var(--accent-primary); font-size:10.5px">INC-2840</td>
648
+ <td><span class="status-badge warning">High</span></td>
649
+ <td style="color:var(--text-secondary)">Auth Service</td>
650
+ <td>Brute force login — 1,200 attempts in 60s</td>
651
+ <td class="mono" style="font-size:10px; color:var(--text-muted)">00:08:42</td>
652
+ <td><span class="status-badge warning">Mitigating</span></td>
653
+ <td style="color:var(--text-secondary)">K. Patel</td>
654
+ </tr>
655
+ <tr>
656
+ <td class="mono" style="color:var(--accent-primary); font-size:10.5px">INC-2839</td>
657
+ <td><span class="status-badge active">Low</span></td>
658
+ <td style="color:var(--text-secondary)">Infra Monitor</td>
659
+ <td>Memory pressure on inference worker pod</td>
660
+ <td class="mono" style="font-size:10px; color:var(--text-muted)">00:33:11</td>
661
+ <td><span class="status-badge active">Resolved</span></td>
662
+ <td style="color:var(--text-secondary)">Auto</td>
663
+ </tr>
664
+ <tr>
665
+ <td class="mono" style="color:var(--accent-primary); font-size:10.5px">INC-2838</td>
666
+ <td><span class="status-badge warning">Medium</span></td>
667
+ <td style="color:var(--text-secondary)">Rate Limiter</td>
668
+ <td>Agent nexus-04 exceeded call quota</td>
669
+ <td class="mono" style="font-size:10px; color:var(--text-muted)">00:47:08</td>
670
+ <td><span class="status-badge active">Resolved</span></td>
671
+ <td style="color:var(--text-secondary)">M. Torres</td>
672
+ </tr>
673
+ </tbody>
674
+ </table>
675
+ </div>
676
+
677
+ </div><!-- /content -->
678
+ </div><!-- /body-row -->
679
+ </div><!-- /shell -->
680
+
681
+ </body>
682
+ </html>