bot/frontend/index.html
2026-02-10 19:51:20 +01:00

161 lines
No EOL
7.2 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Antigravity Agent Dashboard</title>
<link rel="stylesheet" href="/src/style.css">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap"
rel="stylesheet">
</head>
<body class="dark-theme">
<div id="app">
<aside class="sidebar glass">
<header class="sidebar-header">
<a href="#" id="logo-link" class="logo">
<span class="logo-icon"></span>
<h1>Agency</h1>
</a>
<button id="new-task-btn" class="btn btn-primary">
<span>+</span> New Task
</button>
</header>
<nav class="task-nav">
<div class="nav-label">Directives</div>
<ul id="task-list">
<!-- Tasks will be injected here -->
</ul>
</nav>
</aside>
<main class="main-content">
<div id="empty-state" class="empty-state hidden">
<div class="empty-icon"></div>
<h2>Ready for a new directive?</h2>
<p>Select a task from the sidebar or create a new one to begin.</p>
</div>
<div id="dashboard-view" class="dashboard-view">
<header class="dashboard-header">
<h2>Recent Activity</h2>
<p>Track latest agent executions across all directives.</p>
</header>
<div class="dashboard-content glass">
<table class="activity-table">
<thead>
<tr>
<th>Directive</th>
<th>Status</th>
<th>Date</th>
</tr>
</thead>
<tbody id="recent-runs-list">
<!-- Recent runs will be injected here -->
</tbody>
</table>
</div>
</div>
<div id="task-view" class="task-view hidden">
<header class="view-header">
<div class="header-main">
<div id="view-status" class="status-badge">Running</div>
<h2 id="view-goal">Researching local LLM performance trends</h2>
</div>
<div class="header-actions">
<button id="toggle-logs-btn" class="btn btn-ghost">
<span></span> Inspect Logs
</button>
<button id="edit-task-btn" class="btn btn-ghost">
<span></span> Edit Goal
</button>
<button id="rerun-btn" class="btn btn-ghost">
<span></span> Re-run Task
</button>
</div>
</header>
<div class="task-content">
<aside class="run-history glass">
<div class="runs-header">
<h3>Run History</h3>
</div>
<ul id="run-list">
<!-- Runs will be injected here -->
</ul>
</aside>
<div class="run-details">
<section id="answer-container" class="answer-container glass hidden">
<div class="answer-header">
<h3>Final Answer</h3>
</div>
<div id="answer-output" class="answer-output">
<!-- Answer will be injected here -->
</div>
</section>
<section id="logs-container" class="logs-container glass">
<div class="logs-header">
<h3>Execution Logs</h3>
<div class="logs-actions">
<span class="logs-timestamp" id="view-date">Feb 9, 2026</span>
</div>
</div>
<div id="logs-output" class="logs-output">
<!-- Logs will be injected here -->
</div>
</section>
</div>
</div>
</div>
<div id="modal-container" class="modal-container hidden">
<div class="modal glass">
<h2 id="modal-title">New Agent Task</h2>
<p>Provide a goal for the agent to execute.</p>
<form id="new-task-form">
<textarea name="goal" id="goal-textarea"
placeholder="e.g. Research the latest trending AI agents and write a report..."
required></textarea>
<div class="form-group">
<label>Execution Schedule</label>
<div id="schedule-presets" class="preset-group">
<button type="button" class="btn btn-preset active" data-cron="">One-time</button>
<button type="button" class="btn btn-preset" data-cron="0 */5 * * * *">Every 5m</button>
<button type="button" class="btn btn-preset" data-cron="0 0 * * * *">Hourly</button>
<button type="button" class="btn btn-preset" data-cron="0 0 0 * * *">Daily</button>
</div>
<div class="custom-cron-toggle">
<button type="button" id="toggle-custom-cron" class="btn-link">Manual Cron
expression...</button>
</div>
<div id="custom-cron-container" class="hidden">
<input type="text" name="cron" id="cron-input"
placeholder="e.g. 0 * * * * * (every minute)">
<small class="form-help">Uses standard cron syntax (seconds included).</small>
</div>
</div>
<div class="modal-actions">
<button type="button" class="btn btn-ghost" id="cancel-task">Cancel</button>
<button type="submit" class="btn btn-primary" id="submit-task-btn">Execute
Directive</button>
</div>
</form>
</div>
</div>
</main>
</div>
<script type="module" src="/src/main.js"></script>
</body>
</html>