vibes-plug 1.0.0 → 2.11.0
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/.claude/rules/vibes-plug-core.md +32 -0
- package/.cursor/rules/vibes-plug-core.mdc +51 -0
- package/.cursorrules +42 -0
- package/AGENTS.md +96 -0
- package/BLUEPRINT.md +309 -125
- package/CHANGELOG.md +183 -1
- package/CLAUDE.md +70 -0
- package/LICENSE +1 -1
- package/README.md +641 -263
- package/index.js +19 -0
- package/package.json +61 -25
- package/plugin.json +24 -7
- package/scripts/generate_swarm_gif.py +295 -0
- package/scripts/install.js +201 -0
- package/skills/accessibility-testing-expert/SKILL.md +116 -0
- package/skills/ai-cost-token-optimizer/SKILL.md +82 -0
- package/skills/ai-evals-benchmark-expert/SKILL.md +188 -0
- package/skills/ai-llm-integration-expert/SKILL.md +147 -122
- package/skills/ai-media-generation-expert/SKILL.md +172 -0
- package/skills/ai-prompt-engineering-expert/SKILL.md +84 -0
- package/skills/angular-expert/SKILL.md +148 -0
- package/skills/api-design-expert/SKILL.md +316 -309
- package/skills/api-gateway-proxy-expert/SKILL.md +81 -0
- package/skills/app-analyzer-optimizer/SKILL.md +195 -188
- package/skills/apple-ecosystem-expert/SKILL.md +145 -0
- package/skills/{asisten_ramah → asisten-ramah}/SKILL.md +7 -1
- package/skills/astro-framework-expert/SKILL.md +200 -0
- package/skills/async-queue-temporal-expert/SKILL.md +240 -0
- package/skills/authentication-identity-expert/SKILL.md +279 -45
- package/skills/auto-doc-updater/SKILL.md +219 -203
- package/skills/autonomous-chaos-monkey/SKILL.md +63 -0
- package/skills/autonomous-red-teamer/SKILL.md +203 -0
- package/skills/autonomous-tdd-debugger/SKILL.md +71 -0
- package/skills/background-jobs-queue-expert/SKILL.md +235 -0
- package/skills/biome-linter-formatter-expert/SKILL.md +89 -0
- package/skills/blockchain-web3-expert/SKILL.md +115 -0
- package/skills/bootstrap-to-modern/SKILL.md +93 -86
- package/skills/brainstorming/SKILL.md +381 -353
- package/skills/browser-automation-expert/SKILL.md +222 -0
- package/skills/bun-runtime-expert/SKILL.md +7 -1
- package/skills/chatbot-messaging-expert/SKILL.md +114 -0
- package/skills/ci-cd-devops-architect/SKILL.md +81 -45
- package/skills/cloud-hosting-expert/SKILL.md +249 -243
- package/skills/coderabbit/SKILL.md +197 -191
- package/skills/compliance-gdpr-privacy-expert/SKILL.md +85 -0
- package/skills/cron-scheduler-expert/SKILL.md +304 -0
- package/skills/data-pipeline-etl-expert/SKILL.md +84 -0
- package/skills/data-telemetry-expert/SKILL.md +218 -212
- package/skills/data-visualization-expert/SKILL.md +154 -0
- package/skills/database-migration-versioning-expert/SKILL.md +90 -0
- package/skills/database-orm-expert/SKILL.md +303 -293
- package/skills/dependency-upgrade-migrator/SKILL.md +301 -0
- package/skills/design-system-architect/SKILL.md +278 -242
- package/skills/desktop-electron-expert/SKILL.md +128 -0
- package/skills/documentation-site-expert/SKILL.md +59 -0
- package/skills/doku-mcp-server/SKILL.md +257 -0
- package/skills/doku-payment-gateway/SKILL.md +233 -0
- package/skills/domain-driven-design-expert/SKILL.md +82 -0
- package/skills/e2e-testing-expert/SKILL.md +320 -314
- package/skills/ecommerce-expert/SKILL.md +87 -0
- package/skills/edge-serverless-db-expert/SKILL.md +99 -0
- package/skills/email-notification-expert/SKILL.md +368 -0
- package/skills/error-resilience-expert/SKILL.md +486 -0
- package/skills/event-driven-architect/SKILL.md +86 -80
- package/skills/feature-flag-analytics-expert/SKILL.md +66 -0
- package/skills/file-upload-media-expert/SKILL.md +437 -0
- package/skills/firebase-security-expert/SKILL.md +7 -1
- package/skills/form-validation-expert/SKILL.md +407 -0
- package/skills/fullstack-expert/SKILL.md +260 -201
- package/skills/fullstack-expert/references/api_design_guide.md +466 -466
- package/skills/fullstack-expert/references/multi_language_backend.md +528 -528
- package/skills/fullstack-expert/scripts/api_contract_validator.py +253 -253
- package/skills/fullstack-expert/scripts/architecture_analyzer.py +326 -326
- package/skills/gemini-agent-booster/SKILL.md +142 -104
- package/skills/geospatial-maps-expert/SKILL.md +80 -0
- package/skills/global-a11y-i18n-expert/SKILL.md +86 -80
- package/skills/glsl-shader-expert/SKILL.md +107 -0
- package/skills/go-programming-expert/SKILL.md +300 -294
- package/skills/graph-rag-knowledge-expert/SKILL.md +159 -0
- package/skills/graphql-apollo-expert/SKILL.md +114 -0
- package/skills/headless-cms-expert/SKILL.md +181 -0
- package/skills/hig/SKILL.md +193 -187
- package/skills/js-backend-expert/SKILL.md +218 -191
- package/skills/legacy-code-translator/SKILL.md +71 -0
- package/skills/local-slm-edge-ai-expert/SKILL.md +167 -0
- package/skills/logging-error-tracking-expert/SKILL.md +344 -0
- package/skills/mcp-client-orchestrator/SKILL.md +76 -0
- package/skills/mcp-server-architect/SKILL.md +226 -126
- package/skills/micro-frontend-architect/SKILL.md +112 -0
- package/skills/mobile-expo-expert/SKILL.md +191 -185
- package/skills/mobile-push-notification-expert/SKILL.md +71 -0
- package/skills/modern-css-native-expert/SKILL.md +189 -0
- package/skills/monday-design-aesthetic/SKILL.md +72 -66
- package/skills/monorepo-architect/SKILL.md +232 -226
- package/skills/mpa-orchestrator/SKILL.md +120 -101
- package/skills/multi-agent-orchestration/SKILL.md +173 -153
- package/skills/multiple-entry-points/SKILL.md +91 -55
- package/skills/mvc-expert/SKILL.md +237 -231
- package/skills/n8n-automation-expert/SKILL.md +89 -0
- package/skills/nextjs-app-router-expert/SKILL.md +148 -0
- package/skills/openapi-swagger-codegen-expert/SKILL.md +67 -0
- package/skills/payment-gateway-expert/SKILL.md +129 -45
- package/skills/pdf-document-generation-expert/SKILL.md +91 -0
- package/skills/performance-web-vitals/SKILL.md +337 -331
- package/skills/post-quantum-crypto-migrator/SKILL.md +57 -0
- package/skills/prd-architect/SKILL.md +206 -190
- package/skills/proactive-background-watcher/SKILL.md +68 -0
- package/skills/production-ready-hardener/PRODUCTION_READINESS_REPORT.md +67 -0
- package/skills/production-ready-hardener/SKILL.md +461 -468
- package/skills/production-ready-hardener/references/production_checklist.md +161 -161
- package/skills/production-ready-hardener/scripts/production_readiness_scanner.py +881 -875
- package/skills/project-context-mapper/SKILL.md +85 -0
- package/skills/pwa-offline-first-expert/SKILL.md +185 -0
- package/skills/python-programming-expert/SKILL.md +407 -270
- package/skills/rate-limit-abuse-prevention/SKILL.md +377 -0
- package/skills/realtime-collaboration-expert/SKILL.md +99 -45
- package/skills/rich-text-editor-expert/SKILL.md +177 -0
- package/skills/rust-programming-expert/SKILL.md +240 -234
- package/skills/saas-billing/SKILL.md +382 -376
- package/skills/saas-multi-tenant/SKILL.md +256 -236
- package/skills/saas-mvp-launcher/SKILL.md +30 -1
- package/skills/saas-transformer/SKILL.md +499 -445
- package/skills/saas-transformer/references/billing_integration_guide.md +401 -401
- package/skills/saas-transformer/references/feature_gating_patterns.md +137 -137
- package/skills/saas-transformer/references/saas_transformation_checklist.md +121 -121
- package/skills/saas-transformer/scripts/saas_transformation_scanner.py +39 -29
- package/skills/scalability-clean-code/SKILL.md +234 -228
- package/skills/search-engine-expert/SKILL.md +89 -0
- package/skills/secure-fuzz-testing/SKILL.md +7 -1
- package/skills/self-evolving-memory-graph/SKILL.md +91 -0
- package/skills/self-healing-cloud-orchestrator/SKILL.md +57 -0
- package/skills/senior-frontend/SKILL.md +85 -105
- package/skills/seo/SKILL.md +258 -224
- package/skills/session-context-loader/SKILL.md +83 -0
- package/skills/session-handoff-resume/SKILL.md +163 -157
- package/skills/{skill_baru → skill-baru}/SKILL.md +177 -146
- package/skills/solidjs-expert/SKILL.md +80 -0
- package/skills/spa-orchestrator/SKILL.md +306 -287
- package/skills/sse-websocket-streaming-expert/SKILL.md +93 -0
- package/skills/state-management-expert/SKILL.md +277 -271
- package/skills/supabase-migration/SKILL.md +47 -1
- package/skills/supabase-security-expert/SKILL.md +248 -242
- package/skills/svelte-sveltekit-expert/SKILL.md +91 -0
- package/skills/svg-animation-motion-expert/SKILL.md +115 -0
- package/skills/tailwind-expert/SKILL.md +139 -187
- package/skills/tanstack-query-expert/SKILL.md +204 -198
- package/skills/tauri-expert/SKILL.md +7 -1
- package/skills/token-saver/SKILL.md +118 -110
- package/skills/typescript-expert/SKILL.md +329 -278
- package/skills/ui-components-expert/SKILL.md +166 -63
- package/skills/ui-ux-pro-max/SKILL.md +221 -200
- package/skills/vector-db-rag-expert/SKILL.md +208 -0
- package/skills/vibe-code-gardener/SKILL.md +180 -172
- package/skills/visual-qa-vision-agent/SKILL.md +71 -0
- package/skills/voice-ai-realtime-agent/SKILL.md +202 -0
- package/skills/vue-frontend-expert/SKILL.md +132 -0
- package/skills/wasm-edge-computing-expert/SKILL.md +97 -0
- package/skills/web-3d-graphics-expert/SKILL.md +137 -0
- package/skills/web-game-engine-expert/SKILL.md +102 -0
- package/skills/web-scraper/SKILL.md +98 -146
- package/skills/website-design-cloner/SKILL.md +180 -0
- package/skills/webxr-ar-vr-expert/SKILL.md +123 -0
- package/skills/wordpress-headless-expert/SKILL.md +144 -0
- package/skills/zero-to-prod-orchestrator/SKILL.md +231 -180
- package/skills/zero-trust-secret-vault/SKILL.md +88 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
- package/CONTRIBUTING.md +0 -199
- package/SECURITY.md +0 -21
- package/banner.png +0 -0
- package/skills/senior-fullstack/SKILL.md +0 -167
- package/skills/senior-fullstack/references/architecture_patterns.md +0 -160
- package/skills/senior-fullstack/references/development_workflows.md +0 -222
- package/skills/senior-fullstack/references/tech_stack_guide.md +0 -190
- package/skills/senior-fullstack/scripts/code_quality_analyzer.py +0 -114
- package/skills/senior-fullstack/scripts/fullstack_scaffolder.py +0 -114
- package/skills/senior-fullstack/scripts/project_scaffolder.py +0 -114
- package/skills/seo-aeo-landing-page-writer/SKILL.md +0 -97
- package/skills/seo-geo/SKILL.md +0 -188
- package/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-310.pyc +0 -0
- package/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-312.pyc +0 -0
- package/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-310.pyc +0 -0
- package/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-312.pyc +0 -0
- package/skills/ui_ux_expert/SKILL.md +0 -114
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: self-evolving-memory-graph
|
|
3
|
+
description: "Grants the AI long-term episodic memory. The agent autonomously documents the user's coding preferences, past mistakes to avoid, and architectural decisions into a persistent learning graph."
|
|
4
|
+
author: "Roedy Rustam"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Self-Evolving Memory Graph (Episodic Memory)
|
|
8
|
+
|
|
9
|
+
[English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
<a name="english"></a>
|
|
14
|
+
## English
|
|
15
|
+
|
|
16
|
+
### Orchestration & Integration
|
|
17
|
+
Connects and orchestrates with relevant domain skills like `brainstorming`, `zero-to-prod-orchestrator`, and `project-context-mapper` to ensure cohesive execution.
|
|
18
|
+
|
|
19
|
+
### Description
|
|
20
|
+
Claude forgets everything once a chat is cleared, and its "Project Knowledge" requires manual human updating. This skill gives Antigravity the "superpower" of continuous, autonomous self-improvement. The agent actively listens for user corrections, stylistic preferences, and hard-learned debugging lessons, writing them into a persistent `LEARNING_GRAPH.md` (or `.agents/LEARNING.md`) file. The agent gets smarter and more aligned with the user over time.
|
|
21
|
+
|
|
22
|
+
### Trigger Conditions
|
|
23
|
+
Activate this skill when:
|
|
24
|
+
- The user corrects your code (e.g., "Don't use `any`, use `unknown`", or "Always use Arrow functions").
|
|
25
|
+
- You just spent a long time fixing a very complex bug.
|
|
26
|
+
- The user says "Remember this for the future."
|
|
27
|
+
|
|
28
|
+
### Core Concepts
|
|
29
|
+
|
|
30
|
+
#### 1. Memory Encoding
|
|
31
|
+
Whenever a hard lesson is learned or a strong user preference is stated, do not just say "I will remember that." You must physically write it down.
|
|
32
|
+
Use the `multi_replace_file_content` or `write_to_file` tool to append the lesson to the memory file.
|
|
33
|
+
|
|
34
|
+
#### 2. Memory Format (`LEARNING_GRAPH.md`)
|
|
35
|
+
```markdown
|
|
36
|
+
# 🧠 Self-Evolving Memory Graph
|
|
37
|
+
|
|
38
|
+
## User Stylistic Preferences
|
|
39
|
+
- [2026-08-12] Always use `Tailwind v4 @theme` variables instead of arbitrary values like `text-[#ff0000]`.
|
|
40
|
+
- [2026-08-12] Prefer functional components with `const` over `function` declarations.
|
|
41
|
+
|
|
42
|
+
## Hard-Learned Lessons (Avoid these mistakes)
|
|
43
|
+
- [2026-08-11] Supabase RLS policies: Never use `auth.uid()` in a `FOR ALL` policy without checking role claims. It caused an infinite recursion bug in `users` table.
|
|
44
|
+
|
|
45
|
+
## Architectural Decisions
|
|
46
|
+
- [2026-08-10] State Management: We exclusively use `Zustand` for global state. Do not suggest Redux.
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
#### 3. Memory Retrieval
|
|
50
|
+
Ensure `session-context-loader` is configured to read this memory file at the start of every new chat session.
|
|
51
|
+
|
|
52
|
+
#### 4. Cross-Project Episodic Memory (Global Context)
|
|
53
|
+
- **Continuous Capture**: For complex architectural decisions or bug fixes that span beyond a single project, extract the root cause and solution into a global knowledge graph (e.g., `~/.gemini/knowledge` or equivalent `<appDataDir>/knowledge` KI system).
|
|
54
|
+
- **Contextual Retrieval**: On new sessions, search the global context directory for similar past issues before diving into complex bugs.
|
|
55
|
+
- **Synthesis & Injection**: Inject the historical context directly into the current execution loop, stating explicitly: *"I remember we solved this architectural issue in Project X using technique Y. Applying the same proven pattern here."*
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
### Integration with Other Skills (MANDATORY)
|
|
60
|
+
- `session-context-loader` — Essential for loading the `LEARNING_GRAPH.md` when a new session starts.
|
|
61
|
+
- `project-context-mapper` — The context map tracks *where* things are; the memory graph tracks *how* and *why* things are built.
|
|
62
|
+
|
|
63
|
+
### Referenced By Orchestrators (MANDATORY)
|
|
64
|
+
- `brainstorming` — Add to "Discovery & Audit".
|
|
65
|
+
- `zero-to-prod-orchestrator` — Phase 1 (Discovery & Architecture).
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
<a name="bahasa-indonesia"></a>
|
|
70
|
+
## Bahasa Indonesia
|
|
71
|
+
|
|
72
|
+
### Integrasi Orkestrasi
|
|
73
|
+
Terhubung dan mengorkestrasi skill domain yang relevan seperti `brainstorming`, `zero-to-prod-orchestrator`, dan `project-context-mapper` untuk memastikan eksekusi yang kohesif.
|
|
74
|
+
|
|
75
|
+
### Deskripsi
|
|
76
|
+
Claude melupakan segalanya saat sesi chat baru dimulai. Skill ini memberi Anda "kekuatan super" berupa *Ingatan Jangka Panjang* yang berevolusi sendiri. Agen secara aktif mencatat preferensi koding pengguna, pelajaran dari *bug* yang sulit dipecahkan, dan keputusan arsitektur ke dalam file persisten `LEARNING_GRAPH.md`.
|
|
77
|
+
|
|
78
|
+
### Kondisi Pemicu
|
|
79
|
+
- Saat pengguna mengoreksi gaya koding Anda (misal: "Gunakan bahasa Indonesia baku", "Jangan pakai `var`").
|
|
80
|
+
- Setelah Anda berhasil memecahkan *bug* yang menghabiskan waktu lama.
|
|
81
|
+
- Saat pengguna berkata "Ingat ini untuk proyek ke depannya."
|
|
82
|
+
|
|
83
|
+
### Panduan Singkat
|
|
84
|
+
- **Jangan Hanya Berjanji:** Jika pengguna mengoreksi Anda, jangan sekadar menjawab "Baik, saya akan ingat." LLM tidak punya ingatan bawaan antar-sesi. Anda **wajib** menulis koreksi tersebut ke dalam file `LEARNING_GRAPH.md` di folder `.agents/` atau direktori *root*.
|
|
85
|
+
- **Kategorisasi Ingatan:** Pisahkan ingatan menjadi: Preferensi Gaya (*Style*), Pelajaran Berharga (*Lessons Learned*), dan Keputusan Arsitektur (*Decisions*).
|
|
86
|
+
- **Semakin Lama Semakin Pintar:** Dengan membaca file ini di awal setiap percakapan, Anda tidak akan pernah mengulangi kesalahan yang sama dua kali.
|
|
87
|
+
|
|
88
|
+
### Memori Episodik Lintas-Proyek (Konteks Global)
|
|
89
|
+
- **Penangkapan Berkelanjutan**: Untuk bug yang rumit dan pola arsitektur tingkat lanjut, ekstrak solusi ke dalam grafik pengetahuan global (misal: `~/.gemini/knowledge`).
|
|
90
|
+
- **Pencarian Kontekstual**: Sebelum memecahkan masalah kompleks baru, cari direktori konteks global untuk kasus serupa.
|
|
91
|
+
- **Sintesis & Injeksi**: Secara proaktif sebutkan: *"Saya ingat kita menyelesaikan ini di Proyek X dengan cara Y, saya akan menerapkannya di sini."*
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: self-healing-cloud-orchestrator
|
|
3
|
+
description: "Real-time log monitoring, crash detection, and auto-hotfixing code without human intervention / Pemantauan log real-time, deteksi kerusakan, dan perbaikan kode hotfix otomatis tanpa intervensi manusia."
|
|
4
|
+
author: "Roedy Rustam"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Self-Healing Cloud Orchestrator (Code-to-Cloud Auto Remediation)
|
|
8
|
+
|
|
9
|
+
[English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
<a name="english"></a>
|
|
14
|
+
## English
|
|
15
|
+
|
|
16
|
+
### Description
|
|
17
|
+
Bridges the gap between code generation and Cloud Operations (CloudOps). This agent continuously monitors production or staging logs (via Vercel, AWS CloudWatch, Datadog, or Sentry MCP servers). When an anomaly, crash (OOM, Null Pointer), or configuration mismatch occurs, it autonomously downloads the stack trace, identifies the root cause in the source code, writes a patch, validates it locally, and pushes a hotfix deployment without requiring human intervention.
|
|
18
|
+
|
|
19
|
+
### Trigger Conditions
|
|
20
|
+
- Post-deployment in Phase 8, running as a persistent background daemon.
|
|
21
|
+
- When an application goes down or experiences a spike in 5xx errors.
|
|
22
|
+
- When `proactive-background-watcher` detects a critical health-check failure.
|
|
23
|
+
|
|
24
|
+
### Operating Protocol
|
|
25
|
+
1. **Telemetry Ingestion**: Listens to structured logs and APM alerts.
|
|
26
|
+
2. **Root Cause Analysis (RCA)**: Parses stack traces and maps them to the local repository's current commit state.
|
|
27
|
+
3. **Autonomous Patching**: Writes the necessary fix (e.g., adding missing env vars, fixing memory leaks, patching unhandled promise rejections).
|
|
28
|
+
4. **Validation & Deploy**: Runs local unit/E2E tests via `autonomous-tdd-debugger` and commits the hotfix to trigger the CI/CD pipeline.
|
|
29
|
+
|
|
30
|
+
## Orchestration & Integration
|
|
31
|
+
- Utilizes `proactive-background-watcher` for continuous daemon execution.
|
|
32
|
+
- Consumes data from `logging-error-tracking-expert` and `data-telemetry-expert`.
|
|
33
|
+
- Delegates to `ci-cd-devops-architect` to push fixes and initiate deployments.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
<a name="bahasa-indonesia"></a>
|
|
38
|
+
## Bahasa Indonesia
|
|
39
|
+
|
|
40
|
+
### Deskripsi
|
|
41
|
+
Menjembatani kesenjangan antara pembuatan kode dan Operasi Cloud (CloudOps). Agen ini secara terus-menerus memantau log produksi atau staging (melalui server MCP Vercel, AWS CloudWatch, Datadog, atau Sentry). Ketika terjadi anomali, kerusakan (OOM, Null Pointer), atau ketidaksesuaian konfigurasi, agen ini secara otonom mengunduh *stack trace*, mengidentifikasi akar masalah pada *source code*, menulis *patch*, memvalidasinya secara lokal, dan meluncurkan *deployment hotfix* tanpa intervensi manusia.
|
|
42
|
+
|
|
43
|
+
### Kondisi Pemicu
|
|
44
|
+
- Pasca-deployment di Fase 8, berjalan sebagai daemon latar belakang yang persisten.
|
|
45
|
+
- Ketika sebuah aplikasi tumbang (*down*) atau mengalami lonjakan *error* 5xx.
|
|
46
|
+
- Ketika `proactive-background-watcher` mendeteksi kegagalan pengecekan kesehatan (*health-check*) yang kritis.
|
|
47
|
+
|
|
48
|
+
### Protokol Operasi
|
|
49
|
+
1. **Penyerapan Telemetri**: Mendengarkan log terstruktur dan peringatan APM.
|
|
50
|
+
2. **Analisis Akar Masalah (RCA)**: Menguraikan *stack trace* dan memetakannya ke status komit repositori lokal saat ini.
|
|
51
|
+
3. **Patching Otonom**: Menulis perbaikan yang diperlukan (misal: menambahkan *environment variable* yang hilang, memperbaiki kebocoran memori, menambal *unhandled promise rejection*).
|
|
52
|
+
4. **Validasi & Deploy**: Menjalankan *unit test/E2E test* lokal melalui `autonomous-tdd-debugger` lalu melakukan komit untuk memicu pipeline CI/CD.
|
|
53
|
+
|
|
54
|
+
## Integrasi Orkestrasi
|
|
55
|
+
- Menggunakan `proactive-background-watcher` untuk eksekusi daemon berkelanjutan.
|
|
56
|
+
- Mengonsumsi data dari `logging-error-tracking-expert` dan `data-telemetry-expert`.
|
|
57
|
+
- Mendelegasikan tugas ke `ci-cd-devops-architect` untuk mendorong perbaikan (*push*) dan memulai deployment.
|
|
@@ -16,88 +16,63 @@ author: "Roedy Rustam"
|
|
|
16
16
|
### Description
|
|
17
17
|
Production-grade frontend development patterns, performance optimization, and modern ecosystem integrations for React 19 / Next.js 15 applications with Tailwind CSS v4 and TypeScript. Covers React 19 Compiler, Partial Prerendering (PPR), View Transitions API, and SPA/MPA hybrid strategies.
|
|
18
18
|
|
|
19
|
+
### Orchestration & Integration
|
|
20
|
+
- `ui-components-expert`: For building robust UI components (Radix, shadcn).
|
|
21
|
+
- `tailwind-expert`: For styling and custom @theme configurations.
|
|
22
|
+
- `nextjs-app-router-expert`: For RSC, caching, and Next.js routing patterns.
|
|
23
|
+
- `state-management-expert`: For client-side state (Zustand, Jotai).
|
|
24
|
+
- `tanstack-query-expert`: For advanced data fetching and server state caching.
|
|
25
|
+
- `spa-orchestrator`: For Single-Page Application architectures.
|
|
26
|
+
- `mpa-orchestrator`: For Multi-Page Application architectures.
|
|
27
|
+
|
|
19
28
|
### Trigger Conditions
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
29
|
+
- Scaffold a new React or Next.js 15 project with TypeScript and Tailwind CSS v4.
|
|
30
|
+
- Generate new components, custom hooks, or Server Actions.
|
|
31
|
+
- Analyze and optimize bundle sizes and Core Web Vitals.
|
|
32
|
+
- Implement advanced React 19 patterns (`useActionState`, `useOptimistic`, `use()`).
|
|
33
|
+
- Build SPAs — coordinate with `spa-orchestrator`.
|
|
34
|
+
- Ensure accessibility compliance (WCAG 2.2) and testing.
|
|
26
35
|
|
|
27
36
|
### Technical Guidelines & Best Practices
|
|
28
37
|
|
|
29
38
|
#### 1. Next.js 15: Server vs Client Components
|
|
30
|
-
Use **Server Components** by default for performance and SEO. Use `'use client'`
|
|
39
|
+
Use **Server Components** by default for performance and SEO. Use `'use client'` strictly for:
|
|
31
40
|
- State (`useState`, `useEffect`), event handlers (`onClick`), browser APIs.
|
|
32
|
-
- Interactive UI
|
|
33
|
-
|
|
34
|
-
*Next.js 15 Notes:*
|
|
35
|
-
- `params` and `searchParams` are now `Promise`-based — always `await` them before reading properties.
|
|
36
|
-
- **Partial Prerendering (PPR)**: Wrap dynamic sections in `<Suspense>` — Next.js will statically pre-render the shell and stream dynamic content. Enable with `experimental: { ppr: true }`.
|
|
41
|
+
- Interactive UI needing client hydration.
|
|
37
42
|
|
|
38
|
-
|
|
39
|
-
|
|
43
|
+
*Next.js 15.2+ Requirements:*
|
|
44
|
+
- Await `Promise`-based `params` and `searchParams` before accessing properties.
|
|
45
|
+
- Use **Partial Prerendering (PPR)** natively. Wrap dynamic sections in `<Suspense>`.
|
|
40
46
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
- **`useOptimistic`**: Instantly update UI before server confirms (likes, cart additions).
|
|
44
|
-
- **`useFormStatus`**: Read form submission state inside child components.
|
|
45
|
-
- **`use(promise)`**: Unwrap promises or context inside render — works with Suspense.
|
|
46
|
-
```tsx
|
|
47
|
-
// use() with context
|
|
48
|
-
const theme = use(ThemeContext);
|
|
47
|
+
#### 2. React 19 Compiler & Hooks
|
|
48
|
+
Do not use `useMemo`, `useCallback`, or `React.memo` unless explicitly required; rely on the React 19 compiler.
|
|
49
49
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
**Mandatory Hooks:**
|
|
51
|
+
- **`useActionState`**: Manage form state, pending indicators, and action results with Server Actions.
|
|
52
|
+
- **`useOptimistic`**: Update UI instantly before server confirmation.
|
|
53
|
+
- **`useFormStatus`**: Read form submission state in child components.
|
|
54
|
+
- **`use(promise)`**: Unwrap promises or context inside render with Suspense.
|
|
53
55
|
|
|
54
56
|
#### 3. View Transitions API
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
// Wrap changing elements
|
|
60
|
-
<ViewTransition name="hero-image">
|
|
61
|
-
<img src={image} />
|
|
62
|
-
</ViewTransition>
|
|
63
|
-
```
|
|
64
|
-
Next.js 15 App Router supports View Transitions natively via the `<Link>` component with `viewTransition` prop.
|
|
65
|
-
|
|
66
|
-
#### 4. Tailwind CSS v4 CSS-First Configuration
|
|
67
|
-
Tailwind CSS v4 uses **CSS-first configuration**. Define custom theme tokens using the `@theme` directive in your main CSS file. Use the new `@plugin` directive to register plugins:
|
|
68
|
-
```css
|
|
69
|
-
@import "tailwindcss";
|
|
70
|
-
|
|
71
|
-
@theme {
|
|
72
|
-
--color-brand: oklch(55% 0.2 250);
|
|
73
|
-
--font-sans: "Inter", sans-serif;
|
|
74
|
-
--animate-fade-in: fade-in 0.3s ease-out;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
@plugin "@tailwindcss/typography";
|
|
78
|
-
```
|
|
57
|
+
Implement native View Transitions API for smooth page transitions. Use Next.js 15 `<Link viewTransition>` natively.
|
|
58
|
+
|
|
59
|
+
#### 4. Tailwind CSS v4
|
|
60
|
+
Use CSS-first configuration. Define custom tokens with `@theme` and register plugins with `@plugin` in the main CSS file.
|
|
79
61
|
|
|
80
62
|
#### 5. Accessibility (WCAG 2.2) & Testing
|
|
81
|
-
-
|
|
82
|
-
-
|
|
63
|
+
- Enforce semantic HTML (`<button>`, `<nav>`, `<main>`, `<article>`).
|
|
64
|
+
- Enforce full keyboard navigability and valid `aria-*` labels.
|
|
83
65
|
- Write unit tests using **Vitest** and **React Testing Library**.
|
|
84
|
-
- Write E2E tests using **Playwright**
|
|
66
|
+
- Write E2E tests using **Playwright** via `e2e-testing-expert`.
|
|
85
67
|
|
|
86
|
-
#### 6.
|
|
87
|
-
|
|
88
|
-
-
|
|
89
|
-
- Use **TanStack Router** for fully type-safe client-side routing (preferred over React Router for new projects).
|
|
90
|
-
- Use **TanStack Query v5** for all server state — never use bare `useEffect` for data fetching.
|
|
68
|
+
#### 6. Architecture Integration
|
|
69
|
+
- **SPA (`spa-orchestrator`)**: Use **TanStack Router** for type-safe client routing and **TanStack Query v5** for server state. Never use bare `useEffect` for data fetching.
|
|
70
|
+
- **MPA (`mpa-orchestrator`)**: Use **Alpine.js** or **HTMX** for micro-interactions. Apply Progressive Enhancement.
|
|
91
71
|
|
|
92
|
-
#### 7.
|
|
93
|
-
|
|
94
|
-
-
|
|
95
|
-
-
|
|
96
|
-
|
|
97
|
-
#### 8. Advanced Animations (GSAP)
|
|
98
|
-
- Use **GSAP (GreenSock Animation Platform)** for complex, timeline-based, and scroll-driven animations (`ScrollTrigger`).
|
|
99
|
-
- Prefer GSAP over CSS animations for sequences requiring pausing, reversing, staggering, or timeline control.
|
|
100
|
-
- In React, always use the `@gsap/react` `useGSAP()` hook for automatic cleanup and scope management to prevent memory leaks.
|
|
72
|
+
#### 7. Advanced Animations
|
|
73
|
+
- **GSAP (GreenSock)**: Use for complex, timeline-based, scroll-driven animations (`ScrollTrigger`). Enforce `@gsap/react` `useGSAP()` hook for auto-cleanup.
|
|
74
|
+
- **Anime.js**: Use as a lightweight alternative for simple sequencing, SVG path animations, and DOM attribute animations.
|
|
75
|
+
- Prefer JS animations over CSS when timeline control (pause, reverse, dynamic stagger) is required.
|
|
101
76
|
|
|
102
77
|
---
|
|
103
78
|
|
|
@@ -107,55 +82,60 @@ When working within a centralized MPA (via `mpa-orchestrator`):
|
|
|
107
82
|
### Deskripsi
|
|
108
83
|
Pola pengembangan frontend tingkat produksi, optimasi performa, dan integrasi ekosistem modern untuk aplikasi React 19 / Next.js 15 dengan Tailwind CSS v4 dan TypeScript. Mencakup React 19 Compiler, Partial Prerendering (PPR), View Transitions API, dan strategi hybrid SPA/MPA.
|
|
109
84
|
|
|
85
|
+
### Integrasi Orkestrasi
|
|
86
|
+
- `ui-components-expert`: Untuk membangun komponen UI yang kuat (Radix, shadcn).
|
|
87
|
+
- `tailwind-expert`: Untuk styling dan konfigurasi @theme kustom.
|
|
88
|
+
- `nextjs-app-router-expert`: Untuk RSC, caching, dan pola routing Next.js.
|
|
89
|
+
- `state-management-expert`: Untuk state client-side (Zustand, Jotai).
|
|
90
|
+
- `tanstack-query-expert`: Untuk fetching data lanjutan dan caching server state.
|
|
91
|
+
- `spa-orchestrator`: Untuk arsitektur Single-Page Application.
|
|
92
|
+
- `mpa-orchestrator`: Untuk arsitektur Multi-Page Application.
|
|
93
|
+
|
|
110
94
|
### Kondisi Pemicu
|
|
111
|
-
-
|
|
112
|
-
-
|
|
113
|
-
-
|
|
114
|
-
-
|
|
115
|
-
-
|
|
116
|
-
-
|
|
95
|
+
- Buat proyek React atau Next.js 15 baru dengan TypeScript dan Tailwind CSS v4.
|
|
96
|
+
- Buat komponen baru, custom hooks, atau Server Actions.
|
|
97
|
+
- Analisis dan optimalkan ukuran bundle dan Core Web Vitals.
|
|
98
|
+
- Terapkan pola React 19 lanjutan (`useActionState`, `useOptimistic`, `use()`).
|
|
99
|
+
- Bangun SPA — koordinasikan dengan `spa-orchestrator`.
|
|
100
|
+
- Pastikan kepatuhan aksesibilitas (WCAG 2.2) dan pengujian.
|
|
117
101
|
|
|
118
102
|
### Panduan Teknis & Praktik Terbaik
|
|
119
103
|
|
|
120
104
|
#### 1. Next.js 15: Server vs Client Components
|
|
121
|
-
Gunakan **Server Components** secara default
|
|
105
|
+
Gunakan **Server Components** secara default. Gunakan `'use client'` hanya untuk:
|
|
106
|
+
- State (`useState`, `useEffect`), event handler, API browser.
|
|
107
|
+
- UI interaktif yang membutuhkan hidrasi klien.
|
|
122
108
|
|
|
123
|
-
*
|
|
124
|
-
- `params` dan `searchParams`
|
|
125
|
-
- **Partial Prerendering (PPR)
|
|
109
|
+
*Persyaratan Next.js 15.2+:*
|
|
110
|
+
- Wajib `await` pada `params` dan `searchParams` yang kini bertipe `Promise`.
|
|
111
|
+
- Gunakan **Partial Prerendering (PPR)** secara native. Bungkus bagian dinamis dengan `<Suspense>`.
|
|
126
112
|
|
|
127
|
-
#### 2. React 19
|
|
128
|
-
|
|
113
|
+
#### 2. React 19 Compiler & Hook Baru
|
|
114
|
+
Jangan gunakan `useMemo`, `useCallback`, atau `React.memo` kecuali sangat diperlukan; andalkan compiler React 19.
|
|
129
115
|
|
|
130
|
-
**Hook
|
|
131
|
-
- **`useActionState`**:
|
|
132
|
-
- **`useOptimistic`**:
|
|
133
|
-
- **`useFormStatus`**:
|
|
134
|
-
- **`use(promise)`**:
|
|
116
|
+
**Hook Wajib:**
|
|
117
|
+
- **`useActionState`**: Kelola state form, indikator loading, dan hasil action dengan Server Actions.
|
|
118
|
+
- **`useOptimistic`**: Perbarui UI secara instan sebelum server mengonfirmasi.
|
|
119
|
+
- **`useFormStatus`**: Baca status form di dalam komponen anak.
|
|
120
|
+
- **`use(promise)`**: Buka promise atau context langsung di dalam render dengan Suspense.
|
|
135
121
|
|
|
136
122
|
#### 3. View Transitions API
|
|
137
|
-
|
|
123
|
+
Terapkan View Transitions API bawaan browser untuk transisi halaman. Gunakan `<Link viewTransition>` pada Next.js 15.
|
|
138
124
|
|
|
139
|
-
#### 4. Tailwind CSS v4
|
|
140
|
-
|
|
125
|
+
#### 4. Tailwind CSS v4
|
|
126
|
+
Gunakan konfigurasi CSS-first. Definisikan token kustom dengan `@theme` dan plugin dengan `@plugin` di file CSS utama.
|
|
141
127
|
|
|
142
128
|
#### 5. Aksesibilitas (WCAG 2.2) & Pengujian
|
|
143
|
-
-
|
|
144
|
-
-
|
|
145
|
-
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
-
|
|
150
|
-
- Gunakan **
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
-
|
|
156
|
-
- Terapkan Progressive Enhancement: form dan link harus berfungsi tanpa JavaScript terlebih dahulu.
|
|
157
|
-
|
|
158
|
-
#### 8. Animasi Tingkat Lanjut (GSAP)
|
|
159
|
-
- Gunakan **GSAP (GreenSock Animation Platform)** untuk animasi kompleks, berbasis timeline, dan *scroll-driven* (`ScrollTrigger`).
|
|
160
|
-
- Utamakan GSAP dibandingkan CSS untuk animasi yang membutuhkan kontrol *timeline*, jeda (*pause*), *reverse*, atau *stagger*.
|
|
161
|
-
- Di React, selalu gunakan hook `useGSAP()` dari `@gsap/react` untuk *cleanup* otomatis dan manajemen *scope* guna mencegah kebocoran memori (*memory leak*).
|
|
129
|
+
- Wajib gunakan HTML semantik (`<button>`, `<nav>`, `<main>`).
|
|
130
|
+
- Wajib pastikan navigasi keyboard dengan label `aria-*` yang valid.
|
|
131
|
+
- Tulis pengujian unit dengan **Vitest** dan **React Testing Library**.
|
|
132
|
+
- Tulis pengujian E2E dengan **Playwright** via `e2e-testing-expert`.
|
|
133
|
+
|
|
134
|
+
#### 6. Integrasi Arsitektur
|
|
135
|
+
- **SPA (`spa-orchestrator`)**: Gunakan **TanStack Router** untuk routing klien dan **TanStack Query v5** untuk server state. Jangan gunakan `useEffect` murni untuk fetching data.
|
|
136
|
+
- **MPA (`mpa-orchestrator`)**: Gunakan **Alpine.js** atau **HTMX** untuk interaksi mikro. Terapkan Progressive Enhancement.
|
|
137
|
+
|
|
138
|
+
#### 7. Animasi Tingkat Lanjut
|
|
139
|
+
- **GSAP (GreenSock)**: Gunakan untuk animasi kompleks, berbasis timeline, dan scroll-driven. Wajib gunakan hook `useGSAP()` dari `@gsap/react`.
|
|
140
|
+
- **Anime.js**: Gunakan untuk staggering sederhana, animasi SVG, dan DOM.
|
|
141
|
+
- Utamakan animasi JS (GSAP/Anime.js) daripada CSS murni jika kontrol timeline (pause, reverse) dibutuhkan.
|