@zshuangmu/agenthub 0.1.0 → 0.1.2
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.
- package/package.json +1 -1
- package/src/api-server.js +22 -1
- package/src/cli.js +6 -3
- package/src/commands/install.js +20 -2
- package/src/lib/html.js +420 -347
- package/src/lib/install.js +52 -3
- package/src/lib/registry.js +38 -3
- package/src/server.js +36 -1
package/src/lib/html.js
CHANGED
|
@@ -218,26 +218,30 @@ const langScript = `
|
|
|
218
218
|
const savedTheme = localStorage.getItem('agenthub-theme') || 'light';
|
|
219
219
|
setTheme(savedTheme);
|
|
220
220
|
|
|
221
|
+
// Copy to clipboard with fallback
|
|
222
|
+
async function copyText(text) {
|
|
223
|
+
if (navigator.clipboard?.writeText) {
|
|
224
|
+
return navigator.clipboard.writeText(text);
|
|
225
|
+
}
|
|
226
|
+
const ta = Object.assign(document.createElement('textarea'), { value: text, style: 'position:fixed;opacity:0' });
|
|
227
|
+
document.body.appendChild(ta);
|
|
228
|
+
ta.select();
|
|
229
|
+
document.execCommand('copy');
|
|
230
|
+
ta.remove();
|
|
231
|
+
}
|
|
232
|
+
|
|
221
233
|
// Initialize copy buttons
|
|
222
234
|
document.querySelectorAll('.api-code, .detail-install').forEach(el => {
|
|
223
|
-
el.addEventListener('click',
|
|
224
|
-
const
|
|
225
|
-
const text = codeText ? codeText.textContent.trim() : el.textContent.trim();
|
|
235
|
+
el.addEventListener('click', () => {
|
|
236
|
+
const text = el.querySelector('.code-text')?.textContent.trim() || el.textContent.trim();
|
|
226
237
|
const btn = el.querySelector('.copy-btn');
|
|
227
238
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
btn.textContent = '📋';
|
|
235
|
-
btn.classList.remove('copied');
|
|
236
|
-
}, 2000);
|
|
237
|
-
}
|
|
238
|
-
} catch (err) {
|
|
239
|
-
console.error('Copy failed:', err);
|
|
240
|
-
}
|
|
239
|
+
copyText(text).then(() => {
|
|
240
|
+
if (!btn) return;
|
|
241
|
+
btn.textContent = '✓';
|
|
242
|
+
btn.classList.add('copied');
|
|
243
|
+
setTimeout(() => { btn.textContent = '📋'; btn.classList.remove('copied'); }, 1500);
|
|
244
|
+
}).catch(e => console.error('Copy failed:', e));
|
|
241
245
|
});
|
|
242
246
|
});
|
|
243
247
|
});
|
|
@@ -302,48 +306,54 @@ function page(title, body, options = {}) {
|
|
|
302
306
|
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>🦀</text></svg>">
|
|
303
307
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
304
308
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
305
|
-
<link href="https://fonts.googleapis.com/css2?family=
|
|
309
|
+
<link href="https://fonts.googleapis.com/css2?family=Geist+Mono:wght@500;600;700&family=Geist:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap" rel="stylesheet">
|
|
306
310
|
<style>
|
|
307
|
-
/* Light theme (default) */
|
|
311
|
+
/* Light theme (default) - Vibrant Sunset palette */
|
|
308
312
|
:root {
|
|
309
|
-
--
|
|
310
|
-
--
|
|
311
|
-
--
|
|
312
|
-
--
|
|
313
|
+
--color-1: #fd63a3;
|
|
314
|
+
--color-2: #fe9800;
|
|
315
|
+
--color-3: #ffb74d;
|
|
316
|
+
--font-display: 'Geist Mono', 'SF Mono', 'Fira Code', monospace;
|
|
317
|
+
--font-body: 'Geist', 'Noto Sans SC', -apple-system, BlinkMacSystemFont, sans-serif;
|
|
318
|
+
--bg-primary: #fffbf7;
|
|
319
|
+
--bg-secondary: #fff5ed;
|
|
313
320
|
--bg-card: #ffffff;
|
|
314
|
-
--bg-card-hover: #
|
|
315
|
-
--bg-code: #
|
|
316
|
-
--text-primary: #
|
|
317
|
-
--text-secondary: #
|
|
318
|
-
--text-muted: #
|
|
319
|
-
--accent: #
|
|
320
|
-
--accent-light: #
|
|
321
|
-
--accent-dark: #
|
|
322
|
-
--accent-glow: rgba(
|
|
323
|
-
--border: #
|
|
324
|
-
--header-bg: rgba(
|
|
325
|
-
--tag-ops: #
|
|
326
|
-
--tag-engineering: #
|
|
327
|
-
--tag-content: #
|
|
328
|
-
--tag-product: #
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
/* Dark theme -
|
|
321
|
+
--bg-card-hover: #fff8f3;
|
|
322
|
+
--bg-code: #fff9f5;
|
|
323
|
+
--text-primary: #2d1810;
|
|
324
|
+
--text-secondary: #6b4a3a;
|
|
325
|
+
--text-muted: #a08070;
|
|
326
|
+
--accent: #fa709a;
|
|
327
|
+
--accent-light: #ff9a8b;
|
|
328
|
+
--accent-dark: #e85a80;
|
|
329
|
+
--accent-glow: rgba(250, 112, 154, 0.12);
|
|
330
|
+
--border: #f0d8c8;
|
|
331
|
+
--header-bg: rgba(255, 251, 247, 0.95);
|
|
332
|
+
--tag-ops: #fa709a;
|
|
333
|
+
--tag-engineering: #ff9a8b;
|
|
334
|
+
--tag-content: #fee140;
|
|
335
|
+
--tag-product: #f5a623;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
/* Dark theme - Vibrant sunset tones */
|
|
332
339
|
[data-theme="dark"] {
|
|
333
|
-
--
|
|
334
|
-
--
|
|
335
|
-
--
|
|
336
|
-
--bg-
|
|
337
|
-
--bg-
|
|
338
|
-
--
|
|
339
|
-
--
|
|
340
|
-
--
|
|
341
|
-
--
|
|
342
|
-
--
|
|
343
|
-
--
|
|
344
|
-
--accent
|
|
345
|
-
--
|
|
346
|
-
--
|
|
340
|
+
--color-1: #fd63a3;
|
|
341
|
+
--color-2: #fe9800;
|
|
342
|
+
--color-3: #ffb74d;
|
|
343
|
+
--bg-primary: #1a1215;
|
|
344
|
+
--bg-secondary: #251a1d;
|
|
345
|
+
--bg-card: #2a1f22;
|
|
346
|
+
--bg-card-hover: #352528;
|
|
347
|
+
--bg-code: #251a1d;
|
|
348
|
+
--text-primary: #fff5f0;
|
|
349
|
+
--text-secondary: #d4b8a8;
|
|
350
|
+
--text-muted: #8a7060;
|
|
351
|
+
--accent: #ff9a8b;
|
|
352
|
+
--accent-light: #ffb8a8;
|
|
353
|
+
--accent-dark: #fa709a;
|
|
354
|
+
--accent-glow: rgba(255, 154, 139, 0.15);
|
|
355
|
+
--border: #3d2a28;
|
|
356
|
+
--header-bg: rgba(26, 18, 21, 0.95);
|
|
347
357
|
}
|
|
348
358
|
* { box-sizing: border-box; margin: 0; padding: 0; }
|
|
349
359
|
body {
|
|
@@ -382,17 +392,17 @@ function page(title, body, options = {}) {
|
|
|
382
392
|
padding: 0 24px;
|
|
383
393
|
}
|
|
384
394
|
|
|
385
|
-
/* Header */
|
|
395
|
+
/* Header - ClawHub inspired minimal style */
|
|
386
396
|
header {
|
|
387
397
|
border-bottom: 1px solid var(--border);
|
|
388
|
-
padding:
|
|
398
|
+
padding: 20px 0;
|
|
389
399
|
position: sticky;
|
|
390
400
|
top: 0;
|
|
391
401
|
background: var(--header-bg);
|
|
392
|
-
backdrop-filter: blur(
|
|
393
|
-
-webkit-backdrop-filter: blur(
|
|
402
|
+
backdrop-filter: blur(16px);
|
|
403
|
+
-webkit-backdrop-filter: blur(16px);
|
|
394
404
|
z-index: 100;
|
|
395
|
-
animation: fadeIn 0.
|
|
405
|
+
animation: fadeIn 0.5s ease-out;
|
|
396
406
|
}
|
|
397
407
|
.header-content {
|
|
398
408
|
display: flex;
|
|
@@ -402,29 +412,31 @@ function page(title, body, options = {}) {
|
|
|
402
412
|
.logo {
|
|
403
413
|
display: flex;
|
|
404
414
|
align-items: center;
|
|
405
|
-
gap:
|
|
415
|
+
gap: 12px;
|
|
406
416
|
font-family: var(--font-display);
|
|
407
|
-
font-size:
|
|
408
|
-
font-weight:
|
|
409
|
-
letter-spacing: -0.
|
|
410
|
-
transition:
|
|
417
|
+
font-size: 20px;
|
|
418
|
+
font-weight: 600;
|
|
419
|
+
letter-spacing: -0.02em;
|
|
420
|
+
transition: all 0.3s ease;
|
|
411
421
|
}
|
|
412
422
|
.logo:hover {
|
|
413
|
-
|
|
423
|
+
transform: translateX(2px);
|
|
414
424
|
}
|
|
415
425
|
.logo-icon {
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
border-radius: 8px;
|
|
420
|
-
display: flex;
|
|
421
|
-
align-items: center;
|
|
422
|
-
justify-content: center;
|
|
423
|
-
font-size: 20px;
|
|
424
|
-
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
426
|
+
font-size: 28px;
|
|
427
|
+
filter: drop-shadow(0 2px 4px rgba(250, 112, 154, 0.3));
|
|
428
|
+
transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
425
429
|
}
|
|
426
430
|
.logo:hover .logo-icon {
|
|
427
|
-
transform: rotate(-
|
|
431
|
+
transform: rotate(-10deg) scale(1.1);
|
|
432
|
+
}
|
|
433
|
+
.logo-tagline {
|
|
434
|
+
font-size: 11px;
|
|
435
|
+
font-weight: 500;
|
|
436
|
+
color: var(--text-muted);
|
|
437
|
+
font-family: var(--font-body);
|
|
438
|
+
letter-spacing: 0.02em;
|
|
439
|
+
margin-top: 2px;
|
|
428
440
|
}
|
|
429
441
|
.nav-links {
|
|
430
442
|
display: flex;
|
|
@@ -445,8 +457,9 @@ function page(title, body, options = {}) {
|
|
|
445
457
|
left: 0;
|
|
446
458
|
width: 0;
|
|
447
459
|
height: 2px;
|
|
448
|
-
background: var(--
|
|
449
|
-
transition: width 0.
|
|
460
|
+
background: linear-gradient(90deg, var(--color-1), var(--color-3));
|
|
461
|
+
transition: width 0.25s ease;
|
|
462
|
+
border-radius: 1px;
|
|
450
463
|
}
|
|
451
464
|
.nav-links a:hover {
|
|
452
465
|
color: var(--text-primary);
|
|
@@ -458,35 +471,35 @@ function page(title, body, options = {}) {
|
|
|
458
471
|
display: flex;
|
|
459
472
|
align-items: center;
|
|
460
473
|
gap: 6px;
|
|
461
|
-
padding:
|
|
474
|
+
padding: 8px 14px;
|
|
462
475
|
background: var(--bg-secondary);
|
|
463
|
-
border-radius:
|
|
476
|
+
border-radius: 8px;
|
|
464
477
|
font-size: 12px;
|
|
465
478
|
color: var(--text-muted);
|
|
466
479
|
font-family: var(--font-display);
|
|
467
480
|
}
|
|
468
481
|
.nav-powered a {
|
|
469
|
-
color: var(--
|
|
482
|
+
color: var(--color-1);
|
|
470
483
|
font-weight: 600;
|
|
471
484
|
}
|
|
472
485
|
.nav-powered a::after {
|
|
473
486
|
display: none;
|
|
474
487
|
}
|
|
475
488
|
|
|
476
|
-
/* Language Switcher */
|
|
489
|
+
/* Language Switcher - Coral themed */
|
|
477
490
|
.lang-switcher {
|
|
478
491
|
display: flex;
|
|
479
492
|
background: var(--bg-secondary);
|
|
480
|
-
border-radius:
|
|
493
|
+
border-radius: 8px;
|
|
481
494
|
padding: 3px;
|
|
482
495
|
gap: 2px;
|
|
483
496
|
}
|
|
484
497
|
.lang-btn {
|
|
485
|
-
padding:
|
|
498
|
+
padding: 6px 12px;
|
|
486
499
|
border: none;
|
|
487
500
|
background: transparent;
|
|
488
501
|
color: var(--text-muted);
|
|
489
|
-
border-radius:
|
|
502
|
+
border-radius: 6px;
|
|
490
503
|
cursor: pointer;
|
|
491
504
|
font-size: 12px;
|
|
492
505
|
font-weight: 600;
|
|
@@ -497,174 +510,199 @@ function page(title, body, options = {}) {
|
|
|
497
510
|
color: var(--text-primary);
|
|
498
511
|
}
|
|
499
512
|
.lang-btn.active {
|
|
500
|
-
background: var(--
|
|
513
|
+
background: linear-gradient(135deg, var(--color-1), var(--color-3));
|
|
501
514
|
color: #ffffff;
|
|
502
515
|
}
|
|
503
516
|
|
|
504
|
-
/* Theme Switcher */
|
|
517
|
+
/* Theme Switcher - Coral themed */
|
|
505
518
|
.theme-btn {
|
|
506
519
|
background: var(--bg-secondary);
|
|
507
520
|
border: none;
|
|
508
|
-
width:
|
|
509
|
-
height:
|
|
510
|
-
border-radius:
|
|
521
|
+
width: 36px;
|
|
522
|
+
height: 36px;
|
|
523
|
+
border-radius: 8px;
|
|
511
524
|
cursor: pointer;
|
|
512
525
|
font-size: 16px;
|
|
513
526
|
display: flex;
|
|
514
527
|
align-items: center;
|
|
515
528
|
justify-content: center;
|
|
516
|
-
transition: all 0.
|
|
529
|
+
transition: all 0.25s;
|
|
517
530
|
margin-left: 6px;
|
|
518
531
|
}
|
|
519
532
|
.theme-btn:hover {
|
|
520
533
|
background: var(--bg-card-hover);
|
|
534
|
+
transform: scale(1.05);
|
|
521
535
|
}
|
|
522
536
|
.theme-btn:active {
|
|
523
537
|
transform: scale(0.95);
|
|
524
538
|
}
|
|
525
539
|
|
|
526
|
-
/* Hero */
|
|
540
|
+
/* Hero - Sunset gradient style */
|
|
527
541
|
.hero {
|
|
528
542
|
text-align: center;
|
|
529
|
-
padding:
|
|
543
|
+
padding: 72px 20px 56px;
|
|
530
544
|
position: relative;
|
|
531
545
|
}
|
|
532
546
|
.hero::before {
|
|
533
547
|
content: '';
|
|
534
548
|
position: absolute;
|
|
535
|
-
top:
|
|
549
|
+
top: -20px;
|
|
536
550
|
left: 50%;
|
|
537
551
|
transform: translateX(-50%);
|
|
538
|
-
width:
|
|
539
|
-
height:
|
|
540
|
-
background: radial-gradient(ellipse,
|
|
552
|
+
width: 800px;
|
|
553
|
+
height: 500px;
|
|
554
|
+
background: radial-gradient(ellipse at center, rgba(250, 112, 154, 0.08) 0%, rgba(254, 225, 64, 0.05) 40%, transparent 70%);
|
|
541
555
|
pointer-events: none;
|
|
542
556
|
z-index: -1;
|
|
543
557
|
}
|
|
544
558
|
.hero h1 {
|
|
545
559
|
font-family: var(--font-display);
|
|
546
|
-
font-size: clamp(
|
|
560
|
+
font-size: clamp(40px, 8vw, 64px);
|
|
547
561
|
font-weight: 700;
|
|
548
562
|
margin-bottom: 16px;
|
|
549
|
-
letter-spacing: -
|
|
550
|
-
background: linear-gradient(135deg, var(--
|
|
563
|
+
letter-spacing: -0.03em;
|
|
564
|
+
background: linear-gradient(135deg, var(--color-1) 0%, var(--color-3) 50%, var(--color-2) 100%);
|
|
551
565
|
-webkit-background-clip: text;
|
|
552
566
|
-webkit-text-fill-color: transparent;
|
|
553
567
|
background-clip: text;
|
|
554
|
-
animation: fadeInUp 0.
|
|
568
|
+
animation: fadeInUp 0.6s ease-out;
|
|
555
569
|
}
|
|
556
570
|
.hero-subtitle {
|
|
557
|
-
font-size:
|
|
571
|
+
font-size: 17px;
|
|
558
572
|
color: var(--text-secondary);
|
|
559
|
-
max-width:
|
|
560
|
-
margin: 0 auto
|
|
561
|
-
line-height: 1.
|
|
562
|
-
animation: fadeInUp 0.
|
|
573
|
+
max-width: 560px;
|
|
574
|
+
margin: 0 auto 44px;
|
|
575
|
+
line-height: 1.75;
|
|
576
|
+
animation: fadeInUp 0.6s ease-out 0.1s backwards;
|
|
563
577
|
}
|
|
564
578
|
.hero-stats {
|
|
565
579
|
display: flex;
|
|
566
580
|
justify-content: center;
|
|
567
|
-
gap:
|
|
568
|
-
margin-bottom:
|
|
569
|
-
animation: fadeInUp 0.
|
|
581
|
+
gap: 56px;
|
|
582
|
+
margin-bottom: 44px;
|
|
583
|
+
animation: fadeInUp 0.6s ease-out 0.2s backwards;
|
|
570
584
|
}
|
|
571
585
|
.hero-stat {
|
|
572
586
|
text-align: center;
|
|
573
587
|
}
|
|
574
588
|
.hero-stat-value {
|
|
575
589
|
font-family: var(--font-display);
|
|
576
|
-
font-size:
|
|
590
|
+
font-size: 36px;
|
|
577
591
|
font-weight: 700;
|
|
578
|
-
|
|
579
|
-
|
|
592
|
+
background: linear-gradient(135deg, var(--color-1), var(--color-3));
|
|
593
|
+
-webkit-background-clip: text;
|
|
594
|
+
-webkit-text-fill-color: transparent;
|
|
595
|
+
background-clip: text;
|
|
596
|
+
letter-spacing: -0.02em;
|
|
580
597
|
}
|
|
581
598
|
.hero-stat-label {
|
|
582
|
-
font-size:
|
|
599
|
+
font-size: 11px;
|
|
583
600
|
color: var(--text-muted);
|
|
584
601
|
text-transform: uppercase;
|
|
585
|
-
letter-spacing:
|
|
586
|
-
font-weight:
|
|
602
|
+
letter-spacing: 0.1em;
|
|
603
|
+
font-weight: 600;
|
|
604
|
+
margin-top: 4px;
|
|
587
605
|
}
|
|
588
606
|
|
|
589
|
-
/* Features */
|
|
607
|
+
/* Features - Warm coral accents */
|
|
590
608
|
.features {
|
|
591
609
|
display: grid;
|
|
592
610
|
grid-template-columns: repeat(3, 1fr);
|
|
593
|
-
gap:
|
|
594
|
-
margin-bottom:
|
|
611
|
+
gap: 16px;
|
|
612
|
+
margin-bottom: 56px;
|
|
595
613
|
}
|
|
596
614
|
.feature-card {
|
|
597
615
|
background: var(--bg-card);
|
|
598
616
|
border: 1px solid var(--border);
|
|
599
|
-
border-radius:
|
|
600
|
-
padding: 24px;
|
|
617
|
+
border-radius: 16px;
|
|
618
|
+
padding: 28px 24px;
|
|
601
619
|
text-align: center;
|
|
602
|
-
transition: all 0.
|
|
620
|
+
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
|
621
|
+
position: relative;
|
|
622
|
+
overflow: hidden;
|
|
623
|
+
}
|
|
624
|
+
.feature-card::before {
|
|
625
|
+
content: '';
|
|
626
|
+
position: absolute;
|
|
627
|
+
top: 0;
|
|
628
|
+
left: 0;
|
|
629
|
+
right: 0;
|
|
630
|
+
height: 3px;
|
|
631
|
+
background: linear-gradient(90deg, var(--color-1), var(--color-3), var(--color-2));
|
|
632
|
+
opacity: 0;
|
|
633
|
+
transition: opacity 0.3s;
|
|
603
634
|
}
|
|
604
635
|
.feature-card:hover {
|
|
605
|
-
border-color: var(--
|
|
606
|
-
|
|
636
|
+
border-color: var(--color-1);
|
|
637
|
+
transform: translateY(-4px);
|
|
638
|
+
box-shadow: 0 12px 32px rgba(250, 112, 154, 0.12);
|
|
639
|
+
}
|
|
640
|
+
.feature-card:hover::before {
|
|
641
|
+
opacity: 1;
|
|
607
642
|
}
|
|
608
643
|
.feature-icon {
|
|
609
|
-
font-size:
|
|
610
|
-
margin-bottom:
|
|
644
|
+
font-size: 32px;
|
|
645
|
+
margin-bottom: 14px;
|
|
646
|
+
display: block;
|
|
611
647
|
}
|
|
612
648
|
.feature-title {
|
|
613
649
|
font-family: var(--font-display);
|
|
614
|
-
font-size:
|
|
650
|
+
font-size: 14px;
|
|
615
651
|
font-weight: 600;
|
|
616
|
-
margin-bottom:
|
|
617
|
-
letter-spacing: -0.
|
|
652
|
+
margin-bottom: 8px;
|
|
653
|
+
letter-spacing: -0.01em;
|
|
654
|
+
color: var(--text-primary);
|
|
618
655
|
}
|
|
619
656
|
.feature-desc {
|
|
620
657
|
font-size: 13px;
|
|
621
658
|
color: var(--text-secondary);
|
|
622
|
-
line-height: 1.
|
|
659
|
+
line-height: 1.6;
|
|
623
660
|
}
|
|
624
661
|
|
|
625
|
-
/* Section */
|
|
662
|
+
/* Section - Coral themed */
|
|
626
663
|
.section {
|
|
627
|
-
margin-bottom:
|
|
664
|
+
margin-bottom: 56px;
|
|
628
665
|
}
|
|
629
666
|
.section-header {
|
|
630
667
|
display: flex;
|
|
631
668
|
align-items: center;
|
|
632
669
|
justify-content: space-between;
|
|
633
|
-
margin-bottom:
|
|
670
|
+
margin-bottom: 22px;
|
|
634
671
|
}
|
|
635
672
|
.section-title {
|
|
636
673
|
font-family: var(--font-display);
|
|
637
674
|
font-size: 20px;
|
|
638
675
|
font-weight: 700;
|
|
639
|
-
letter-spacing: -0.
|
|
676
|
+
letter-spacing: -0.02em;
|
|
640
677
|
}
|
|
641
678
|
.section-link {
|
|
642
|
-
color: var(--
|
|
643
|
-
font-weight:
|
|
679
|
+
color: var(--color-1);
|
|
680
|
+
font-weight: 600;
|
|
644
681
|
font-size: 14px;
|
|
645
682
|
display: flex;
|
|
646
683
|
align-items: center;
|
|
647
|
-
gap:
|
|
648
|
-
transition:
|
|
684
|
+
gap: 6px;
|
|
685
|
+
transition: all 0.25s;
|
|
649
686
|
}
|
|
650
687
|
.section-link:hover {
|
|
651
|
-
gap:
|
|
688
|
+
gap: 10px;
|
|
689
|
+
color: var(--color-3);
|
|
652
690
|
}
|
|
653
691
|
|
|
654
|
-
/* Agent Grid */
|
|
692
|
+
/* Agent Grid - Coral themed */
|
|
655
693
|
.agent-grid {
|
|
656
694
|
display: grid;
|
|
657
|
-
grid-template-columns: repeat(auto-fill, minmax(
|
|
658
|
-
gap:
|
|
695
|
+
grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
|
|
696
|
+
gap: 18px;
|
|
659
697
|
}
|
|
660
698
|
.agent-card {
|
|
661
699
|
background: var(--bg-card);
|
|
662
700
|
border: 1px solid var(--border);
|
|
663
|
-
border-radius:
|
|
664
|
-
padding:
|
|
665
|
-
transition: all 0.
|
|
701
|
+
border-radius: 16px;
|
|
702
|
+
padding: 22px;
|
|
703
|
+
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
|
666
704
|
cursor: pointer;
|
|
667
|
-
animation: fadeInUp 0.
|
|
705
|
+
animation: fadeInUp 0.5s ease-out backwards;
|
|
668
706
|
position: relative;
|
|
669
707
|
}
|
|
670
708
|
.agent-card:nth-child(1) { animation-delay: 0.05s; }
|
|
@@ -677,9 +715,9 @@ function page(title, body, options = {}) {
|
|
|
677
715
|
.agent-card:nth-child(8) { animation-delay: 0.4s; }
|
|
678
716
|
.agent-card:hover {
|
|
679
717
|
background: var(--bg-card-hover);
|
|
680
|
-
border-color:
|
|
681
|
-
transform: translateY(-
|
|
682
|
-
box-shadow: 0
|
|
718
|
+
border-color: var(--color-1);
|
|
719
|
+
transform: translateY(-4px);
|
|
720
|
+
box-shadow: 0 16px 40px rgba(250, 112, 154, 0.15);
|
|
683
721
|
}
|
|
684
722
|
.agent-header {
|
|
685
723
|
display: flex;
|
|
@@ -691,26 +729,29 @@ function page(title, body, options = {}) {
|
|
|
691
729
|
font-family: var(--font-display);
|
|
692
730
|
font-size: 16px;
|
|
693
731
|
font-weight: 600;
|
|
694
|
-
letter-spacing: -0.
|
|
732
|
+
letter-spacing: -0.01em;
|
|
695
733
|
transition: color 0.2s;
|
|
696
734
|
}
|
|
697
735
|
.agent-card:hover .agent-name {
|
|
698
|
-
|
|
736
|
+
background: linear-gradient(135deg, var(--color-1), var(--color-3));
|
|
737
|
+
-webkit-background-clip: text;
|
|
738
|
+
-webkit-text-fill-color: transparent;
|
|
739
|
+
background-clip: text;
|
|
699
740
|
}
|
|
700
741
|
.agent-version {
|
|
701
|
-
background:
|
|
702
|
-
padding:
|
|
703
|
-
border-radius:
|
|
742
|
+
background: linear-gradient(135deg, rgba(250, 112, 154, 0.12), rgba(255, 154, 139, 0.12));
|
|
743
|
+
padding: 4px 10px;
|
|
744
|
+
border-radius: 6px;
|
|
704
745
|
font-size: 11px;
|
|
705
746
|
font-family: var(--font-display);
|
|
706
|
-
color: var(--
|
|
707
|
-
font-weight:
|
|
747
|
+
color: var(--color-1);
|
|
748
|
+
font-weight: 600;
|
|
708
749
|
}
|
|
709
750
|
.agent-desc {
|
|
710
751
|
color: var(--text-secondary);
|
|
711
|
-
font-size:
|
|
712
|
-
margin-bottom:
|
|
713
|
-
line-height: 1.
|
|
752
|
+
font-size: 14px;
|
|
753
|
+
margin-bottom: 14px;
|
|
754
|
+
line-height: 1.6;
|
|
714
755
|
display: -webkit-box;
|
|
715
756
|
-webkit-line-clamp: 2;
|
|
716
757
|
-webkit-box-orient: vertical;
|
|
@@ -720,59 +761,60 @@ function page(title, body, options = {}) {
|
|
|
720
761
|
display: flex;
|
|
721
762
|
flex-wrap: wrap;
|
|
722
763
|
gap: 6px;
|
|
723
|
-
margin-bottom:
|
|
764
|
+
margin-bottom: 16px;
|
|
724
765
|
}
|
|
725
766
|
.agent-tag {
|
|
726
|
-
padding:
|
|
727
|
-
border-radius:
|
|
767
|
+
padding: 4px 10px;
|
|
768
|
+
border-radius: 6px;
|
|
728
769
|
font-size: 11px;
|
|
729
|
-
font-weight:
|
|
770
|
+
font-weight: 600;
|
|
730
771
|
font-family: var(--font-display);
|
|
731
772
|
}
|
|
732
|
-
.tag-ops { background: rgba(
|
|
733
|
-
.tag-engineering { background: rgba(
|
|
734
|
-
.tag-content { background: rgba(
|
|
735
|
-
.tag-product { background: rgba(
|
|
773
|
+
.tag-ops { background: rgba(250, 112, 154, 0.12); color: var(--color-1); }
|
|
774
|
+
.tag-engineering { background: rgba(255, 154, 139, 0.12); color: var(--color-3); }
|
|
775
|
+
.tag-content { background: rgba(254, 225, 64, 0.15); color: #c9a800; }
|
|
776
|
+
.tag-product { background: rgba(245, 166, 35, 0.12); color: #e09000; }
|
|
736
777
|
.tag-default { background: var(--bg-secondary); color: var(--text-muted); }
|
|
737
778
|
.agent-footer {
|
|
738
779
|
display: flex;
|
|
739
780
|
align-items: center;
|
|
740
781
|
justify-content: space-between;
|
|
741
|
-
padding-top:
|
|
782
|
+
padding-top: 16px;
|
|
742
783
|
border-top: 1px solid var(--border);
|
|
743
784
|
}
|
|
744
785
|
.agent-downloads {
|
|
745
786
|
display: flex;
|
|
746
787
|
align-items: center;
|
|
747
|
-
gap:
|
|
788
|
+
gap: 6px;
|
|
748
789
|
color: var(--text-muted);
|
|
749
790
|
font-size: 13px;
|
|
750
791
|
}
|
|
751
792
|
.agent-install {
|
|
752
|
-
background: var(--
|
|
793
|
+
background: linear-gradient(135deg, var(--color-1) 0%, var(--color-3) 100%);
|
|
753
794
|
color: #ffffff;
|
|
754
|
-
padding:
|
|
755
|
-
border-radius:
|
|
795
|
+
padding: 8px 18px;
|
|
796
|
+
border-radius: 8px;
|
|
756
797
|
font-size: 12px;
|
|
757
798
|
font-family: var(--font-display);
|
|
758
799
|
font-weight: 600;
|
|
759
|
-
transition: all 0.
|
|
800
|
+
transition: all 0.25s;
|
|
801
|
+
box-shadow: 0 4px 12px rgba(250, 112, 154, 0.25);
|
|
760
802
|
}
|
|
761
803
|
.agent-install:hover {
|
|
762
|
-
|
|
763
|
-
|
|
804
|
+
transform: translateY(-2px);
|
|
805
|
+
box-shadow: 0 6px 20px rgba(250, 112, 154, 0.35);
|
|
764
806
|
}
|
|
765
807
|
.agent-install:active {
|
|
766
808
|
transform: translateY(0);
|
|
767
809
|
}
|
|
768
810
|
|
|
769
|
-
/* API Box */
|
|
811
|
+
/* API Box - Sunset gradient accent */
|
|
770
812
|
.api-box {
|
|
771
813
|
background: var(--bg-card);
|
|
772
814
|
border: 1px solid var(--border);
|
|
773
|
-
border-radius:
|
|
815
|
+
border-radius: 16px;
|
|
774
816
|
padding: 32px;
|
|
775
|
-
margin-bottom:
|
|
817
|
+
margin-bottom: 56px;
|
|
776
818
|
position: relative;
|
|
777
819
|
overflow: hidden;
|
|
778
820
|
}
|
|
@@ -782,14 +824,14 @@ function page(title, body, options = {}) {
|
|
|
782
824
|
top: 0;
|
|
783
825
|
left: 0;
|
|
784
826
|
right: 0;
|
|
785
|
-
height:
|
|
786
|
-
background: linear-gradient(90deg, var(--
|
|
827
|
+
height: 3px;
|
|
828
|
+
background: linear-gradient(90deg, var(--color-1), var(--color-3), var(--color-2));
|
|
787
829
|
}
|
|
788
830
|
.api-box h3 {
|
|
789
831
|
font-family: var(--font-display);
|
|
790
|
-
font-size:
|
|
791
|
-
margin-bottom:
|
|
792
|
-
letter-spacing: -0.
|
|
832
|
+
font-size: 16px;
|
|
833
|
+
margin-bottom: 8px;
|
|
834
|
+
letter-spacing: -0.01em;
|
|
793
835
|
}
|
|
794
836
|
.api-box p {
|
|
795
837
|
color: var(--text-secondary);
|
|
@@ -799,11 +841,11 @@ function page(title, body, options = {}) {
|
|
|
799
841
|
.api-code {
|
|
800
842
|
background: var(--bg-code);
|
|
801
843
|
border: 1px solid var(--border);
|
|
802
|
-
border-radius:
|
|
844
|
+
border-radius: 10px;
|
|
803
845
|
padding: 16px 20px;
|
|
804
846
|
font-family: var(--font-display);
|
|
805
847
|
font-size: 13px;
|
|
806
|
-
color: var(--
|
|
848
|
+
color: var(--color-1);
|
|
807
849
|
overflow-x: auto;
|
|
808
850
|
position: relative;
|
|
809
851
|
cursor: pointer;
|
|
@@ -811,10 +853,10 @@ function page(title, body, options = {}) {
|
|
|
811
853
|
align-items: center;
|
|
812
854
|
justify-content: space-between;
|
|
813
855
|
gap: 12px;
|
|
814
|
-
transition:
|
|
856
|
+
transition: all 0.25s;
|
|
815
857
|
}
|
|
816
858
|
.api-code:hover {
|
|
817
|
-
border-color: var(--
|
|
859
|
+
border-color: var(--color-1);
|
|
818
860
|
background: var(--bg-secondary);
|
|
819
861
|
}
|
|
820
862
|
.api-code .code-text {
|
|
@@ -831,8 +873,8 @@ function page(title, body, options = {}) {
|
|
|
831
873
|
.api-code .copy-btn {
|
|
832
874
|
background: transparent;
|
|
833
875
|
border: 1px solid var(--border);
|
|
834
|
-
border-radius:
|
|
835
|
-
padding:
|
|
876
|
+
border-radius: 6px;
|
|
877
|
+
padding: 6px 10px;
|
|
836
878
|
font-size: 12px;
|
|
837
879
|
color: var(--text-muted);
|
|
838
880
|
cursor: pointer;
|
|
@@ -840,22 +882,22 @@ function page(title, body, options = {}) {
|
|
|
840
882
|
flex-shrink: 0;
|
|
841
883
|
}
|
|
842
884
|
.api-code .copy-btn:hover {
|
|
843
|
-
background: var(--
|
|
844
|
-
color:
|
|
845
|
-
border-color: var(--
|
|
885
|
+
background: var(--color-1);
|
|
886
|
+
color: white;
|
|
887
|
+
border-color: var(--color-1);
|
|
846
888
|
}
|
|
847
889
|
.api-code .copy-btn.copied {
|
|
848
|
-
background:
|
|
849
|
-
border-color:
|
|
850
|
-
color:
|
|
890
|
+
background: var(--color-2);
|
|
891
|
+
border-color: var(--color-2);
|
|
892
|
+
color: #2d1810;
|
|
851
893
|
}
|
|
852
894
|
|
|
853
|
-
/* Detail Page */
|
|
895
|
+
/* Detail Page - Coral themed */
|
|
854
896
|
.detail-header {
|
|
855
897
|
background: var(--bg-card);
|
|
856
898
|
border: 1px solid var(--border);
|
|
857
|
-
border-radius:
|
|
858
|
-
padding:
|
|
899
|
+
border-radius: 20px;
|
|
900
|
+
padding: 36px;
|
|
859
901
|
margin-bottom: 24px;
|
|
860
902
|
position: relative;
|
|
861
903
|
overflow: hidden;
|
|
@@ -866,63 +908,72 @@ function page(title, body, options = {}) {
|
|
|
866
908
|
top: 0;
|
|
867
909
|
left: 0;
|
|
868
910
|
right: 0;
|
|
869
|
-
height:
|
|
870
|
-
background: linear-gradient(90deg, var(--
|
|
911
|
+
height: 4px;
|
|
912
|
+
background: linear-gradient(90deg, var(--color-1), var(--color-3), var(--color-2));
|
|
871
913
|
}
|
|
872
914
|
.detail-title {
|
|
873
915
|
font-family: var(--font-display);
|
|
874
|
-
font-size:
|
|
916
|
+
font-size: 32px;
|
|
875
917
|
font-weight: 700;
|
|
876
|
-
margin-bottom:
|
|
877
|
-
letter-spacing: -
|
|
918
|
+
margin-bottom: 10px;
|
|
919
|
+
letter-spacing: -0.02em;
|
|
920
|
+
background: linear-gradient(135deg, var(--color-1), var(--color-3));
|
|
921
|
+
-webkit-background-clip: text;
|
|
922
|
+
-webkit-text-fill-color: transparent;
|
|
923
|
+
background-clip: text;
|
|
878
924
|
}
|
|
879
925
|
.detail-desc {
|
|
880
926
|
font-size: 16px;
|
|
881
927
|
color: var(--text-secondary);
|
|
882
|
-
margin-bottom:
|
|
883
|
-
line-height: 1.
|
|
928
|
+
margin-bottom: 24px;
|
|
929
|
+
line-height: 1.7;
|
|
884
930
|
}
|
|
885
931
|
.detail-grid {
|
|
886
932
|
display: grid;
|
|
887
|
-
grid-template-columns: repeat(auto-fit, minmax(
|
|
888
|
-
gap:
|
|
889
|
-
margin-bottom:
|
|
933
|
+
grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
|
|
934
|
+
gap: 14px;
|
|
935
|
+
margin-bottom: 24px;
|
|
890
936
|
}
|
|
891
937
|
.detail-item {
|
|
892
938
|
background: var(--bg-secondary);
|
|
893
|
-
padding:
|
|
894
|
-
border-radius:
|
|
939
|
+
padding: 18px;
|
|
940
|
+
border-radius: 12px;
|
|
941
|
+
border: 1px solid transparent;
|
|
942
|
+
transition: border-color 0.2s;
|
|
943
|
+
}
|
|
944
|
+
.detail-item:hover {
|
|
945
|
+
border-color: var(--border);
|
|
895
946
|
}
|
|
896
947
|
.detail-label {
|
|
897
948
|
font-size: 11px;
|
|
898
949
|
color: var(--text-muted);
|
|
899
950
|
text-transform: uppercase;
|
|
900
|
-
letter-spacing:
|
|
901
|
-
margin-bottom:
|
|
902
|
-
font-weight:
|
|
951
|
+
letter-spacing: 0.08em;
|
|
952
|
+
margin-bottom: 8px;
|
|
953
|
+
font-weight: 600;
|
|
903
954
|
}
|
|
904
955
|
.detail-value {
|
|
905
956
|
font-family: var(--font-display);
|
|
906
957
|
font-size: 18px;
|
|
907
958
|
font-weight: 600;
|
|
908
|
-
letter-spacing: -0.
|
|
959
|
+
letter-spacing: -0.01em;
|
|
909
960
|
}
|
|
910
961
|
.detail-install {
|
|
911
962
|
background: var(--bg-code);
|
|
912
963
|
border: 1px solid var(--border);
|
|
913
|
-
color: var(--
|
|
914
|
-
padding:
|
|
915
|
-
border-radius:
|
|
964
|
+
color: var(--color-1);
|
|
965
|
+
padding: 16px 20px;
|
|
966
|
+
border-radius: 12px;
|
|
916
967
|
font-family: var(--font-display);
|
|
917
968
|
font-size: 14px;
|
|
918
969
|
display: flex;
|
|
919
970
|
align-items: center;
|
|
920
|
-
gap:
|
|
971
|
+
gap: 12px;
|
|
921
972
|
cursor: pointer;
|
|
922
|
-
transition:
|
|
973
|
+
transition: all 0.25s;
|
|
923
974
|
}
|
|
924
975
|
.detail-install:hover {
|
|
925
|
-
border-color: var(--
|
|
976
|
+
border-color: var(--color-1);
|
|
926
977
|
background: var(--bg-secondary);
|
|
927
978
|
}
|
|
928
979
|
.detail-install .code-text {
|
|
@@ -939,8 +990,8 @@ function page(title, body, options = {}) {
|
|
|
939
990
|
.detail-install .copy-btn {
|
|
940
991
|
background: transparent;
|
|
941
992
|
border: 1px solid var(--border);
|
|
942
|
-
border-radius:
|
|
943
|
-
padding:
|
|
993
|
+
border-radius: 6px;
|
|
994
|
+
padding: 6px 12px;
|
|
944
995
|
font-size: 12px;
|
|
945
996
|
color: var(--text-muted);
|
|
946
997
|
cursor: pointer;
|
|
@@ -948,133 +999,138 @@ function page(title, body, options = {}) {
|
|
|
948
999
|
flex-shrink: 0;
|
|
949
1000
|
}
|
|
950
1001
|
.detail-install .copy-btn:hover {
|
|
951
|
-
background: var(--
|
|
952
|
-
color:
|
|
953
|
-
border-color: var(--
|
|
1002
|
+
background: var(--color-1);
|
|
1003
|
+
color: white;
|
|
1004
|
+
border-color: var(--color-1);
|
|
954
1005
|
}
|
|
955
1006
|
.detail-install .copy-btn.copied {
|
|
956
|
-
background:
|
|
957
|
-
border-color:
|
|
958
|
-
color:
|
|
1007
|
+
background: var(--color-2);
|
|
1008
|
+
border-color: var(--color-2);
|
|
1009
|
+
color: #2d1810;
|
|
959
1010
|
}
|
|
960
1011
|
.install-label {
|
|
961
1012
|
font-size: 11px;
|
|
962
1013
|
color: var(--text-muted);
|
|
963
1014
|
text-transform: uppercase;
|
|
964
|
-
letter-spacing:
|
|
965
|
-
margin-bottom:
|
|
1015
|
+
letter-spacing: 0.08em;
|
|
1016
|
+
margin-bottom: 10px;
|
|
1017
|
+
font-weight: 600;
|
|
966
1018
|
}
|
|
967
1019
|
.install-methods {
|
|
968
1020
|
display: flex;
|
|
969
1021
|
flex-direction: column;
|
|
970
|
-
gap:
|
|
1022
|
+
gap: 14px;
|
|
971
1023
|
}
|
|
972
1024
|
.install-box {
|
|
973
1025
|
position: relative;
|
|
974
1026
|
}
|
|
975
1027
|
.install-box.primary .detail-install {
|
|
976
|
-
border-color: var(--
|
|
977
|
-
background: linear-gradient(135deg, rgba(
|
|
1028
|
+
border-color: var(--color-1);
|
|
1029
|
+
background: linear-gradient(135deg, rgba(250, 112, 154, 0.06), transparent);
|
|
978
1030
|
}
|
|
979
1031
|
.install-box .badge-new {
|
|
980
1032
|
position: absolute;
|
|
981
1033
|
top: -8px;
|
|
982
1034
|
right: -8px;
|
|
983
|
-
background: var(--
|
|
1035
|
+
background: linear-gradient(135deg, var(--color-1), var(--color-3));
|
|
984
1036
|
color: white;
|
|
985
1037
|
font-size: 10px;
|
|
986
|
-
padding:
|
|
987
|
-
border-radius:
|
|
988
|
-
font-weight:
|
|
1038
|
+
padding: 3px 8px;
|
|
1039
|
+
border-radius: 6px;
|
|
1040
|
+
font-weight: 600;
|
|
989
1041
|
}
|
|
990
1042
|
|
|
991
1043
|
.section-card {
|
|
992
1044
|
background: var(--bg-card);
|
|
993
1045
|
border: 1px solid var(--border);
|
|
994
|
-
border-radius:
|
|
995
|
-
padding:
|
|
1046
|
+
border-radius: 16px;
|
|
1047
|
+
padding: 26px;
|
|
996
1048
|
margin-bottom: 20px;
|
|
1049
|
+
transition: border-color 0.25s;
|
|
1050
|
+
}
|
|
1051
|
+
.section-card:hover {
|
|
1052
|
+
border-color: var(--border);
|
|
997
1053
|
}
|
|
998
1054
|
.section-card h3 {
|
|
999
1055
|
font-family: var(--font-display);
|
|
1000
|
-
font-size:
|
|
1056
|
+
font-size: 15px;
|
|
1001
1057
|
font-weight: 600;
|
|
1002
|
-
margin-bottom:
|
|
1058
|
+
margin-bottom: 16px;
|
|
1003
1059
|
display: flex;
|
|
1004
1060
|
align-items: center;
|
|
1005
|
-
gap:
|
|
1006
|
-
letter-spacing: -0.
|
|
1061
|
+
gap: 10px;
|
|
1062
|
+
letter-spacing: -0.01em;
|
|
1007
1063
|
}
|
|
1008
1064
|
.back-link {
|
|
1009
1065
|
display: inline-flex;
|
|
1010
1066
|
align-items: center;
|
|
1011
|
-
gap:
|
|
1067
|
+
gap: 8px;
|
|
1012
1068
|
color: var(--text-secondary);
|
|
1013
|
-
margin-bottom:
|
|
1069
|
+
margin-bottom: 24px;
|
|
1014
1070
|
font-size: 14px;
|
|
1015
|
-
transition: all 0.
|
|
1071
|
+
transition: all 0.25s;
|
|
1016
1072
|
}
|
|
1017
1073
|
.back-link:hover {
|
|
1018
|
-
color: var(--
|
|
1019
|
-
gap:
|
|
1074
|
+
color: var(--color-1);
|
|
1075
|
+
gap: 12px;
|
|
1020
1076
|
}
|
|
1021
1077
|
|
|
1022
|
-
/* Memory bars */
|
|
1078
|
+
/* Memory bars - Coral themed */
|
|
1023
1079
|
.memory-bars {
|
|
1024
1080
|
display: flex;
|
|
1025
1081
|
gap: 3px;
|
|
1026
|
-
height:
|
|
1027
|
-
border-radius:
|
|
1082
|
+
height: 8px;
|
|
1083
|
+
border-radius: 4px;
|
|
1028
1084
|
overflow: hidden;
|
|
1029
|
-
margin-bottom:
|
|
1085
|
+
margin-bottom: 12px;
|
|
1030
1086
|
}
|
|
1031
1087
|
.memory-bar { height: 100%; }
|
|
1032
|
-
.memory-bar.public { background: var(--
|
|
1033
|
-
.memory-bar.portable { background: var(--
|
|
1034
|
-
.memory-bar.private { background: var(--
|
|
1088
|
+
.memory-bar.public { background: var(--color-1); }
|
|
1089
|
+
.memory-bar.portable { background: var(--color-3); }
|
|
1090
|
+
.memory-bar.private { background: var(--color-2); }
|
|
1035
1091
|
.memory-legend {
|
|
1036
1092
|
display: flex;
|
|
1037
|
-
gap:
|
|
1093
|
+
gap: 20px;
|
|
1038
1094
|
font-size: 12px;
|
|
1039
1095
|
color: var(--text-secondary);
|
|
1040
1096
|
}
|
|
1041
1097
|
.memory-legend span {
|
|
1042
1098
|
display: flex;
|
|
1043
1099
|
align-items: center;
|
|
1044
|
-
gap:
|
|
1100
|
+
gap: 6px;
|
|
1045
1101
|
}
|
|
1046
1102
|
.memory-legend .dot {
|
|
1047
|
-
width:
|
|
1048
|
-
height:
|
|
1103
|
+
width: 10px;
|
|
1104
|
+
height: 10px;
|
|
1049
1105
|
border-radius: 50%;
|
|
1050
1106
|
}
|
|
1051
1107
|
|
|
1052
|
-
/* Skills & Tags */
|
|
1108
|
+
/* Skills & Tags - Coral themed */
|
|
1053
1109
|
.skills-list, .tags-list {
|
|
1054
1110
|
display: flex;
|
|
1055
1111
|
flex-wrap: wrap;
|
|
1056
|
-
gap:
|
|
1112
|
+
gap: 8px;
|
|
1057
1113
|
}
|
|
1058
1114
|
.badge {
|
|
1059
|
-
padding:
|
|
1060
|
-
border-radius:
|
|
1115
|
+
padding: 6px 12px;
|
|
1116
|
+
border-radius: 8px;
|
|
1061
1117
|
font-size: 12px;
|
|
1062
1118
|
font-family: var(--font-display);
|
|
1063
|
-
font-weight:
|
|
1119
|
+
font-weight: 600;
|
|
1064
1120
|
}
|
|
1065
|
-
.badge-skill { background: rgba(
|
|
1066
|
-
.badge-tag { background: rgba(
|
|
1121
|
+
.badge-skill { background: rgba(250, 112, 154, 0.12); color: var(--color-1); }
|
|
1122
|
+
.badge-tag { background: rgba(254, 225, 64, 0.15); color: #b89800; }
|
|
1067
1123
|
|
|
1068
|
-
/* Requirements */
|
|
1124
|
+
/* Requirements - Coral themed */
|
|
1069
1125
|
.requirements-list {
|
|
1070
1126
|
list-style: none;
|
|
1071
1127
|
}
|
|
1072
1128
|
.requirements-list li {
|
|
1073
|
-
padding:
|
|
1129
|
+
padding: 12px 0;
|
|
1074
1130
|
border-bottom: 1px solid var(--border);
|
|
1075
1131
|
display: flex;
|
|
1076
1132
|
align-items: center;
|
|
1077
|
-
gap:
|
|
1133
|
+
gap: 10px;
|
|
1078
1134
|
font-size: 14px;
|
|
1079
1135
|
}
|
|
1080
1136
|
.requirements-list li:last-child {
|
|
@@ -1082,21 +1138,22 @@ function page(title, body, options = {}) {
|
|
|
1082
1138
|
}
|
|
1083
1139
|
.env-var {
|
|
1084
1140
|
font-family: var(--font-display);
|
|
1085
|
-
background:
|
|
1086
|
-
padding:
|
|
1087
|
-
border-radius:
|
|
1088
|
-
color: var(--
|
|
1141
|
+
background: linear-gradient(135deg, rgba(250, 112, 154, 0.1), rgba(255, 154, 139, 0.1));
|
|
1142
|
+
padding: 4px 10px;
|
|
1143
|
+
border-radius: 6px;
|
|
1144
|
+
color: var(--color-1);
|
|
1089
1145
|
font-size: 12px;
|
|
1146
|
+
font-weight: 500;
|
|
1090
1147
|
}
|
|
1091
1148
|
|
|
1092
|
-
/* Stats Page */
|
|
1149
|
+
/* Stats Page - Coral themed */
|
|
1093
1150
|
.stats-table {
|
|
1094
1151
|
width: 100%;
|
|
1095
1152
|
border-collapse: collapse;
|
|
1096
1153
|
font-size: 14px;
|
|
1097
1154
|
}
|
|
1098
1155
|
.stats-table th, .stats-table td {
|
|
1099
|
-
padding: 14px
|
|
1156
|
+
padding: 16px 14px;
|
|
1100
1157
|
text-align: left;
|
|
1101
1158
|
border-bottom: 1px solid var(--border);
|
|
1102
1159
|
}
|
|
@@ -1106,73 +1163,75 @@ function page(title, body, options = {}) {
|
|
|
1106
1163
|
font-weight: 600;
|
|
1107
1164
|
font-size: 11px;
|
|
1108
1165
|
text-transform: uppercase;
|
|
1109
|
-
letter-spacing: 0.
|
|
1166
|
+
letter-spacing: 0.08em;
|
|
1110
1167
|
}
|
|
1111
1168
|
.stats-table a {
|
|
1112
|
-
color: var(--
|
|
1169
|
+
color: var(--color-1);
|
|
1113
1170
|
font-family: var(--font-display);
|
|
1171
|
+
font-weight: 500;
|
|
1114
1172
|
}
|
|
1115
1173
|
.stats-table a:hover {
|
|
1116
1174
|
text-decoration: underline;
|
|
1117
1175
|
}
|
|
1118
1176
|
|
|
1119
|
-
/* How it works */
|
|
1177
|
+
/* How it works - Coral themed */
|
|
1120
1178
|
.how-it-works {
|
|
1121
1179
|
display: grid;
|
|
1122
1180
|
grid-template-columns: repeat(3, 1fr);
|
|
1123
1181
|
gap: 24px;
|
|
1124
|
-
margin-bottom:
|
|
1182
|
+
margin-bottom: 56px;
|
|
1125
1183
|
}
|
|
1126
1184
|
.step {
|
|
1127
1185
|
text-align: center;
|
|
1128
1186
|
}
|
|
1129
1187
|
.step-number {
|
|
1130
|
-
width:
|
|
1131
|
-
height:
|
|
1132
|
-
background: linear-gradient(135deg, var(--
|
|
1188
|
+
width: 48px;
|
|
1189
|
+
height: 48px;
|
|
1190
|
+
background: linear-gradient(135deg, var(--color-1) 0%, var(--color-3) 100%);
|
|
1133
1191
|
color: #ffffff;
|
|
1134
|
-
border-radius:
|
|
1192
|
+
border-radius: 14px;
|
|
1135
1193
|
display: flex;
|
|
1136
1194
|
align-items: center;
|
|
1137
1195
|
justify-content: center;
|
|
1138
1196
|
font-family: var(--font-display);
|
|
1139
|
-
font-size:
|
|
1197
|
+
font-size: 18px;
|
|
1140
1198
|
font-weight: 700;
|
|
1141
|
-
margin: 0 auto
|
|
1199
|
+
margin: 0 auto 16px;
|
|
1200
|
+
box-shadow: 0 8px 24px rgba(250, 112, 154, 0.25);
|
|
1142
1201
|
}
|
|
1143
1202
|
.step h4 {
|
|
1144
1203
|
font-family: var(--font-display);
|
|
1145
|
-
font-size:
|
|
1146
|
-
margin-bottom:
|
|
1147
|
-
letter-spacing: -0.
|
|
1204
|
+
font-size: 15px;
|
|
1205
|
+
margin-bottom: 8px;
|
|
1206
|
+
letter-spacing: -0.01em;
|
|
1148
1207
|
}
|
|
1149
1208
|
.step p {
|
|
1150
1209
|
color: var(--text-secondary);
|
|
1151
1210
|
font-size: 13px;
|
|
1152
|
-
line-height: 1.
|
|
1211
|
+
line-height: 1.6;
|
|
1153
1212
|
}
|
|
1154
1213
|
|
|
1155
|
-
/* Search */
|
|
1214
|
+
/* Search - Coral themed */
|
|
1156
1215
|
.search-box {
|
|
1157
1216
|
display: flex;
|
|
1158
1217
|
background: var(--bg-card);
|
|
1159
|
-
border:
|
|
1160
|
-
border-radius:
|
|
1161
|
-
padding:
|
|
1162
|
-
max-width:
|
|
1163
|
-
margin: 0 auto
|
|
1164
|
-
transition:
|
|
1218
|
+
border: 2px solid var(--border);
|
|
1219
|
+
border-radius: 14px;
|
|
1220
|
+
padding: 6px;
|
|
1221
|
+
max-width: 520px;
|
|
1222
|
+
margin: 0 auto 36px;
|
|
1223
|
+
transition: all 0.3s ease;
|
|
1165
1224
|
}
|
|
1166
1225
|
.search-box:focus-within {
|
|
1167
|
-
border-color: var(--
|
|
1168
|
-
box-shadow: 0 0 0
|
|
1226
|
+
border-color: var(--color-1);
|
|
1227
|
+
box-shadow: 0 0 0 4px rgba(250, 112, 154, 0.1);
|
|
1169
1228
|
}
|
|
1170
1229
|
.search-box input {
|
|
1171
1230
|
flex: 1;
|
|
1172
1231
|
background: transparent;
|
|
1173
1232
|
border: none;
|
|
1174
|
-
padding:
|
|
1175
|
-
font-size:
|
|
1233
|
+
padding: 12px 16px;
|
|
1234
|
+
font-size: 15px;
|
|
1176
1235
|
font-family: var(--font-body);
|
|
1177
1236
|
color: var(--text-primary);
|
|
1178
1237
|
outline: none;
|
|
@@ -1181,45 +1240,53 @@ function page(title, body, options = {}) {
|
|
|
1181
1240
|
color: var(--text-muted);
|
|
1182
1241
|
}
|
|
1183
1242
|
.search-box button {
|
|
1184
|
-
background: var(--
|
|
1243
|
+
background: linear-gradient(135deg, var(--color-1) 0%, var(--color-3) 100%);
|
|
1185
1244
|
color: #ffffff;
|
|
1186
1245
|
border: none;
|
|
1187
|
-
padding:
|
|
1188
|
-
border-radius:
|
|
1246
|
+
padding: 12px 24px;
|
|
1247
|
+
border-radius: 10px;
|
|
1189
1248
|
font-family: var(--font-display);
|
|
1190
1249
|
font-size: 13px;
|
|
1191
1250
|
font-weight: 600;
|
|
1192
1251
|
cursor: pointer;
|
|
1193
|
-
transition: all 0.
|
|
1252
|
+
transition: all 0.25s;
|
|
1194
1253
|
}
|
|
1195
1254
|
.search-box button:hover {
|
|
1196
|
-
|
|
1255
|
+
box-shadow: 0 4px 16px rgba(250, 112, 154, 0.3);
|
|
1197
1256
|
}
|
|
1198
1257
|
.search-box button:active {
|
|
1199
1258
|
transform: scale(0.97);
|
|
1200
1259
|
}
|
|
1201
1260
|
|
|
1202
|
-
/* Empty state */
|
|
1261
|
+
/* Empty state - Coral themed */
|
|
1203
1262
|
.empty-state {
|
|
1204
1263
|
text-align: center;
|
|
1205
|
-
padding:
|
|
1264
|
+
padding: 56px 20px;
|
|
1206
1265
|
color: var(--text-muted);
|
|
1207
1266
|
}
|
|
1208
1267
|
.empty-state h3 {
|
|
1209
1268
|
font-family: var(--font-display);
|
|
1210
|
-
font-size:
|
|
1211
|
-
margin-bottom:
|
|
1269
|
+
font-size: 18px;
|
|
1270
|
+
margin-bottom: 8px;
|
|
1212
1271
|
color: var(--text-primary);
|
|
1213
1272
|
}
|
|
1214
1273
|
.empty-state p {
|
|
1215
1274
|
font-size: 14px;
|
|
1216
1275
|
}
|
|
1276
|
+
.empty-state code {
|
|
1277
|
+
background: var(--bg-secondary);
|
|
1278
|
+
padding: 4px 10px;
|
|
1279
|
+
border-radius: 6px;
|
|
1280
|
+
font-family: var(--font-display);
|
|
1281
|
+
font-size: 13px;
|
|
1282
|
+
color: var(--color-1);
|
|
1283
|
+
}
|
|
1217
1284
|
|
|
1218
|
-
/* Footer */
|
|
1285
|
+
/* Footer - Coral themed */
|
|
1219
1286
|
footer {
|
|
1220
1287
|
border-top: 1px solid var(--border);
|
|
1221
|
-
padding:
|
|
1222
|
-
margin-top:
|
|
1288
|
+
padding: 36px 0;
|
|
1289
|
+
margin-top: 64px;
|
|
1223
1290
|
background: var(--bg-secondary);
|
|
1224
1291
|
}
|
|
1225
1292
|
.footer-content {
|
|
@@ -1232,61 +1299,62 @@ function page(title, body, options = {}) {
|
|
|
1232
1299
|
.footer-brand {
|
|
1233
1300
|
display: flex;
|
|
1234
1301
|
align-items: center;
|
|
1235
|
-
gap:
|
|
1302
|
+
gap: 12px;
|
|
1236
1303
|
}
|
|
1237
1304
|
.footer-brand-icon {
|
|
1238
|
-
width:
|
|
1239
|
-
height:
|
|
1305
|
+
width: 32px;
|
|
1306
|
+
height: 32px;
|
|
1240
1307
|
display: flex;
|
|
1241
1308
|
align-items: center;
|
|
1242
1309
|
justify-content: center;
|
|
1243
|
-
font-size:
|
|
1310
|
+
font-size: 22px;
|
|
1244
1311
|
}
|
|
1245
1312
|
.footer-brand-text {
|
|
1246
1313
|
font-family: var(--font-display);
|
|
1247
1314
|
font-weight: 600;
|
|
1248
|
-
font-size:
|
|
1315
|
+
font-size: 16px;
|
|
1249
1316
|
color: var(--text-primary);
|
|
1250
1317
|
}
|
|
1251
1318
|
.footer-powered {
|
|
1252
1319
|
display: flex;
|
|
1253
1320
|
align-items: center;
|
|
1254
|
-
gap:
|
|
1321
|
+
gap: 8px;
|
|
1255
1322
|
font-size: 13px;
|
|
1256
1323
|
color: var(--text-muted);
|
|
1257
1324
|
}
|
|
1258
1325
|
.footer-powered a {
|
|
1259
|
-
color: var(--
|
|
1260
|
-
font-weight:
|
|
1326
|
+
color: var(--color-1);
|
|
1327
|
+
font-weight: 600;
|
|
1261
1328
|
}
|
|
1262
1329
|
.footer-links {
|
|
1263
1330
|
display: flex;
|
|
1264
|
-
gap:
|
|
1331
|
+
gap: 24px;
|
|
1265
1332
|
}
|
|
1266
1333
|
.footer-links a {
|
|
1267
1334
|
color: var(--text-secondary);
|
|
1268
1335
|
font-size: 13px;
|
|
1269
1336
|
font-family: var(--font-display);
|
|
1337
|
+
font-weight: 500;
|
|
1270
1338
|
transition: color 0.2s;
|
|
1271
1339
|
}
|
|
1272
1340
|
.footer-links a:hover {
|
|
1273
|
-
color: var(--
|
|
1341
|
+
color: var(--color-1);
|
|
1274
1342
|
}
|
|
1275
1343
|
|
|
1276
1344
|
@media (max-width: 768px) {
|
|
1277
|
-
.hero { padding: 48px 16px
|
|
1278
|
-
.hero h1 { font-size: clamp(
|
|
1345
|
+
.hero { padding: 48px 16px 40px; }
|
|
1346
|
+
.hero h1 { font-size: clamp(32px, 7vw, 44px); }
|
|
1279
1347
|
.hero-subtitle { font-size: 15px; padding: 0 12px; }
|
|
1280
|
-
.hero-stats { gap:
|
|
1281
|
-
.hero-stat-value { font-size:
|
|
1282
|
-
.features { grid-template-columns: 1fr; gap:
|
|
1283
|
-
.how-it-works { grid-template-columns: 1fr; gap:
|
|
1284
|
-
.detail-grid { grid-template-columns: 1fr; }
|
|
1348
|
+
.hero-stats { gap: 32px; flex-wrap: wrap; }
|
|
1349
|
+
.hero-stat-value { font-size: 30px; }
|
|
1350
|
+
.features { grid-template-columns: 1fr; gap: 14px; }
|
|
1351
|
+
.how-it-works { grid-template-columns: 1fr; gap: 24px; }
|
|
1352
|
+
.detail-grid { grid-template-columns: repeat(2, 1fr); }
|
|
1285
1353
|
.agent-grid { grid-template-columns: 1fr; }
|
|
1286
|
-
.footer-content { flex-direction: column; text-align: center; gap:
|
|
1354
|
+
.footer-content { flex-direction: column; text-align: center; gap: 20px; }
|
|
1287
1355
|
|
|
1288
1356
|
/* Mobile navigation */
|
|
1289
|
-
.header-content { flex-wrap: wrap; gap:
|
|
1357
|
+
.header-content { flex-wrap: wrap; gap: 12px; }
|
|
1290
1358
|
.nav-links {
|
|
1291
1359
|
order: 3;
|
|
1292
1360
|
width: 100%;
|
|
@@ -1297,28 +1365,30 @@ function page(title, body, options = {}) {
|
|
|
1297
1365
|
.nav-links a { font-size: 13px; }
|
|
1298
1366
|
.nav-powered { display: none; }
|
|
1299
1367
|
.logo { font-size: 18px; }
|
|
1300
|
-
.logo-icon {
|
|
1368
|
+
.logo-icon { font-size: 24px; }
|
|
1369
|
+
.logo-tagline { font-size: 10px; }
|
|
1301
1370
|
.container { padding: 0 16px; }
|
|
1302
|
-
.detail-header { padding:
|
|
1303
|
-
.detail-title { font-size:
|
|
1304
|
-
.section-card { padding:
|
|
1305
|
-
.search-box { margin: 0 0
|
|
1306
|
-
.api-box { padding:
|
|
1307
|
-
.api-code { font-size:
|
|
1308
|
-
.stats-table th, .stats-table td { padding: 10px
|
|
1309
|
-
.step-number { width:
|
|
1371
|
+
.detail-header { padding: 24px; }
|
|
1372
|
+
.detail-title { font-size: 26px; }
|
|
1373
|
+
.section-card { padding: 20px; }
|
|
1374
|
+
.search-box { margin: 0 0 28px; }
|
|
1375
|
+
.api-box { padding: 24px; }
|
|
1376
|
+
.api-code { font-size: 12px; padding: 14px 16px; }
|
|
1377
|
+
.stats-table th, .stats-table td { padding: 12px 10px; font-size: 13px; }
|
|
1378
|
+
.step-number { width: 42px; height: 42px; font-size: 16px; }
|
|
1310
1379
|
.step h4 { font-size: 14px; }
|
|
1311
1380
|
}
|
|
1312
1381
|
|
|
1313
1382
|
@media (max-width: 480px) {
|
|
1314
|
-
.theme-btn { width:
|
|
1315
|
-
.hero-stat-value { font-size:
|
|
1383
|
+
.theme-btn { width: 32px; height: 32px; font-size: 14px; }
|
|
1384
|
+
.hero-stat-value { font-size: 26px; }
|
|
1316
1385
|
.hero-stat-label { font-size: 10px; }
|
|
1317
1386
|
.nav-links { gap: 12px; }
|
|
1318
1387
|
.nav-links a { font-size: 12px; }
|
|
1319
|
-
.section-title { font-size:
|
|
1320
|
-
.feature-card { padding: 18px; }
|
|
1321
|
-
.feature-icon { font-size:
|
|
1388
|
+
.section-title { font-size: 18px; }
|
|
1389
|
+
.feature-card { padding: 22px 18px; }
|
|
1390
|
+
.feature-icon { font-size: 28px; }
|
|
1391
|
+
.detail-grid { grid-template-columns: 1fr; }
|
|
1322
1392
|
}
|
|
1323
1393
|
</style>
|
|
1324
1394
|
</head>
|
|
@@ -1326,8 +1396,11 @@ function page(title, body, options = {}) {
|
|
|
1326
1396
|
<header>
|
|
1327
1397
|
<div class="container header-content">
|
|
1328
1398
|
<a href="/" class="logo">
|
|
1329
|
-
<
|
|
1330
|
-
<
|
|
1399
|
+
<span class="logo-icon">🦀</span>
|
|
1400
|
+
<div>
|
|
1401
|
+
<div>AgentHub</div>
|
|
1402
|
+
<div class="logo-tagline">Crab-powered. Agent-ready.</div>
|
|
1403
|
+
</div>
|
|
1331
1404
|
</a>
|
|
1332
1405
|
<nav class="nav-links">
|
|
1333
1406
|
<a href="/"><span data-i18n="navHome">Home</span></a>
|
|
@@ -1570,7 +1643,7 @@ export function renderAgentDetailPage(manifest) {
|
|
|
1570
1643
|
</div>
|
|
1571
1644
|
</div>
|
|
1572
1645
|
<div class="detail-install" title="Click to copy">
|
|
1573
|
-
<span class="code-text">npx agenthub install ${manifest.slug}</span>
|
|
1646
|
+
<span class="code-text">npx @zshuangmu/agenthub install ${manifest.slug}</span>
|
|
1574
1647
|
<button class="copy-btn" title="Copy">📋</button>
|
|
1575
1648
|
</div>
|
|
1576
1649
|
</div>
|
|
@@ -1623,7 +1696,7 @@ export function renderAgentDetailPage(manifest) {
|
|
|
1623
1696
|
<span class="badge-new">推荐</span>
|
|
1624
1697
|
<div class="install-label">npx (无需预安装)</div>
|
|
1625
1698
|
<div class="detail-install" title="Click to copy">
|
|
1626
|
-
<span class="code-text">npx agenthub install ${manifest.slug} --target-workspace ./my-workspace</span>
|
|
1699
|
+
<span class="code-text">npx @zshuangmu/agenthub install ${manifest.slug} --target-workspace ./my-workspace</span>
|
|
1627
1700
|
<button class="copy-btn" title="Copy">📋</button>
|
|
1628
1701
|
</div>
|
|
1629
1702
|
</div>
|