Spaces:
Running
Running
Мне нужно чтобы терминал сюи создание задачр и все было в отдельных вкладках! И улучшить адаптацию для телефонов - Follow Up Deployment
Browse files- index.html +133 -60
index.html
CHANGED
@@ -21,6 +21,23 @@
|
|
21 |
}
|
22 |
</script>
|
23 |
<style>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
.console-scrollbar::-webkit-scrollbar {
|
25 |
width: 8px;
|
26 |
}
|
@@ -75,6 +92,18 @@
|
|
75 |
.glow {
|
76 |
box-shadow: 0 0 15px rgba(139, 92, 246, 0.5);
|
77 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
</style>
|
79 |
</head>
|
80 |
<body class="bg-gray-900 text-gray-100 min-h-screen">
|
@@ -87,15 +116,26 @@
|
|
87 |
</div>
|
88 |
<h1 class="text-2xl font-bold">AI Agent Console</h1>
|
89 |
</div>
|
90 |
-
<div class="flex items-center space-x-
|
91 |
-
<
|
92 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
93 |
</button>
|
94 |
<div class="relative">
|
95 |
-
<div class="w-10 h-10 rounded-full bg-gradient-to-r from-purple-500 to-pink-500 flex items-center justify-center">
|
96 |
-
<span class="font-bold">U</span>
|
97 |
</div>
|
98 |
-
<span class="absolute top-0 right-0 w-3 h-3 bg-green-500 rounded-full border-2 border-gray-800"></span>
|
99 |
</div>
|
100 |
</div>
|
101 |
</div>
|
@@ -103,11 +143,9 @@
|
|
103 |
|
104 |
<!-- Main Content -->
|
105 |
<main class="container mx-auto px-4 py-8">
|
106 |
-
|
107 |
-
|
108 |
-
<div class="
|
109 |
-
<!-- Task Creation -->
|
110 |
-
<div class="bg-gray-800 rounded-xl p-6 shadow-lg">
|
111 |
<h2 class="text-xl font-bold mb-4 flex items-center">
|
112 |
<i class="fas fa-tasks mr-2 text-indigo-400"></i> Task Management
|
113 |
</h2>
|
@@ -126,13 +164,17 @@
|
|
126 |
</div>
|
127 |
</div>
|
128 |
|
|
|
|
|
|
|
|
|
129 |
<!-- Chat Interface -->
|
130 |
<div class="bg-gray-800 rounded-xl p-6 shadow-lg">
|
131 |
<h2 class="text-xl font-bold mb-4 flex items-center">
|
132 |
<i class="fas fa-comments mr-2 text-indigo-400"></i> AI Communication
|
133 |
</h2>
|
134 |
|
135 |
-
<div id="chatContainer" class="h-
|
136 |
<div class="chat-message mb-4">
|
137 |
<div class="flex items-start mb-2">
|
138 |
<div class="bg-gradient-to-r from-purple-500 to-indigo-500 w-8 h-8 rounded-full flex items-center justify-center mr-3">
|
@@ -154,55 +196,59 @@
|
|
154 |
</div>
|
155 |
</div>
|
156 |
</div>
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
<div class="mb-2">
|
176 |
-
<span class="text-green-400">user@ai-console:~$</span>
|
177 |
-
<span>agent --start</span>
|
178 |
-
</div>
|
179 |
-
<div class="mb-2 text-green-500">AI Agent initialized successfully</div>
|
180 |
-
<div class="mb-2">
|
181 |
-
<span class="text-green-400">user@ai-console:~$</span>
|
182 |
-
<span>agent --status</span>
|
183 |
-
</div>
|
184 |
-
<div class="mb-2">
|
185 |
-
Agent Status: <span class="text-green-500">Active</span><br>
|
186 |
-
Memory Usage: <span class="text-yellow-300">42%</span><br>
|
187 |
-
Tasks in Queue: <span class="text-blue-300">3</span>
|
188 |
-
</div>
|
189 |
-
<div class="mb-2">
|
190 |
-
<span class="text-green-400">user@ai-console:~$</span>
|
191 |
-
<span>agent --task "Analyze user preferences"</span>
|
192 |
-
</div>
|
193 |
-
<div class="mb-2">
|
194 |
-
<span class="text-cyan-300">[TASK]</span> Starting analysis of user preferences...<br>
|
195 |
-
<span class="text-cyan-300">[TASK]</span> Loading user profile data...<br>
|
196 |
-
<span class="text-green-500">[SUCCESS]</span> Profile loaded successfully<br>
|
197 |
-
<span class="text-cyan-300">[TASK]</span> Processing historical interactions...<br>
|
198 |
-
<span class="text-yellow-300">[WARNING]</span> Incomplete data in interaction history<br>
|
199 |
-
<span class="text-cyan-300">[TASK]</span> Generating preference model...<br>
|
200 |
-
<span class="text-green-500">[SUCCESS]</span> Preference model created<br>
|
201 |
-
<span class="text-green-500">[TASK COMPLETE]</span> Analysis finished in 1.42s
|
202 |
</div>
|
203 |
-
|
204 |
-
|
205 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
206 |
</div>
|
207 |
</div>
|
208 |
</div>
|
@@ -396,6 +442,33 @@
|
|
396 |
];
|
397 |
addConsoleOutput(activities[Math.floor(Math.random() * activities.length)]);
|
398 |
}, 15000);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
399 |
</script>
|
400 |
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=davydluben/test" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
|
401 |
</html>
|
|
|
21 |
}
|
22 |
</script>
|
23 |
<style>
|
24 |
+
/* Mobile-first responsive styles */
|
25 |
+
@media (max-width: 640px) {
|
26 |
+
.container {
|
27 |
+
padding-left: 1rem;
|
28 |
+
padding-right: 1rem;
|
29 |
+
}
|
30 |
+
.bg-gray-800 {
|
31 |
+
padding: 1rem;
|
32 |
+
}
|
33 |
+
#chatContainer, #consoleOutput {
|
34 |
+
height: 300px;
|
35 |
+
}
|
36 |
+
.chat-bubble-ai, .chat-bubble-user {
|
37 |
+
max-width: 90%;
|
38 |
+
}
|
39 |
+
}
|
40 |
+
|
41 |
.console-scrollbar::-webkit-scrollbar {
|
42 |
width: 8px;
|
43 |
}
|
|
|
92 |
.glow {
|
93 |
box-shadow: 0 0 15px rgba(139, 92, 246, 0.5);
|
94 |
}
|
95 |
+
|
96 |
+
.tab-content {
|
97 |
+
display: none;
|
98 |
+
}
|
99 |
+
|
100 |
+
.tab-content.active-tab {
|
101 |
+
display: block;
|
102 |
+
}
|
103 |
+
|
104 |
+
.active-tab {
|
105 |
+
background-color: #4f46e5;
|
106 |
+
}
|
107 |
</style>
|
108 |
</head>
|
109 |
<body class="bg-gray-900 text-gray-100 min-h-screen">
|
|
|
116 |
</div>
|
117 |
<h1 class="text-2xl font-bold">AI Agent Console</h1>
|
118 |
</div>
|
119 |
+
<div class="flex items-center space-x-2">
|
120 |
+
<nav class="flex space-x-1 bg-gray-700 p-1 rounded-lg overflow-x-auto whitespace-nowrap">
|
121 |
+
<button data-tab="tasks" class="tab-btn px-3 sm:px-4 py-2 rounded-md transition hover:bg-gray-600 active-tab">
|
122 |
+
<i class="fas fa-tasks mr-1 sm:mr-2"></i><span class="hidden sm:inline">Tasks</span>
|
123 |
+
</button>
|
124 |
+
<button data-tab="chat" class="tab-btn px-3 sm:px-4 py-2 rounded-md transition hover:bg-gray-600">
|
125 |
+
<i class="fas fa-comments mr-1 sm:mr-2"></i><span class="hidden sm:inline">Chat</span>
|
126 |
+
</button>
|
127 |
+
<button data-tab="console" class="tab-btn px-3 sm:px-4 py-2 rounded-md transition hover:bg-gray-600">
|
128 |
+
<i class="fas fa-terminal mr-1 sm:mr-2"></i><span class="hidden sm:inline">Console</span>
|
129 |
+
</button>
|
130 |
+
</nav>
|
131 |
+
<button class="bg-indigo-600 hover:bg-indigo-700 px-3 sm:px-4 py-2 rounded-lg transition ml-2">
|
132 |
+
<i class="fas fa-cog mr-1 sm:mr-2"></i><span class="hidden sm:inline">Settings</span>
|
133 |
</button>
|
134 |
<div class="relative">
|
135 |
+
<div class="w-8 h-8 sm:w-10 sm:h-10 rounded-full bg-gradient-to-r from-purple-500 to-pink-500 flex items-center justify-center">
|
136 |
+
<span class="font-bold text-sm sm:text-base">U</span>
|
137 |
</div>
|
138 |
+
<span class="absolute top-0 right-0 w-2 h-2 sm:w-3 sm:h-3 bg-green-500 rounded-full border-2 border-gray-800"></span>
|
139 |
</div>
|
140 |
</div>
|
141 |
</div>
|
|
|
143 |
|
144 |
<!-- Main Content -->
|
145 |
<main class="container mx-auto px-4 py-8">
|
146 |
+
<!-- Tab Content -->
|
147 |
+
<div id="tasks-tab" class="tab-content active-tab">
|
148 |
+
<div class="bg-gray-800 rounded-xl p-6 shadow-lg">
|
|
|
|
|
149 |
<h2 class="text-xl font-bold mb-4 flex items-center">
|
150 |
<i class="fas fa-tasks mr-2 text-indigo-400"></i> Task Management
|
151 |
</h2>
|
|
|
164 |
</div>
|
165 |
</div>
|
166 |
|
167 |
+
</div>
|
168 |
+
|
169 |
+
<div id="chat-tab" class="tab-content hidden">
|
170 |
+
<div class="grid grid-cols-1 gap-8">
|
171 |
<!-- Chat Interface -->
|
172 |
<div class="bg-gray-800 rounded-xl p-6 shadow-lg">
|
173 |
<h2 class="text-xl font-bold mb-4 flex items-center">
|
174 |
<i class="fas fa-comments mr-2 text-indigo-400"></i> AI Communication
|
175 |
</h2>
|
176 |
|
177 |
+
<div id="chatContainer" class="h-[500px] overflow-y-auto mb-4 bg-gray-700 rounded-lg p-4 console-scrollbar">
|
178 |
<div class="chat-message mb-4">
|
179 |
<div class="flex items-start mb-2">
|
180 |
<div class="bg-gradient-to-r from-purple-500 to-indigo-500 w-8 h-8 rounded-full flex items-center justify-center mr-3">
|
|
|
196 |
</div>
|
197 |
</div>
|
198 |
</div>
|
199 |
+
</div>
|
200 |
+
|
201 |
+
<div id="console-tab" class="tab-content hidden">
|
202 |
+
<div class="grid grid-cols-1 gap-8">
|
203 |
+
<!-- Console -->
|
204 |
+
<div class="bg-gray-800 rounded-xl p-6 shadow-lg">
|
205 |
+
<div class="flex justify-between items-center mb-4">
|
206 |
+
<h2 class="text-xl font-bold flex items-center">
|
207 |
+
<i class="fas fa-terminal mr-2 text-indigo-400"></i> Agent Console
|
208 |
+
</h2>
|
209 |
+
<div class="flex space-x-2">
|
210 |
+
<button class="bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded-lg text-sm">
|
211 |
+
<i class="fas fa-sync-alt mr-1"></i> Refresh
|
212 |
+
</button>
|
213 |
+
<button class="bg-gray-700 hover:bg-gray-600 px-3 py-1 rounded-lg text-sm">
|
214 |
+
<i class="fas fa-trash mr-1"></i> Clear
|
215 |
+
</button>
|
216 |
+
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
217 |
</div>
|
218 |
+
|
219 |
+
<div id="consoleOutput" class="bg-console-bg text-console-text font-mono text-sm p-4 rounded-lg h-[500px] overflow-y-auto console-scrollbar">
|
220 |
+
<div class="mb-2">
|
221 |
+
<span class="text-green-400">user@ai-console:~$</span>
|
222 |
+
<span>agent --start</span>
|
223 |
+
</div>
|
224 |
+
<div class="mb-2 text-green-500">AI Agent initialized successfully</div>
|
225 |
+
<div class="mb-2">
|
226 |
+
<span class="text-green-400">user@ai-console:~$</span>
|
227 |
+
<span>agent --status</span>
|
228 |
+
</div>
|
229 |
+
<div class="mb-2">
|
230 |
+
Agent Status: <span class="text-green-500">Active</span><br>
|
231 |
+
Memory Usage: <span class="text-yellow-300">42%</span><br>
|
232 |
+
Tasks in Queue: <span class="text-blue-300">3</span>
|
233 |
+
</div>
|
234 |
+
<div class="mb-2">
|
235 |
+
<span class="text-green-400">user@ai-console:~$</span>
|
236 |
+
<span>agent --task "Analyze user preferences"</span>
|
237 |
+
</div>
|
238 |
+
<div class="mb-2">
|
239 |
+
<span class="text-cyan-300">[TASK]</span> Starting analysis of user preferences...<br>
|
240 |
+
<span class="text-cyan-300">[TASK]</span> Loading user profile data...<br>
|
241 |
+
<span class="text-green-500">[SUCCESS]</span> Profile loaded successfully<br>
|
242 |
+
<span class="text-cyan-300">[TASK]</span> Processing historical interactions...<br>
|
243 |
+
<span class="text-yellow-300">[WARNING]</span> Incomplete data in interaction history<br>
|
244 |
+
<span class="text-cyan-300">[TASK]</span> Generating preference model...<br>
|
245 |
+
<span class="text-green-500">[SUCCESS]</span> Preference model created<br>
|
246 |
+
<span class="text-green-500">[TASK COMPLETE]</span> Analysis finished in 1.42s
|
247 |
+
</div>
|
248 |
+
<div class="mb-2">
|
249 |
+
<span class="text-green-400">user@ai-console:~$</span>
|
250 |
+
<span class="terminal-cursor"></span>
|
251 |
+
</div>
|
252 |
</div>
|
253 |
</div>
|
254 |
</div>
|
|
|
442 |
];
|
443 |
addConsoleOutput(activities[Math.floor(Math.random() * activities.length)]);
|
444 |
}, 15000);
|
445 |
+
|
446 |
+
// Tab switching functionality
|
447 |
+
const tabButtons = document.querySelectorAll('.tab-btn');
|
448 |
+
const tabContents = document.querySelectorAll('.tab-content');
|
449 |
+
|
450 |
+
tabButtons.forEach(button => {
|
451 |
+
button.addEventListener('click', () => {
|
452 |
+
const tabId = button.getAttribute('data-tab');
|
453 |
+
|
454 |
+
// Update active tab button
|
455 |
+
tabButtons.forEach(btn => {
|
456 |
+
btn.classList.remove('active-tab');
|
457 |
+
btn.classList.remove('bg-indigo-600');
|
458 |
+
btn.classList.add('hover:bg-gray-600');
|
459 |
+
});
|
460 |
+
button.classList.add('active-tab', 'bg-indigo-600');
|
461 |
+
button.classList.remove('hover:bg-gray-600');
|
462 |
+
|
463 |
+
// Show selected tab content
|
464 |
+
tabContents.forEach(content => {
|
465 |
+
content.classList.remove('active-tab');
|
466 |
+
content.classList.add('hidden');
|
467 |
+
});
|
468 |
+
document.getElementById(`${tabId}-tab`).classList.add('active-tab');
|
469 |
+
document.getElementById(`${tabId}-tab`).classList.remove('hidden');
|
470 |
+
});
|
471 |
+
});
|
472 |
</script>
|
473 |
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=davydluben/test" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
|
474 |
</html>
|