AKt123479's picture
# Create a ChatOpenAI model for agent reasoning
88812f4 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Analytics - KODE 1</title>
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
<script src="https://unpkg.com/feather-icons"></script>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script>
tailwind.config = {
darkMode: 'class',
theme: {
extend: {
colors: {
primary: {
50: '#f0f9ff',
100: '#e0f2fe',
200: '#bae6fd',
300: '#7dd3fc',
400: '#38bdf8',
500: '#0ea5e9',
600: '#0284c7',
700: '#0369a1',
800: '#075985',
900: '#0c4a6e',
},
secondary: {
50: '#f8fafc',
100: '#f1f5f9',
200: '#e2e8f0',
300: '#cbd5e1',
400: '#94a3b8',
500: '#64748b',
600: '#475569',
700: '#334155',
800: '#1e293b',
900: '#0f172a',
}
}
}
}
}
</script>
</head>
<body class="bg-secondary-50 dark:bg-secondary-900 text-secondary-900 dark:text-secondary-100">
<!-- Navigation -->
<nav class="bg-white dark:bg-secondary-800 border-b border-secondary-200 dark:border-secondary-700 fixed w-full top-0 z-50">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between h-16">
<div class="flex items-center">
<div class="flex-shrink-0 flex items-center">
<div class="w-10 h-10 bg-primary-500 rounded-lg flex items-center justify-center">
<i data-feather="cpu" class="w-6 h-6 text-white"></i>
</div>
<span class="ml-3 text-xl font-bold">KODE 1</span>
</div>
<div class="hidden md:ml-10 md:flex md:space-x-8">
<a href="index.html" class="text-secondary-700 dark:text-secondary-300 hover:text-primary-600 dark:hover:text-primary-400 px-3 py-2 text-sm font-medium">Dashboard</a>
<a href="agents.html" class="text-secondary-700 dark:text-secondary-300 hover:text-primary-600 dark:hover:text-primary-400 px-3 py-2 text-sm font-medium">Agents</a>
<a href="agent-builder.html" class="text-secondary-700 dark:text-secondary-300 hover:text-primary-600 dark:hover:text-primary-400 px-3 py-2 text-sm font-medium flex items-center space-x-1">
<span>Agent Builder</span>
<span class="px-1.5 py-0.5 bg-primary-100 dark:bg-primary-900 text-primary-600 dark:text-primary-400 rounded-full text-xs font-medium">NEW</span>
</a>
<a href="tasks.html" class="text-secondary-700 dark:text-secondary-300 hover:text-primary-600 dark:hover:text-primary-400 px-3 py-2 text-sm font-medium">Tasks</a>
<a href="workflows.html" class="text-secondary-700 dark:text-secondary-300 hover:text-primary-600 dark:hover:text-primary-400 px-3 py-2 text-sm font-medium">Workflows</a>
<a href="#" class="text-primary-600 dark:text-primary-400 px-3 py-2 text-sm font-medium">Analytics</a>
</div>
</div>
<div class="flex items-center space-x-4">
<button onclick="toggleTheme()" class="p-2 rounded-lg hover:bg-secondary-100 dark:hover:bg-secondary-700">
<i data-feather="moon" class="w-5 h-5 dark:hidden"></i>
<i data-feather="sun" class="w-5 h-5 hidden dark:block"></i>
</button>
<div class="relative">
<button class="p-2 rounded-lg hover:bg-secondary-100 dark:hover:bg-secondary-700">
<i data-feather="bell" class="w-5 h-5"></i>
<span class="absolute top-1 right-1 w-2 h-2 bg-red-500 rounded-full"></span>
</button>
</div>
<div class="flex items-center space-x-2">
<img src="http://static.photos/people/40x40/1" alt="User" class="w-8 h-8 rounded-full">
<span class="text-sm font-medium">John Doe</span>
</div>
</div>
</div>
</div>
</nav>
<!-- Main Content -->
<main class="pt-16">
<!-- Header -->
<section class="bg-white dark:bg-secondary-800 border-b border-secondary-200 dark:border-secondary-700">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-6">
<div class="flex justify-between items-center">
<div>
<h1 class="text-2xl font-bold">Analytics Dashboard</h1>
<p class="text-secondary-500 dark:text-secondary-400">Comprehensive insights into your AI agents and workflows</p>
</div>
<div class="flex space-x-3">
<select class="px-4 py-2 border border-secondary-300 dark:border-secondary-600 rounded-lg bg-white dark:bg-secondary-700 focus:outline-none focus:ring-2 focus:ring-primary-500">
<option>Last 7 days</option>
<option>Last 30 days</option>
<option>Last 3 months</option>
<option>Last year</option>
</select>
<button class="px-4 py-2 bg-primary-600 text-white rounded-lg font-medium hover:bg-primary-700 transition-colors flex items-center space-x-2">
<i data-feather="download" class="w-4 h-4"></i>
<span>Export Report</span>
</button>
</div>
</div>
</div>
</section>
<!-- KPI Cards -->
<section class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-6">
<div class="grid grid-cols-1 md:grid-cols-4 gap-4">
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-secondary-500 dark:text-secondary-400 text-sm">Total Agents</p>
<p class="text-3xl font-bold text-primary-600 dark:text-primary-400">24</p>
<p class="text-xs text-green-500 mt-1">+4 this month</p>
</div>
<div class="bg-primary-100 dark:bg-primary-900 p-3 rounded-lg">
<i data-feather="users" class="w-6 h-6 text-primary-600 dark:text-primary-400"></i>
</div>
</div>
</div>
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-secondary-500 dark:text-secondary-400 text-sm">Tasks Completed</p>
<p class="text-3xl font-bold text-green-600 dark:text-green-400">12.4K</p>
<p class="text-xs text-green-500 mt-1">+23% from last period</p>
</div>
<div class="bg-green-100 dark:bg-green-900 p-3 rounded-lg">
<i data-feather="check-circle" class="w-6 h-6 text-green-600 dark:text-green-400"></i>
</div>
</div>
</div>
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-secondary-500 dark:text-secondary-400 text-sm">Avg Success Rate</p>
<p class="text-3xl font-bold text-purple-600 dark:text-purple-400">96.8%</p>
<p class="text-xs text-green-500 mt-1">+2.3% improvement</p>
</div>
<div class="bg-purple-100 dark:bg-purple-900 p-3 rounded-lg">
<i data-feather="trending-up" class="w-6 h-6 text-purple-600 dark:text-purple-400"></i>
</div>
</div>
</div>
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-secondary-500 dark:text-secondary-400 text-sm">Cost Savings</p>
<p class="text-3xl font-bold text-orange-600 dark:text-orange-400">$24.5K</p>
<p class="text-xs text-green-500 mt-1">+18% vs manual</p>
</div>
<div class="bg-orange-100 dark:bg-orange-900 p-3 rounded-lg">
<i data-feather="dollar-sign" class="w-6 h-6 text-orange-600 dark:text-orange-400"></i>
</div>
</div>
</div>
</div>
</section>
<!-- Charts -->
<section class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6">
<!-- Task Performance Chart -->
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg p-6">
<h2 class="text-xl font-bold mb-4">Task Performance</h2>
<canvas id="taskPerformanceChart" width="400" height="200"></canvas>
</div>
<!-- Agent Usage Chart -->
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg p-6">
<h2 class="text-xl font-bold mb-4">Agent Usage Distribution</h2>
<canvas id="agentUsageChart" width="400" height="200"></canvas>
</div>
</div>
</section>
<!-- Detailed Tables -->
<section class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-6">
<div class="bg-white dark:bg-secondary-800 rounded-xl shadow-lg overflow-hidden">
<div class="p-6 border-b border-secondary-200 dark:border-secondary-700">
<h2 class="text-xl font-bold">Agent Performance Details</h2>
</div>
<div class="overflow-x-auto">
<table class="w-full">
<thead class="bg-secondary-50 dark:bg-secondary-900">
<tr>
<th class="text-left py-3 px-6 font-medium text-secondary-700 dark:text-secondary-300">Agent Name</th>
<th class="text-left py-3 px-6 font-medium text-secondary-700 dark:text-secondary-300">Tasks</th>
<th class="text-left py-3 px-6 font-medium text-secondary-700 dark:text-secondary-300">Success Rate</th>
<th class="text-left py-3 px-6 font-medium text-secondary-700 dark:text-secondary-300">Avg Time</th>
<th class="text-left py-3 px-6 font-medium text-secondary-700 dark:text-secondary-300">Cost</th>
<th class="text-left py-3 px-6 font-medium text-secondary-700 dark:text-secondary-300">Efficiency</th>
</tr>
</thead>
<tbody class="divide-y divide-secondary-200 dark:divide-secondary-700">
<tr class="hover:bg-secondary-50 dark:hover:bg-secondary-900">
<td class="py-4 px-6">
<div class="flex items-center space-x-2">
<div class="w-8 h-8 bg-gradient-to-br from-blue-500 to-purple-600 rounded-lg flex items-center justify-center">
<i data-feather="code" class="w-4 h-4 text-white"></i>
</div>
<span class="font-medium">CodeAgent Pro</span>
</div>
</td>
<td class="py-4 px-6">3,456</td>
<td class="py-4 px-6">
<span class="text-green-600 font-medium">98.5%</span>
</td>
<td class="py-4 px-6">2.3s</td>
<td class="py-4 px-6">$1,234</td>
<td class="py-4 px-6">
<div class="flex items-center space-x-2">
<div class="w-24 bg-secondary-200 dark:bg-secondary-700 rounded-full h-2">
<div class="bg-green-600 h-2 rounded-full" style="width: 95%"></div>
</div>
<span class="text-sm">95%</span>
</div>
</td>
</tr>
<tr class="hover:bg-secondary-50 dark:hover:bg-secondary-900">
<td class="py-4 px-6">
<div class="flex items-center space-x-2">
<div class="w-8 h-8 bg-gradient-to-br from-green-500 to-teal-600 rounded-lg flex items-center justify-center">
<i data-feather="edit-3" class="w-4 h-4 text-white"></i>
</div>
<span class="font-medium">WriterAI</span>
</div>
</td>
<td class="py-4 px-6">2,891</td>
<td class="py-4 px-6">
<span class="text-green-600 font-medium">96.2%</span>
</td>
<td class="py-4 px-6">1.8s</td>
<td class="py-4 px-6">$987</td>
<td class="py-4 px-6">
<div class="flex items-center space-x-2">
<div class="w-24 bg-secondary-200 dark:bg-secondary-700 rounded-full h-2">
<div class="bg-green-600 h-2 rounded-full" style="width: 88%"></div>
</div>
<span class="text-sm">88%</span>
</div>
</td>
</tr>
<tr class="hover:bg-secondary-50 dark:hover:bg-secondary-900">
<td class="py-4 px-6">
<div class="flex items-center space-x-2">
<div class="w-8 h-8 bg-gradient-to-br from-orange-500 to-red-600 rounded-lg flex items-center justify-center">
<i data-feather="bar-chart-2" class="w-4 h-4 text-white"></i>
</div>
<span class="font-medium">DataAnalyzer</span>
</div>
</td>
<td class="py-4 px-6">1,234</td>
<td class="py-4 px-6">
<span class="text-green-600 font-medium">99.1%</span>
</td>
<td class="py-4 px-6">3.1s</td>
<td class="py-4 px-6">$756</td>
<td class="py-4 px-6">
<div class="flex items-center space-x-2">
<div class="w-24 bg-secondary-200 dark:bg-secondary-700 rounded-full h-2">
<div class="bg-green-600 h-2 rounded-full" style="width: 92%"></div>
</div>
<span class="text-sm">92%</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</section>
</main>
<script>
feather.replace();
function toggleTheme() {
document.documentElement.classList.toggle('dark');
localStorage.setItem('theme', document.documentElement.classList.contains('dark') ? 'dark' : 'light');
}
if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
document.documentElement.classList.add('dark');
}
// Task Performance Chart
const taskCtx = document.getElementById('taskPerformanceChart').getContext('2d');
new Chart(taskCtx, {
type: 'line',
data: {
labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
datasets: [{
label: 'Completed Tasks',
data: [165, 189, 234, 278, 292, 301, 312],
borderColor: 'rgb(59, 130, 246)',
backgroundColor: 'rgba(59, 130, 246, 0.1)',
tension: 0.4
}, {
label: 'Failed Tasks',
data: [8, 12, 6, 9, 4, 7, 5],
borderColor: 'rgb(239, 68, 68)',
backgroundColor: 'rgba(239, 68, 68, 0.1)',
tension: 0.4
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
plugins: {
legend: {
position: 'bottom'
}
}
}
});
// Agent Usage Chart
const agentCtx = document.getElementById('agentUsageChart').getContext('2d');
new Chart(agentCtx, {
type: 'doughnut',
data: {
labels: ['CodeAgent Pro', 'WriterAI', 'DataAnalyzer', 'DesignBot', 'SecurityGuard'],
datasets: [{
data: [35, 28, 18, 12, 7],
backgroundColor: [
'rgb(59, 130, 246)',
'rgb(16, 185, 129)',
'rgb(251, 146, 60)',
'rgb(168, 85, 247)',
'rgb(99, 102, 241)'
]
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
plugins: {
legend: {
position: 'bottom'
}
}
}
});
</script>
</body>
</html>