agentgui 1.0.622 → 1.0.624

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 (2) hide show
  1. package/docs/index.html +157 -569
  2. package/package.json +1 -1
package/docs/index.html CHANGED
@@ -1,633 +1,221 @@
1
1
  <!DOCTYPE html>
2
- <html lang="en">
2
+ <html lang="en" data-theme="dark">
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <meta name="description" content="AgentGUI - Multi-agent GUI for AI coding assistants. Real-time streaming interface for Claude Code, Gemini CLI, OpenCode, and more.">
6
+ <meta name="description" content="AgentGUI - Multi-agent GUI for Claude Code, Gemini CLI, OpenCode and more. Real-time streaming, dark mode, voice, and SQLite persistence.">
7
7
  <title>AgentGUI - Multi-Agent GUI for AI Coding Assistants</title>
8
-
8
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/rippleui@1.12.1/dist/css/styles.css"/>
9
+ <script src="https://cdn.tailwindcss.com"></script>
9
10
  <style>
10
- * {
11
- margin: 0;
12
- padding: 0;
13
- box-sizing: border-box;
14
- }
15
-
16
- :root {
17
- --primary: #3b82f6;
18
- --primary-dark: #1e40af;
19
- --secondary: #10b981;
20
- --bg-dark: #111827;
21
- --bg-darker: #0f172a;
22
- --text-light: #f9fafb;
23
- --text-gray: #9ca3af;
24
- --border: #374151;
25
- }
26
-
27
- body {
28
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
29
- line-height: 1.6;
30
- color: #333;
31
- background: #ffffff;
32
- }
33
-
34
- /* Hero Section */
35
- .hero {
36
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
37
- color: white;
38
- padding: 120px 20px 80px;
39
- text-align: center;
40
- position: relative;
41
- overflow: hidden;
42
- }
43
-
44
- .hero::before {
45
- content: '';
46
- position: absolute;
47
- top: 0;
48
- left: 0;
49
- right: 0;
50
- bottom: 0;
51
- background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120"><path fill="%23ffffff" fill-opacity="0.1" d="M0,0 L1200,0 L1200,60 Q600,120 0,60 Z"/></svg>') no-repeat bottom;
52
- background-size: cover;
53
- }
54
-
55
- .hero-content {
56
- max-width: 900px;
57
- margin: 0 auto;
58
- position: relative;
59
- z-index: 1;
60
- }
61
-
62
- .hero h1 {
63
- font-size: 3.5rem;
64
- font-weight: 800;
65
- margin-bottom: 1.5rem;
66
- line-height: 1.2;
67
- }
68
-
69
- .hero p {
70
- font-size: 1.3rem;
71
- margin-bottom: 2.5rem;
72
- opacity: 0.95;
73
- }
74
-
75
- .badges {
76
- display: flex;
77
- gap: 10px;
78
- justify-content: center;
79
- flex-wrap: wrap;
80
- margin-bottom: 2rem;
81
- }
82
-
83
- .badges img {
84
- height: 20px;
85
- }
86
-
87
- .cta-buttons {
88
- display: flex;
89
- gap: 1rem;
90
- justify-content: center;
91
- flex-wrap: wrap;
92
- }
93
-
94
- .btn {
95
- padding: 14px 32px;
96
- border-radius: 8px;
97
- text-decoration: none;
98
- font-weight: 600;
99
- font-size: 1.1rem;
100
- transition: all 0.3s ease;
101
- display: inline-block;
102
- }
103
-
104
- .btn-primary {
105
- background: white;
106
- color: #667eea;
107
- box-shadow: 0 4px 14px rgba(0,0,0,0.2);
108
- }
109
-
110
- .btn-primary:hover {
111
- transform: translateY(-2px);
112
- box-shadow: 0 6px 20px rgba(0,0,0,0.3);
113
- }
114
-
115
- .btn-secondary {
116
- background: rgba(255,255,255,0.2);
117
- color: white;
118
- border: 2px solid white;
119
- }
120
-
121
- .btn-secondary:hover {
122
- background: rgba(255,255,255,0.3);
123
- transform: translateY(-2px);
124
- }
125
-
126
- /* Container */
127
- .container {
128
- max-width: 1200px;
129
- margin: 0 auto;
130
- padding: 0 20px;
131
- }
132
-
133
- /* Section */
134
- .section {
135
- padding: 80px 20px;
136
- }
137
-
138
- .section-title {
139
- text-align: center;
140
- font-size: 2.5rem;
141
- font-weight: 700;
142
- margin-bottom: 1rem;
143
- color: #1f2937;
144
- }
145
-
146
- .section-subtitle {
147
- text-align: center;
148
- font-size: 1.2rem;
149
- color: #6b7280;
150
- margin-bottom: 4rem;
151
- max-width: 700px;
152
- margin-left: auto;
153
- margin-right: auto;
154
- }
155
-
156
- /* Features Grid */
157
- .features-grid {
158
- display: grid;
159
- grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
160
- gap: 2.5rem;
161
- margin-top: 3rem;
162
- }
163
-
164
- .feature-card {
165
- background: white;
166
- border: 1px solid #e5e7eb;
167
- border-radius: 12px;
168
- padding: 2rem;
169
- transition: all 0.3s ease;
170
- }
171
-
172
- .feature-card:hover {
173
- box-shadow: 0 10px 30px rgba(0,0,0,0.1);
174
- transform: translateY(-5px);
175
- }
176
-
177
- .feature-icon {
178
- font-size: 2.5rem;
179
- margin-bottom: 1rem;
180
- }
181
-
182
- .feature-card h3 {
183
- font-size: 1.3rem;
184
- margin-bottom: 0.8rem;
185
- color: #1f2937;
186
- }
187
-
188
- .feature-card p {
189
- color: #6b7280;
190
- line-height: 1.7;
191
- }
192
-
193
- /* Screenshots */
194
- .screenshot-gallery {
195
- display: grid;
196
- grid-template-columns: repeat(3, 1fr);
197
- gap: 1.5rem;
198
- margin-top: 3rem;
199
- }
200
-
201
- .screenshot-gallery.two-col {
202
- grid-template-columns: repeat(2, 1fr);
203
- margin-top: 1.5rem;
204
- }
205
-
206
- .screenshot-item {
207
- border-radius: 12px;
208
- overflow: hidden;
209
- box-shadow: 0 4px 24px rgba(0,0,0,0.12);
210
- transition: all 0.3s ease;
211
- background: #1f2937;
212
- }
213
-
214
- .screenshot-item:hover {
215
- transform: translateY(-4px);
216
- box-shadow: 0 12px 40px rgba(0,0,0,0.2);
217
- }
218
-
219
- .screenshot-item img {
220
- width: 100%;
221
- height: auto;
222
- display: block;
223
- }
224
-
225
- .screenshot-caption {
226
- padding: 0.875rem 1rem;
227
- background: #1f2937;
228
- text-align: center;
229
- font-weight: 600;
230
- color: #e5e7eb;
231
- font-size: 0.9rem;
232
- letter-spacing: 0.02em;
233
- }
234
-
235
- /* Code Block */
236
- .code-block {
237
- background: #1f2937;
238
- color: #f9fafb;
239
- padding: 2rem;
240
- border-radius: 12px;
241
- font-family: 'Courier New', monospace;
242
- font-size: 1.1rem;
243
- position: relative;
244
- margin: 2rem 0;
245
- }
246
-
247
- .code-block pre {
248
- margin: 0;
249
- overflow-x: auto;
250
- }
251
-
252
- .copy-btn {
253
- position: absolute;
254
- top: 1rem;
255
- right: 1rem;
256
- background: #374151;
257
- color: white;
258
- border: none;
259
- padding: 8px 16px;
260
- border-radius: 6px;
261
- cursor: pointer;
262
- font-size: 0.9rem;
263
- transition: background 0.2s;
264
- }
265
-
266
- .copy-btn:hover {
267
- background: #4b5563;
268
- }
269
-
270
- /* Architecture */
271
- .architecture {
272
- background: #f9fafb;
273
- padding: 3rem;
274
- border-radius: 12px;
275
- margin-top: 3rem;
276
- }
277
-
278
- .architecture pre {
279
- background: white;
280
- padding: 2rem;
281
- border-radius: 8px;
282
- overflow-x: auto;
283
- font-size: 0.9rem;
284
- line-height: 1.6;
285
- border: 1px solid #e5e7eb;
286
- }
287
-
288
- /* Footer */
289
- .footer {
290
- background: #1f2937;
291
- color: #9ca3af;
292
- text-align: center;
293
- padding: 3rem 20px;
294
- }
295
-
296
- .footer-links {
297
- display: flex;
298
- gap: 2rem;
299
- justify-content: center;
300
- margin-bottom: 1.5rem;
301
- flex-wrap: wrap;
302
- }
303
-
304
- .footer-links a {
305
- color: #9ca3af;
306
- text-decoration: none;
307
- transition: color 0.2s;
308
- }
309
-
310
- .footer-links a:hover {
311
- color: white;
312
- }
313
-
314
- /* Responsive */
315
- @media (max-width: 768px) {
316
- .hero h1 {
317
- font-size: 2.5rem;
318
- }
319
-
320
- .hero p {
321
- font-size: 1.1rem;
322
- }
323
-
324
- .section-title {
325
- font-size: 2rem;
326
- }
327
-
328
- .features-grid {
329
- grid-template-columns: 1fr;
330
- }
331
-
332
- .screenshot-gallery,
333
- .screenshot-gallery.two-col {
334
- grid-template-columns: 1fr;
335
- }
336
- }
11
+ .hero-gradient { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); }
12
+ .screenshot-item { transition: transform 0.3s ease, box-shadow 0.3s ease; }
13
+ .screenshot-item:hover { transform: translateY(-4px); box-shadow: 0 16px 48px rgba(0,0,0,0.4); }
14
+ pre, code { font-family: 'Courier New', monospace; }
15
+ .arch-diagram { background: #0f172a; border: 1px solid #1e293b; border-radius: 12px; padding: 1.5rem; overflow-x: auto; color: #94a3b8; font-size: 0.8rem; line-height: 1.6; }
337
16
  </style>
338
17
  </head>
339
- <body>
340
- <!-- Hero Section -->
341
- <section class="hero">
342
- <div class="hero-content">
343
- <h1>AgentGUI</h1>
344
- <p>Multi-agent GUI for Claude Code, Gemini CLI, OpenCode &amp; more. Real-time streaming, dark mode, voice, and SQLite persistence.</p>
345
-
346
- <div class="badges">
18
+ <body class="bg-base-1 text-content1">
19
+
20
+ <!-- Hero -->
21
+ <section class="hero-gradient text-white py-24 px-4 text-center">
22
+ <div class="max-w-3xl mx-auto">
23
+ <h1 class="text-5xl font-bold mb-4">AgentGUI</h1>
24
+ <p class="text-xl text-white/80 mb-6">Multi-agent GUI for Claude Code, Gemini CLI, OpenCode &amp; more.<br>Real-time streaming, dark mode, voice, and SQLite persistence.</p>
25
+ <div class="flex flex-wrap justify-center gap-2 mb-8">
347
26
  <img src="https://img.shields.io/npm/v/agentgui?color=brightgreen" alt="npm version">
348
27
  <img src="https://img.shields.io/npm/dw/agentgui?color=brightgreen" alt="weekly downloads">
349
28
  <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="license">
350
29
  </div>
351
-
352
- <div class="cta-buttons">
353
- <a href="https://github.com/AnEntrypoint/agentgui" class="btn btn-primary">View on GitHub</a>
354
- <a href="https://www.npmjs.com/package/agentgui" class="btn btn-secondary">npm Package</a>
30
+ <div class="flex flex-wrap justify-center gap-3">
31
+ <a href="https://github.com/AnEntrypoint/agentgui" class="btn btn-primary btn-lg btn-rounded">View on GitHub</a>
32
+ <a href="https://www.npmjs.com/package/agentgui" class="btn btn-ghost btn-lg btn-rounded border border-white/30">npm Package</a>
355
33
  </div>
356
34
  </div>
357
35
  </section>
358
36
 
359
37
  <!-- Quick Start -->
360
- <section class="section">
361
- <div class="container">
362
- <h2 class="section-title">Get Started in Seconds</h2>
363
- <p class="section-subtitle">No installation required. Run with npx and start coding with AI agents instantly.</p>
364
-
365
- <div class="code-block">
366
- <button class="copy-btn" onclick="copyCode(this)">Copy</button>
367
- <pre><code>npx agentgui</code></pre>
38
+ <section class="py-16 px-4 text-center">
39
+ <div class="max-w-2xl mx-auto">
40
+ <h2 class="text-3xl font-bold mb-2">Get Started in Seconds</h2>
41
+ <p class="text-content3 mb-6">No installation required. Run with npx and start coding with AI agents instantly.</p>
42
+ <div class="relative bg-[#0f172a] rounded-xl p-6 text-left border border-[#1e293b]">
43
+ <button class="btn btn-sm btn-ghost absolute top-3 right-3 text-content3" onclick="navigator.clipboard.writeText('npx agentgui');this.textContent='Copied!';setTimeout(()=>this.textContent='Copy',2000)">Copy</button>
44
+ <pre class="text-green-400 text-lg">$ npx agentgui</pre>
368
45
  </div>
369
-
370
- <p style="text-align: center; color: #6b7280; margin-top: 1rem;">
371
- Server starts at <strong>http://localhost:3000/gm/</strong>
372
- </p>
46
+ <p class="text-content3 mt-3 text-sm">Server starts at <code class="text-blue-400">http://localhost:3000/gm/</code></p>
373
47
  </div>
374
48
  </section>
375
49
 
376
50
  <!-- Why AgentGUI -->
377
- <section class="section">
378
- <div class="container">
379
- <h2 class="section-title">Why AgentGUI?</h2>
380
- <p class="section-subtitle">Stop juggling multiple terminal windows. Work with all your AI agents in one unified interface.</p>
381
-
382
- <div class="features-grid">
383
- <div class="feature-card">
384
- <h3>📊 Compare Side-by-Side</h3>
385
- <p>Test the same prompt across Claude Code, Gemini CLI, OpenCode, and others to find the best approach for your task.</p>
386
- </div>
387
-
388
- <div class="feature-card">
389
- <h3>💾 Never Lose Context</h3>
390
- <p>Every conversation, file change, and terminal output is automatically saved. Resume interrupted work exactly where you left off.</p>
391
- </div>
392
-
393
- <div class="feature-card">
394
- <h3>👁️ See Everything</h3>
395
- <p>Watch streaming responses, file changes, and tool calls in real-time instead of parsing raw JSON in your terminal.</p>
51
+ <section class="py-16 px-4 bg-base-2">
52
+ <div class="max-w-5xl mx-auto">
53
+ <h2 class="text-3xl font-bold text-center mb-2">Why AgentGUI?</h2>
54
+ <p class="text-content3 text-center mb-10">Stop juggling multiple terminal windows. One interface for all your AI agents.</p>
55
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
56
+ <div class="card p-6">
57
+ <h3 class="font-bold text-lg mb-2">📊 Compare Side-by-Side</h3>
58
+ <p class="text-content3">Test the same prompt across Claude Code, Gemini CLI, OpenCode, and others to find the best approach.</p>
59
+ </div>
60
+ <div class="card p-6">
61
+ <h3 class="font-bold text-lg mb-2">💾 Never Lose Context</h3>
62
+ <p class="text-content3">Every conversation, file change, and terminal output is automatically saved. Resume exactly where you left off.</p>
63
+ </div>
64
+ <div class="card p-6">
65
+ <h3 class="font-bold text-lg mb-2">👁️ See Everything</h3>
66
+ <p class="text-content3">Watch streaming responses, file changes, and tool calls in real-time instead of parsing raw JSON.</p>
396
67
  </div>
397
68
  </div>
398
69
  </div>
399
70
  </section>
400
71
 
401
72
  <!-- Features -->
402
- <section class="section" style="background: #f9fafb;">
403
- <div class="container">
404
- <h2 class="section-title">Features</h2>
405
- <p class="section-subtitle">Everything you need to work with multiple AI coding agents in one place.</p>
406
-
407
- <div class="features-grid">
408
- <div class="feature-card">
409
- <div class="feature-icon">🤖</div>
410
- <h3>Multi-Agent Support</h3>
411
- <p>Auto-discovers 14 AI coding agents including Claude Code, Gemini CLI, OpenCode, Kilo, Goose, Cline, Codex, Kiro, and more.</p>
412
- </div>
413
-
414
- <div class="feature-card">
415
- <div class="feature-icon">⚡</div>
416
- <h3>Real-Time Streaming</h3>
417
- <p>WebSocket-based streaming for instant responses. Watch your agent work in real-time with live execution visualization.</p>
418
- </div>
419
-
420
- <div class="feature-card">
421
- <div class="feature-icon">💾</div>
422
- <h3>Persistent Storage</h3>
423
- <p>SQLite database stores all conversations, sessions, and execution history. Resume where you left off.</p>
424
- </div>
425
-
426
- <div class="feature-card">
427
- <div class="feature-icon">📁</div>
428
- <h3>File Management</h3>
429
- <p>Integrated file browser with drag-and-drop uploads. Direct file editing and context-aware operations.</p>
430
- </div>
431
-
432
- <div class="feature-card">
433
- <div class="feature-icon">🎤</div>
434
- <h3>Speech Capabilities</h3>
435
- <p>Built-in speech-to-text and text-to-speech via Hugging Face Whisper. No API keys required.</p>
436
- </div>
437
-
438
- <div class="feature-card">
439
- <div class="feature-icon">🔧</div>
440
- <h3>Developer Friendly</h3>
441
- <p>Hot reload, REST API, WebSocket endpoints, and extensible plugin system for custom agents.</p>
73
+ <section class="py-16 px-4">
74
+ <div class="max-w-5xl mx-auto">
75
+ <h2 class="text-3xl font-bold text-center mb-2">Features</h2>
76
+ <p class="text-content3 text-center mb-10">Everything you need to work with multiple AI coding agents in one place.</p>
77
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
78
+ <div class="card p-6">
79
+ <div class="text-4xl mb-3">🤖</div>
80
+ <h3 class="font-bold text-lg mb-2">Multi-Agent Support</h3>
81
+ <p class="text-content3">Auto-discovers 14 AI coding agents: Claude Code, Gemini CLI, OpenCode, Kilo, Goose, Cline, Codex, Kiro, and more.</p>
82
+ </div>
83
+ <div class="card p-6">
84
+ <div class="text-4xl mb-3">⚡</div>
85
+ <h3 class="font-bold text-lg mb-2">Real-Time Streaming</h3>
86
+ <p class="text-content3">WebSocket-based streaming for instant responses. Watch your agent work live with execution visualization.</p>
87
+ </div>
88
+ <div class="card p-6">
89
+ <div class="text-4xl mb-3">💾</div>
90
+ <h3 class="font-bold text-lg mb-2">Persistent Storage</h3>
91
+ <p class="text-content3">SQLite WAL mode stores all conversations, sessions, and execution history. Resume where you left off.</p>
92
+ </div>
93
+ <div class="card p-6">
94
+ <div class="text-4xl mb-3">📁</div>
95
+ <h3 class="font-bold text-lg mb-2">File Management</h3>
96
+ <p class="text-content3">Integrated file browser with drag-and-drop uploads. Direct file editing and context-aware operations.</p>
97
+ </div>
98
+ <div class="card p-6">
99
+ <div class="text-4xl mb-3">🎤</div>
100
+ <h3 class="font-bold text-lg mb-2">Voice I/O</h3>
101
+ <p class="text-content3">Built-in speech-to-text and text-to-speech via Hugging Face Whisper. No API keys required.</p>
102
+ </div>
103
+ <div class="card p-6">
104
+ <div class="text-4xl mb-3">🔧</div>
105
+ <h3 class="font-bold text-lg mb-2">Developer Friendly</h3>
106
+ <p class="text-content3">Hot reload, REST API, WebSocket endpoints, and extensible plugin system for custom agents.</p>
442
107
  </div>
443
108
  </div>
444
109
  </div>
445
110
  </section>
446
111
 
447
112
  <!-- Screenshots -->
448
- <section class="section">
449
- <div class="container">
450
- <h2 class="section-title">Screenshots</h2>
451
- <p class="section-subtitle">See AgentGUI in action</p>
452
-
453
- <div class="screenshot-gallery">
454
- <div class="screenshot-item">
455
- <img src="screenshot-light.png" alt="Welcome Screen - Light Mode">
456
- <div class="screenshot-caption">Welcome Screen · Light Mode</div>
457
- </div>
458
- <div class="screenshot-item">
459
- <img src="screenshot-dark.png" alt="Welcome Screen - Dark Mode">
460
- <div class="screenshot-caption">Welcome Screen · Dark Mode</div>
461
- </div>
462
- <div class="screenshot-item">
463
- <img src="screenshot-dark-conversation.png" alt="Live Streaming">
464
- <div class="screenshot-caption">Live Agent Streaming</div>
113
+ <section class="py-16 px-4 bg-base-2">
114
+ <div class="max-w-6xl mx-auto">
115
+ <h2 class="text-3xl font-bold text-center mb-2">Screenshots</h2>
116
+ <p class="text-content3 text-center mb-10">See AgentGUI in action</p>
117
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
118
+ <div class="screenshot-item rounded-xl overflow-hidden border border-base-3">
119
+ <img src="screenshot-light.png" alt="Light Mode" class="w-full">
120
+ <div class="bg-base-3 text-center py-2 px-3 text-sm font-semibold">Welcome Screen · Light Mode</div>
121
+ </div>
122
+ <div class="screenshot-item rounded-xl overflow-hidden border border-base-3">
123
+ <img src="screenshot-dark.png" alt="Dark Mode" class="w-full">
124
+ <div class="bg-base-3 text-center py-2 px-3 text-sm font-semibold">Welcome Screen · Dark Mode</div>
125
+ </div>
126
+ <div class="screenshot-item rounded-xl overflow-hidden border border-base-3">
127
+ <img src="screenshot-dark-conversation.png" alt="Live Streaming" class="w-full">
128
+ <div class="bg-base-3 text-center py-2 px-3 text-sm font-semibold">Live Agent Streaming</div>
465
129
  </div>
466
130
  </div>
467
- <div class="screenshot-gallery two-col">
468
- <div class="screenshot-item">
469
- <img src="screenshot-conversation.png" alt="Tool Use & Code Output">
470
- <div class="screenshot-caption">Tool Use &amp; Code Output</div>
131
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mt-4">
132
+ <div class="screenshot-item rounded-xl overflow-hidden border border-base-3">
133
+ <img src="screenshot-conversation.png" alt="Tool Use & Code Output" class="w-full">
134
+ <div class="bg-base-3 text-center py-2 px-3 text-sm font-semibold">Tool Use &amp; Code Output</div>
471
135
  </div>
472
- <div class="screenshot-item">
473
- <img src="screenshot-tools.png" alt="Tools & Extensions">
474
- <div class="screenshot-caption">Tools &amp; Extensions Manager</div>
136
+ <div class="screenshot-item rounded-xl overflow-hidden border border-base-3">
137
+ <img src="screenshot-tools.png" alt="Tools & Extensions" class="w-full">
138
+ <div class="bg-base-3 text-center py-2 px-3 text-sm font-semibold">Tools &amp; Extensions Manager</div>
475
139
  </div>
476
140
  </div>
477
141
  </div>
478
142
  </section>
479
143
 
480
144
  <!-- Use Cases -->
481
- <section class="section">
482
- <div class="container">
483
- <h2 class="section-title">Use Cases</h2>
484
- <p class="section-subtitle">Practical scenarios where AgentGUI shines</p>
485
-
486
- <div class="features-grid">
487
- <div class="feature-card">
488
- <h3>Multi-Agent Comparison</h3>
489
- <p>Run the same task through different agents to compare approaches, code quality, and execution speed.</p>
490
- </div>
491
-
492
- <div class="feature-card">
493
- <h3>Long-Running Projects</h3>
494
- <p>Build complex features across multiple sessions without losing context or conversation history.</p>
495
- </div>
496
-
497
- <div class="feature-card">
498
- <h3>Team Collaboration</h3>
499
- <p>Share conversation URLs and working directories for pair programming with AI agents.</p>
500
- </div>
501
-
502
- <div class="feature-card">
503
- <h3>Agent Development</h3>
504
- <p>Test and debug custom agents with full visibility into streaming events and tool calls.</p>
505
- </div>
506
-
507
- <div class="feature-card">
508
- <h3>Offline Speech</h3>
509
- <p>Use local speech-to-text and text-to-speech without API costs or internet dependency.</p>
510
- </div>
511
-
512
- <div class="feature-card">
513
- <h3>Code Review Sessions</h3>
514
- <p>Review AI-generated changes in a visual diff view with file browser integration.</p>
145
+ <section class="py-16 px-4">
146
+ <div class="max-w-5xl mx-auto">
147
+ <h2 class="text-3xl font-bold text-center mb-2">Use Cases</h2>
148
+ <p class="text-content3 text-center mb-10">Practical scenarios where AgentGUI shines</p>
149
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
150
+ <div class="card p-6">
151
+ <h3 class="font-bold text-lg mb-2">Multi-Agent Comparison</h3>
152
+ <p class="text-content3">Run the same task through different agents to compare approaches, code quality, and execution speed.</p>
153
+ </div>
154
+ <div class="card p-6">
155
+ <h3 class="font-bold text-lg mb-2">Long-Running Projects</h3>
156
+ <p class="text-content3">Build complex features across multiple sessions without losing context or conversation history.</p>
157
+ </div>
158
+ <div class="card p-6">
159
+ <h3 class="font-bold text-lg mb-2">Team Collaboration</h3>
160
+ <p class="text-content3">Share conversation URLs and working directories for pair programming with AI agents.</p>
161
+ </div>
162
+ <div class="card p-6">
163
+ <h3 class="font-bold text-lg mb-2">Agent Development</h3>
164
+ <p class="text-content3">Test and debug custom agents with full visibility into streaming events and tool calls.</p>
165
+ </div>
166
+ <div class="card p-6">
167
+ <h3 class="font-bold text-lg mb-2">Offline Speech</h3>
168
+ <p class="text-content3">Use local speech-to-text and text-to-speech without API costs or internet dependency.</p>
169
+ </div>
170
+ <div class="card p-6">
171
+ <h3 class="font-bold text-lg mb-2">Code Review</h3>
172
+ <p class="text-content3">Review AI-generated changes in a visual view with file browser and conversation history.</p>
515
173
  </div>
516
174
  </div>
517
175
  </div>
518
176
  </section>
519
177
 
520
- <!-- Architecture -->
521
- <section class="section" style="background: #f9fafb;">
522
- <div class="container">
523
- <h2 class="section-title">Architecture</h2>
524
- <p class="section-subtitle">Built for performance, reliability, and extensibility</p>
178
+ <!-- Installation -->
179
+ <section class="py-16 px-4">
180
+ <div class="max-w-2xl mx-auto">
181
+ <h2 class="text-3xl font-bold text-center mb-10">Installation Options</h2>
525
182
 
526
- <div class="architecture">
527
- <pre><code>┌─────────────────────────────────────────────────────────────────┐
528
- │ Browser Client │
529
- │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────┐
530
- │ │ UI Layer │ │ WebSocket │ │ Streaming Renderer │ │
531
- │ │ Components │ │ Manager │ │ (Event Processor) │ │
532
- │ └──────────────┘ └──────────────┘ └──────────────────────────┘ │
533
- └─────────────────────────────────────────────────────────────────┘
534
-
535
- ┌─────────▼─────────┐
536
- │ HTTP + WS │
537
- │ Server │
538
- │ (server.js) │
539
- └─────────┬─────────┘
540
-
541
- ┌─────────────────────┼─────────────────────┐
542
- │ │ │
543
- ┌───────▼────────┐ ┌─────────▼─────────┐ ┌───────▼────────┐
544
- │ SQLite DB │ │ Agent Runner │ │ Speech │
545
- │ (database.js) │ │ (claude-runner.js)│ │ (speech.js) │
546
- └────────────────┘ └─────────┬─────────┘ └────────────────┘
547
-
548
- ┌─────────▼─────────┐
549
- │ Agent CLI Tools │
550
- │ (spawned procs) │
551
- └───────────────────┘</code></pre>
183
+ <h3 class="font-semibold text-lg mb-3">Quick Start (Recommended)</h3>
184
+ <div class="relative bg-[#0f172a] rounded-xl p-5 border border-[#1e293b] mb-8">
185
+ <button class="btn btn-sm btn-ghost absolute top-3 right-3 text-content3" onclick="navigator.clipboard.writeText('npx agentgui');this.textContent='Copied!';setTimeout(()=>this.textContent='Copy',2000)">Copy</button>
186
+ <pre class="text-green-400">$ npx agentgui</pre>
552
187
  </div>
553
188
 
554
- <div class="features-grid" style="margin-top: 3rem;">
555
- <div class="feature-card">
556
- <h3>REST API</h3>
557
- <p>Complete REST API for conversations, messages, agents, tools, and speech operations.</p>
558
- </div>
559
-
560
- <div class="feature-card">
561
- <h3>WebSocket Sync</h3>
562
- <p>Real-time bidirectional communication with event-based streaming and subscription model.</p>
563
- </div>
564
-
565
- <div class="feature-card">
566
- <h3>SQLite WAL Mode</h3>
567
- <p>Write-Ahead Logging for concurrent reads and writes without blocking.</p>
568
- </div>
189
+ <h3 class="font-semibold text-lg mb-3">Manual Installation</h3>
190
+ <div class="relative bg-[#0f172a] rounded-xl p-5 border border-[#1e293b] mb-8">
191
+ <button class="btn btn-sm btn-ghost absolute top-3 right-3 text-content3" onclick="navigator.clipboard.writeText('git clone https://github.com/AnEntrypoint/agentgui.git\ncd agentgui\nnpm install\nnpm run dev');this.textContent='Copied!';setTimeout(()=>this.textContent='Copy',2000)">Copy</button>
192
+ <pre class="text-green-400">$ git clone https://github.com/AnEntrypoint/agentgui.git
193
+ $ cd agentgui
194
+ $ npm install
195
+ $ npm run dev</pre>
569
196
  </div>
570
- </div>
571
- </section>
572
-
573
- <!-- Installation Options -->
574
- <section class="section">
575
- <div class="container">
576
- <h2 class="section-title">Installation Options</h2>
577
-
578
- <div style="max-width: 800px; margin: 0 auto;">
579
- <h3 style="margin: 2rem 0 1rem;">Quick Start (Recommended)</h3>
580
- <div class="code-block">
581
- <button class="copy-btn" onclick="copyCode(this)">Copy</button>
582
- <pre><code>npx agentgui</code></pre>
583
- </div>
584
-
585
- <h3 style="margin: 2rem 0 1rem;">Manual Installation</h3>
586
- <div class="code-block">
587
- <button class="copy-btn" onclick="copyCode(this)">Copy</button>
588
- <pre><code>git clone https://github.com/AnEntrypoint/agentgui.git
589
- cd agentgui
590
- npm install
591
- npm run dev</code></pre>
592
- </div>
593
197
 
594
- <h3 style="margin: 2rem 0 1rem;">System Requirements</h3>
595
- <ul style="list-style: none; padding: 0;">
596
- <li style="padding: 0.5rem 0; color: #4b5563;">✓ Node.js 18+ (LTS recommended)</li>
597
- <li style="padding: 0.5rem 0; color: #4b5563;">✓ npm or bun package manager</li>
598
- <li style="padding: 0.5rem 0; color: #4b5563;">✓ At least one AI coding agent (Claude Code, Gemini CLI, etc.)</li>
599
- </ul>
198
+ <h3 class="font-semibold text-lg mb-3">System Requirements</h3>
199
+ <div class="card p-5 space-y-2">
200
+ <div class="flex items-center gap-2"><span class="badge badge-success badge-sm">✓</span> <span class="text-content2">Node.js 18+ (LTS recommended)</span></div>
201
+ <div class="flex items-center gap-2"><span class="badge badge-success badge-sm">✓</span> <span class="text-content2">npm or bun package manager</span></div>
202
+ <div class="flex items-center gap-2"><span class="badge badge-success badge-sm">✓</span> <span class="text-content2">At least one AI coding agent (Claude Code, Gemini CLI, etc.)</span></div>
600
203
  </div>
601
204
  </div>
602
205
  </section>
603
206
 
604
207
  <!-- Footer -->
605
- <footer class="footer">
606
- <div class="container">
607
- <div class="footer-links">
608
- <a href="https://github.com/AnEntrypoint/agentgui">GitHub</a>
609
- <a href="https://www.npmjs.com/package/agentgui">npm</a>
610
- <a href="https://github.com/AnEntrypoint/agentgui/issues">Issues</a>
611
- <a href="https://github.com/AnEntrypoint/agentgui#readme">Documentation</a>
208
+ <footer class="bg-base-2 border-t border-base-3 py-10 px-4 text-center">
209
+ <div class="max-w-4xl mx-auto">
210
+ <div class="flex flex-wrap justify-center gap-6 mb-4">
211
+ <a href="https://github.com/AnEntrypoint/agentgui" class="text-content2 hover:text-content1 transition-colors">GitHub</a>
212
+ <a href="https://www.npmjs.com/package/agentgui" class="text-content2 hover:text-content1 transition-colors">npm</a>
213
+ <a href="https://github.com/AnEntrypoint/agentgui/issues" class="text-content2 hover:text-content1 transition-colors">Issues</a>
214
+ <a href="https://github.com/AnEntrypoint/agentgui#readme" class="text-content2 hover:text-content1 transition-colors">Documentation</a>
612
215
  </div>
613
- <p>MIT License © 2025 AnEntrypoint</p>
614
- <p style="margin-top: 1rem;">Made with ❤️ by the AgentGUI team</p>
216
+ <p class="text-content3 text-sm">MIT License © 2025 AnEntrypoint · Made with ❤️ by the AgentGUI team</p>
615
217
  </div>
616
218
  </footer>
617
219
 
618
- <script>
619
- function copyCode(btn) {
620
- const codeBlock = btn.nextElementSibling;
621
- const text = codeBlock.textContent;
622
-
623
- navigator.clipboard.writeText(text).then(() => {
624
- const originalText = btn.textContent;
625
- btn.textContent = 'Copied!';
626
- setTimeout(() => {
627
- btn.textContent = originalText;
628
- }, 2000);
629
- });
630
- }
631
- </script>
632
220
  </body>
633
221
  </html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentgui",
3
- "version": "1.0.622",
3
+ "version": "1.0.624",
4
4
  "description": "Multi-agent ACP client with real-time communication",
5
5
  "type": "module",
6
6
  "main": "server.js",