codehava-agent-kit 2.0.0 → 3.0.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.
Files changed (45) hide show
  1. package/README.md +78 -29
  2. package/package.json +2 -2
  3. package/templates/.agent/.shared/ACTIVE-template.md +44 -0
  4. package/templates/.agent/.shared/HANDOFF-template.md +75 -0
  5. package/templates/.agent/.shared/MEMORY-schema.md +117 -0
  6. package/templates/.agent/.shared/STATE-template.md +59 -0
  7. package/templates/.agent/.shared/checklists/planning-quality.md +69 -0
  8. package/templates/.agent/.shared/types/api-backend/config.md +25 -0
  9. package/templates/.agent/.shared/types/api-backend/guide.md +41 -0
  10. package/templates/.agent/.shared/types/api-backend/skill-loadout.md +16 -0
  11. package/templates/.agent/.shared/types/application/config.md +27 -0
  12. package/templates/.agent/.shared/types/application/guide.md +51 -0
  13. package/templates/.agent/.shared/types/application/skill-loadout.md +39 -0
  14. package/templates/.agent/.shared/types/campaign/config.md +24 -0
  15. package/templates/.agent/.shared/types/campaign/guide.md +36 -0
  16. package/templates/.agent/.shared/types/campaign/skill-loadout.md +12 -0
  17. package/templates/.agent/.shared/types/utility/config.md +24 -0
  18. package/templates/.agent/.shared/types/utility/guide.md +31 -0
  19. package/templates/.agent/.shared/types/utility/skill-loadout.md +10 -0
  20. package/templates/.agent/.shared/types/workflow/config.md +25 -0
  21. package/templates/.agent/.shared/types/workflow/guide.md +41 -0
  22. package/templates/.agent/.shared/types/workflow/skill-loadout.md +13 -0
  23. package/templates/.agent/SKILLS_INDEX.md +68 -7
  24. package/templates/.agent/agents/backend-specialist.md +12 -0
  25. package/templates/.agent/agents/database-architect.md +11 -0
  26. package/templates/.agent/agents/frontend-specialist.md +12 -0
  27. package/templates/.agent/agents/mobile-developer.md +11 -0
  28. package/templates/.agent/agents/penetration-tester.md +13 -0
  29. package/templates/.agent/agents/test-engineer.md +10 -0
  30. package/templates/.agent/rules/GEMINI.md +292 -183
  31. package/templates/.agent/skills/systematic-debugging/SKILL.md +202 -0
  32. package/templates/.agent/skills/vibe-prd/SKILL.md +48 -6
  33. package/templates/.agent/workflows/add-type.md +133 -0
  34. package/templates/.agent/workflows/apply.md +95 -0
  35. package/templates/.agent/workflows/graduate.md +150 -0
  36. package/templates/.agent/workflows/launch.md +127 -0
  37. package/templates/.agent/workflows/new-feature.md +21 -23
  38. package/templates/.agent/workflows/pause.md +118 -0
  39. package/templates/.agent/workflows/pipeline.md +95 -0
  40. package/templates/.agent/workflows/progress.md +103 -0
  41. package/templates/.agent/workflows/resume.md +105 -0
  42. package/templates/.agent/workflows/unify.md +126 -0
  43. package/templates/.agent/workflows/vibe-plan.md +135 -72
  44. package/templates/.agent/workflows/vibe-recap.md +89 -12
  45. package/templates/.antigravity/rules.md +75 -27
@@ -0,0 +1,126 @@
1
+ ---
2
+ description: |
3
+ Tutup sesi dengan merangkum apa yang sudah dikerjakan, keputusan yang dibuat, dan langkah berikutnya.
4
+ Wajib dijalankan setelah /apply selesai agar sesi berikutnya bisa dilanjutkan dengan mulus.
5
+ Update STATE.md dan MEMORY.md jika ada perubahan penting di sesi ini.
6
+ ---
7
+
8
+ # /unify — Rangkuman Sesi
9
+
10
+ Menutup sesi dengan rapi. Dokumentasi apa yang terjadi agar sesi berikutnya bisa lanjut dari titik yang benar.
11
+
12
+ ---
13
+
14
+ ## Langkah 1 — Buat Ringkasan Sesi
15
+
16
+ Buat atau update file: `docs/phases/[nomor-fase]-SUMMARY.md`
17
+
18
+ Template:
19
+
20
+ ```markdown
21
+ # Ringkasan Sesi [N]
22
+
23
+ **Tanggal:** [YYYY-MM-DD]
24
+ **Status:** [Selesai / Sebagian / Terhenti]
25
+
26
+ ---
27
+
28
+ ## Yang Direncanakan vs Yang Dikerjakan
29
+
30
+ | Pekerjaan | Rencana | Hasil | Status |
31
+ |-----------|---------|-------|--------|
32
+ | [nama task] | [apa yang mau dilakukan] | [apa yang terjadi] | ✅ Selesai |
33
+ | [nama task] | [apa yang mau dilakukan] | [apa yang terjadi] | ⚠️ Selesai, ada catatan |
34
+ | [nama task] | [apa yang mau dilakukan] | Belum dikerjakan | 🚫 Tertunda |
35
+
36
+ ---
37
+
38
+ ## Keputusan yang Dibuat
39
+
40
+ - [Keputusan 1]: [kenapa diputuskan begini]
41
+ - [Keputusan 2]: [kenapa diputuskan begini]
42
+
43
+ ---
44
+
45
+ ## Yang Belum Selesai
46
+
47
+ - [ ] [nama task] — akan dikerjakan di: [sesi berikutnya / setelah X]
48
+
49
+ ---
50
+
51
+ ## Catatan Teknis (untuk AI, bukan user)
52
+
53
+ - [ ] [catatan] — prioritas: rendah/sedang/tinggi
54
+
55
+ ---
56
+
57
+ ## File yang Diubah
58
+
59
+ - [path/file] — [apa yang berubah]
60
+
61
+ ---
62
+
63
+ ## Langkah Selanjutnya
64
+
65
+ **Aksi berikutnya:** [apa yang perlu dilakukan di sesi berikutnya]
66
+ **Yang harus ada dulu:** [prasyarat jika ada]
67
+ ```
68
+
69
+ ---
70
+
71
+ ## Langkah 2 — Update STATE.md (internal)
72
+
73
+ Update `.agent/STATE.md`:
74
+
75
+ ```markdown
76
+ ## Posisi Sekarang
77
+ - Status: sesi selesai
78
+ - Ringkasan terakhir: [path ke SUMMARY.md]
79
+ - Fase berikutnya: [nama atau "belum ditentukan"]
80
+
81
+ ## Riwayat Sesi
82
+ - [YYYY-MM-DD]: [ringkasan 1 kalimat]
83
+ ```
84
+
85
+ ---
86
+
87
+ ## Langkah 3 — Update MEMORY.md jika ada perubahan penting (internal, silent)
88
+
89
+ Jika sesi ini membuat keputusan baru tentang:
90
+ - Teknologi yang dipakai (ganti atau tambah layanan)
91
+ - Struktur database (tambah tabel, ubah kolom)
92
+ - Tampilan (warna, font, gaya)
93
+ - Batasan baru (keamanan, performa, aturan)
94
+
95
+ → Update `.agent/MEMORY.md` secara diam-diam.
96
+
97
+ Jika tidak ada perubahan → skip langkah ini.
98
+
99
+ ---
100
+
101
+ ## Langkah 4 — Laporan ke User
102
+
103
+ ```
104
+ ✅ Sesi selesai!
105
+
106
+ Yang sudah dikerjakan:
107
+ ✅ [N] pekerjaan selesai
108
+ ⚠️ [N] selesai dengan catatan
109
+ ⏸️ [N] ditunda / menunggu keputusan
110
+
111
+ Catatan:
112
+ - [catatan penting dalam bahasa sederhana jika ada]
113
+
114
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
115
+ Sesi berikutnya: ketik /resume untuk lanjut dari titik ini.
116
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
117
+ ```
118
+
119
+ ---
120
+
121
+ ## Aturan Penting
122
+
123
+ - Wajib dijalankan setelah setiap /apply — meskipun semua task selesai
124
+ - Jika sebagian besar belum selesai, tetap buat ringkasan dengan status apa adanya
125
+ - MEMORY.md hanya diupdate jika ada perubahan nyata — jangan tambah noise
126
+ - Ringkasan ini adalah panduan untuk sesi berikutnya — tulis dengan jelas
@@ -1,133 +1,196 @@
1
1
  ---
2
2
  description: |
3
- Orchestrator workflow untuk planning phase lengkap dari ide ke siap coding.
4
- Jalankan di awal project baru sebelum coding apapun.
5
- Memandu: Research PRD Tech Design Build Plan (4 langkah, ~1-2 jam total).
3
+ Rencanakan project baru dari ide ke rencana kerja yang siap dikerjakan.
4
+ Deteksi jenis project secara otomatis, ajukan pertanyaan yang relevan per jenis.
5
+ Output: PLANNING.md berisi rencana kerja + syarat keberhasilan per fitur.
6
+ Jalankan di awal project baru atau saat memulai tahap baru.
7
+ Selalu diikuti dengan /apply → /unify.
6
8
  ---
7
9
 
8
- # /vibe-plan — Planning Phase Orchestrator
10
+ # /vibe-plan — Rencanakan Project Baru
9
11
 
10
- Workflow ini memandu kamu dari ide mentah ke dokumen planning lengkap
11
- yang siap dipakai agent untuk coding.
12
+ Dari ide ke rencana kerja yang siap dikerjakan.
13
+ Setiap jenis project punya pertanyaan yang berbeda kita tidak akan tanya hal yang tidak relevan.
12
14
 
13
- **Total waktu estimasi:** 60–90 menit
14
- **Output:** 4 dokumen siap pakai + backlog terisi
15
+ **Output utama:** `PLANNING.md` + `docs/01-PRD.md` + `docs/02-TECH-DESIGN.md`
16
+
17
+ ---
18
+
19
+ ## Langkah 0 — Kenali Jenis Project
20
+
21
+ Tanya user (jika belum jelas dari konteks):
22
+
23
+ > "Project ini kira-kira jenis apa? Pilih yang paling sesuai:
24
+ > 1. **Aplikasi** — Web app atau mobile app dengan pengguna, login, dan database
25
+ > 2. **Backend/API** — Server atau layanan yang melayani data ke aplikasi lain
26
+ > 3. **Kampanye** — Landing page, website marketing, atau kampanye konten
27
+ > 4. **Alat bantu** — Script, automation, atau tool untuk satu tujuan spesifik
28
+ > 5. **Workflow otomatis** — Integrasi otomatis antar layanan (seperti Zapier, n8n)"
29
+
30
+ | Jenis | Fokus Pertanyaan | Yang Dijaga |
31
+ |-------|-----------------|-------------|
32
+ | **Aplikasi** | Login, tampilan, database, deploy, kondisi error | Jangan tambah fitur tak terduga |
33
+ | **Backend/API** | Endpoint, struktur data, autentikasi, testing | Jangan over-engineer |
34
+ | **Kampanye** | Timeline, konten, platform, target audiens | Jangan tambah fitur teknis berlebih |
35
+ | **Alat bantu** | Satu tujuan, input/output yang jelas | Jangan meluaskan scope |
36
+ | **Workflow otomatis** | Trigger, langkah-langkah, penanganan error | Jangan coupling ketat |
15
37
 
16
38
  ---
17
39
 
18
40
  ## Langkah 1 — Cek Status Project
19
41
 
20
- Pertama, cek dokumen apa yang sudah ada:
42
+ Cek file yang sudah ada (internal):
21
43
 
22
44
  ```
23
- Cek keberadaan file berikut:
24
- - docs/research-*.md → jika ada, research sudah selesai
25
- - docs/01-PRD.md → jika terisi (bukan template), PRD sudah selesai
45
+ Cek keberadaan:
46
+ - PLANNING.md → jika ada dan terisi, planning sudah selesai
47
+ - docs/research-*.md → jika ada, research sudah selesai
48
+ - docs/01-PRD.md → jika terisi (bukan template), PRD sudah selesai
26
49
  - docs/02-TECH-DESIGN.md → jika terisi, tech design sudah selesai
27
- - BUILD_PLAN.md → jika ada, build plan sudah selesai
28
50
  ```
29
51
 
30
- Berdasarkan apa yang ditemukan, langsung lompat ke step yang belum selesai.
31
52
  Tampilkan status ke user:
32
53
 
33
54
  ```
34
- 📊 Status Planning [Nama Aplikasi]:
55
+ 📊 Status Planning [Nama Project]:
35
56
 
36
- Step 1 — Research: [✅ Selesai / ⏳ Belum]
37
- Step 2 — PRD: [✅ Selesai / ⏳ Belum]
38
- Step 3 — Tech Design: [✅ Selesai / ⏳ Belum]
39
- Step 4 — Build Plan: [✅ Selesai / ⏳ Belum]
57
+ Tahap 1 — Riset: [✅ Selesai / ⏳ Belum]
58
+ Tahap 2 — Deskripsi: [✅ Selesai / ⏳ Belum]
59
+ Tahap 3 — Desain teknis:[✅ Selesai / ⏳ Belum]
60
+ Tahap 4 — Rencana kerja:[✅ Selesai / ⏳ Belum]
40
61
 
41
- Mulai dari Step [N]? (yes/no)
62
+ Mulai dari Tahap [N]?
42
63
  ```
43
64
 
44
65
  ---
45
66
 
46
- ## Langkah 2 — Jalankan Planning Secara Berurutan
67
+ ## Langkah 2 — Gali Kebutuhan (Sesuai Jenis Project)
47
68
 
48
- ### Step 1: Research (~20 menit)
69
+ Baca file panduan sesuai jenis project yang dipilih (internal):
70
+
71
+ ```
72
+ .agent/.shared/types/[type]/guide.md → pertanyaan yang relevan per jenis
73
+ .agent/.shared/types/[type]/config.md → seberapa detail yang dibutuhkan
74
+ .agent/.shared/types/[type]/skill-loadout.md → skill yang akan dipakai
49
75
  ```
50
- Tujuan: Validasi ide, analisa pasar, identifikasi risiko
51
- Skill: vibe-research
52
- Output: docs/research-[AppName].md
53
76
 
54
- Jalankan skill vibe-research sekarang.
55
- Setelah selesai dan user approve → lanjut ke Step 2.
77
+ ### Cara Bertanya
78
+
79
+ - Tanya **satu pertanyaan** di satu waktu — jangan langsung banyak sekaligus
80
+ - Jika user stuck atau jawabannya samar → berikan rekomendasi proaktif ("Untuk kebanyakan kasus seperti ini, biasanya X karena...")
81
+ - Jika pertanyaan sudah terjawab dari konteks → langsung skip, jangan tanya ulang
82
+ - Jika user mention hal di luar scope → "Itu sepertinya ide bagus untuk project terpisah. Untuk sekarang, kita fokus ke [tujuan utama] dulu ya."
83
+
84
+ ### Panduan per Jenis (internal reference)
85
+
86
+ | Jenis | File panduan | Topik yang digali |
87
+ |-------|-------------|-------------------|
88
+ | Aplikasi | `types/application/guide.md` | Masalah → Stack → Data → Login → Tampilan → API → Deploy → Keamanan |
89
+ | Backend/API | `types/api-backend/guide.md` | Tujuan → Endpoint → Autentikasi → Struktur data → Error → Performa → Testing → Deploy |
90
+ | Kampanye | `types/campaign/guide.md` | Tujuan → Platform → Timeline → Pesan → Konten → Metrik → Budget |
91
+ | Alat bantu | `types/utility/guide.md` | Masalah → Batasan scope → Pengguna → Dependensi → Antarmuka → Kriteria selesai |
92
+ | Workflow otomatis | `types/workflow/guide.md` | Trigger → Langkah-langkah → Penanganan error → Integrasi → Monitoring |
93
+
94
+ ---
95
+
96
+ ## Langkah 3 — Buat Dokumen Planning Secara Berurutan
97
+
98
+ ### Tahap 1: Riset (untuk Aplikasi dan Backend saja)
99
+ ```
100
+ Gunakan skill: vibe-research
101
+ Output: docs/research-[NamaProject].md
102
+ Setelah selesai → minta persetujuan user → lanjut Tahap 2
56
103
  ```
57
104
 
58
- ### Step 2: PRD (~20 menit)
105
+ ### Tahap 2: Deskripsi Produk
59
106
  ```
60
- Tujuan: Definisikan fitur, user stories, scope MVP
61
- Skill: vibe-prd
62
- Input: docs/research-[AppName].md (baca dulu)
63
- Output: docs/01-PRD.md (terisi penuh)
107
+ Gunakan skill: vibe-prd
108
+ Input: hasil riset (jika ada) + jawaban dari pertanyaan tadi
109
+ Output: docs/01-PRD.md
110
+
111
+ Untuk setiap fitur utama, tulis:
112
+ - Apa yang user bisa lakukan
113
+ - Bagaimana kita tahu fitur ini berhasil (kapan dianggap selesai)
64
114
 
65
- Jalankan skill vibe-prd sekarang.
66
- Setelah selesai dan user approve → lanjut ke Step 3.
115
+ Setelah selesai minta persetujuan user → lanjut Tahap 3
67
116
  ```
68
117
 
69
- ### Step 3: Tech Design (~20 menit)
118
+ ### Tahap 3: Desain Teknis
70
119
  ```
71
- Tujuan: Pilih stack, desain arsitektur, buat ERD awal
72
- Skill: vibe-techdesign
73
- Input: docs/01-PRD.md + docs/research-*.md
74
- Output: docs/02-TECH-DESIGN.md (terisi + ERD + API contracts)
120
+ Gunakan skill: vibe-techdesign
121
+ Input: docs/01-PRD.md + jawaban dari pertanyaan
122
+ Output: docs/02-TECH-DESIGN.md (teknologi yang dipakai + struktur data + cara kerja API)
75
123
 
76
- Jalankan skill vibe-techdesign sekarang.
77
- Setelah selesai dan user approve → lanjut ke Step 4.
124
+ Setelah selesai minta persetujuan user → lanjut Tahap 4
78
125
  ```
79
126
 
80
- ### Step 4: Build Plan (~15 menit)
127
+ ### Tahap 4: Buat Rencana Kerja
81
128
  ```
82
- Tujuan: Breakdown task per sprint, siapkan backlog
83
- Skill: vibe-buildplan
129
+ Gunakan skill: vibe-buildplan
84
130
  Input: docs/01-PRD.md + docs/02-TECH-DESIGN.md
85
- Output: docs/04-BACKLOG.md (terisi) + BUILD_PLAN.md
131
+ Output: PLANNING.md (siap untuk /apply)
86
132
 
87
- Jalankan skill vibe-buildplan sekarang.
88
- Setelah selesai → tampilkan summary.
133
+ Isi PLANNING.md:
134
+ - Jenis project
135
+ - Daftar pekerjaan berurutan per sprint
136
+ - Per pekerjaan: ukuran keberhasilan + file yang akan diubah
137
+ - Batasan yang tidak boleh dilanggar
89
138
  ```
90
139
 
91
140
  ---
92
141
 
93
- ## Langkah 3Summary Akhir
142
+ ## Langkah 4Validasi Rencana (internal)
94
143
 
95
- Setelah semua step selesai, tampilkan:
144
+ Sebelum maju, cek PLANNING.md secara internal:
96
145
 
97
146
  ```
98
- 🎉 Planning Phase Selesai!
147
+ Semua fitur utama punya ukuran keberhasilan yang jelas?
148
+ □ Teknologi yang dipakai sudah dipilih dan dikonfirmasi user?
149
+ □ Batasan-batasan sudah jelas dituliskan?
150
+ □ Pekerjaan pertama sudah cukup detail untuk langsung dikerjakan?
151
+ □ File yang tidak boleh diubah sudah ditandai?
152
+ □ [Aplikasi] Alur login sudah didesain?
153
+ □ [Aplikasi] Kondisi loading, kosong, dan error sudah dipikirkan?
154
+ □ [Kampanye] Timeline dan deadline sudah dikonfirmasi?
155
+ □ [Alat bantu] Hanya satu tujuan — tidak meluas?
156
+ ```
99
157
 
100
- Dokumen yang sudah dibuat:
101
- docs/research-[AppName].md — Validasi ide & analisa pasar
102
- ✅ docs/01-PRD.md — Product Requirements (N user stories)
103
- ✅ docs/02-TECH-DESIGN.md — Stack: [ringkasan stack] + ERD
104
- ✅ docs/04-BACKLOG.md — [N] sprint, [M] total task
105
- BUILD_PLAN.md Panduan build phase
158
+ Jika semua → lanjut.
159
+ Jika ada lengkapi dulu sebelum lanjut.
160
+
161
+ ---
162
+
163
+ ## Langkah 5 Ringkasan & Siap Mulai
164
+
165
+ ```
166
+ 🎉 Planning selesai! [Jenis: Aplikasi/Backend/Kampanye/Alat bantu/Workflow]
106
167
 
107
- Stack yang dipilih:
108
- - [ringkasan 1-liner stack]
168
+ Dokumen yang dibuat:
169
+ PLANNING.md — Rencana kerja siap dieksekusi
170
+ ✅ docs/01-PRD.md — [N] fitur
171
+ ✅ docs/02-TECH-DESIGN.md — Teknologi: [ringkasan]
109
172
 
110
- Sprint 1 Goal: [goal sprint 1]
111
- Task pertama: T001 — [nama task pertama]
173
+ Sprint pertama: [N] pekerjaan, tujuan: [tujuan sprint pertama]
174
+ Pekerjaan pertama: [nama pekerjaan]
112
175
 
113
176
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
114
- Siap coding! Mulai dengan:
115
- /new-feature untuk fitur size M/L
116
- /dev-reset jika butuh setup environment dari awal
177
+ Langkah berikutnya:
178
+ /apply mulai mengerjakan pekerjaan satu per satu
179
+ /unify wajib dijalankan setelah /apply selesai
117
180
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
118
181
 
119
- Sebelum coding, pastikan:
120
- AGENTS.md sudah ada di root project
121
- □ .env.local sudah diisi credentials
122
- Docker Compose sudah jalan (docker compose up -d)
182
+ Sebelum mulai coding, pastikan:
183
+ □ .agent/STATE.md sudah diisi
184
+ □ .agent/MEMORY.md sudah diisi (keputusan teknologi dari planning ini)
185
+ .env.local sudah ada (API keys, database URL, dll)
123
186
  ```
124
187
 
125
188
  ---
126
189
 
127
190
  ## Aturan Penting
128
191
 
129
- - Jangan skip ke coding sebelum minimal Step 2 (PRD) selesai
130
- - Setiap step harus dapat **approval eksplisit** dari user sebelum lanjut
131
- - Jika user ingin ubah sesuatu di step sebelumnya, kembali ke step itu dulu
132
- - Workflow ini bisa di-resume kapanpun — cukup jalankan `/vibe-plan` lagi dan ia akan cek progress
133
- - Dokumen yang dihasilkan adalah **living documents** update setiap sprint jika ada perubahan scope
192
+ - Jangan mulai coding sebelum minimal Tahap 2 (deskripsi produk) selesai
193
+ - Setiap tahap butuh **persetujuan eksplisit** dari user sebelum lanjut
194
+ - PLANNING.md bisa diupdate jika ada perubahan rencana
195
+ - Workflow ini bisa dilanjutkan: jalankan `/vibe-plan` lagi untuk cek progress
196
+ - **Kampanye dan alat bantu:** Aktif tolak penambahan fitur di luar tujuan utama
@@ -1,17 +1,94 @@
1
1
  ---
2
- description: Rangkum percakapan saat ini agar bisa pindah ke chat baru tanpa hilang konteks
2
+ description: |
3
+ Context compaction + PAUL UNIFY ringan — rangkum session saat ini agar bisa
4
+ pindah ke chat baru tanpa kehilangan konteks. Gunakan saat context window
5
+ mulai penuh atau AI mulai kehilangan fokus. Jika sudah selesai satu /apply
6
+ phase, gunakan /unify dulu (lebih lengkap) sebelum /vibe-recap.
3
7
  ---
4
8
 
5
- # Vibe Recap — Context Compaction
9
+ # /vibe-recap — Context Compaction + Reconciliation
6
10
 
7
- Gunakan workflow `/vibe-recap` atau `/recap` saat percakapan AI (context window) sudah terlalu panjang atau AI mulai kehilangan fokus.
11
+ Gunakan `/vibe-recap` atau `/recap` ketika:
12
+ - Context window sudah panjang dan AI mulai kehilangan fokus
13
+ - Mau pindah ke chat baru tapi tidak mau kehilangan progres
14
+ - Perlu rangkuman cepat sebelum istirahat/pause
8
15
 
9
- Sebagai AI, tugasmu:
10
- 1. Buat atau perbarui file `docs/recap.md`.
11
- 2. Tulis rangkuman komprehensif dari semua hal yang kita diskusikan di sesi kerja ini.
12
- 3. Struktur wajib di dalam `recap.md`:
13
- - Fitur / Bug apa yang sedang dikerjakan tadi.
14
- - Keputusan arsitektur terakhir yang disepakati.
15
- - Daftar file apa saja yang sudah diubah di sesi ini.
16
- - Langkah selanjutnya yang tertunda (*Next Steps*).
17
- 4. Beritahu user: "Recap berhasil dibuat di `docs/recap.md`. Silakan buka obrolan baru (*New Chat*) dan perintahkan saya untuk membaca file tersebut agar kita bisa melanjutkan dengan memori yang lebih segar!"
16
+ Untuk **full reconciliation** setelah /apply — gunakan `/unify` (lebih lengkap).
17
+
18
+ ---
19
+
20
+ ## Langkah 1 Buat atau Update docs/recap.md
21
+
22
+ Tulis rangkuman komprehensif dari semua yang terjadi di session ini:
23
+
24
+ ```markdown
25
+ # Recap — [YYYY-MM-DD] Session [N]
26
+
27
+ ## Sedang Dikerjakan
28
+ - Fitur/bug: [apa yang sedang dikerjakan]
29
+ - Phase saat ini: [planning / apply / unify]
30
+ - Task terakhir: [T00X — nama task]
31
+ - Status: [selesai / sedang jalan / blocked]
32
+
33
+ ## Keputusan Arsitektur yang Disepakati
34
+ - [Keputusan 1]: [deskripsi] — karena [alasan]
35
+ - [Keputusan 2]: [deskripsi] — karena [alasan]
36
+
37
+ ## Files yang Diubah Session Ini
38
+ - [path/file.ts] — [apa yang diubah]
39
+ - [path/file.tsx] — [apa yang diubah]
40
+
41
+ ## Masalah yang Ditemukan
42
+ - [Masalah 1]: [status — sudah fix / belum / workaround]
43
+
44
+ ## Next Steps (Tertunda)
45
+ - [ ] [Langkah 1]
46
+ - [ ] [Langkah 2]
47
+ - [ ] [Langkah 3]
48
+
49
+ ## Context Penting untuk Chat Baru
50
+ - [Info kritis yang mudah terlupakan]
51
+ - [Pattern atau convention yang sedang diikuti]
52
+ - [Dependency atau constraint yang aktif]
53
+ ```
54
+
55
+ ---
56
+
57
+ ## Langkah 2 — Update STATE.md (jika belum)
58
+
59
+ Jika `.agent/STATE.md` ada, update dengan position terkini:
60
+
61
+ ```
62
+ - Current phase: [nama phase]
63
+ - Last task: [T00X]
64
+ - Session closed: [timestamp]
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Langkah 3 — Update MEMORY.md (jika ada perubahan)
70
+
71
+ Jika di session ini ada keputusan baru tentang tech stack, warna, schema, atau constraint → update `.agent/MEMORY.md` sebelum pindah chat.
72
+
73
+ ---
74
+
75
+ ## Langkah 4 — Informasikan User
76
+
77
+ ```
78
+ ✅ Recap berhasil dibuat di docs/recap.md
79
+
80
+ Untuk melanjutkan di chat baru:
81
+ 1. Buka chat baru
82
+ 2. Ketik: "Baca docs/recap.md dan lanjutkan dari sana"
83
+ 3. AI akan restore konteks dan melanjutkan tepat dari titik berhenti
84
+
85
+ [Opsional] Jika mau full reconciliation: /unify dulu sebelum pindah chat.
86
+ ```
87
+
88
+ ---
89
+
90
+ ## Catatan
91
+
92
+ - `docs/recap.md` adalah snapshot cepat — untuk reconciliation formal gunakan `/unify`
93
+ - Bisa dijalankan kapanpun, tidak harus setelah /apply selesai
94
+ - Aman dijalankan berulang kali — file akan di-overwrite dengan versi terbaru
@@ -6,6 +6,7 @@
6
6
 
7
7
  - Runtime: Node.js 22 LTS, TypeScript strict mode — no `any`
8
8
  - Prisma 7: import dari `@/generated/prisma`, BUKAN dari `@prisma/client`
9
+ (Prisma 7 generate ke `@/generated/prisma` karena custom output path di schema.prisma)
9
10
  - Next.js 16: `params`, `searchParams`, dan `headers()` selalu di-`await`
10
11
  - BullMQ: gunakan konstanta dari `QUEUES` object, jangan string literal
11
12
 
@@ -31,17 +32,19 @@ const token = (await headers()).get('x-callback-token')
31
32
  - `findMany` wajib ada `take` + `skip` — jangan query tanpa limit
32
33
  - Soft delete: gunakan `deletedAt DateTime?` — jangan hard delete data penting
33
34
 
34
- ## Keamanan & privasi (UU PDP)
35
+ ## Keamanan & privasi (UU PDP No. 27/2022)
35
36
 
37
+ UU PDP adalah Undang-Undang Perlindungan Data Pribadi Indonesia — wajib dipatuhi:
36
38
  - Secrets dan API keys hanya di env vars — TIDAK PERNAH di kode
37
- - Log tidak boleh print password, token, NIK, nomor rekening
38
- - Data sensitif (NIK, rekening) disimpan terenkripsi dengan pgcrypto
39
+ - Log tidak boleh print password, token, NIK (Nomor Induk Kependudukan), nomor rekening
40
+ - Data sensitif (NIK, rekening bank) disimpan terenkripsi dengan pgcrypto
41
+ - User harus bisa hapus akun dan download data pribadi mereka (REQ wajib di PRD)
39
42
  - Firebase: hanya gunakan `firebase_messaging` — JANGAN aktifkan Analytics/Crashlytics
40
43
 
41
44
  ## Sebelum coding (Human-in-the-Loop)
42
45
 
43
- - **WAJIB Validasi:** JANGAN langsung menulis file yang panjang secara agresif. Buat *Implementation Plan* singkat di chat, dan MINTA USER mengetik "Lanjut/Approve" sebelum kamu diizinkan mengedit/membuat file.
44
- - Cek komponen yang ada di `/components/ui/` sebelum buat baru
46
+ - **WAJIB Validasi:** JANGAN langsung menulis file panjang secara agresif. Buat Implementation Plan singkat di chat, MINTA USER mengetik "Lanjut/Approve" sebelum edit/buat file.
47
+ - Cek komponen di `/components/ui/` sebelum buat baru
45
48
  - Untuk fitur size M atau L: cek apakah ada spec di `specs/` dulu
46
49
  - Satu fokus per sesi — jangan ubah hal di luar scope yang diminta
47
50
  - Konfirmasi sebelum hapus atau refactor kode yang sudah ada
@@ -52,34 +55,79 @@ const token = (await headers()).get('x-callback-token')
52
55
  - Types: feat, fix, chore, docs, refactor, test
53
56
  - Jangan push langsung ke `main` — selalu via Pull Request
54
57
 
55
- ## Adaptive Memory & Checkbox Task Tracking (Senjata Utama AI)
58
+ ## PAUL Loop Execution Protocol (V3.0)
56
59
 
57
- - **Checkbox Workflow**: Setiap kali user memberikan perintah untuk membuat atau memperbaiki fitur, kamu WAJIB memecahkannya menjadi langkah-langkah detail di `docs/task_on_hand.md` dengan format Checkbox (`[ ] Step 1`, `[ ] Step 2`). Kamu harus mengeksekusi instruksi tersebut SATU PER SATU secara berurutan dan mengubah statusnya menjadi `[x]` setiap kodenya selesai! Jangan pernah melompat langkah!
58
- - **Troubleshooting Log & 3L5W Framework**: Jika menemukan ERROR, **JANGAN HANYA** asal *fix* isi 1 file lalu lapor selesai. Terapkan SOP "3 Legs 5 Whys":
59
- 1. **5 Whys Analysis:** Temukan akar masalah terdalamnya.
60
- 2. **Search & Destroy:** Gunakan fitur IDE Search (atau grep_search) untuk memeriksa SELURUH codebase. Caritahu apakah pengulangan sintaks/pattern buruk yang persis sama juga ada di *komponen* atau *file* lain yang belum disentuh.
61
- 3. **Global Mitigation:** Perbaiki file saat ini beserta seluruh temuan relevan lainnya, dan buat proteksi logika (misal: Zod, Null checks) untuk memblokirnya secara struktural.
62
- 4. **Log it:** Beri catatan RCA di `docs/troubleshooting.md`.
63
- - **Template Code**: Saat disuruh membuat komponen/file baru, SELALU periksa referensi di `templates/.agent/snippets/` dan tiru strukturnya.
64
- - Di setiap awal sesi, kamu WAJIB membaca `docs/task_on_hand.md` dan `docs/recap.md` (jika ada) untuk *loading context*.
60
+ Gantikan Checkbox Workflow lama dengan PAUL loop:
61
+
62
+ ```
63
+ /apply Execute/Qualify per task (ada 4-level artifact check)
64
+ /unify Mandatory setelah /apply buat SUMMARY.md planned vs actual
65
+ ```
66
+
67
+ **Task Tracking:** Pecah task ke `docs/task_on_hand.md` dengan format:
68
+ ```
69
+ [ ] T001 — nama task
70
+ [ ] T002 — nama task
71
+ ```
72
+ Eksekusi SATU PER SATU secara berurutan. Update ke `[x]` setelah selesai.
73
+
74
+ **Escalation Status (gantikan binary ✓/✗):**
75
+ - ✅ DONE — selesai, terverifikasi
76
+ - ⚠️ DONE_WITH_CONCERNS — selesai, ada catatan
77
+ - 🔍 NEEDS_CONTEXT — butuh input user
78
+ - 🚫 BLOCKED — butuh keputusan user
79
+
80
+ **Session Start Protocol:**
81
+ Di awal setiap sesi, baca:
82
+ 1. `.agent/STATE.md` — current loop position
83
+ 2. `.agent/MEMORY.md` — tech decisions & constraints
84
+ 3. `docs/task_on_hand.md` — task yang sedang berjalan
85
+ 4. `docs/recap.md` atau `docs/phases/[N]-SUMMARY.md` — context session terakhir
86
+
87
+ **Session End (HANDOFF):**
88
+ Jika sesi harus ditutup sebelum /unify selesai, buat HANDOFF file:
89
+ - Path: `docs/handoffs/HANDOFF-[YYYY-MM-DD].md`
90
+ - Gunakan template dari `.agent/.shared/HANDOFF-template.md`
91
+
92
+ ## Troubleshooting — 3L5W Framework (3 Legs, 5 Whys)
93
+
94
+ Jika menemukan ERROR, JANGAN asal fix 1 file lalu lapor selesai.
95
+ Panggil `@systematic-debugging` dan terapkan:
96
+
97
+ 1. **Leg 1 — 5 Whys:** Tanya "Kenapa?" 5x untuk temukan root cause struktural
98
+ 2. **Leg 2 — Search & Destroy:** Grep seluruh codebase untuk pattern yang sama
99
+ 3. **Leg 3 — Global Mitigation + Log:** Fix semua temuan + tambah proteksi (Zod, null checks) + catat RCA di `docs/troubleshooting.md`
100
+
101
+ Setelah fix → verifikasi 4-level: EXISTS → SUBSTANTIVE → WIRED → DATA FLOWS
102
+
103
+ ## Template Code
104
+
105
+ Saat membuat komponen/file baru, periksa referensi di `templates/.agent/snippets/`.
65
106
 
66
107
  ## Context7
67
108
 
68
- - Saat coding Prisma 7, Next.js 16, Better Auth, BullMQ, Socket.io:
69
- tambahkan `use context7` di prompt untuk mendapat docs terbaru
109
+ Saat coding Prisma 7, Next.js 16, Better Auth, BullMQ, Socket.io:
110
+ tambahkan `use context7` di prompt untuk mendapat docs terbaru.
70
111
 
71
112
  ## 🧠 Skill Auto-Discovery & The Non-Programmer Shield (WAJIB DIBACA AI)
72
113
 
73
- Project ini dibekali dengan **455 Elite Skills** di `.agent/skills/`. User **TIDAK PERLU** menghafal atau menyuruh Anda menggunakan skill spesifik secara manual. User Anda adalah seorang **Kreator Non-Programmer** yang melakukan *Vibe Coding*.
114
+ Project ini dibekali **600+ Elite Skills** di `.agent/skills/`. User TIDAK PERLU menghafal
115
+ skill names. User adalah **Kreator Non-Programmer** yang melakukan *Vibe Coding*.
116
+
117
+ ### 1. Auto-Discovery Engine (Concrete Algorithm)
118
+
119
+ Setiap kali mendapat perintah:
120
+ 1. Extract keywords dari request (misal: "bikin login Google" → `auth`, `oauth`, `google`)
121
+ 2. Search direktori `.agent/skills/` dengan keywords tersebut
122
+ - Exact match dulu: `skills/google-oauth/`, `skills/clerk-auth/`
123
+ - Lalu partial: `skills/auth-*`, `skills/*-auth`
124
+ 3. Baca `SKILL.md` di direktori yang match — SEBELUM menulis satu baris kode
125
+ 4. Announce: `🤖 Auto-Discovery: Mengaktifkan skill @[nama-skill]...`
126
+
127
+ JANGAN mencari `SKILLS_INDEX.md` — file itu adalah routing mechanism, bukan list statis.
74
128
 
75
- ### 1. Auto-Discovery Engine
76
- Setiap kali mendapat perintah dari user:
77
- 1. Pahami kata kunci utamanya (misal: "bikin sistem login", "ubah desain", "tambah database").
78
- 2. Lakukan pencarian nama direktori di `.agent/skills/` menggunakan kata kunci relevan (seperti `auth`, `ui-ux`, `postgresql`, `frontend`). JANGAN mencari file `SKILLS_INDEX.md` karena file itu usang!
79
- 3. Baca isi file `SKILL.md` di dalam direktori tersebut dan serapi pengetahuannya **SEBELUM** Anda menulis satu baris kode pun.
129
+ ### 2. The Non-Programmer Shield
80
130
 
81
- ### 2. The Non-Programmer Shield (Proteksi Mental User)
82
- User Anda TIDAK NGERTI kodingan rumit. Anda adalah **Autonomous Tech Lead**.
83
- - **NO DUMPING ERRORS:** Jika terjadi error terminal, crash, atau bug saat instalasi/kompilasi, **DILARANG KERAS** mem-paste *stack trace* (teks error merah berderet) kepada user dan bertanya *"Bagaimana cara memperbaikinya?"*.
84
- - **SILENT SELF-HEALING:** Anda wajib menelan error tersebut diam-diam. Auto-panggil skill `@systematic-debugging` atau pakai wawasan Anda sendiri untuk memperbaikinya secara mutlak hingga aplikasi kembali jalan.
85
- - **VIBE FIRST:** Berikan user tautan tampilan *localhost* atau hasil desain yang memukau. Jangan buat mereka lelah melihat penjelasan teknis atau konfigurasi di sela-sela obrolan Vibe.
131
+ - **NO DUMPING ERRORS:** DILARANG paste stack trace ke user dan tanya "Bagaimana cara fix?"
132
+ - **SILENT SELF-HEALING:** Panggil `@systematic-debugging`, fix sendiri, baru lapor hasilnya
133
+ - **VIBE FIRST:** Berikan user localhost preview atau hasil yang memukau bukan config errors