create-vasvibe 2.4.0 → 2.5.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 (286) hide show
  1. package/README.md +170 -167
  2. package/bin/cli.mjs +9 -9
  3. package/package.json +45 -45
  4. package/src/git.mjs +47 -47
  5. package/src/index.mjs +228 -228
  6. package/src/prompts.mjs +113 -113
  7. package/src/scaffold.mjs +74 -74
  8. package/src/upgrade.mjs +121 -121
  9. package/src/utils.mjs +91 -91
  10. package/template/.agents/agents/analyst/agent.json +43 -43
  11. package/template/.agents/agents/backend/agent.json +44 -44
  12. package/template/.agents/agents/data-architect/agent.json +43 -43
  13. package/template/.agents/agents/devops/agent.json +44 -44
  14. package/template/.agents/agents/discovery/agent.json +43 -43
  15. package/template/.agents/agents/document/agent.json +43 -43
  16. package/template/.agents/agents/fixer/agent.json +44 -44
  17. package/template/.agents/agents/frontend/agent.json +44 -44
  18. package/template/.agents/agents/fullstack/agent.json +44 -44
  19. package/template/.agents/agents/initiator/agent.json +41 -41
  20. package/template/.agents/agents/{explorer → manual-tester}/agent.json +4 -3
  21. package/template/.agents/agents/orchestrator/agent.json +44 -44
  22. package/template/.agents/agents/pm/agent.json +42 -42
  23. package/template/.agents/agents/qa/agent.json +44 -44
  24. package/template/.agents/agents/reliability/agent.json +44 -44
  25. package/template/.agents/agents/security/agent.json +44 -44
  26. package/template/.agents/agents/sysarch/agent.json +44 -44
  27. package/template/.agents/agents/tester/agent.json +44 -44
  28. package/template/.agents/agents/toolsmith/agent.json +44 -44
  29. package/template/.agents/agents/ux-designer/agent.json +43 -43
  30. package/template/.agents/skills/find-skills/SKILL.md +142 -142
  31. package/template/.agents/skills/fullstack/SKILL.md +89 -89
  32. package/template/.agents/skills/penetration-testing/SKILL.md +94 -94
  33. package/template/.agents/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
  34. package/template/.agents/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
  35. package/template/.agents/skills/penetration-testing/scripts/security-checklist.sh +30 -30
  36. package/template/.agents/skills/pm/SKILL.md +170 -170
  37. package/template/.agents/skills/ui-ux-pro-max/SKILL.md +658 -658
  38. package/template/.agents/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
  39. package/template/.agents/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
  40. package/template/.agents/skills/ui-ux-pro-max/data/design.csv +1775 -1775
  41. package/template/.agents/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
  42. package/template/.agents/skills/ui-ux-pro-max/data/icons.csv +105 -105
  43. package/template/.agents/skills/ui-ux-pro-max/data/products.csv +162 -162
  44. package/template/.agents/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  45. package/template/.agents/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
  46. package/template/.agents/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  47. package/template/.agents/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  48. package/template/.agents/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  49. package/template/.agents/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  50. package/template/.agents/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
  51. package/template/.agents/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  52. package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  53. package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  54. package/template/.agents/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  55. package/template/.agents/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  56. package/template/.agents/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  57. package/template/.agents/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  58. package/template/.agents/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
  59. package/template/.agents/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  60. package/template/.agents/skills/ui-ux-pro-max/data/typography.csv +74 -74
  61. package/template/.agents/skills/ui-ux-pro-max/scripts/core.py +262 -262
  62. package/template/.agents/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
  63. package/template/.agents/workflows/build-feature.md +21 -21
  64. package/template/.agents/workflows/daily-standup.md +16 -16
  65. package/template/.agents/workflows/deliver-feature.md +16 -16
  66. package/template/.agents/workflows/harden-release.md +21 -21
  67. package/template/.agents/workflows/plan-project.md +25 -25
  68. package/template/.agents/workflows/release.md +18 -18
  69. package/template/.agents/workflows/security-audit.md +19 -19
  70. package/template/.agents/workflows/setup-workspace.md +21 -21
  71. package/template/.agents/workflows/start-fix.md +17 -18
  72. package/template/.agents/workflows/test-feature.md +17 -17
  73. package/template/.claude/agents/analyst.md +75 -104
  74. package/template/.claude/agents/backend.md +61 -61
  75. package/template/.claude/agents/data-architect.md +43 -43
  76. package/template/.claude/agents/devops.md +44 -43
  77. package/template/.claude/agents/discovery.md +51 -51
  78. package/template/.claude/agents/document.md +51 -51
  79. package/template/.claude/agents/fixer.md +83 -81
  80. package/template/.claude/agents/frontend.md +58 -60
  81. package/template/.claude/agents/fullstack.md +84 -85
  82. package/template/.claude/agents/initiator.md +74 -74
  83. package/template/.claude/agents/manual-tester.md +108 -0
  84. package/template/.claude/agents/orchestrator.md +115 -133
  85. package/template/.claude/agents/pm.md +199 -199
  86. package/template/.claude/agents/qa.md +66 -65
  87. package/template/.claude/agents/reliability.md +48 -47
  88. package/template/.claude/agents/security.md +107 -106
  89. package/template/.claude/agents/sysarch.md +301 -301
  90. package/template/.claude/agents/tester.md +100 -100
  91. package/template/.claude/agents/toolsmith.md +77 -76
  92. package/template/.claude/agents/ux-designer.md +45 -45
  93. package/template/.claude/commands/build-feature.md +22 -22
  94. package/template/.claude/commands/daily-standup.md +16 -16
  95. package/template/.claude/commands/deliver-feature.md +17 -17
  96. package/template/.claude/commands/harden-release.md +22 -22
  97. package/template/.claude/commands/manual-test.md +19 -0
  98. package/template/.claude/commands/plan-project.md +26 -26
  99. package/template/.claude/commands/release.md +19 -19
  100. package/template/.claude/commands/security-audit.md +20 -20
  101. package/template/.claude/commands/setup-workspace.md +22 -22
  102. package/template/.claude/commands/start-fix.md +18 -19
  103. package/template/.claude/commands/test-feature.md +18 -18
  104. package/template/.claude/skills/find-skills +1 -0
  105. package/template/.claude/skills/penetration-testing/SKILL.md +94 -94
  106. package/template/.claude/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
  107. package/template/.claude/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
  108. package/template/.claude/skills/penetration-testing/scripts/security-checklist.sh +30 -30
  109. package/template/.claude/skills/ui-ux-pro-max/SKILL.md +658 -658
  110. package/template/.claude/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
  111. package/template/.claude/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
  112. package/template/.claude/skills/ui-ux-pro-max/data/design.csv +1775 -1775
  113. package/template/.claude/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
  114. package/template/.claude/skills/ui-ux-pro-max/data/icons.csv +105 -105
  115. package/template/.claude/skills/ui-ux-pro-max/data/products.csv +162 -162
  116. package/template/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  117. package/template/.claude/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
  118. package/template/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  119. package/template/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  120. package/template/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  121. package/template/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  122. package/template/.claude/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
  123. package/template/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  124. package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  125. package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  126. package/template/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  127. package/template/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  128. package/template/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  129. package/template/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  130. package/template/.claude/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
  131. package/template/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  132. package/template/.claude/skills/ui-ux-pro-max/data/typography.csv +74 -74
  133. package/template/.claude/skills/ui-ux-pro-max/scripts/core.py +262 -262
  134. package/template/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
  135. package/template/.github/prompts/analyst.prompt.md +58 -104
  136. package/template/.github/prompts/backend.prompt.md +44 -44
  137. package/template/.github/prompts/data-architect.prompt.md +38 -38
  138. package/template/.github/prompts/devops.prompt.md +32 -32
  139. package/template/.github/prompts/discovery.prompt.md +39 -39
  140. package/template/.github/prompts/document.prompt.md +14 -14
  141. package/template/.github/prompts/fixer.prompt.md +91 -81
  142. package/template/.github/prompts/frontend.prompt.md +43 -60
  143. package/template/.github/prompts/fullstack.prompt.md +92 -86
  144. package/template/.github/prompts/initiator.prompt.md +55 -55
  145. package/template/.github/prompts/manual-tester.prompt.md +103 -0
  146. package/template/.github/prompts/orchestrator.prompt.md +75 -133
  147. package/template/.github/prompts/pm.prompt.md +186 -186
  148. package/template/.github/prompts/qa.prompt.md +57 -57
  149. package/template/.github/prompts/reliability.prompt.md +44 -44
  150. package/template/.github/prompts/security.prompt.md +41 -41
  151. package/template/.github/prompts/sysarch.prompt.md +351 -351
  152. package/template/.github/prompts/tester.prompt.md +107 -107
  153. package/template/.github/prompts/toolsmith.prompt.md +46 -46
  154. package/template/.github/prompts/ux-designer.prompt.md +41 -41
  155. package/template/.opencode/agents/analyst.md +75 -104
  156. package/template/.opencode/agents/backend.md +61 -61
  157. package/template/.opencode/agents/data-architect.md +43 -43
  158. package/template/.opencode/agents/devops.md +44 -44
  159. package/template/.opencode/agents/discovery.md +51 -51
  160. package/template/.opencode/agents/document.md +51 -51
  161. package/template/.opencode/agents/fixer.md +83 -81
  162. package/template/.opencode/agents/frontend.md +59 -61
  163. package/template/.opencode/agents/fullstack.md +84 -85
  164. package/template/.opencode/agents/initiator.md +74 -74
  165. package/template/.opencode/agents/manual-tester.md +107 -0
  166. package/template/.opencode/agents/orchestrator.md +116 -131
  167. package/template/.opencode/agents/pm.md +199 -199
  168. package/template/.opencode/agents/qa.md +66 -65
  169. package/template/.opencode/agents/reliability.md +48 -48
  170. package/template/.opencode/agents/security.md +107 -107
  171. package/template/.opencode/agents/sysarch.md +301 -301
  172. package/template/.opencode/agents/tester.md +100 -100
  173. package/template/.opencode/agents/toolsmith.md +77 -77
  174. package/template/.opencode/agents/ux-designer.md +45 -45
  175. package/template/.opencode/commands/build-feature.md +21 -21
  176. package/template/.opencode/commands/daily-standup.md +16 -16
  177. package/template/.opencode/commands/deliver-feature.md +16 -16
  178. package/template/.opencode/commands/harden-release.md +21 -21
  179. package/template/.opencode/commands/manual-test.md +18 -0
  180. package/template/.opencode/commands/plan-project.md +25 -25
  181. package/template/.opencode/commands/release.md +18 -18
  182. package/template/.opencode/commands/security-audit.md +19 -19
  183. package/template/.opencode/commands/setup-workspace.md +21 -21
  184. package/template/.opencode/commands/start-fix.md +17 -18
  185. package/template/.opencode/commands/test-feature.md +17 -17
  186. package/template/.opencode/skills/penetration-testing/SKILL.md +94 -94
  187. package/template/.opencode/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
  188. package/template/.opencode/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
  189. package/template/.opencode/skills/penetration-testing/scripts/security-checklist.sh +30 -30
  190. package/template/.opencode/skills/ui-ux-pro-max/SKILL.md +658 -658
  191. package/template/.opencode/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
  192. package/template/.opencode/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
  193. package/template/.opencode/skills/ui-ux-pro-max/data/design.csv +1775 -1775
  194. package/template/.opencode/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
  195. package/template/.opencode/skills/ui-ux-pro-max/data/icons.csv +105 -105
  196. package/template/.opencode/skills/ui-ux-pro-max/data/products.csv +162 -162
  197. package/template/.opencode/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  198. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
  199. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  200. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  201. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  202. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  203. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
  204. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  205. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  206. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  207. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  208. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  209. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  210. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  211. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
  212. package/template/.opencode/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  213. package/template/.opencode/skills/ui-ux-pro-max/data/typography.csv +74 -74
  214. package/template/.opencode/skills/ui-ux-pro-max/scripts/core.py +262 -262
  215. package/template/.opencode/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
  216. package/template/AGENT_PERSONAS.md +595 -551
  217. package/template/GIT_STRUCTURE_GUIDE.md +270 -270
  218. package/template/PROJECT_README.example.md +81 -81
  219. package/template/QUICK-START.md +134 -131
  220. package/template/README.md +1942 -1919
  221. package/template/_gitignore +141 -138
  222. package/template/agent/workflows/_shared/change-management.md +70 -70
  223. package/template/agent/workflows/_shared/git-branch-management.md +25 -25
  224. package/template/agent/workflows/_shared/phases.md +88 -88
  225. package/template/agent/workflows/_shared/state-management.md +87 -87
  226. package/template/agent/workflows/_shared/work-depth.md +46 -46
  227. package/template/agent/workflows/analyst.md +75 -104
  228. package/template/agent/workflows/backend.md +61 -61
  229. package/template/agent/workflows/data-architect.md +43 -43
  230. package/template/agent/workflows/devops.md +44 -44
  231. package/template/agent/workflows/discovery.md +51 -51
  232. package/template/agent/workflows/document.md +51 -51
  233. package/template/agent/workflows/fixer.md +83 -81
  234. package/template/agent/workflows/frontend.md +58 -60
  235. package/template/agent/workflows/fullstack.md +84 -86
  236. package/template/agent/workflows/initiator.md +74 -74
  237. package/template/agent/workflows/manual-tester.md +103 -0
  238. package/template/agent/workflows/orchestrator.md +114 -133
  239. package/template/agent/workflows/pm.md +199 -199
  240. package/template/agent/workflows/qa.md +66 -66
  241. package/template/agent/workflows/reliability.md +48 -48
  242. package/template/agent/workflows/security.md +107 -107
  243. package/template/agent/workflows/sysarch.md +301 -301
  244. package/template/agent/workflows/tester.md +100 -100
  245. package/template/agent/workflows/toolsmith.md +77 -77
  246. package/template/agent/workflows/ux-designer.md +45 -45
  247. package/template/codes/.gitkeep +1 -1
  248. package/template/project_overview_example.md +54 -54
  249. package/template/schemas/adr.template.md +36 -36
  250. package/template/schemas/changelog.template.md +34 -34
  251. package/template/schemas/data-model.template.md +57 -57
  252. package/template/schemas/design-system.template.md +63 -63
  253. package/template/schemas/dev_log.template.md +20 -20
  254. package/template/schemas/product-ci.template.yml +50 -50
  255. package/template/schemas/requirements.template.md +64 -64
  256. package/template/schemas/security-standards.template.md +58 -58
  257. package/template/schemas/security_report.template.md +89 -89
  258. package/template/schemas/specification.template.md +57 -71
  259. package/template/schemas/style_guide.template.md +29 -29
  260. package/template/schemas/task_list.template.md +28 -28
  261. package/template/schemas/workspace-manifest.template.json +24 -24
  262. package/template/schemas/workspace-registry.json +94 -95
  263. package/template/skills-lock.json +11 -11
  264. package/template/specifications/.gitkeep +1 -3
  265. package/template/state/knowledge_base/.gitkeep +1 -1
  266. package/template/state/knowledge_base/requirements/.gitkeep +1 -1
  267. package/template/tests/.gitkeep +1 -1
  268. package/template/.agents/agents/logger/agent.json +0 -43
  269. package/template/.agents/workflows/build-prototype.md +0 -32
  270. package/template/.agents/workflows/explorer.md +0 -78
  271. package/template/.agents/workflows/logger.md +0 -117
  272. package/template/.agents/workflows/plan-feature.md +0 -30
  273. package/template/.claude/agents/explorer.md +0 -138
  274. package/template/.claude/agents/logger.md +0 -143
  275. package/template/.claude/commands/build-prototype.md +0 -33
  276. package/template/.claude/commands/plan-feature.md +0 -31
  277. package/template/.claude/settings.local.json +0 -44
  278. package/template/.claude/skills/find-skills/SKILL.md +0 -142
  279. package/template/.github/prompts/explorer.prompt.md +0 -133
  280. package/template/.github/prompts/logger.prompt.md +0 -138
  281. package/template/.opencode/agents/explorer.md +0 -137
  282. package/template/.opencode/agents/logger.md +0 -142
  283. package/template/.opencode/commands/build-prototype.md +0 -32
  284. package/template/.opencode/commands/plan-feature.md +0 -30
  285. package/template/agent/workflows/explorer.md +0 -133
  286. package/template/agent/workflows/logger.md +0 -138
@@ -1,1921 +1,1944 @@
1
- # 🌊 Vibe Coding Workflow
1
+ # 🌊 Vibe Coding Workflow
2
2
 
3
3
  > _This README ships from the [`create-vasvibe`](https://www.npmjs.com/package/create-vasvibe) starter. Examples reference a boat tour booking project (Labuan Bajo) for illustration. Replace examples with your own context as needed._
4
-
5
- Selamat datang di ekosistem **Vibe Coding**.
6
- Ini adalah standar alur kerja pengembangan software berbasis **AI Agent** yang mengutamakan struktur, dokumentasi otomatis, dan validasi berjenjang.
7
- Template ini telah berevolusi dan secara *native* mendukung integrasi untuk berbagai AI agent environment mutakhir:
8
- - **Google Antigravity** (`.agents/`)
9
- - **Claude Code** (`.claude/`)
10
- - **OpenCode** (`.opencode/`)
11
- - **GitHub Copilot Workspace** (`.github/prompts/`)
12
- - Serta dilengkapi **Shared Agent Workflows** (`agent/workflows/`) sebagai *source of truth* agar perilaku agen konsisten di seluruh platform.
13
-
14
- ---
15
-
16
- ## ⚡ Quick start (untuk tim baru)
17
-
18
- Gunakan *command* CLI resmi untuk melakukan scaffolding project baru. Proses ini akan meng-copy seluruh konfigurasi agent, prompt, skills, serta kerangka direktori standar tim ke project baru Anda:
19
-
20
- ```bash
21
- # Interaktif (akan ada pertanyaan)
22
- npx create-vasvibe my-new-project
23
-
24
- # Masuk ke direktori kerja
25
- cd my-new-project
26
- ```
27
-
28
- **Struktur yang Ter-scaffold Otomatis:**
29
- - `codes/`, `specifications/`, `tests/` — folder kerja utama (telah dilindungi oleh aturan `.gitignore` agar tidak berantakan).
30
- - Kerangka prompt dari seluruh environment (`.agents`, `.claude`, `.opencode`, `.github`, `agent/workflows`).
31
- - File standard: `project_overview_example.md`, `GIT_STRUCTURE_GUIDE.md`, `skills-lock.json`.
32
-
33
- **Opsi / Flag Tambahan:**
34
- | Flag | Deskripsi |
35
- |------|-----------|
36
- | `-y, --yes` | Skip semua pertanyaan (gunakan setting default) |
37
- | `--no-git` | Jangan jalankan `git init` secara otomatis |
38
- | `--no-opencode` | Abaikan folder `.opencode/` |
39
- | `--no-claude` | Abaikan folder `.claude/` dan `.agents/` |
40
- | `--no-github` | Abaikan folder `.github/prompts/` |
41
- | `--no-workflows` | Abaikan folder `agent/workflows/` |
42
-
43
-
44
- ## 🤖 Tentang AI Agent
45
-
46
- **AI Agent** adalah sistem cerdas berbasis Large Language Model (LLM) yang dapat mengeksekusi tugas-tugas kompleks secara mandiri dengan menggunakan **tools** (function calling). Berbeda dengan chatbot biasa yang hanya menjawab pertanyaan, AI Agent dapat:
47
-
48
- - 🔍 **Membaca & menganalisis** file di workspace
49
- - ✍️ **Menulis & mengedit** kode berdasarkan spesifikasi
50
- - 🔧 **Menjalankan command** di terminal (build, test, deploy)
51
- - 🧠 **Mengambil keputusan** berdasarkan context dan error feedback
52
- - 📝 **Membuat dokumentasi** otomatis dari perubahan yang dilakukan
53
-
54
- Dalam workflow ini, kita menggunakan **19 AI Agent persona** yang bekerja secara terspesialisasi (mirip tim development sesungguhnya) di dalam **4-fase model**: Perencanaan → Pengerjaan → Testing → Hardening.
55
-
56
- ---
57
-
58
- ## 🚀 Filosofi (v2.2)
59
-
60
- 1. **4-Phase Model (Fase Gated):** Perencanaan → Pengerjaan → Testing → Hardening. Tiap fase ada **gate** (checkpoint manusia) sebelum lanjut fase berikutnya. Tidak ada yang jalan diam-diam.
61
- 2. **No Silent Changes:** Setiap perubahan yang diminta harus **ditulis ke dokumen acuan** (spec, requirement, ADR) dan di-propagate ke agen terkait. Result: rework minimal, audit trail jelas.
62
- 3. **Context is King:** AI tidak bisa bekerja tanpa konteks. `project_overview.md` + specifications/ adalah otak proyek.
63
- 4. **Work Depth Flexibility:** 3 level kedalaman (`fast`/`standard`/`deep`). Mulai fast untuk validate ide, naik standard saat serius, deep hanya untuk area sensitif.
64
- 5. **Tool-Agnostic Workflow:** Agent berjalan di Claude Code, OpenCode, GitHub Copilot, Antigravity. Source of truth di `agent/workflows/`, propagate ke tool-specific folders.
65
- 6. **Desired-State Architecture (Toolsmith):** `state/workspace-manifest.json` adalah manifest platform-agnostic. Toolsmith: install skills + MCP sesuai tech stack, re-applicable saat ganti tool.
66
- 7. **Role Segregation:** 19 agen specialized dengan tanggung jawab clear. Backend ≠ Frontend ≠ Security ≠ DevOps.
67
- 8. **Log Everything:** Setiap sesi coding, testing, fixing tercatat untuk kontinuitas AI memori.
68
- 9. **Human-in-the-Loop:** Manusia = Decision Maker (bisnis, arch, security, UX). AI = Executor (code, test, doc).
69
- 10. **Git Workflow Compliance:** Agen (Developer, QA, Security, Reliability) mengikuti `_shared/git-branch-management.md` ketat.
70
-
71
- ---
72
-
73
- ## 📂 Struktur Direktori Otomatis
74
- Workflow ini akan secara otomatis mengelola struktur folder berikut:
75
-
76
- ```text
77
- root/
78
- ├── .agents/ # [BRAIN] Konfigurasi Google Antigravity & Skills
79
- │ ├── agents/ # Definisi persona agent (analyst, developer, tester, dll)
80
- │ └── skills/ # Folder berisi reusable tools/skills yang dapat diakses oleh agent
81
-
82
- ├── .claude/ # [BRAIN] Konfigurasi & Prompt Claude Code
83
- │ └── agents/
84
-
85
- ├── .opencode/ # [BRAIN] Konfigurasi & Commands OpenCode
86
- │ └── commands/
87
-
88
- ├── .github/ # [BRAIN] Konfigurasi GitHub Copilot Workspace
89
- │ └── prompts/
90
-
91
- ├── agent/workflows/ # [CORE] Source of Truth untuk semua instruksi agent
92
- │ ├── analyst.md
93
- │ ├── developer.md
94
- │ └── ...
95
-
96
- ├── project_overview.md # [MASTER] Definisi produk, tech stack, & UI/UX
97
- │ # 👤 HUMAN: Review & approve setelah Initiator Agent buat
98
-
99
- ├── state/ # [CONFIG] Workspace manifest & knowledge base ⭐ v2.2
100
- │ ├── workspace-manifest.json # Desired-state: skills[], mcp[], appliedTo platform
101
- │ └── knowledge_base/ # Living docs: architecture, data-model, design-system, security, ADR/
102
- │ ├── architecture.md
103
- │ ├── data-model.md
104
- │ ├── design-system.md
105
- │ ├── security-standards.md
106
- │ └── adr/ # Keputusan teknis (Architecture Decision Records)
107
-
108
- ├── specifications/ # [DOCS] Output dari Analyst Agent
109
- │ ├── README.md # Index semua spesifikasi
110
- │ ├── 000_spec_environment_setup.md # Infrastruktur (Wajib pertama)
111
- │ ├── 001_spec_database_schema.md
112
- │ ├── requirements.md # Hasil Discovery Agent (user story, constraint, scope)
113
- │ └── api-contract.md # API Contract (final sebelum Fase 2)
114
-
115
- ├── task/ # [PROJECT MANAGEMENT] Output dari PM Agent
116
- │ ├── task_list.md # Central task tracking (priority, status, dependencies)
117
- │ ├── PROJECT_STATUS_REPORT.md # Progress reports
118
- │ ├── TASK-001/ # Folder khusus per task
119
- │ │ ├── plan.md # Rencana kerja & log eksekusi task terkait
120
- │ │ └── ...
121
- │ └── TASK-002/ # Setiap task baru akan diisolasi ke dalam sub-folder tersendiri
122
-
123
- ├── codes/ # [SRC] Output dari Backend + Frontend atau Fullstack
124
- │ ├── docker-compose.yml
125
- │ ├── package.json
126
- │ ├── app/ # Aplikasi utama
127
- │ └── ... # 👤 HUMAN: Code review & testing manual
128
-
129
- ├── tests/ # [TEST] Output dari Tester Agent
130
- │ ├── e2e/ # Playwright E2E tests
131
- │ └── integration/ # Integration tests
132
-
133
- ├── logs/ # [TRACKING] Auto-generated logs per phase
134
- │ ├── development/ # Backend + Frontend + Fullstack logs
135
- │ ├── testing/ # Tester Agent logs
136
- │ └── fixing/ # Bug fixing logs
137
-
138
- └── documentation/ # [FINAL] Technical Writer output
139
- ├── FSD_{{projectName}}.md # Functional Specification Document
140
- └── API_Documentation.md
141
- ```
142
-
143
- **Legend:**
144
- - 🤖 **Auto-generated:** File dibuat oleh AI Agent
145
- - 👤 **Human review required:** File perlu di-review manusia sebelum lanjut
146
- - 📝 **Living document:** File yang terus di-update
147
-
148
- ---
149
-
150
- ## 📊 Folder `state/` — Workspace State & Knowledge Base
151
-
152
- Folder ini adalah **jantung kontinuitas project** — menyimpan manifest provisioning, context session, dan knowledge base project.
153
-
154
- ### **Struktur dan Fungsi**
155
-
156
- ```
157
- state/
158
- ├── workspace-manifest.json # 🤖 Desired-state (platform-agnostic)
159
- ├── context.json # 🤖 Session continuity (agent handoff)
160
- ├── agent_handoff.json # 🤖 Current handoff (agent-to-agent)
161
- └── knowledge_base/ # 📝 Living docs (architecture, design, decisions)
162
- ├── requirements/ # User stories, scope, constraint dari Discovery
163
- ├── architecture.md # High-level design (system architecture, tech decisions)
164
- ├── data-model.md # Database schema, ERD, relationships
165
- ├── design-system.md # UI/UX guidelines (colors, typography, components)
166
- ├── security-standards.md # Security policies, compliance requirements
167
- └── decisions/ # ADR (Architecture Decision Records)
168
- └── adr-001-*.md # Keputusan teknis signifikan (why, trade-offs)
169
- ```
170
-
171
- ### **1. workspace-manifest.json** — Agentic Workspace Provisioning
172
-
173
- **Ditulis oleh:** Toolsmith agent (mode `init`, `switch`, `sync`)
174
-
175
- **Dibaca oleh:** Toolsmith, Orchestrator (untuk verify readiness)
176
-
177
- **Fungsi:** Platform-agnostic source of truth untuk workspace setup.
178
-
179
- ```json
180
- {
181
- "project": "booking-kapal-wisata",
182
- "decidedFrom": ["project_overview.md tech stack", "find-skills"],
183
- "skills": [
184
- { "id": "find-skills", "reason": "discover further skills" },
185
- { "id": "ui-ux-pro-max", "reason": "Next.js + Tailwind UI" }
186
- ],
187
- "mcp": [
188
- { "id": "filesystem", "reason": "workspace grounding" },
189
- { "id": "git", "reason": "code-aware context" }
190
- ],
191
- "appliedTo": {
192
- "claude-code": "2025-06-23 09:15",
193
- "opencode": null,
194
- "antigravity": null,
195
- "github-copilot": null
196
- },
197
- "revisionHistory": [
198
- { "timestamp": "2025-06-23 09:15", "agent": "toolsmith", "change": "initial provisioning" }
199
- ]
200
- }
201
- ```
202
-
203
- **Workflow Toolsmith:**
204
- - **Mode init** (Fase 1 step 3b) — Toolsmith read `project_overview.md` tech stack, konsultasi `schemas/workspace-registry.json`, derive skills + MCP, tulis manifest, apply ke tool aktif
205
- - **Mode sync** (Fase 2 step 0) — Verify manifest sesuai config aktual, deteksi drift, update jika perlu
206
- - **Mode switch** (developer pindah tool) — Read manifest lama, apply ke tool baru tanpa re-derive
207
-
208
- **Aturan:**
209
- - Manifest adalah keputusan shared — jika ada request ganti skill/MCP, **update dokumen acuan terlebih dahulu** (No Silent Changes)
210
- - Secrets (API keys, db password) ditulis sebagai `${VAR}` placeholder → developer isi di `.env`
211
- - Per-tool config files (`.mcp.json`, `opencode.json`, dll) adalah **derived artifacts** — jangan edit manual, biarkan Toolsmith manage
212
-
213
- ---
214
-
215
- ### **2. context.json** — Session Continuity
216
-
217
- **Ditulis oleh:** Setiap agent di **akhir session** (jika ada perubahan)
218
-
219
- **Dibaca oleh:** Setiap agent di **awal session** (context awareness)
220
-
221
- **Fungsi:** Menjaga continuity workflow antar-session/antar-developer.
222
-
223
- ```json
224
- {
225
- "project_name": "booking-kapal-wisata",
226
- "last_updated": "2025-06-23 14:30",
227
- "last_agent": "backend",
228
- "current_sprint": "Sprint 1 - Auth & Database",
229
- "active_tasks": ["TASK-001", "TASK-002"],
230
- "blocked_tasks": [],
231
- "notes": "TASK-001 (Backend Login) ready for QA. TASK-002 (Frontend Login UI) in progress—waiting for API Contract finalization"
232
- }
233
- ```
234
-
235
- **Aturan:**
236
- - Setiap agent WAJIB baca file ini di awal untuk understand status project
237
- - Update di akhir dengan status terkini, task active, blocker, dll
238
- - Format ketat (JSON) — parser automation bergantung pada structure consistent
239
-
240
- **Contoh flow:**
241
- ```
242
- Backend Agent (09:00) baca context.json
243
- → lanjut TASK-001 dari status "dev"
244
- → selesai, update context: active_tasks=[TASK-002], last_agent="backend", notes="ready for QA"
245
- → simpan context.json
246
-
247
- Frontend Agent (10:00) baca context.json
248
- → lihat last_agent="backend", notes="ready for QA"
249
- → understand Backend sudah selesai, siap kolaborasi via API Contract
250
- → lanjut TASK-002
251
- → update context di akhir
252
- ```
253
-
254
- ---
255
-
256
- ### **3. agent_handoff.json** — Agent-to-Agent Handoff
257
-
258
- **Ditulis oleh:** Agent yang mengirim task (overwrite setiap handoff)
259
-
260
- **Dibaca oleh:** Agent penerima (instruction + artifacts)
261
-
262
- **Fungsi:** Detailed handoff notes + artifact pointers untuk agent berikutnya.
263
-
264
- ```json
265
- {
266
- "from_agent": "backend",
267
- "to_agent": "qa",
268
- "task_id": "TASK-001",
269
- "timestamp": "2025-06-23 14:30",
270
- "status": "ready_to_test",
271
- "notes": "Login API selesai (POST /api/auth/login, POST /api/auth/refresh). Test case priority: validasi email invalid, password wrong, token refresh expired.",
272
- "artifacts": [
273
- "codes/src/app/api/auth/login/route.ts",
274
- "codes/src/app/api/auth/refresh/route.ts",
275
- "logs/development/dev_001_login.md"
276
- ]
277
- }
278
- ```
279
-
280
- **Aturan:**
281
- - Hanya menyimpan handoff **terakhir** (overwrite, jangan append)
282
- - Artifacts path harus relative ke repo root
283
- - Gunakan saat menyerahkan task antar-agent formal (bukan sekadar update status di task_list.md)
284
-
285
- ---
286
-
287
- ### **4. knowledge_base/** — Living Documentation
288
-
289
- **Ditulis oleh:** Berbagai agen (Discovery, Analyst, Data Architect, UX Designer, Security, PM)
290
-
291
- **Dibaca oleh:** Semua agen (setiap agen wajib baca acuan sebelum kerja)
292
-
293
- **Fungsi:** Single source of truth untuk architectural decisions, design, security policies, dll.
294
-
295
- #### **knowledge_base/requirements/**
296
- - Ditulis oleh: **Discovery Agent** (Fase 1 awal)
297
- - Isi: User stories, scope, constraint, acceptance criteria, assumptions
298
- - Dibaca oleh: Initiator, Analyst, PM
299
- - Update: Discovery/Analyst saat scope berubah (dengan gate)
300
-
301
- #### **knowledge_base/architecture.md**
302
- - Ditulis oleh: **Initiator** → high-level, **Backend/DevOps** → detailed
303
- - Isi: System design, tech stack rationale, API patterns, deployment strategy
304
- - Dibaca oleh: Semua agen (terutama Backend, Frontend, DevOps)
305
- - Update: Saat ada architectural change (ADR required)
306
-
307
- #### **knowledge_base/data-model.md**
308
- - Ditulis oleh: **Data Architect** (Fase 1), **Backend** (maintenance)
309
- - Isi: Database schema, ERD, indexes, relationships, data governance
310
- - Dibaca oleh: Backend, Frontend (untuk API contract), Analyst
311
- - Update: Saat ada schema change (migration + dokumentasi)
312
-
313
- #### **knowledge_base/design-system.md**
314
- - Ditulis oleh: **UX Designer** (Fase 1), **Frontend** (maintenance)
315
- - Isi: Color palette, typography, component library, motion, accessibility
316
- - Dibaca oleh: Frontend, Backend (untuk validation), Design feedback
317
- - Update: Saat ada design change (dengan gate)
318
-
319
- #### **knowledge_base/security-standards.md**
320
- - Ditulis oleh: **Security Expert** (Fase 1 Mode S, atau Fase 4 audit)
321
- - Isi: Authentication strategy, encryption, data protection, OWASP, compliance
322
- - Dibaca oleh: Backend, DevOps, QA (untuk security testing)
323
- - Update: Saat ada security audit findings atau new requirement (dengan gate)
324
-
325
- #### **knowledge_base/decisions/**
326
- - ADR (Architecture Decision Records) untuk keputusan signifikan
327
- - Format: ADR-001-*.md (title-kebab-case)
328
- - Isi: Decision, context, alternatives considered, rationale, consequences
329
- - Ditulis oleh: Agent yang propose (dengan human approval)
330
- - Dibaca oleh: Semua agen (sebelum buat keputusan serupa)
331
-
332
- ---
333
-
334
- ### **Aturan Interaksi state/ folder** ⚠️
335
-
336
- #### **1. Read sebelum action**
337
- ```bash
338
- # Setiap agent WAJIB baca di awal session:
339
- 1. context.json — understand current status
340
- 2. agent_handoff.json — jika ada handoff yang ditunggu
341
- 3. knowledge_base/* — acuan untuk domain spesifik
342
- ```
343
-
344
- #### **2. Update dengan disiplin**
345
- - **context.json** — update hanya di akhir session (jika ada change)
346
- - **agent_handoff.json** — tulis hanya saat handoff formal antar-agent
347
- - **knowledge_base/** — update hanya jika change terverifikasi/approved (No Silent Changes)
348
-
349
- #### **3. Jangan edit manual**
350
- - `workspace-manifest.json` — Toolsmith yang kelola (jangan diedit manual)
351
- - `context.json`, `agent_handoff.json` — Agent yang kelola (format ketat untuk parser)
352
- - `knowledge_base/` — Hanya agen authorized yang edit (Discovery → requirements, Architect → architecture, dll)
353
-
354
- #### **4. Conflict resolution**
355
- - Jika ada conflict di `knowledge_base/` (dua agen edit file sama), **winner adalah yang lebih recent** (by timestamp)
356
- - Jika conflict signifikan, human harus approve di gate
357
-
358
- #### **5. Tidak ada "hardcoded state"**
359
- - state/ folder adalah **tentative** (bisa berubah saat gate review)
360
- - Final truth tetap di dokumen acuan (specifications/, project_overview.md)
361
- - state/ adalah **convenience cache** untuk agen continuity, bukan single source of truth
362
-
363
- ---
364
-
365
- ### **Contoh Workflow Lengkap**
366
-
367
- ```
368
- 🟦 FASE 1 (Perencanaan)
369
-
370
- [Discovery] Interview → tulis requirements.md di state/knowledge_base/requirements/
371
- [Initiator] Baca requirements.md → tulis project_overview.md + architecture.md di knowledge_base/
372
- [Analyst] Baca project_overview.md → tulis api-contract.md di specifications/
373
- → Update context.json: active_tasks=[TASK-001], notes="API Contract finalized, ready for Fase 2"
374
- [UX Designer] Baca architecture.md → tulis design-system.md di knowledge_base/
375
- [Data Architect] Baca architecture.md → tulis data-model.md di knowledge_base/
376
- [Toolsmith] (Mode init) Baca project_overview.md → derive workspace manifest → tulis state/workspace-manifest.json
377
- → Apply ke tool aktif (.mcp.json / opencode.json / dll)
378
-
379
- 👤 GATE: Human approve API Contract + workspace setup → Fase 1 done
380
-
381
- ---
382
-
383
- 🟩 FASE 2 (Pengerjaan)
384
-
385
- [Toolsmith] (Mode sync) Verify manifest sesuai config aktif → detect drift jika ada
386
- [Backend] Baca context.json → active_tasks=[TASK-001]
387
- → Baca api-contract.md di specifications/
388
- → Baca data-model.md di knowledge_base/
389
- → Implementasi login API
390
- → Update context.json: last_agent="backend", notes="Login API ready"
391
- → Tulis agent_handoff.json → to_agent="qa", status="ready_to_test"
392
-
393
- [QA] Baca context.json → lihat last_agent="backend"
394
- → Baca agent_handoff.json → understand task & artifacts
395
- → Review code, run security checks
396
- → Approve atau request fix
397
-
398
- [Frontend] Paralel dengan Backend
399
- → Baca api-contract.md, design-system.md
400
- → Implementasi login UI
401
- → Update context.json
402
-
403
- 👤 GATE: Human approve kode → Fase 2 done
404
-
405
- ---
406
-
407
- 🟨 FASE 3 (Testing) & 🟧 FASE 4 (Hardening)
408
-
409
- [Tester] Baca context.json → understand status
410
- → Run E2E tests
411
- → Report findings
412
-
413
- [Security] Baca knowledge_base/security-standards.md (jika ada)
414
- → Audit code
415
- → Propose changes → ADR jika signifikan
416
- → Update knowledge_base/decisions/
417
-
418
- → Update context.json, agent_handoff.json sesuai handoff
419
- ```
420
-
421
- ---
422
-
423
- ### **Best Practice**
424
-
425
- 1. **Treat state/ as continuity**, not source of truth
426
- - Source of truth tetap di `specifications/`, `project_overview.md`, `knowledge_base/`
427
- - state/ adalah **derived convenience** untuk agen awareness
428
-
429
- 2. **Keep context.json brief**
430
- - Jangan simpan data besar — hanya summary + pointers
431
- - Detail ada di task/task_list.md, logs/, artifacts
432
-
433
- 3. **Honor handoff protocol**
434
- - Jangan skip agent_handoff.json saat formal handoff
435
- - Frontend tunggu Backend siap sebelum mulai (via handoff + API Contract)
436
-
437
- 4. **Document decisions**
438
- - Keputusan signifikan (architecture, security, data-model) → ADR di decisions/
439
- - Jangan hanya di chat/notes — harus permanent di KB
440
-
441
- ---
442
-
443
- ## 🤖 19 AI Agent Personas & Capabilities
444
-
445
- {{projectName}} v2.2 menggunakan **19 agent terspesialisasi** di 4 fase:
446
-
447
- **Fase 1 — Perencanaan (Discovery & Blueprint):**
448
- - **Discovery Agent** — Wawancara kebutuhan → requirements.md
449
- - **Initiator Agent** — Tulis project_overview.md (tech stack, UI/UX, roadmap)
450
- - **Data Architect** — Design data model & ERD
451
- - **UX Designer** — Design system (colors, components, motion)
452
- - **Analyst Agent** — Spesifikasi & API Contract
453
- - **Toolsmith Agent** ⭐ NEW — Provisioning workspace agentik (skills + MCP)
454
-
455
- **Fase 2 — Pengerjaan (Implementation):**
456
- - **Backend Engineer** — Server-side API & business logic (standard/deep)
457
- - **Frontend Engineer** — Client-side UI & integration (standard/deep)
458
- - **Fullstack Developer** — Satu developer untuk dua sisi (fast mode)
459
- - **QA Agent** — Code review & static analysis
460
- - **Fixer Agent** — Bug fixing & debugging
461
-
462
- **Fase 3 — Testing (E2E & Verification):**
463
- - **Tester Agent** — Playwright automation & QA testing
464
-
465
- **Fase 4 — Hardening (Release Readiness):**
466
- - **Security Expert**Threat modeling & OWASP audit
467
- - **Reliability Engineer** — Performance & load testing
468
-
469
- **Cross-Phase (Coordination & Documentation):**
470
- - **Orchestrator** — Pipeline coordinator (/plan-project, /build-feature, /test-feature, /release, dll)
471
- - **PM Agent** — Task management & progress tracking
472
- - **DevOps Agent** — Infrastructure & CI/CD setup
473
- - **Document Agent** — Technical documentation
474
-
475
- > 🔗 **Detail lengkap** mengenai cara kerja, rules, integrasi alur tugas, serta kemampuan (*capabilities*) dari tiap-tiap agen dapat dibaca di panduan terpisah:
476
- > 👉 **[BACA: Panduan Persona & Kemampuan Agen (AGENT_PERSONAS.md)](./AGENT_PERSONAS.md)**
477
-
478
- ---
479
-
480
- ## ✨ Perubahan Utama v2.2
481
-
482
- ### **1. Toolsmith Agent — Workspace Provisioning Agentik** ⭐
483
- Agen baru (ke-19) yang mengotomatisasi setup AI tool. Membedakan:
484
- - **Toolsmith** → Setup tool AI (skills + MCP) untuk agent bekerja optimal
485
- - **DevOps** → Setup runtime produk (Docker, infrastructure)
486
-
487
- **Desired-State Architecture:**
488
- - `state/workspace-manifest.json` — Single source of truth (platform-agnostic)
489
- - Per-tool config (`.mcp.json`, `opencode.json`, `.vscode/mcp.json`)Derived artifacts
490
- - `/setup-workspace [init|switch|sync]` Otomatis detect tool aktif, apply manifest
491
-
492
- **Benefit:** Ganti tool (Claude Code → OpenCode) tanpa re-derive requirements. Just run `/setup-workspace switch tool=opencode`.
493
-
494
- ### **2. Developer → Fullstack (v2.0 contd.)**
495
- - **Fast mode** (`depth=fast`) Satu **Fullstack** developer
496
- - **Standard/Deep** (`depth=standard|deep`) → **Backend + Frontend paralel** via API Contract
497
-
498
- ### **3. Multi-Tool Support Sync** ⭐ v2.2
499
- - **GitHub Copilot prompt files** `.github/prompts/*.prompt.md` (19 agents synced)
500
- - **Source of truth** → `agent/workflows/` (auto-propagate ke `.claude/`, `.opencode/`, `.agents/`, `.github/prompts/`)
501
- - **Template sync** → `npm run sync-template` (create-vasvibe template always up-to-date)
502
-
503
- ### **4. Git Workflow Audit** ⭐ v2.2
504
- - **4 agen** ditambahkan pointer ke `_shared/git-branch-management.md`:
505
- - DevOps (sebelum menulis infrastructure code)
506
- - QA (code review checkpoint)
507
- - Security (vulnerability fix phase)
508
- - Reliability (hardening phase)
509
- - **Kenapa:** Consistency git workflow di semua agen, prevent merge conflicts
510
-
511
- ### **5. No Silent Changes Protocol** ⭐ v2.0
512
- Setiap perubahan yang diminta **harus ditulis ke dokumen acuan**:
513
- - Request change Analyst (atau agen terkait) update spec/requirement/design-system
514
- - Dokumen di-review & approve
515
- - Agen downstream di-notify
516
- - Result: No rework, clear audit trail
517
-
518
- ---
519
-
520
- ## 🛠️ Cara Memulai (Step-by-Step)
521
-
522
- ### **4-Phase Model Ringkas**
523
-
524
- Workflow ini diorganisir dalam **4 fase**, tiap fase diakhiri **gate** (approval manusia):
525
-
526
- ```
527
- 🟦 FASE 1: Perencanaan
528
- Discovery Requirements → project_overview.md → Tech stack + Design system → Spesifikasi → API Contract
529
- GATE: Approve API Contract
530
-
531
- 🟩 FASE 2: Pengerjaan
532
- Analyst spec-lock Backend + Frontend coding paralel (atau Fullstack fast) → QA review
533
- GATE: Approve kode
534
-
535
- 🟨 FASE 3: Testing
536
- E2E Playwright tests → Fixer fixes bugs sampai hijau
537
- GATE: Approve test results
538
-
539
- 🟧 FASE 4: Hardening
540
- Security audit + Reliability test → CHANGELOG → Git tag
541
- GATE: Approve rilis
542
- ```
543
-
544
- **Aturan:**
545
- - Tidak boleh lanjut fase tanpa approval di gate
546
- - Setiap perubahan dicatat ke dokumen acuan (No Silent Changes)
547
- - Jika ada blocker discuss & document, jangan skip
548
-
549
- ---
550
-
551
- ### **Phase 1: Perencanaan** 👤🤖
552
-
553
- **Step 0: Tentukan Work Depth**
554
-
555
- Buka `project_overview.md` (atau buat baru), set:
556
- ```yaml
557
- WORK_DEPTH: standard # fast | standard | deep
558
- ```
559
-
560
- **Kapan:**
561
- - `fast` — MVP, prototype, eksplorasi ide (Fullstack 1 agen)
562
- - `standard` — Produksi normal (Backend + Frontend terpisah) **← DEFAULT**
563
- - `deep` — Fintech, auth, data sensitif (+ Security + Reliability)
564
-
565
- ---
566
-
567
- ### **Phase 1a: Project Initialization** 👤🤖
568
-
569
- **👤 Human Decision:**
570
- 1. Tentukan ide proyek (apa yang ingin dibuat?)
571
- 2. Tentukan scope minimal (MVP) vs future features
572
- 3. Tentukan deadline & budget constraints
573
-
574
- **🤖 AI Execution:**
575
-
576
- **Step 1: Inisialisasi Proyek**
577
-
578
- ```bash
579
- # Di VS Code, panggil Initiator Agent
580
- /initiator
581
- ```
582
-
583
- **Input ke Agent:**
584
- ```
585
- "Aplikasi manajemen booking kapal wisata Labuan Bajo.
586
- Customer bisa booking online, admin bisa manage booking
587
- & pricing, kru bisa lihat jadwal.
588
- Pakai Next.js, PostgreSQL, payment gateway Midtrans.
589
- Target launch April 2025."
590
- ```
591
-
592
- **Output:**
593
- - File `project_overview.md` akan dibuat dengan lengkap
594
-
595
- **👤 Human Review (CRITICAL):**
596
- - [ ] Baca `project_overview.md` dari awal sampai akhir
597
- - [ ] Check tech stack (sudah sesuai kebutuhan?)
598
- - [ ] Check UI/UX guidelines (warna, font, component library)
599
- - [ ] Check development roadmap (realistis tidak?)
600
- - [ ] **APPROVE** atau minta revisi ke Agent
601
-
602
- **⚠️ Jangan lanjut jika belum approve project_overview.md!**
603
-
604
- ---
605
-
606
- ### **Phase 1b: Workspace Provisioning** 🤖 ⭐ v2.2
607
-
608
- **Setelah tech stack diketahui (di project_overview.md), setup workspace agentik:**
609
-
610
- ```bash
611
- /setup-workspace init
612
- ```
613
-
614
- **Toolsmith Agent akan:**
615
- 1. Detect tool aktif (Claude Code? OpenCode? GitHub Copilot?)
616
- 2. Baca `project_overview.md` extract tech stack
617
- 3. Konsultasi `schemas/workspace-registry.json` → recommend skills + MCP
618
- 4. Present manifest untuk approval
619
-
620
- **Output:**
621
- - `state/workspace-manifest.json` — Desired state (platform-agnostic)
622
- - `.mcp.json` (Claude) / `opencode.json` (OpenCode) / `.vscode/mcp.json` (Copilot) / `.agents/mcp.json` (Antigravity)
623
- - Secrets sebagai `${VAR}` placeholder developer isi di `.env`
624
-
625
- **👤 Human:**
626
- - [ ] Review manifest (skills + MCP sesuai tech stack?)
627
- - [ ] Fill `.env` dengan secrets
628
- - [ ] Verify MCP servers functional
629
-
630
- ---
631
-
632
- ### **Phase 1c: Infrastructure Setup** 👤🤖
633
-
634
- **👤 Human Decision:**
635
- - Hosting: Local Docker? Cloud (Vercel + Supabase)? VPS?
636
- - Database size estimate?
637
- - Backup strategy?
638
-
639
- **🤖 AI Execution:**
640
-
641
- **Step 2: Spesifikasi Infrastruktur**
642
-
643
- ```bash
644
- /analyst
645
-
646
- "Buat spesifikasi environment setup"
647
- ```
648
-
649
- **Agent Logic:**
650
- - Agent akan deteksi `000_spec_environment_setup.md` belum ada
651
- - Otomatis membuat spec infrastruktur (Docker, DB, Redis, dll)
652
-
653
- **Output:**
654
- - `specifications/000_spec_environment_setup.md`
655
-
656
- **👤 Human Review:**
657
- - [ ] Check Docker services (App, DB, Redis - perlu semua?)
658
- - [ ] Check environment variables (API keys, secrets)
659
- - [ ] Check port configuration (conflict dengan app lain?)
660
-
661
- **Step 3: Implementasi Infrastructure**
662
-
663
- ```bash
664
- /developer
665
-
666
- "Implementasikan SPEC-000 (Environment Setup)"
667
- ```
668
-
669
- **Output:**
670
- - `codes/docker-compose.yml`
671
- - `codes/.env.example`
672
- - `codes/Dockerfile`
673
- - `logs/development/dev_000_environment_setup.md`
674
-
675
- **👤 Human Execution:**
676
- ```bash
677
- # Jalankan Docker manually
678
- cd codes
679
- cp .env.example .env
680
- # Edit .env sesuai kebutuhan (database password, etc.)
681
-
682
- docker-compose up -d
683
- docker-compose logs -f
684
- ```
685
-
686
- **Verify:**
687
- - [ ] Database running? (`docker ps`)
688
- - [ ] App accessible? (`http://localhost:3000`)
689
- - [ ] No errors di logs?
690
-
691
- ---
692
-
693
- ### **Phase 2: Database Design** 👤🤖
694
-
695
- **Step 4: Database Schema Specification**
696
-
697
- ```bash
698
- /analyst
699
-
700
- "Buat spesifikasi database schema"
701
- ```
702
-
703
- **Output:**
704
- - `specifications/001_spec_database_schema.md`
705
-
706
- **👤 Human Review:**
707
- - [ ] Check ERD (relasi antar table masuk akal?)
708
- - [ ] Check field types (JSONB vs separate table?)
709
- - [ ] Check indexes (performance critical fields?)
710
-
711
- **Step 5: Prisma Migration**
712
-
713
- ```bash
714
- /developer
715
-
716
- "Implementasikan SPEC-001 (Database Schema)"
717
- ```
718
-
719
- **Output:**
720
- - `codes/prisma/schema.prisma`
721
- - `logs/development/dev_001_database_schema.md`
722
-
723
- **👤 Human Execution:**
724
- ```bash
725
- cd codes
726
- npm install
727
- npx prisma migrate dev --name init
728
- npx prisma generate
729
- ```
730
-
731
- **Verify:**
732
- - [ ] Migration success?
733
- - [ ] Tables created? (check via Prisma Studio: `npx prisma studio`)
734
-
735
- ---
736
-
737
- ### **Phase 2: Pengerjaan** 👤🤖
738
-
739
- **Step 0: Sync Workspace** ⭐ v2.2
740
-
741
- Sebelum build feature, pastikan workspace sync (special jika ganti tool):
742
-
743
- ```bash
744
- /setup-workspace sync
745
- # atau jika switch tool:
746
- /setup-workspace switch tool=opencode
747
- ```
748
-
749
- **Tujuan:** Verifikasi manifest sesuai config aktual, deteksi drift, update jika ada perubahan tech stack.
750
-
751
- ---
752
-
753
- ### **Step 1: Feature Development Loop** 🔄 👤🤖
754
-
755
- Ulangi siklus ini untuk **setiap fitur**:
756
-
757
- #### **Step 1.1: Specification (Analyst)**
758
-
759
- **👤 Human:** Tentukan fitur mana yang dikerjakan duluan (prioritas)
760
-
761
- ```bash
762
- /analyst
763
-
764
- "Buat spesifikasi untuk fitur Booking Management"
765
- ```
766
-
767
- **🤖 Agent Output:**
768
- - `specifications/003_spec_booking_management.md`
769
- - Atau breakdown menjadi atomic specs (003-001, 003-002, dll)
770
-
771
- **👤 Human Review:**
772
- - [ ] User stories jelas?
773
- - [ ] API contracts lengkap?
774
- - [ ] UI mockups sesuai design system?
775
- - [ ] Validation rules masuk akal?
776
-
777
- **⚠️ Approve spec → Then create task:**
778
- ```bash
779
- /pm
780
-
781
- "Buat task di task_list.md berdasarkan SPEC-003 (Booking Management)"
782
- ```
783
-
784
- **🤖 PM Agent Output:**
785
- - New task entry di `task/task_list.md`:
786
- ```
787
- ### TASK-003: Booking Management
788
- - **Priority:** P0 (Critical)
789
- - **Status:** not_started
790
- - **Spec:** specifications/003_spec_booking_management.md
791
- - **Dependencies:** TASK-001 (Database Schema), TASK-002 (Authentication)
792
- - **Assigned To:** -
793
- - **Description:** Implement booking CRUD operations with DP calculation
794
- ```
795
-
796
- #### **Step 1.2: Implementation**
797
-
798
- **Jika depth=fast:**
799
- ```bash
800
- /fullstack
801
-
802
- "Implementasikan SPEC-003 (Booking Management)"
803
- ```
804
- → Satu Fullstack agent koding dua sisi
805
-
806
- **Jika depth=standard atau depth=deep:**
807
- ```bash
808
- /backend
809
-
810
- "Implementasikan backend SPEC-003 (Booking Management)"
811
- ```
812
-
813
- ```bash
814
- /frontend
815
-
816
- "Implementasikan frontend SPEC-003 (Booking Management)"
817
- ```
818
- → Backend + Frontend jalankan paralel via API Contract
819
-
820
- **🤖 Agent akan:**
821
- 1. Read `task/task_list.md` → Find TASK-003
822
- 2. **Update status:** `not_started` → `dev`
823
- 3. **Set Assigned To:** [Backend/Frontend/Fullstack] Agent
824
- 4. Implement code sesuai spec + API Contract
825
- 5. Create development log
826
- 6. **Update status:** `dev` → `ready_to_test`
827
-
828
- **🤖 Agent Output:**
829
- - Backend: API routes, business logic, DB queries
830
- - Frontend: UI components, API integration, styling
831
- - Log: `logs/development/dev_003_booking_management.md`
832
-
833
- **👤 Human Tasks:**
834
- 1. **Code Review:**
835
- - [ ] Logic benar? (hitung DP 50%, validasi tanggal, dll)
836
- - [ ] Security OK? (authentication, authorization)
837
- - [ ] Performance? (N+1 query problem?)
838
-
839
- 2. **Manual Testing:**
840
- ```bash
841
- # Start dev server
842
- cd codes
843
- npm run dev
844
- ```
845
- - [ ] Buka browser → Test create booking
846
- - [ ] Test validation (input invalid data)
847
- - [ ] Test edge cases (booking di tanggal yang sudah full)
848
-
849
- 3. **Check Errors:**
850
- ```bash
851
- # Lihat TypeScript errors
852
- npm run type-check
853
-
854
- # Lihat lint errors
855
- npm run lint
856
- ```
857
-
858
- **Jika ada bugs di testing:**
859
- ```bash
860
- /fixer
861
-
862
- "Ada bug di create booking: DP amount tidak ter-kalkulasi.
863
- Error: totalPrice is undefined di line 45
864
- Stack trace: [paste error dari terminal]
865
-
866
- Reproduce steps:
867
- 1. Buka form create booking
868
- 2. Isi pax = 15
869
- 3. Click Submit
870
- 4. Error muncul"
871
- ```
872
-
873
- **🤖 Fixer Agent akan:**
874
- 1. Read `task/task_list.md` → Find TASK-003 with status "failed"
875
- 2. **Update status:** `failed` → `fixing`
876
- 3. Analyze error & stack trace
877
- 4. Read related code files
878
- 5. Identify root cause
879
- 6. Apply fix
880
- 7. **PENTING:** Update dokumen spesifikasi (`specifications/`) jika scope fixing melebihi bug kecil
881
- 8. Run tests untuk verify fix
882
- 9. **Update status:** `fixing` `ready_to_test` (back to Tester)
883
- 10. Create fixing log di `logs/fixing/fixing_003_booking_dp_bug.md`
884
-
885
- **👤 Human verify:**
886
- - [ ] Bug fix works? (test manually)
887
- - [ ] No side effects? (test related features)
888
- - [ ] Root cause addressed? (bukan just symptom fix)
889
-
890
- ---
891
-
892
- #### **Step 2.2: Re-test (Tester)**
893
-
894
- Setelah Fixer fix bugs, Tester run tests ulang sampai hijau.
895
-
896
- **Gate: Approve saat semua test hijau ✅**
897
-
898
- #### **Step 1.3: Code Review (QA Agent)**
899
-
900
- ```bash
901
- /qa
902
-
903
- "Review SPEC-003 implementation code untuk correctness, security, performance"
904
- ```
905
-
906
- **🤖 QA Agent akan:**
907
- 1. Static code analysis (TypeScript, linting)
908
- 2. Security checks (OWASP top 10, input validation)
909
- 3. Performance review (N+1 queries, unnecessary re-renders)
910
- 4. Report findings
911
-
912
- **Output:**
913
- - Code review comments
914
- - Pass/Fail status
915
-
916
- **👤 Human:**
917
- - [ ] Review QA findings
918
- - [ ] Approve jika OK, atau minta developer fix
919
-
920
- ---
921
-
922
- ### **Step 2: Testing** 👤🤖
923
-
924
- **Step 2.1: Testing (Tester)**
925
-
926
- ```bash
927
- /tester
928
-
929
- "Buat dan jalankan E2E test untuk Booking Management API"
930
- ```
931
-
932
- **🤖 Agent akan:**
933
- 1. Read `task/task_list.md` → Find TASK-003 with status "ready_to_test"
934
- 2. Create test scenarios (Playwright) **Update status:** `ready_to_test` → `testing_ready`
935
- 3. Run tests → **Update status:** `testing_ready` → `testing`
936
- 4. Analyze results → **Update status:** `testing` → `passed` (or `failed`)
937
-
938
- **🤖 Agent Output:**
939
- - `tests/e2e/booking.test.ts`
940
- - `logs/testing/test_003_booking_management.md`
941
-
942
- **👤 Human Tasks:**
943
- 1. **Verify Test Coverage:**
944
- - [ ] Happy path tested?
945
- - [ ] Error cases tested?
946
- - [ ] Edge cases tested?
947
-
948
- 2. **Run Tests Manually:**
949
- ```bash
950
- cd codes
951
- npm test
952
- ```
953
-
954
- 3. **Exploratory Testing:**
955
- - Test scenario yang tidak tercakup automated test
956
- - Test dengan real user behavior (random input, rapid clicking, dll)
957
-
958
- ---
959
-
960
- ### **Step 3: Hardening** 👤🤖 (Per-Release)
961
-
962
- Setelah 3-5 fitur selesai & siap rilis, jalankan hardening:
963
-
964
- ```bash
965
- /harden-release "1.0.0"
966
- ```
967
-
968
- **Agents yang jalan:**
969
- - **Security Agent** — OWASP audit, threat modeling, vulnerability scan
970
- - **Reliability Agent** — Load testing, performance optimization
971
- - **Document Agent** — CHANGELOG generation
972
-
973
- **Output:**
974
- - `logs/hardening/security_audit_1.0.0.md`
975
- - `logs/hardening/reliability_test_1.0.0.md`
976
- - Updated `CHANGELOG.md`
977
- - `git tag v1.0.0`
978
-
979
- **👤 Human:**
980
- - [ ] Review security findings
981
- - [ ] Review performance metrics
982
- - [ ] Approve release
983
-
984
- ---
985
-
986
- ### **Step 4 (Optional): Production Deployment** 👤🤖
987
-
988
- **When to do this:**
989
- - Setelah hardening disetujui
990
- - Sebelum deployment ke production
991
- - Saat merencanakan scaling atau cost optimization
992
- - Saat ada infrastructure review perlu
993
-
994
- **Step 4.1: Infrastructure Analysis**
995
-
996
- ```bash
997
- /sysarch
998
-
999
- "Analyze current application and design server specifications
1000
- for production deployment. Create deployment plan."
1001
- ```
1002
-
1003
- **🤖 SysArch Agent akan:**
1004
- 1. Read `project_overview.md`, `specifications/*.md`, codebase
1005
- 2. Analyze database schema, API endpoints, file storage needs
1006
- 3. **ASK critical questions** tentang:
1007
- - User load (concurrent users, growth rate)
1008
- - Transaction volume (bookings/day, payments/day)
1009
- - Data & storage (file uploads, backup requirements)
1010
- - Performance targets (response time, page load)
1011
- - Availability (uptime, HA requirements)
1012
- - Budget & deployment preferences
1013
- - Security & compliance needs
1014
-
1015
- **👤 Human:**
1016
- - [ ] Answer all questions accurately
1017
- - [ ] Provide conservative estimates
1018
-
1019
- **Output:**
1020
- - `architecture/current_state.md`
1021
- - `architecture/server_specifications.md`
1022
- - `architecture/deployment_plan.md`
1023
- - `architecture/cost_analysis.md`
1024
- - `architecture/monitoring_plan.md`
1025
-
1026
- **Step 4.2: Review & Approve**
1027
-
1028
- **👤 Human Review:**
1029
- - [ ] Server specs sufficient?
1030
- - [ ] Cost sesuai budget?
1031
- - [ ] Deployment plan clear?
1032
- - [ ] Monitoring comprehensive?
1033
- - [ ] Backup & disaster recovery OK?
1034
-
1035
- **If cost too high:**
1036
- ```bash
1037
- /sysarch
1038
-
1039
- "Cost $500/month, budget $200/month.
1040
- Provide 2-3 cost optimization scenarios dengan trade-offs."
1041
- ```
1042
-
1043
- **Step 4.3: Deploy**
1044
-
1045
- **👤 Human:**
1046
- - [ ] Follow deployment_plan.md step-by-step
1047
- - [ ] Setup infrastructure (VPS, Docker, PostgreSQL, monitoring, SSL, backups)
1048
- - [ ] Verify deployment (app accessible, SSL valid, monitoring alerts OK, backup running)
1049
- - [ ] Performance check (page load < 3s)
1050
-
1051
- ---
1052
-
1053
- ### **Step 5: Final Documentation** 👤🤖 (Per-Release)
1054
-
1055
- ```bash
1056
- /document
1057
-
1058
- "Generate FSD + API documentation dari semua specifications"
1059
- ```
1060
-
1061
- **Output:**
1062
- - `documentation/FSD_{{projectName}}.md`
1063
- - `documentation/API_Documentation.md`
1064
-
1065
- **👤 Human:**
1066
- - [ ] Documentation complete & clear?
1067
-
1068
- ---
1069
-
1070
- ## 👤 Tanggung Jawab Manusia (Human-in-the-Loop)
1071
-
1072
- AI Agent **TIDAK DAPAT** dan **TIDAK BOLEH** mengambil keputusan untuk hal-hal berikut:
1073
-
1074
- ### **1. Business Decisions** 🎯
1075
- - ❌ Menentukan prioritas fitur (mana yang dikerjakan duluan?)
1076
- - Menentukan pricing strategy (berapa harga produk?)
1077
- - ❌ Menentukan target market (siapa user kita?)
1078
- - ❌ Approve budget & timeline
1079
-
1080
- **👤 Human:** Product Owner / Business Stakeholder
1081
-
1082
- ---
1083
-
1084
- ### **2. Architecture Decisions** 🏗️
1085
- - ❌ Pilih monolith vs microservices?
1086
- - ❌ Pilih SQL vs NoSQL?
1087
- - ❌ Pilih cloud provider (AWS vs GCP vs Azure)?
1088
- - ❌ Approve tech stack yang diusulkan Agent
1089
-
1090
- **👤 Human:** Tech Lead / Solution Architect
1091
-
1092
- **✅ Agent:** Memberikan **rekomendasi** + pros/cons, tapi **final decision** tetap di manusia
1093
-
1094
- ---
1095
-
1096
- ### **3. Security & Compliance** 🔒
1097
- - Approve deployment ke production
1098
- - ❌ Approve perubahan database schema di production
1099
- - ❌ Approve akses ke production secrets/API keys
1100
- - ❌ Menentukan data retention policy (GDPR, UU PDP)
1101
-
1102
- **👤 Human:** Security Engineer / Compliance Officer
1103
-
1104
- **⚠️ Warning:** Agent **DAPAT** menjalankan command berbahaya (`rm -rf`, `DROP TABLE`, dll) jika tidak diawasi!
1105
-
1106
- ---
1107
-
1108
- ### **4. Code Quality Gates**
1109
- - ❌ Approve merge ke `main` branch
1110
- - ❌ Approve deployment ke staging/production
1111
- - ❌ Skip failing tests (NEVER!)
1112
-
1113
- **👤 Human:** Senior Developer / Team Lead
1114
-
1115
- **Process:**
1116
- 1. Agent creates code → Human reviews
1117
- 2. If OK → Human approves (via Git PR)
1118
- 3. If NOT OK → Human provides feedback → Agent fixes
1119
-
1120
- ---
1121
-
1122
- ### **5. User Experience Decisions** 🎨
1123
- - ❌ Final approval untuk UI/UX design
1124
- - ❌ Menentukan user flow (apakah flow ini intuitif?)
1125
- - Approve wording (error messages, button labels, dll)
1126
-
1127
- **👤 Human:** UX Designer / Product Manager
1128
-
1129
- **✅ Agent:** Generate UI berdasarkan guidelines, tapi **final polish** tetap perlu human touch
1130
-
1131
- ---
1132
-
1133
- ## 📋 Daily Workflow Checklist
1134
-
1135
- ### **Morning Routine** ☀️
1136
-
1137
- ```bash
1138
- # 1. Check project progress
1139
- /pm
1140
-
1141
- "Tampilkan status project saat ini dari task_list.md"
1142
- ```
1143
-
1144
- ```bash
1145
- # 2. Sync context dengan Agent
1146
- /developer
1147
-
1148
- "Baca logs/development/dev_*.md, apa progres terakhir?"
1149
- ```
1150
-
1151
- **👤 Human:**
1152
- - [ ] Review task progress dari task_list.md
1153
- - [ ] Review semua changes semalam (git diff)
1154
- - [ ] Check error logs (jika ada background process)
1155
- - [ ] Prioritize tasks hari ini (based on task_list.md priorities)
1156
-
1157
- ---
1158
-
1159
- ### **Development Cycle** 🔄
1160
-
1161
- ```
1162
- [Analyst] → [👤 Review] → [PM] → [Developer] → [👤 Test] → [Fixer (if bugs)] → [Tester] → [👤 Approve]
1163
-
1164
- (Create task in
1165
- task_list.md) ↓
1166
- (After MVP)
1167
-
1168
- [SysArch] [👤 Review] [Deploy] → [Monitor]
1169
- ```
1170
-
1171
- **Per Feature (2-4 hours):**
1172
- 1. **Analyst:** Create spec (30 min)
1173
- 2. **👤 Human:** Review & approve spec (15 min)
1174
- 3. **PM:** Create task in task_list.md (5 min) ⭐ NEW
1175
- 4. **Developer:** Implement code + update task status (1-2 hours)
1176
- 5. **👤 Human:** Code review + manual test (30 min)
1177
- 6. **Fixer:** Fix bugs if found + update task status (15-30 min) ← **OPTIONAL**
1178
- 7. **Tester:** Create & run tests + update task status (30 min)
1179
- 8. **👤 Human:** Verify test results (15 min)
1180
-
1181
- **Repeat** untuk fitur berikutnya
1182
-
1183
- **Before Production Deploy (after MVP complete):**
1184
- 1. **SysArch:** Analyze app & create infrastructure plan (2-3 hours)
1185
- 2. **👤 Human:** Answer requirements questions & review plan (1 hour)
1186
- 3. **SysArch/Developer:** Deploy to production (2-4 hours)
1187
- 4. **SysArch:** Setup monitoring & alerts (1 hour)
1188
- 5. **👤 Human:** Verify deployment & monitor metrics (ongoing)
1189
-
1190
- ---
1191
-
1192
- ### **Evening Routine** 🌙
1193
-
1194
- **👤 Human:**
1195
- - [ ] Review semua development logs hari ini
1196
- - [ ] Commit & push changes ke Git
1197
- - [ ] Update project board (Trello/Jira/Linear)
1198
- - [ ] Note blocker untuk besok
1199
-
1200
- ```bash
1201
- # Optional: Update task status based on logs
1202
- /pm
1203
-
1204
- "Update task_list.md berdasarkan development logs hari ini"
1205
- ```
1206
-
1207
- ```bash
1208
- # Optional: Minta Agent summarize hari ini
1209
- /developer
1210
-
1211
- "Summarize semua development logs hari ini,
1212
- apa saja yang sudah selesai dan apa yang masih pending?"
1213
- ```
1214
-
1215
- ```bash
1216
- # Optional: Generate status report
1217
- /pm
1218
-
1219
- "Generate project status report untuk hari ini"
1220
- ```
1221
-
1222
- ---
1223
-
1224
- ## ⚠️ Common Pitfalls & How to Avoid
1225
-
1226
- ### **1. Agent Tidak Punya Context** 🤔
1227
- **Symptom:** Agent buat code yang tidak sesuai project
1228
-
1229
- **Fix:**
1230
- ```bash
1231
- # Selalu arahkan Agent untuk baca context dulu
1232
- /developer
1233
-
1234
- "Baca project_overview.md dan specification/003_*.md
1235
- sebelum implementasi fitur Booking"
1236
- ```
1237
-
1238
- ---
1239
-
1240
- ### **2. Agent Menjalankan Command Berbahaya** ⚠️
1241
- **Symptom:** Agent suggest `rm -rf` atau `DROP DATABASE`
1242
-
1243
- **Fix:**
1244
- - **👤 Human:** ALWAYS review command sebelum execute
1245
- - Use Git (semua changes bisa di-rollback)
1246
- - Backup database sebelum migration
1247
-
1248
- ---
1249
-
1250
- ### **3. Spec Tidak Jelas Code Salah** 📝
1251
- **Symptom:** Developer Agent tanya-tanya terus karena spec ambiguous
1252
-
1253
- **Fix:**
1254
- - **👤 Human:** Review spec dari Analyst dengan detail
1255
- - Minta Analyst revisi jika ada yang unclear
1256
- - Jangan approve spec yang setengah-setengah
1257
-
1258
- ---
1259
-
1260
- ### **4. Infrastructure Planning & Deployment** ⚙️ ⭐ NEW
1261
- **Symptom:** Aplikasi sudah siap, tapi bingung deploy dimana dan butuh server apa
1262
-
1263
- **Solution:**
1264
- ```bash
1265
- /sysarch
1266
-
1267
- "Analyze current application ({{projectName}} Reservation System).
1268
-
1269
- Context:
1270
- - Next.js 14 App Router
1271
- - PostgreSQL database with 15 tables
1272
- - File uploads: 10-20 photos/day (~5MB each)
1273
- - Target: 100 concurrent users, 50 bookings/day
1274
- - Budget: $200/month
1275
- - Location: Indonesia users only
1276
- - Required: 99% uptime, daily backups
1277
-
1278
- Design server specifications and deployment plan."
1279
- ```
1280
-
1281
- **SysArch Agent akan:**
1282
- 1. Analyze codebase & database schema
1283
- 2. Ask clarifying questions tentang load, growth, budget
1284
- 3. Create server specifications (CPU, RAM, Storage)
1285
- 4. Design deployment architecture (1-server, 2-server, or cloud)
1286
- 5. Estimate monthly costs
1287
- 6. Provide deployment step-by-step guide
1288
- 7. Setup monitoring plan
1289
-
1290
- **👤 Human:**
1291
- - [ ] Answer all requirements questions dengan data akurat
1292
- - [ ] Review cost analysis (sesuai budget?)
1293
- - [ ] Review server specs (cukup untuk load?)
1294
- - [ ] Approve deployment plan
1295
- - [ ] Execute deployment following the guide
1296
-
1297
- ---
1298
-
1299
- ### **5. Performance Issues in Production** 🐌
1300
- **Symptom:** Aplikasi lambat, page load > 5 seconds, API timeout
1301
-
1302
- **Solution:**
1303
- ```bash
1304
- /sysarch
1305
-
1306
- "Performance analysis request.
1307
-
1308
- Current metrics:
1309
- - Page load time: 8 seconds (target: < 3s)
1310
- - API response time: 3-5 seconds (target: < 500ms)
1311
- - Database query time: 2-4 seconds per request
1312
- - Server CPU: 85% average
1313
- - Server RAM: 90% usage
1314
-
1315
- Analyze bottlenecks and provide optimization recommendations.
1316
- Consider: database indexing, query optimization, caching, CDN, server upgrade."
1317
- ```
1318
-
1319
- **SysArch Agent akan:**
1320
- 1. Analyze performance metrics
1321
- 2. Identify bottlenecks (database, server resources, network)
1322
- 3. Recommend optimizations
1323
- 4. Estimate performance improvement & costs
1324
- 5. Provide implementation plan
1325
-
1326
- ---
1327
-
1328
- ### **6. Test Coverage Rendah** 🧪
1329
- **Symptom:** Production bug yang seharusnya ketahuan di test
1330
-
1331
- **Fix:**
1332
- ```bash
1333
- /tester
1334
-
1335
- "Test coverage untuk Booking API masih 60%,
1336
- tambahkan test untuk edge cases:
1337
- - Booking di tanggal yang sudah penuh
1338
- - Booking dengan pax > 22
1339
- - Booking dengan tanggal di masa lalu"
1340
- ```
1341
-
1342
- ### **7. Bugs di Production** 🐛
1343
- **Symptom:** User report bug di production, perlu hotfix cepat
1344
-
1345
- **Fix:**
1346
- ```bash
1347
- /fixer
1348
-
1349
- "URGENT: Production bug reported.
1350
-
1351
- Issue: User tidak bisa cancel booking yang sudah DP_PAID
1352
- Error: 500 Internal Server Error
1353
- Endpoint: POST /api/backoffice/bookings/:id/cancel
1354
-
1355
- Expected: Booking bisa di-cancel dengan refund policy
1356
- Actual: Server error, booking tidak ter-cancel
1357
-
1358
- Reproduce:
1359
- 1. Login as admin
1360
- 2. Open booking detail (status: DP_PAID)
1361
- 3. Click Cancel button
1362
- 4. Error 500 muncul
1363
-
1364
- Logs: [paste error logs dari production]"
1365
- ```
1366
-
1367
- **Fixer Agent akan:**
1368
- 1. Analyze production logs
1369
- 2. Reproduce locally
1370
- 3. Fix bug dengan minimal changes (hotfix approach)
1371
- 4. Update dokumen spesifikasi terkait fitur yang difixing sesuai dengan scope fixing yang diberikan oleh user
1372
- 4. Run regression tests
1373
- 5. Create fixing log dengan deployment notes
1374
-
1375
- **👤 Human:**
1376
- - [ ] Test fix di staging
1377
- - [ ] Approve deployment ke production
1378
- - [ ] Monitor production logs setelah deploy
1379
- - [ ] Notify users bug sudah fixed
1380
-
1381
- ---
1382
-
1383
- ## 🎯 Success Metrics
1384
-
1385
- **Project dianggap berhasil jika:**
1386
- - ✅ Semua spesifikasi di-review & approve manusia
1387
- - Test coverage > 80%
1388
- - ✅ Zero critical bugs di production
1389
- - ✅ Development logs lengkap (easy onboarding developer baru)
1390
- - Documentation up-to-date
1391
- - Infrastructure well-planned & cost-optimized ⭐ NEW
1392
- - Production deployment smooth dengan monitoring active ⭐ NEW
1393
- - Performance meets SLA (response time, uptime) ⭐ NEW
1394
-
1395
- **AI Agent membantu achieve ini dengan:**
1396
- - 🤖 Konsistensi code quality (follow standards)
1397
- - 🤖 Dokumentasi otomatis (never outdated)
1398
- - 🤖 Fast iteration (spec → code → test dalam 1 hari)
1399
- - 🤖 Infrastructure planning data-driven (SysArch Agent) ⭐ NEW
1400
- - 🤖 Cost optimization recommendations NEW
1401
- - 🤖 Performance monitoring & alerting setup ⭐ NEW
1402
-
1403
- **Tapi final quality tetap tanggung jawab Human!** 👤
1404
-
1405
-
1406
-
1407
- ---
1408
-
1409
- ## 📝 Aturan Main (Rules of Engagement)
1410
-
1411
- ### **For AI Agents** 🤖
1412
- 1. **Always Read Context First:**
1413
- - Baca `project_overview.md` sebelum mulai task
1414
- - Baca specification terkait sebelum coding
1415
- - Baca logs terakhir untuk tahu progres
1416
-
1417
- 2. **Never Assume:**
1418
- - Jika spec tidak jelas → ASK human clarification
1419
- - Jika ada breaking change WARN human terlebih dahulu
1420
- - Jika perlu run destructive command → CONFIRM dulu
1421
-
1422
- 3. **Document Everything:**
1423
- - Setiap code change harus ada di development log
1424
- - Setiap test run harus ada di testing log
1425
- - Setiap bug fix harus ada di fixing log
1426
-
1427
- ### **For Humans** 👤
1428
- 1. **Don't Edit Logs Manually:**
1429
- - Biarkan Agent yang menulis `logs/development/*.md` dan `logs/testing/*.md`
1430
- - Format konsisten, easy to parse untuk Agent
1431
-
1432
- 2. **Always Review Before Approve:**
1433
- - Specifications (apakah sesuai bisnis requirement?)
1434
- - Code (apakah logic benar & secure?)
1435
- - Tests (apakah coverage cukup?)
1436
-
1437
- 3. **Read Logs After Break:**
1438
- ```bash
1439
- # Jika baru buka VS Code setelah istirahat
1440
- /developer
1441
-
1442
- "Baca semua logs/development/dev_*.md,
1443
- summarize progres terakhir dan apa yang pending"
1444
- ```
1445
-
1446
- 4. **Terminal Safety:**
1447
- - **⚠️ NEVER** auto-approve terminal commands tanpa review
1448
- - Especially: `rm`, `DROP`, `DELETE`, deployment commands
1449
- - Use Git (easy rollback jika ada masalah)
1450
-
1451
- 5. **UI/UX Consistency:**
1452
- - Jika hasil UI jelek/tidak konsisten:
1453
- ```bash
1454
- /analyst
1455
-
1456
- "Update UI/UX Guidelines di project_overview.md.
1457
- Warna button inconsistent, seharusnya pakai Ocean Teal (#0E7490)
1458
- untuk primary button, Sunset Coral (#F97316) untuk CTA"
1459
- ```
1460
-
1461
- 6. **Infrastructure Planning:** ⭐ NEW
1462
- - Before production deployment, always consult SysArch Agent
1463
- - Provide accurate data (realistic estimates, not best-case scenario)
1464
- - Consider growth: plan for 6-12 months, not just current needs
1465
- - Budget for monitoring & backups (non-negotiable)
1466
- ```bash
1467
- /sysarch
1468
-
1469
- "Analyze app and design production infrastructure.
1470
- Be conservative with estimates, include 50% growth buffer.
1471
- Budget: $200/month (strict), prioritize reliability over features."
1472
- ```
1473
-
1474
- ---
1475
-
1476
- ## ⚙️ Customizing Agent Behavior
1477
-
1478
- Jika ingin mengubah cara kerja Agent (misal: Developer pakai TDD strict, atau Analyst harus bikin ERD diagram), edit file di `.github/prompts/`:
1479
-
1480
- ### **File Structure:**
1481
- ```
1482
- .github/prompts/
1483
- ├── initiator.prompt.md # Aturan buat project_overview.md
1484
- ├── analyst.prompt.md # Aturan buat specifications
1485
- ├── developer.prompt.md # Coding standards & logging format
1486
- ├── fixer.prompt.md # Bug fixing strategy & debugging approach
1487
- ├── tester.prompt.md # Testing strategy & coverage requirements
1488
- ├── sysarch.prompt.md # Infrastructure planning & deployment ⭐ NEW
1489
- └── document.prompt.md # Documentation format
1490
- ```
1491
-
1492
- ### **Example Modification:**
1493
-
1494
- **File:** `.github/prompts/developer.prompt.md`
1495
-
1496
- **Before:**
1497
- ```markdown
1498
- **CODING STYLE:** Follow Next.js App Router best practices
1499
- ```
1500
-
1501
- **After:**
1502
- ```markdown
1503
- **CODING STYLE:**
1504
- - Follow Next.js App Router best practices
1505
- - MUST use Test-Driven Development (TDD)
1506
- - Write test first before implementation
1507
- - Minimum test coverage: 90%
1508
- ```
1509
-
1510
- **Effect:** Developer Agent akan selalu bikin test dulu sebelum coding
1511
-
1512
- ---
1513
-
1514
- **File:** `.github/prompts/fixer.prompt.md`
1515
-
1516
- **Customize:**
1517
- ```markdown
1518
- **BUG FIXING PRIORITY:**
1519
- 1. Security vulnerabilities (CRITICAL - fix within 2 hours)
1520
- 2. Data loss bugs (HIGH - fix within 4 hours)
1521
- 3. Payment/financial bugs (HIGH - fix within 4 hours)
1522
- 4. UI/UX bugs (MEDIUM - fix within 24 hours)
1523
- 5. Performance issues (LOW - fix within 1 week)
1524
-
1525
- **DEBUGGING APPROACH:**
1526
- - Always reproduce bug locally first
1527
- - Use git bisect to find regression commit
1528
- - Write test case that fails before fix
1529
- - Verify test passes after fix
1530
- - Check for similar bugs in codebase
1531
- ```
1532
-
1533
- **Effect:** Fixer Agent akan prioritize bugs berdasarkan severity
1534
-
1535
- ---
1536
-
1537
- **File:** `.github/prompts/sysarch.prompt.md` ⭐ NEW
1538
-
1539
- **Customize:**
1540
- ```markdown
1541
- **INFRASTRUCTURE PREFERENCES:**
1542
- - Default cloud provider: DigitalOcean (cost-effective for startups)
1543
- - Minimum server specs: 2 vCPU, 4GB RAM (never go below this)
1544
- - Database: Always use managed database (Supabase/AWS RDS)
1545
- - Backups: Daily automated backups, 30 days retention (non-negotiable)
1546
- - Monitoring: Free tier tools only (UptimeRobot, Sentry, Papertrail)
1547
- - CDN: Optional for MVP, required when traffic > 10k users/month
1548
-
1549
- **COST OPTIMIZATION PRIORITIES:**
1550
- 1. Data integrity & backups (non-negotiable)
1551
- 2. Acceptable performance (2-3s page load OK for MVP)
1552
- 3. 99% uptime (99.9% nice to have)
1553
- 4. CDN (add later when needed)
1554
-
1555
- **SCALING TRIGGERS:**
1556
- - CPU > 70% for 24 hours → Vertical scaling
1557
- - RAM > 80% for 24 hours → Vertical scaling
1558
- - Response time > 3s → Add caching layer
1559
- - Traffic > 1000 concurrent users → Horizontal scaling
1560
- ```
1561
-
1562
- **Effect:** SysArch Agent akan always recommend cost-effective solutions untuk startup
1563
-
1564
- ---
1565
-
1566
- ## 🚨 Troubleshooting
1567
-
1568
- ### **Problem: Agent Lupa Context**
1569
- **Symptom:** Agent buat code yang tidak sesuai dengan project
1570
-
1571
- **Solution:**
1572
- ```bash
1573
- /developer
1574
-
1575
- "STOP. Baca ulang:
1576
- 1. project_overview.md (tech stack & UI guidelines)
1577
- 2. specifications/004_spec_pricing.md (requirement)
1578
- 3. logs/development/dev_003_*.md (code yang sudah ada)
1579
-
1580
- Lalu implementasi ulang dengan benar"
1581
- ```
1582
-
1583
- ---
1584
-
1585
- ### **Problem: Specification Terlalu Umum**
1586
- **Symptom:** Developer Agent tanya-tanya terus karena spec tidak detail
1587
-
1588
- **Solution:**
1589
- ```bash
1590
- /analyst
1591
-
1592
- "SPEC-005 terlalu general. Breakdown menjadi atomic specifications:
1593
- - 005-001: Revenue Summary Card
1594
- - 005-002: Profit Trend Chart
1595
- - 005-003: Upcoming Trips Timeline
1596
-
1597
- Setiap spec harus punya:
1598
- - User story jelas
1599
- - API contract lengkap
1600
- - UI mockup dengan Tailwind classes"
1601
- ```
1602
-
1603
- ---
1604
-
1605
- ### **Problem: Task Status Out of Sync** ⭐ NEW
1606
- **Symptom:** task_list.md status tidak sesuai dengan development logs atau test results
1607
-
1608
- **Solution:**
1609
- ```bash
1610
- /pm
1611
-
1612
- "Update task_list.md berdasarkan logs di logs/development/ dan logs/testing/.
1613
- Check semua task status dan pastikan sinkron dengan actual progress"
1614
- ```
1615
-
1616
- **PM Agent akan:**
1617
- 1. Read all logs di logs/development/ dan logs/testing/
1618
- 2. Identify completed tasks
1619
- 3. Update task status accordingly
1620
- 4. Update "Last Updated" timestamps
1621
- 5. Generate summary of changes
1622
-
1623
- **Manual Fix (if needed):**
1624
- - Edit `task/task_list.md` langsung
1625
- - Update status field: `not_started`, `dev`, `ready_to_test`, `testing_ready`, `testing`, `passed`, `failed`
1626
- - Update "Last Updated" timestamp: `[YYYY-MM-DD HH:MM]`
1627
- - Update "Assigned To" field if task handed off
1628
-
1629
- ---
1630
-
1631
- ### **Problem: Too Many Tasks, Tidak Tahu Prioritas** ⭐ NEW
1632
- **Symptom:** Bingung mau kerjakan task mana dulu
1633
-
1634
- **Solution:**
1635
- ```bash
1636
- /pm
1637
-
1638
- "Tampilkan semua task dengan status 'not_started',
1639
- sort by priority (P0 → P1 → P2 → P3),
1640
- dan cek dependencies"
1641
- ```
1642
-
1643
- **PM Agent akan:**
1644
- 1. List all not_started tasks
1645
- 2. Sort by priority level
1646
- 3. Show dependencies for each task
1647
- 4. Recommend next task to work on (no blockers, highest priority)
1648
-
1649
- **👤 Human Decision:**
1650
- - Focus on P0 (Critical) tasks first
1651
- - Check dependencies (don't start task if dependency not done)
1652
- - Consider business impact vs technical complexity
1653
-
1654
- ---
1655
-
1656
- ### **Problem: Agent Lupa Context**
1657
- **Symptom:** Agent buat code yang tidak sesuai dengan project
1658
-
1659
- **Solution:**
1660
- ```bash
1661
- /developer
1662
-
1663
- "STOP. Baca ulang:
1664
- 1. project_overview.md (tech stack & UI guidelines)
1665
- 2. specifications/004_spec_pricing.md (requirement)
1666
- 3. logs/development/dev_003_*.md (code yang sudah ada)
1667
-
1668
- Lalu implementasi ulang dengan benar"
1669
- ```
1670
-
1671
- ---
1672
-
1673
- ### **Problem: Specification Terlalu Umum**
1674
- **Symptom:** Developer Agent tanya-tanya terus karena spec tidak detail
1675
-
1676
- **Solution:**
1677
- ```bash
1678
- /analyst
1679
-
1680
- "SPEC-005 terlalu general. Breakdown menjadi atomic specifications:
1681
- - 005-001: Revenue Summary Card
1682
- - 005-002: Profit Trend Chart
1683
- - 005-003: Upcoming Trips Timeline
1684
-
1685
- Setiap spec harus punya:
1686
- - User story jelas
1687
- - API contract lengkap
1688
- - UI mockup dengan Tailwind classes"
1689
- ```
1690
-
1691
- ---
1692
-
1693
- ### **Problem: Task Status Out of Sync** ⭐ NEW
1694
- **Symptom:** task_list.md status tidak sesuai dengan development logs atau test results
1695
-
1696
- **Solution:**
1697
- ```bash
1698
- /pm
1699
-
1700
- "Update task_list.md berdasarkan logs di logs/development/ dan logs/testing/.
1701
- Check semua task status dan pastikan sinkron dengan actual progress"
1702
- ```
1703
-
1704
- **PM Agent akan:**
1705
- 1. Read all logs di logs/development/ dan logs/testing/
1706
- 2. Identify completed tasks
1707
- 3. Update task status accordingly
1708
- 4. Update "Last Updated" timestamps
1709
- 5. Generate summary of changes
1710
-
1711
- **Manual Fix (if needed):**
1712
- - Edit `task/task_list.md` langsung
1713
- - Update status field: `not_started`, `dev`, `ready_to_test`, `testing_ready`, `testing`, `passed`, `failed`
1714
- - Update "Last Updated" timestamp: `[YYYY-MM-DD HH:MM]`
1715
- - Update "Assigned To" field if task handed off
1716
-
1717
- ---
1718
-
1719
- ### **Problem: Too Many Tasks, Tidak Tahu Prioritas** ⭐ NEW
1720
- **Symptom:** Bingung mau kerjakan task mana dulu
1721
-
1722
- **Solution:**
1723
- ```bash
1724
- /pm
1725
-
1726
- "Tampilkan semua task dengan status 'not_started',
1727
- sort by priority (P0 → P1 → P2 → P3),
1728
- dan cek dependencies"
1729
- ```
1730
-
1731
- **PM Agent akan:**
1732
- 1. List all not_started tasks
1733
- 2. Sort by priority level
1734
- 3. Show dependencies for each task
1735
- 4. Recommend next task to work on (no blockers, highest priority)
1736
-
1737
- **👤 Human Decision:**
1738
- - Focus on P0 (Critical) tasks first
1739
- - Check dependencies (don't start task if dependency not done)
1740
- - Consider business impact vs technical complexity
1741
-
1742
- ---
1743
-
1744
- ### **Problem: Agent Lupa Context**
1745
- **Symptom:** Agent buat code yang tidak sesuai dengan project
1746
-
1747
- **Solution:**
1748
- ```bash
1749
- /developer
1750
-
1751
- "STOP. Baca ulang:
1752
- 1. project_overview.md (tech stack & UI guidelines)
1753
- 2. specifications/004_spec_pricing.md (requirement)
1754
- 3. logs/development/dev_003_*.md (code yang sudah ada)
1755
-
1756
- Lalu implementasi ulang dengan benar"
1757
- ```
1758
-
1759
- ---
1760
-
1761
- ### **Problem: Specification Terlalu Umum**
1762
- **Symptom:** Developer Agent tanya-tanya terus karena spec tidak detail
1763
-
1764
- **Solution:**
1765
- ```bash
1766
- /analyst
1767
-
1768
- "SPEC-005 terlalu general. Breakdown menjadi atomic specifications:
1769
- - 005-001: Revenue Summary Card
1770
- - 005-002: Profit Trend Chart
1771
- - 005-003: Upcoming Trips Timeline
1772
-
1773
- Setiap spec harus punya:
1774
- - User story jelas
1775
- - API contract lengkap
1776
- - UI mockup dengan Tailwind classes"
1777
- ```
1778
-
1779
- ---
1780
-
1781
- ### **Problem: Task Status Out of Sync** ⭐ NEW
1782
- **Symptom:** task_list.md status tidak sesuai dengan development logs atau test results
1783
-
1784
- **Solution:**
1785
- ```bash
1786
- /pm
1787
-
1788
- "Update task_list.md berdasarkan logs di logs/development/ dan logs/testing/.
1789
- Check semua task status dan pastikan sinkron dengan actual progress"
1790
- ```
1791
-
1792
- **PM Agent akan:**
1793
- 1. Read all logs di logs/development/ dan logs/testing/
1794
- 2. Identify completed tasks
1795
- 3. Update task status accordingly
1796
- 4. Update "Last Updated" timestamps
1797
- 5. Generate summary of changes
1798
-
1799
- **Manual Fix (if needed):**
1800
- - Edit `task/task_list.md` langsung
1801
- - Update status field: `not_started`, `dev`, `ready_to_test`, `testing_ready`, `testing`, `passed`, `failed`
1802
- - Update "Last Updated" timestamp: `[YYYY-MM-DD HH:MM]`
1803
- - Update "Assigned To" field if task handed off
1804
-
1805
- ---
1806
-
1807
- ### **Problem: Too Many Tasks, Tidak Tahu Prioritas** ⭐ NEW
1808
- **Symptom:** Bingung mau kerjakan task mana dulu
1809
-
1810
- **Solution:**
1811
- ```bash
1812
- /pm
1813
-
1814
- "Tampilkan semua task dengan status 'not_started',
1815
- sort by priority (P0 → P1 → P2 → P3),
1816
- dan cek dependencies"
1817
- ```
1818
-
1819
- **PM Agent akan:**
1820
- 1. List all not_started tasks
1821
- 2. Sort by priority level
1822
- 3. Show dependencies for each task
1823
- 4. Recommend next task to work on (no blockers, highest priority)
1824
-
1825
- **👤 Human Decision:**
1826
- - Focus on P0 (Critical) tasks first
1827
- - Check dependencies (don't start task if dependency not done)
1828
- - Consider business impact vs technical complexity
1829
-
1830
- ---
1831
-
1832
- ## 🎓 Learning Resources
1833
-
1834
- **Untuk memahami lebih dalam cara kerja AI Agent:**
1835
-
1836
- 1. **Function Calling / Tool Use:**
1837
- - [OpenAI Function Calling Guide](https://platform.openai.com/docs/guides/function-calling)
1838
- - [Anthropic Claude Tool Use](https://docs.anthropic.com/claude/docs/tool-use)
1839
-
1840
- 2. **Prompt Engineering:**
1841
- - [Prompt Engineering Guide](https://www.promptingguide.ai/)
1842
- - [Anthropic Prompt Library](https://docs.anthropic.com/claude/prompt-library)
1843
-
1844
- 3. **Agent Frameworks:**
1845
- - [LangChain Agents](https://python.langchain.com/docs/modules/agents/)
1846
- - [AutoGPT](https://github.com/Significant-Gravitas/AutoGPT)
1847
-
1848
- **Best Practice untuk System Instructions:**
1849
- - Be specific (jangan ambiguous)
1850
- - Give examples (few-shot learning)
1851
- - Set constraints (what NOT to do)
1852
- - Define success criteria (how to verify output)
1853
-
1854
- ---
1855
-
1856
- ## 📊 Project Progress Tracking
1857
-
1858
- **Recommended Tools:**
1859
- - **Linear / Jira:** Task management (link ke SPEC-xxx)
1860
- - **GitHub Projects:** Kanban board per sprint
1861
- - **Notion:** Knowledge base (meeting notes, decisions)
1862
-
1863
- **Integration dengan AI Workflow:**
1864
- ```
1865
- GitHub Issue #45: Implement Pricing Module
1866
-
1867
- Analyst creates: SPEC-004
1868
-
1869
- Developer implements: codes/app/api/pricing/
1870
-
1871
- Tester creates: tests/integration/pricing.test.ts
1872
-
1873
- Close issue with link to dev log & test results
1874
- ```
1875
-
1876
- ---
1877
-
1878
- ## 🤝 Team Collaboration
1879
-
1880
- **Jika tim > 1 person:**
1881
-
1882
- ### **Developer Onboarding:**
1883
- ```bash
1884
- # New developer joins team
1885
- /developer
1886
-
1887
- "Summarize project_overview.md dan semua specifications
1888
- dalam bentuk onboarding guide untuk new developer.
1889
-
1890
- Include:
1891
- - Tech stack & why we choose it
1892
- - Folder structure explanation
1893
- - How to run project locally
1894
- - Common commands
1895
- - Where to find documentation"
1896
- ```
1897
-
1898
- ### **Code Review Process:**
1899
- 1. Developer A → Bikin feature dengan Developer Agent
1900
- 2. Developer A → Create PR di GitHub
1901
- 3. Developer B → Review PR (manual)
1902
- 4. If OK → Merge
1903
- 5. If NOT Developer A ask Developer Agent to fix
1904
-
1905
- ### **Knowledge Sharing:**
1906
- - **Weekly:** Tester Agent generate test coverage report
1907
- - **Monthly:** Document Agent generate changelog dari semua dev logs
1908
- - **Quarterly:**
1909
- - Analyst Agent review & update project_overview.md
1910
- - SysArch Agent review infrastructure costs & optimization opportunities ⭐ NEW
1911
-
1912
- ---
1913
-
1914
- *Happy Vibe Coding!* 🚀✨
1915
-
1916
- **Remember:**
1917
- - AI Agent = **Accelerator** (makes you 10x faster)
1918
- - Human = **Navigator** (makes sure direction is correct)
1919
- - SysArch Agent = **Infrastructure Guardian** (keeps costs low, performance high) ⭐ NEW
1920
-
1921
- **Together = Unstoppable** 💪🤖👤
4
+
5
+ Selamat datang di ekosistem **Vibe Coding**.
6
+ Ini adalah standar alur kerja pengembangan software berbasis **AI Agent** yang mengutamakan struktur, dokumentasi otomatis, dan validasi berjenjang.
7
+ Template ini telah berevolusi dan secara *native* mendukung integrasi untuk berbagai AI agent environment mutakhir:
8
+ - **Google Antigravity** (`.agents/`)
9
+ - **Claude Code** (`.claude/`)
10
+ - **OpenCode** (`.opencode/`)
11
+ - **GitHub Copilot Workspace** (`.github/prompts/`)
12
+ - Serta dilengkapi **Shared Agent Workflows** (`agent/workflows/`) sebagai *source of truth* agar perilaku agen konsisten di seluruh platform.
13
+
14
+ ---
15
+
16
+ ## ⚡ Quick start (untuk tim baru)
17
+
18
+ Gunakan *command* CLI resmi untuk melakukan scaffolding project baru. Proses ini akan meng-copy seluruh konfigurasi agent, prompt, skills, serta kerangka direktori standar tim ke project baru Anda:
19
+
20
+ ```bash
21
+ # Interaktif (akan ada pertanyaan)
22
+ npx create-vasvibe my-new-project
23
+
24
+ # Masuk ke direktori kerja
25
+ cd my-new-project
26
+ ```
27
+
28
+ **Struktur yang Ter-scaffold Otomatis:**
29
+ - `codes/`, `specifications/`, `tests/` — folder kerja utama (telah dilindungi oleh aturan `.gitignore` agar tidak berantakan).
30
+ - Kerangka prompt dari seluruh environment (`.agents`, `.claude`, `.opencode`, `.github`, `agent/workflows`).
31
+ - File standard: `project_overview_example.md`, `GIT_STRUCTURE_GUIDE.md`, `skills-lock.json`.
32
+
33
+ **Opsi / Flag Tambahan:**
34
+ | Flag | Deskripsi |
35
+ |------|-----------|
36
+ | `-y, --yes` | Skip semua pertanyaan (gunakan setting default) |
37
+ | `--no-git` | Jangan jalankan `git init` secara otomatis |
38
+ | `--no-opencode` | Abaikan folder `.opencode/` |
39
+ | `--no-claude` | Abaikan folder `.claude/` dan `.agents/` |
40
+ | `--no-github` | Abaikan folder `.github/prompts/` |
41
+ | `--no-workflows` | Abaikan folder `agent/workflows/` |
42
+
43
+
44
+ ## 🤖 Tentang AI Agent
45
+
46
+ **AI Agent** adalah sistem cerdas berbasis Large Language Model (LLM) yang dapat mengeksekusi tugas-tugas kompleks secara mandiri dengan menggunakan **tools** (function calling). Berbeda dengan chatbot biasa yang hanya menjawab pertanyaan, AI Agent dapat:
47
+
48
+ - 🔍 **Membaca & menganalisis** file di workspace
49
+ - ✍️ **Menulis & mengedit** kode berdasarkan spesifikasi
50
+ - 🔧 **Menjalankan command** di terminal (build, test, deploy)
51
+ - 🧠 **Mengambil keputusan** berdasarkan context dan error feedback
52
+ - 📝 **Membuat dokumentasi** otomatis dari perubahan yang dilakukan
53
+
54
+ Dalam workflow ini, kita menggunakan **20 AI Agent persona** yang bekerja secara terspesialisasi (mirip tim development sesungguhnya) di dalam **4-fase model**: Perencanaan → Pengerjaan → Testing → Hardening.
55
+
56
+ ---
57
+
58
+ ## 🚀 Filosofi (v2.2)
59
+
60
+ 1. **4-Phase Model (Fase Gated):** Perencanaan → Pengerjaan → Testing → Hardening. Tiap fase ada **gate** (checkpoint manusia) sebelum lanjut fase berikutnya. Tidak ada yang jalan diam-diam.
61
+ 2. **No Silent Changes:** Setiap perubahan yang diminta harus **ditulis ke dokumen acuan** (spec, requirement, ADR) dan di-propagate ke agen terkait. Result: rework minimal, audit trail jelas.
62
+ 3. **Context is King:** AI tidak bisa bekerja tanpa konteks. `project_overview.md` + specifications/ adalah otak proyek.
63
+ 4. **Work Depth Flexibility:** 3 level kedalaman (`fast`/`standard`/`deep`). Mulai fast untuk validate ide, naik standard saat serius, deep hanya untuk area sensitif.
64
+ 5. **Tool-Agnostic Workflow:** Agent berjalan di Claude Code, OpenCode, GitHub Copilot, Antigravity. Source of truth di `agent/workflows/`, propagate ke tool-specific folders.
65
+ 6. **Desired-State Architecture (Toolsmith):** `state/workspace-manifest.json` adalah manifest platform-agnostic. Toolsmith: install skills + MCP sesuai tech stack, re-applicable saat ganti tool.
66
+ 7. **Role Segregation:** 19 agen specialized dengan tanggung jawab clear. Backend ≠ Frontend ≠ Security ≠ DevOps.
67
+ 8. **Log Everything:** Setiap sesi coding, testing, fixing tercatat untuk kontinuitas AI memori.
68
+ 9. **Human-in-the-Loop:** Manusia = Decision Maker (bisnis, arch, security, UX). AI = Executor (code, test, doc).
69
+ 10. **Git Workflow Compliance:** Agen (Developer, QA, Security, Reliability) mengikuti `_shared/git-branch-management.md` ketat.
70
+
71
+ ---
72
+
73
+ ## 📂 Struktur Direktori Otomatis
74
+ Workflow ini akan secara otomatis mengelola struktur folder berikut:
75
+
76
+ ```text
77
+ root/
78
+ ├── .agents/ # [BRAIN] Konfigurasi Google Antigravity & Skills
79
+ │ ├── agents/ # Definisi persona agent (analyst, developer, tester, dll)
80
+ │ └── skills/ # Folder berisi reusable tools/skills yang dapat diakses oleh agent
81
+
82
+ ├── .claude/ # [BRAIN] Konfigurasi & Prompt Claude Code
83
+ │ └── agents/
84
+
85
+ ├── .opencode/ # [BRAIN] Konfigurasi & Commands OpenCode
86
+ │ └── commands/
87
+
88
+ ├── .github/ # [BRAIN] Konfigurasi GitHub Copilot Workspace
89
+ │ └── prompts/
90
+
91
+ ├── agent/workflows/ # [CORE] Source of Truth untuk semua instruksi agent
92
+ │ ├── analyst.md
93
+ │ ├── developer.md
94
+ │ └── ...
95
+
96
+ ├── project_overview.md # [MASTER] Definisi produk, tech stack, & UI/UX
97
+ │ # 👤 HUMAN: Review & approve setelah Initiator Agent buat
98
+
99
+ ├── state/ # [CONFIG] Workspace manifest & knowledge base ⭐ v2.2
100
+ │ ├── workspace-manifest.json # Desired-state: skills[], mcp[], appliedTo platform
101
+ │ └── knowledge_base/ # Living docs: architecture, data-model, design-system, security, ADR/
102
+ │ ├── architecture.md
103
+ │ ├── data-model.md
104
+ │ ├── design-system.md
105
+ │ ├── security-standards.md
106
+ │ └── adr/ # Keputusan teknis (Architecture Decision Records)
107
+
108
+ ├── specifications/ # [DOCS] Output dari Analyst Agent
109
+ │ ├── README.md # Index semua spesifikasi
110
+ │ ├── 000_spec_environment_setup.md # Infrastruktur (Wajib pertama)
111
+ │ ├── 001_spec_database_schema.md
112
+ │ ├── requirements.md # Hasil Discovery Agent (user story, constraint, scope)
113
+ │ └── api-contract.md # API Contract (final sebelum Fase 2)
114
+
115
+ ├── task/ # [PROJECT MANAGEMENT] Output dari PM Agent
116
+ │ ├── task_list.md # Central task tracking (priority, status, dependencies)
117
+ │ ├── PROJECT_STATUS_REPORT.md # Progress reports
118
+ │ ├── TASK-001/ # Folder khusus per task
119
+ │ │ ├── plan.md # Rencana kerja & log eksekusi task terkait
120
+ │ │ └── ...
121
+ │ └── TASK-002/ # Setiap task baru akan diisolasi ke dalam sub-folder tersendiri
122
+
123
+ ├── codes/ # [SRC] Output dari Backend + Frontend atau Fullstack
124
+ │ ├── docker-compose.yml
125
+ │ ├── package.json
126
+ │ ├── app/ # Aplikasi utama
127
+ │ └── ... # 👤 HUMAN: Code review & testing manual
128
+
129
+ ├── tests/ # [TEST] Output dari Tester Agent
130
+ │ ├── e2e/ # Playwright E2E tests
131
+ │ └── integration/ # Integration tests
132
+
133
+ ├── logs/ # [TRACKING] Auto-generated logs per phase
134
+ │ ├── development/ # Backend + Frontend + Fullstack logs
135
+ │ ├── testing/ # Tester Agent logs
136
+ │ └── fixing/ # Bug fixing logs
137
+
138
+ └── documentation/ # [FINAL] Technical Writer output
139
+ ├── FSD_{{projectName}}.md # Functional Specification Document
140
+ └── API_Documentation.md
141
+ ```
142
+
143
+ **Legend:**
144
+ - 🤖 **Auto-generated:** File dibuat oleh AI Agent
145
+ - 👤 **Human review required:** File perlu di-review manusia sebelum lanjut
146
+ - 📝 **Living document:** File yang terus di-update
147
+
148
+ ---
149
+
150
+ ## 📊 Folder `state/` — Workspace State & Knowledge Base
151
+
152
+ Folder ini adalah **jantung kontinuitas project** — menyimpan manifest provisioning, context session, dan knowledge base project.
153
+
154
+ ### **Struktur dan Fungsi**
155
+
156
+ ```
157
+ state/
158
+ ├── workspace-manifest.json # 🤖 Desired-state (platform-agnostic)
159
+ ├── context.json # 🤖 Session continuity (agent handoff)
160
+ ├── agent_handoff.json # 🤖 Current handoff (agent-to-agent)
161
+ └── knowledge_base/ # 📝 Living docs (architecture, design, decisions)
162
+ ├── requirements/ # User stories, scope, constraint dari Discovery
163
+ ├── architecture.md # High-level design (system architecture, tech decisions)
164
+ ├── data-model.md # Database schema, ERD, relationships
165
+ ├── design-system.md # UI/UX guidelines (colors, typography, components)
166
+ ├── security-standards.md # Security policies, compliance requirements
167
+ └── decisions/ # ADR (Architecture Decision Records)
168
+ └── adr-001-*.md # Keputusan teknis signifikan (why, trade-offs)
169
+ ```
170
+
171
+ ### **1. workspace-manifest.json** — Agentic Workspace Provisioning
172
+
173
+ **Ditulis oleh:** Toolsmith agent (mode `init`, `switch`, `sync`)
174
+
175
+ **Dibaca oleh:** Toolsmith, Orchestrator (untuk verify readiness)
176
+
177
+ **Fungsi:** Platform-agnostic source of truth untuk workspace setup.
178
+
179
+ ```json
180
+ {
181
+ "project": "booking-kapal-wisata",
182
+ "decidedFrom": ["project_overview.md tech stack", "find-skills"],
183
+ "skills": [
184
+ { "id": "find-skills", "reason": "discover further skills" },
185
+ { "id": "ui-ux-pro-max", "reason": "Next.js + Tailwind UI" }
186
+ ],
187
+ "mcp": [
188
+ { "id": "filesystem", "reason": "workspace grounding" },
189
+ { "id": "git", "reason": "code-aware context" }
190
+ ],
191
+ "appliedTo": {
192
+ "claude-code": "2025-06-23 09:15",
193
+ "opencode": null,
194
+ "antigravity": null,
195
+ "github-copilot": null
196
+ },
197
+ "revisionHistory": [
198
+ { "timestamp": "2025-06-23 09:15", "agent": "toolsmith", "change": "initial provisioning" }
199
+ ]
200
+ }
201
+ ```
202
+
203
+ **Workflow Toolsmith:**
204
+ - **Mode init** (Fase 1 step 3b) — Toolsmith read `project_overview.md` tech stack, konsultasi `schemas/workspace-registry.json`, derive skills + MCP, tulis manifest, apply ke tool aktif
205
+ - **Mode sync** (Fase 2 step 0) — Verify manifest sesuai config aktual, deteksi drift, update jika perlu
206
+ - **Mode switch** (developer pindah tool) — Read manifest lama, apply ke tool baru tanpa re-derive
207
+
208
+ **Aturan:**
209
+ - Manifest adalah keputusan shared — jika ada request ganti skill/MCP, **update dokumen acuan terlebih dahulu** (No Silent Changes)
210
+ - Secrets (API keys, db password) ditulis sebagai `${VAR}` placeholder → developer isi di `.env`
211
+ - Per-tool config files (`.mcp.json`, `opencode.json`, dll) adalah **derived artifacts** — jangan edit manual, biarkan Toolsmith manage
212
+
213
+ ---
214
+
215
+ ### **2. context.json** — Session Continuity
216
+
217
+ **Ditulis oleh:** Setiap agent di **akhir session** (jika ada perubahan)
218
+
219
+ **Dibaca oleh:** Setiap agent di **awal session** (context awareness)
220
+
221
+ **Fungsi:** Menjaga continuity workflow antar-session/antar-developer.
222
+
223
+ ```json
224
+ {
225
+ "project_name": "booking-kapal-wisata",
226
+ "last_updated": "2025-06-23 14:30",
227
+ "last_agent": "backend",
228
+ "current_sprint": "Sprint 1 - Auth & Database",
229
+ "active_tasks": ["TASK-001", "TASK-002"],
230
+ "blocked_tasks": [],
231
+ "notes": "TASK-001 (Backend Login) ready for QA. TASK-002 (Frontend Login UI) in progress—waiting for API Contract finalization"
232
+ }
233
+ ```
234
+
235
+ **Aturan:**
236
+ - Setiap agent WAJIB baca file ini di awal untuk understand status project
237
+ - Update di akhir dengan status terkini, task active, blocker, dll
238
+ - Format ketat (JSON) — parser automation bergantung pada structure consistent
239
+
240
+ **Contoh flow:**
241
+ ```
242
+ Backend Agent (09:00) baca context.json
243
+ → lanjut TASK-001 dari status "dev"
244
+ → selesai, update context: active_tasks=[TASK-002], last_agent="backend", notes="ready for QA"
245
+ → simpan context.json
246
+
247
+ Frontend Agent (10:00) baca context.json
248
+ → lihat last_agent="backend", notes="ready for QA"
249
+ → understand Backend sudah selesai, siap kolaborasi via API Contract
250
+ → lanjut TASK-002
251
+ → update context di akhir
252
+ ```
253
+
254
+ ---
255
+
256
+ ### **3. agent_handoff.json** — Agent-to-Agent Handoff
257
+
258
+ **Ditulis oleh:** Agent yang mengirim task (overwrite setiap handoff)
259
+
260
+ **Dibaca oleh:** Agent penerima (instruction + artifacts)
261
+
262
+ **Fungsi:** Detailed handoff notes + artifact pointers untuk agent berikutnya.
263
+
264
+ ```json
265
+ {
266
+ "from_agent": "backend",
267
+ "to_agent": "qa",
268
+ "task_id": "TASK-001",
269
+ "timestamp": "2025-06-23 14:30",
270
+ "status": "ready_to_test",
271
+ "notes": "Login API selesai (POST /api/auth/login, POST /api/auth/refresh). Test case priority: validasi email invalid, password wrong, token refresh expired.",
272
+ "artifacts": [
273
+ "codes/src/app/api/auth/login/route.ts",
274
+ "codes/src/app/api/auth/refresh/route.ts",
275
+ "logs/development/dev_001_login.md"
276
+ ]
277
+ }
278
+ ```
279
+
280
+ **Aturan:**
281
+ - Hanya menyimpan handoff **terakhir** (overwrite, jangan append)
282
+ - Artifacts path harus relative ke repo root
283
+ - Gunakan saat menyerahkan task antar-agent formal (bukan sekadar update status di task_list.md)
284
+
285
+ ---
286
+
287
+ ### **4. knowledge_base/** — Living Documentation
288
+
289
+ **Ditulis oleh:** Berbagai agen (Discovery, Analyst, Data Architect, UX Designer, Security, PM)
290
+
291
+ **Dibaca oleh:** Semua agen (setiap agen wajib baca acuan sebelum kerja)
292
+
293
+ **Fungsi:** Single source of truth untuk architectural decisions, design, security policies, dll.
294
+
295
+ #### **knowledge_base/requirements/**
296
+ - Ditulis oleh: **Discovery Agent** (Fase 1 awal)
297
+ - Isi: User stories, scope, constraint, acceptance criteria, assumptions
298
+ - Dibaca oleh: Initiator, Analyst, PM
299
+ - Update: Discovery/Analyst saat scope berubah (dengan gate)
300
+
301
+ #### **knowledge_base/architecture.md**
302
+ - Ditulis oleh: **Initiator** → high-level, **Backend/DevOps** → detailed
303
+ - Isi: System design, tech stack rationale, API patterns, deployment strategy
304
+ - Dibaca oleh: Semua agen (terutama Backend, Frontend, DevOps)
305
+ - Update: Saat ada architectural change (ADR required)
306
+
307
+ #### **knowledge_base/data-model.md**
308
+ - Ditulis oleh: **Data Architect** (Fase 1), **Backend** (maintenance)
309
+ - Isi: Database schema, ERD, indexes, relationships, data governance
310
+ - Dibaca oleh: Backend, Frontend (untuk API contract), Analyst
311
+ - Update: Saat ada schema change (migration + dokumentasi)
312
+
313
+ #### **knowledge_base/design-system.md**
314
+ - Ditulis oleh: **UX Designer** (Fase 1), **Frontend** (maintenance)
315
+ - Isi: Color palette, typography, component library, motion, accessibility
316
+ - Dibaca oleh: Frontend, Backend (untuk validation), Design feedback
317
+ - Update: Saat ada design change (dengan gate)
318
+
319
+ #### **knowledge_base/security-standards.md**
320
+ - Ditulis oleh: **Security Expert** (Fase 1 Mode S, atau Fase 4 audit)
321
+ - Isi: Authentication strategy, encryption, data protection, OWASP, compliance
322
+ - Dibaca oleh: Backend, DevOps, QA (untuk security testing)
323
+ - Update: Saat ada security audit findings atau new requirement (dengan gate)
324
+
325
+ #### **knowledge_base/decisions/**
326
+ - ADR (Architecture Decision Records) untuk keputusan signifikan
327
+ - Format: ADR-001-*.md (title-kebab-case)
328
+ - Isi: Decision, context, alternatives considered, rationale, consequences
329
+ - Ditulis oleh: Agent yang propose (dengan human approval)
330
+ - Dibaca oleh: Semua agen (sebelum buat keputusan serupa)
331
+
332
+ ---
333
+
334
+ ### **Aturan Interaksi state/ folder** ⚠️
335
+
336
+ #### **1. Read sebelum action**
337
+ ```bash
338
+ # Setiap agent WAJIB baca di awal session:
339
+ 1. context.json — understand current status
340
+ 2. agent_handoff.json — jika ada handoff yang ditunggu
341
+ 3. knowledge_base/* — acuan untuk domain spesifik
342
+ ```
343
+
344
+ #### **2. Update dengan disiplin**
345
+ - **context.json** — update hanya di akhir session (jika ada change)
346
+ - **agent_handoff.json** — tulis hanya saat handoff formal antar-agent
347
+ - **knowledge_base/** — update hanya jika change terverifikasi/approved (No Silent Changes)
348
+
349
+ #### **3. Jangan edit manual**
350
+ - `workspace-manifest.json` — Toolsmith yang kelola (jangan diedit manual)
351
+ - `context.json`, `agent_handoff.json` — Agent yang kelola (format ketat untuk parser)
352
+ - `knowledge_base/` — Hanya agen authorized yang edit (Discovery → requirements, Architect → architecture, dll)
353
+
354
+ #### **4. Conflict resolution**
355
+ - Jika ada conflict di `knowledge_base/` (dua agen edit file sama), **winner adalah yang lebih recent** (by timestamp)
356
+ - Jika conflict signifikan, human harus approve di gate
357
+
358
+ #### **5. Tidak ada "hardcoded state"**
359
+ - state/ folder adalah **tentative** (bisa berubah saat gate review)
360
+ - Final truth tetap di dokumen acuan (specifications/, project_overview.md)
361
+ - state/ adalah **convenience cache** untuk agen continuity, bukan single source of truth
362
+
363
+ ---
364
+
365
+ ### **Contoh Workflow Lengkap**
366
+
367
+ ```
368
+ 🟦 FASE 1 (Perencanaan)
369
+
370
+ [Discovery] Interview → tulis requirements.md di state/knowledge_base/requirements/
371
+ [Initiator] Baca requirements.md → tulis project_overview.md + architecture.md di knowledge_base/
372
+ [Analyst] Baca project_overview.md → tulis api-contract.md di specifications/
373
+ → Update context.json: active_tasks=[TASK-001], notes="API Contract finalized, ready for Fase 2"
374
+ [UX Designer] Baca architecture.md → tulis design-system.md di knowledge_base/
375
+ [Data Architect] Baca architecture.md → tulis data-model.md di knowledge_base/
376
+ [Toolsmith] (Mode init) Baca project_overview.md → derive workspace manifest → tulis state/workspace-manifest.json
377
+ → Apply ke tool aktif (.mcp.json / opencode.json / dll)
378
+
379
+ 👤 GATE: Human approve API Contract + workspace setup → Fase 1 done
380
+
381
+ ---
382
+
383
+ 🟩 FASE 2 (Pengerjaan)
384
+
385
+ [Toolsmith] (Mode sync) Verify manifest sesuai config aktif → detect drift jika ada
386
+ [Backend] Baca context.json → active_tasks=[TASK-001]
387
+ → Baca api-contract.md di specifications/
388
+ → Baca data-model.md di knowledge_base/
389
+ → Implementasi login API
390
+ → Update context.json: last_agent="backend", notes="Login API ready"
391
+ → Tulis agent_handoff.json → to_agent="qa", status="ready_to_test"
392
+
393
+ [QA] Baca context.json → lihat last_agent="backend"
394
+ → Baca agent_handoff.json → understand task & artifacts
395
+ → Review code, run security checks
396
+ → Approve atau request fix
397
+
398
+ [Frontend] Paralel dengan Backend
399
+ → Baca api-contract.md, design-system.md
400
+ → Implementasi login UI
401
+ → Update context.json
402
+
403
+ 👤 GATE: Human approve kode → Fase 2 done
404
+
405
+ ---
406
+
407
+ 🟨 FASE 3 (Testing) & 🟧 FASE 4 (Hardening)
408
+
409
+ [Tester] Baca context.json → understand status
410
+ → Run E2E tests
411
+ → Report findings
412
+
413
+ [Security] Baca knowledge_base/security-standards.md (jika ada)
414
+ → Audit code
415
+ → Propose changes → ADR jika signifikan
416
+ → Update knowledge_base/decisions/
417
+
418
+ → Update context.json, agent_handoff.json sesuai handoff
419
+ ```
420
+
421
+ ---
422
+
423
+ ### **Best Practice**
424
+
425
+ 1. **Treat state/ as continuity**, not source of truth
426
+ - Source of truth tetap di `specifications/`, `project_overview.md`, `knowledge_base/`
427
+ - state/ adalah **derived convenience** untuk agen awareness
428
+
429
+ 2. **Keep context.json brief**
430
+ - Jangan simpan data besar — hanya summary + pointers
431
+ - Detail ada di task/task_list.md, logs/, artifacts
432
+
433
+ 3. **Honor handoff protocol**
434
+ - Jangan skip agent_handoff.json saat formal handoff
435
+ - Frontend tunggu Backend siap sebelum mulai (via handoff + API Contract)
436
+
437
+ 4. **Document decisions**
438
+ - Keputusan signifikan (architecture, security, data-model) → ADR di decisions/
439
+ - Jangan hanya di chat/notes — harus permanent di KB
440
+
441
+ ---
442
+
443
+ ## 🤖 20 AI Agent Personas & Capabilities
444
+
445
+ {{projectName}} v2.3 menggunakan **20 agent terspesialisasi** di 4 fase:
446
+
447
+ **Fase 1 — Perencanaan (Discovery & Blueprint):**
448
+ - **Discovery Agent** — Wawancara kebutuhan → requirements.md
449
+ - **Initiator Agent** — Tulis project_overview.md (tech stack, UI/UX, roadmap)
450
+ - **Data Architect** — Design data model & ERD
451
+ - **UX Designer** — Design system (colors, components, motion)
452
+ - **Analyst Agent** — Spesifikasi & API Contract
453
+ - **Toolsmith Agent** ⭐ NEW — Provisioning workspace agentik (skills + MCP)
454
+
455
+ **Fase 2 — Pengerjaan (Implementation):**
456
+ - **Backend Engineer** — Server-side API & business logic (standard/deep)
457
+ - **Frontend Engineer** — Client-side UI & integration (standard/deep)
458
+ - **Fullstack Developer** — Satu developer untuk dua sisi (fast mode)
459
+ - **QA Agent** — Code review & static analysis
460
+ - **Fixer Agent** — Bug fixing & debugging
461
+
462
+ **Fase 3 — Testing (E2E & Verification):**
463
+ - **Tester Agent** — Playwright automation & QA testing
464
+ - **Manual Tester Agent** ⭐ NEW — Headful UAT: scenario matrix (Normal/Abnormal), screenshot evidence, Major/Minor defect triage, retest iteration (opsional, berdampingan dengan Tester)
465
+
466
+ **Fase 4Hardening (Release Readiness):**
467
+ - **Security Expert** — Threat modeling & OWASP audit
468
+ - **Reliability Engineer** — Performance & load testing
469
+
470
+ **Cross-Phase (Coordination & Documentation):**
471
+ - **Orchestrator** — Pipeline coordinator (/plan-project, /build-feature, /test-feature, /release, dll)
472
+ - **PM Agent** — Task management & progress tracking
473
+ - **DevOps Agent** — Infrastructure & CI/CD setup
474
+ - **Document Agent** — Technical documentation
475
+
476
+ > 🔗 **Detail lengkap** mengenai cara kerja, rules, integrasi alur tugas, serta kemampuan (*capabilities*) dari tiap-tiap agen dapat dibaca di panduan terpisah:
477
+ > 👉 **[BACA: Panduan Persona & Kemampuan Agen (AGENT_PERSONAS.md)](./AGENT_PERSONAS.md)**
478
+
479
+ ---
480
+
481
+ ## ✨ Perubahan Utama v2.2
482
+
483
+ ### **1. Toolsmith Agent Workspace Provisioning Agentik**
484
+ Agen baru (ke-19) yang mengotomatisasi setup AI tool. Membedakan:
485
+ - **Toolsmith** → Setup tool AI (skills + MCP) untuk agent bekerja optimal
486
+ - **DevOps** → Setup runtime produk (Docker, infrastructure)
487
+
488
+ **Desired-State Architecture:**
489
+ - `state/workspace-manifest.json` — Single source of truth (platform-agnostic)
490
+ - Per-tool config (`.mcp.json`, `opencode.json`, `.vscode/mcp.json`) Derived artifacts
491
+ - `/setup-workspace [init|switch|sync]` — Otomatis detect tool aktif, apply manifest
492
+
493
+ **Benefit:** Ganti tool (Claude Code → OpenCode) tanpa re-derive requirements. Just run `/setup-workspace switch tool=opencode`.
494
+
495
+ ### **2. DeveloperFullstack (v2.0 contd.)**
496
+ - **Fast mode** (`depth=fast`) → Satu **Fullstack** developer
497
+ - **Standard/Deep** (`depth=standard|deep`) → **Backend + Frontend paralel** via API Contract
498
+
499
+ ### **3. Multi-Tool Support Sync** v2.2
500
+ - **GitHub Copilot prompt files** → `.github/prompts/*.prompt.md` (19 agents synced)
501
+ - **Source of truth** → `agent/workflows/` (auto-propagate ke `.claude/`, `.opencode/`, `.agents/`, `.github/prompts/`)
502
+ - **Template sync** → `npm run sync-template` (create-vasvibe template always up-to-date)
503
+
504
+ ### **4. Git Workflow Audit** v2.2
505
+ - **4 agen** ditambahkan pointer ke `_shared/git-branch-management.md`:
506
+ - DevOps (sebelum menulis infrastructure code)
507
+ - QA (code review checkpoint)
508
+ - Security (vulnerability fix phase)
509
+ - Reliability (hardening phase)
510
+ - **Kenapa:** Consistency git workflow di semua agen, prevent merge conflicts
511
+
512
+ ### **5. No Silent Changes Protocol** v2.0
513
+ Setiap perubahan yang diminta **harus ditulis ke dokumen acuan**:
514
+ - Request change Analyst (atau agen terkait) update spec/requirement/design-system
515
+ - Dokumen di-review & approve
516
+ - Agen downstream di-notify
517
+ - Result: No rework, clear audit trail
518
+
519
+ ---
520
+
521
+ ## 🛠️ Cara Memulai (Step-by-Step)
522
+
523
+ ### **4-Phase Model Ringkas**
524
+
525
+ Workflow ini diorganisir dalam **4 fase**, tiap fase diakhiri **gate** (approval manusia):
526
+
527
+ ```
528
+ 🟦 FASE 1: Perencanaan
529
+ Discovery Requirements → project_overview.md → Tech stack + Design system → Spesifikasi → API Contract
530
+ ↓ GATE: Approve API Contract
531
+
532
+ 🟩 FASE 2: Pengerjaan
533
+ Analyst spec-lock Backend + Frontend coding paralel (atau Fullstack fast) → QA review
534
+ ↓ GATE: Approve kode
535
+
536
+ 🟨 FASE 3: Testing
537
+ E2E Playwright tests Fixer fixes bugs sampai hijau
538
+ ↓ GATE: Approve test results
539
+
540
+ 🟧 FASE 4: Hardening
541
+ Security audit + Reliability test → CHANGELOG → Git tag
542
+ ↓ GATE: Approve rilis
543
+ ```
544
+
545
+ **Aturan:**
546
+ - Tidak boleh lanjut fase tanpa approval di gate
547
+ - Setiap perubahan dicatat ke dokumen acuan (No Silent Changes)
548
+ - Jika ada blocker → discuss & document, jangan skip
549
+
550
+ ---
551
+
552
+ ### **Phase 1: Perencanaan** 👤🤖
553
+
554
+ **Step 0: Tentukan Work Depth**
555
+
556
+ Buka `project_overview.md` (atau buat baru), set:
557
+ ```yaml
558
+ WORK_DEPTH: standard # fast | standard | deep
559
+ ```
560
+
561
+ **Kapan:**
562
+ - `fast` — MVP, prototype, eksplorasi ide (Fullstack 1 agen)
563
+ - `standard` — Produksi normal (Backend + Frontend terpisah) **← DEFAULT**
564
+ - `deep` — Fintech, auth, data sensitif (+ Security + Reliability)
565
+
566
+ ---
567
+
568
+ ### **Phase 1a: Project Initialization** 👤🤖
569
+
570
+ **👤 Human Decision:**
571
+ 1. Tentukan ide proyek (apa yang ingin dibuat?)
572
+ 2. Tentukan scope minimal (MVP) vs future features
573
+ 3. Tentukan deadline & budget constraints
574
+
575
+ **🤖 AI Execution:**
576
+
577
+ **Step 1: Inisialisasi Proyek**
578
+
579
+ ```bash
580
+ # Di VS Code, panggil Initiator Agent
581
+ /initiator
582
+ ```
583
+
584
+ **Input ke Agent:**
585
+ ```
586
+ "Aplikasi manajemen booking kapal wisata Labuan Bajo.
587
+ Customer bisa booking online, admin bisa manage booking
588
+ & pricing, kru bisa lihat jadwal.
589
+ Pakai Next.js, PostgreSQL, payment gateway Midtrans.
590
+ Target launch April 2025."
591
+ ```
592
+
593
+ **Output:**
594
+ - File `project_overview.md` akan dibuat dengan lengkap
595
+
596
+ **👤 Human Review (CRITICAL):**
597
+ - [ ] Baca `project_overview.md` dari awal sampai akhir
598
+ - [ ] Check tech stack (sudah sesuai kebutuhan?)
599
+ - [ ] Check UI/UX guidelines (warna, font, component library)
600
+ - [ ] Check development roadmap (realistis tidak?)
601
+ - [ ] **APPROVE** atau minta revisi ke Agent
602
+
603
+ **⚠️ Jangan lanjut jika belum approve project_overview.md!**
604
+
605
+ ---
606
+
607
+ ### **Phase 1b: Workspace Provisioning** 🤖 ⭐ v2.2
608
+
609
+ **Setelah tech stack diketahui (di project_overview.md), setup workspace agentik:**
610
+
611
+ ```bash
612
+ /setup-workspace init
613
+ ```
614
+
615
+ **Toolsmith Agent akan:**
616
+ 1. Detect tool aktif (Claude Code? OpenCode? GitHub Copilot?)
617
+ 2. Baca `project_overview.md` → extract tech stack
618
+ 3. Konsultasi `schemas/workspace-registry.json` recommend skills + MCP
619
+ 4. Present manifest untuk approval
620
+
621
+ **Output:**
622
+ - `state/workspace-manifest.json` Desired state (platform-agnostic)
623
+ - `.mcp.json` (Claude) / `opencode.json` (OpenCode) / `.vscode/mcp.json` (Copilot) / `.agents/mcp.json` (Antigravity)
624
+ - Secrets sebagai `${VAR}` placeholder → developer isi di `.env`
625
+
626
+ **👤 Human:**
627
+ - [ ] Review manifest (skills + MCP sesuai tech stack?)
628
+ - [ ] Fill `.env` dengan secrets
629
+ - [ ] Verify MCP servers functional
630
+
631
+ ---
632
+
633
+ ### **Phase 1c: Infrastructure Setup** 👤🤖
634
+
635
+ **👤 Human Decision:**
636
+ - Hosting: Local Docker? Cloud (Vercel + Supabase)? VPS?
637
+ - Database size estimate?
638
+ - Backup strategy?
639
+
640
+ **🤖 AI Execution:**
641
+
642
+ **Step 2: Spesifikasi Infrastruktur**
643
+
644
+ ```bash
645
+ /analyst
646
+
647
+ "Buat spesifikasi environment setup"
648
+ ```
649
+
650
+ **Agent Logic:**
651
+ - Agent akan deteksi `000_spec_environment_setup.md` belum ada
652
+ - Otomatis membuat spec infrastruktur (Docker, DB, Redis, dll)
653
+
654
+ **Output:**
655
+ - `specifications/000_spec_environment_setup.md`
656
+
657
+ **👤 Human Review:**
658
+ - [ ] Check Docker services (App, DB, Redis - perlu semua?)
659
+ - [ ] Check environment variables (API keys, secrets)
660
+ - [ ] Check port configuration (conflict dengan app lain?)
661
+
662
+ **Step 3: Implementasi Infrastructure**
663
+
664
+ ```bash
665
+ /developer
666
+
667
+ "Implementasikan SPEC-000 (Environment Setup)"
668
+ ```
669
+
670
+ **Output:**
671
+ - `codes/docker-compose.yml`
672
+ - `codes/.env.example`
673
+ - `codes/Dockerfile`
674
+ - `logs/development/dev_000_environment_setup.md`
675
+
676
+ **👤 Human Execution:**
677
+ ```bash
678
+ # Jalankan Docker manually
679
+ cd codes
680
+ cp .env.example .env
681
+ # Edit .env sesuai kebutuhan (database password, etc.)
682
+
683
+ docker-compose up -d
684
+ docker-compose logs -f
685
+ ```
686
+
687
+ **Verify:**
688
+ - [ ] Database running? (`docker ps`)
689
+ - [ ] App accessible? (`http://localhost:3000`)
690
+ - [ ] No errors di logs?
691
+
692
+ ---
693
+
694
+ ### **Phase 2: Database Design** 👤🤖
695
+
696
+ **Step 4: Database Schema Specification**
697
+
698
+ ```bash
699
+ /analyst
700
+
701
+ "Buat spesifikasi database schema"
702
+ ```
703
+
704
+ **Output:**
705
+ - `specifications/001_spec_database_schema.md`
706
+
707
+ **👤 Human Review:**
708
+ - [ ] Check ERD (relasi antar table masuk akal?)
709
+ - [ ] Check field types (JSONB vs separate table?)
710
+ - [ ] Check indexes (performance critical fields?)
711
+
712
+ **Step 5: Prisma Migration**
713
+
714
+ ```bash
715
+ /developer
716
+
717
+ "Implementasikan SPEC-001 (Database Schema)"
718
+ ```
719
+
720
+ **Output:**
721
+ - `codes/prisma/schema.prisma`
722
+ - `logs/development/dev_001_database_schema.md`
723
+
724
+ **👤 Human Execution:**
725
+ ```bash
726
+ cd codes
727
+ npm install
728
+ npx prisma migrate dev --name init
729
+ npx prisma generate
730
+ ```
731
+
732
+ **Verify:**
733
+ - [ ] Migration success?
734
+ - [ ] Tables created? (check via Prisma Studio: `npx prisma studio`)
735
+
736
+ ---
737
+
738
+ ### **Phase 2: Pengerjaan** 👤🤖
739
+
740
+ **Step 0: Sync Workspace** ⭐ v2.2
741
+
742
+ Sebelum build feature, pastikan workspace sync (special jika ganti tool):
743
+
744
+ ```bash
745
+ /setup-workspace sync
746
+ # atau jika switch tool:
747
+ /setup-workspace switch tool=opencode
748
+ ```
749
+
750
+ **Tujuan:** Verifikasi manifest sesuai config aktual, deteksi drift, update jika ada perubahan tech stack.
751
+
752
+ ---
753
+
754
+ ### **Step 1: Feature Development Loop** 🔄 👤🤖
755
+
756
+ Ulangi siklus ini untuk **setiap fitur**:
757
+
758
+ #### **Step 1.1: Specification (Analyst)**
759
+
760
+ **👤 Human:** Tentukan fitur mana yang dikerjakan duluan (prioritas)
761
+
762
+ ```bash
763
+ /analyst
764
+
765
+ "Buat spesifikasi untuk fitur Booking Management"
766
+ ```
767
+
768
+ **🤖 Agent Output:**
769
+ - `specifications/003_spec_booking_management.md`
770
+ - Atau breakdown menjadi atomic specs (003-001, 003-002, dll)
771
+
772
+ **👤 Human Review:**
773
+ - [ ] User stories jelas?
774
+ - [ ] API contracts lengkap?
775
+ - [ ] UI mockups sesuai design system?
776
+ - [ ] Validation rules masuk akal?
777
+
778
+ **⚠️ Approve spec → Then create task:**
779
+ ```bash
780
+ /pm
781
+
782
+ "Buat task di task_list.md berdasarkan SPEC-003 (Booking Management)"
783
+ ```
784
+
785
+ **🤖 PM Agent Output:**
786
+ - New task entry di `task/task_list.md`:
787
+ ```
788
+ ### TASK-003: Booking Management
789
+ - **Priority:** P0 (Critical)
790
+ - **Status:** not_started
791
+ - **Spec:** specifications/003_spec_booking_management.md
792
+ - **Dependencies:** TASK-001 (Database Schema), TASK-002 (Authentication)
793
+ - **Assigned To:** -
794
+ - **Description:** Implement booking CRUD operations with DP calculation
795
+ ```
796
+
797
+ #### **Step 1.2: Implementation**
798
+
799
+ **Jika depth=fast:**
800
+ ```bash
801
+ /fullstack
802
+
803
+ "Implementasikan SPEC-003 (Booking Management)"
804
+ ```
805
+ → Satu Fullstack agent koding dua sisi
806
+
807
+ **Jika depth=standard atau depth=deep:**
808
+ ```bash
809
+ /backend
810
+
811
+ "Implementasikan backend SPEC-003 (Booking Management)"
812
+ ```
813
+
814
+ ```bash
815
+ /frontend
816
+
817
+ "Implementasikan frontend SPEC-003 (Booking Management)"
818
+ ```
819
+ → Backend + Frontend jalankan paralel via API Contract
820
+
821
+ **🤖 Agent akan:**
822
+ 1. Read `task/task_list.md` → Find TASK-003
823
+ 2. **Update status:** `not_started` → `dev`
824
+ 3. **Set Assigned To:** [Backend/Frontend/Fullstack] Agent
825
+ 4. Implement code sesuai spec + API Contract
826
+ 5. Create development log
827
+ 6. **Update status:** `dev` → `ready_to_test`
828
+
829
+ **🤖 Agent Output:**
830
+ - Backend: API routes, business logic, DB queries
831
+ - Frontend: UI components, API integration, styling
832
+ - Log: `logs/development/dev_003_booking_management.md`
833
+
834
+ **👤 Human Tasks:**
835
+ 1. **Code Review:**
836
+ - [ ] Logic benar? (hitung DP 50%, validasi tanggal, dll)
837
+ - [ ] Security OK? (authentication, authorization)
838
+ - [ ] Performance? (N+1 query problem?)
839
+
840
+ 2. **Manual Testing:**
841
+ ```bash
842
+ # Start dev server
843
+ cd codes
844
+ npm run dev
845
+ ```
846
+ - [ ] Buka browser Test create booking
847
+ - [ ] Test validation (input invalid data)
848
+ - [ ] Test edge cases (booking di tanggal yang sudah full)
849
+
850
+ 3. **Check Errors:**
851
+ ```bash
852
+ # Lihat TypeScript errors
853
+ npm run type-check
854
+
855
+ # Lihat lint errors
856
+ npm run lint
857
+ ```
858
+
859
+ **Jika ada bugs di testing:**
860
+ ```bash
861
+ /fixer
862
+
863
+ "Ada bug di create booking: DP amount tidak ter-kalkulasi.
864
+ Error: totalPrice is undefined di line 45
865
+ Stack trace: [paste error dari terminal]
866
+
867
+ Reproduce steps:
868
+ 1. Buka form create booking
869
+ 2. Isi pax = 15
870
+ 3. Click Submit
871
+ 4. Error muncul"
872
+ ```
873
+
874
+ **🤖 Fixer Agent akan:**
875
+ 1. Read `task/task_list.md` → Find TASK-003 with status "failed"
876
+ 2. **Update status:** `failed` `fixing`
877
+ 3. Analyze error & stack trace
878
+ 4. Read related code files
879
+ 5. Identify root cause
880
+ 6. Apply fix
881
+ 7. **PENTING:** Update dokumen spesifikasi (`specifications/`) jika scope fixing melebihi bug kecil
882
+ 8. Run tests untuk verify fix
883
+ 9. **Update status:** `fixing` `ready_to_test` (back to Tester)
884
+ 10. Create fixing log di `logs/fixing/fixing_003_booking_dp_bug.md`
885
+
886
+ **👤 Human verify:**
887
+ - [ ] Bug fix works? (test manually)
888
+ - [ ] No side effects? (test related features)
889
+ - [ ] Root cause addressed? (bukan just symptom fix)
890
+
891
+ ---
892
+
893
+ #### **Step 2.2: Re-test (Tester)**
894
+
895
+ Setelah Fixer fix bugs, Tester run tests ulang sampai hijau.
896
+
897
+ **Gate: Approve saat semua test hijau ✅**
898
+
899
+ #### **Step 1.3: Code Review (QA Agent)**
900
+
901
+ ```bash
902
+ /qa
903
+
904
+ "Review SPEC-003 implementation code untuk correctness, security, performance"
905
+ ```
906
+
907
+ **🤖 QA Agent akan:**
908
+ 1. Static code analysis (TypeScript, linting)
909
+ 2. Security checks (OWASP top 10, input validation)
910
+ 3. Performance review (N+1 queries, unnecessary re-renders)
911
+ 4. Report findings
912
+
913
+ **Output:**
914
+ - Code review comments
915
+ - Pass/Fail status
916
+
917
+ **👤 Human:**
918
+ - [ ] Review QA findings
919
+ - [ ] Approve jika OK, atau minta developer fix
920
+
921
+ ---
922
+
923
+ ### **Step 2: Testing** 👤🤖
924
+
925
+ **Step 2.1: Testing (Tester)**
926
+
927
+ ```bash
928
+ /tester
929
+
930
+ "Buat dan jalankan E2E test untuk Booking Management API"
931
+ ```
932
+
933
+ **🤖 Agent akan:**
934
+ 1. Read `task/task_list.md` Find TASK-003 with status "ready_to_test"
935
+ 2. Create test scenarios (Playwright) → **Update status:** `ready_to_test` → `testing_ready`
936
+ 3. Run tests → **Update status:** `testing_ready` → `testing`
937
+ 4. Analyze results → **Update status:** `testing` → `passed` (or `failed`)
938
+
939
+ **🤖 Agent Output:**
940
+ - `tests/e2e/booking.test.ts`
941
+ - `logs/testing/test_003_booking_management.md`
942
+
943
+ **👤 Human Tasks:**
944
+ 1. **Verify Test Coverage:**
945
+ - [ ] Happy path tested?
946
+ - [ ] Error cases tested?
947
+ - [ ] Edge cases tested?
948
+
949
+ 2. **Run Tests Manually:**
950
+ ```bash
951
+ cd codes
952
+ npm test
953
+ ```
954
+
955
+ 3. **Exploratory Testing:**
956
+ - Test scenario yang tidak tercakup automated test
957
+ - Test dengan real user behavior (random input, rapid clicking, dll)
958
+
959
+ ---
960
+
961
+ ### **Step 2.1b: Manual/Headful UAT Testing (Manual Tester)** ⭐ NEW — Opsional
962
+
963
+ Selain `/tester` (scripted E2E), tersedia `/manual-test` untuk pengujian bergaya manusia dengan bukti visual — **independen**, bisa dijalankan kapan saja, tidak mengubah gate Fase 3:
964
+
965
+ ```bash
966
+ /manual-test
967
+
968
+ "Buat dan jalankan manual UAT test untuk fitur Booking Management"
969
+ ```
970
+
971
+ **🤖 Manual Tester Agent akan:**
972
+ 1. Susun scenario matrix (minimal 1 Normal + 1 Abnormal per fitur/fungsi)
973
+ 2. Eksekusi headful Playwright (browser terlihat), screenshot tiap skenario
974
+ 3. Update Pass/Fail, dan untuk yang Fail: deskripsi temuan + Severity (Major/Minor)
975
+ 4. Tulis laporan `task/[TASK-ID]_[nama-task]/manual_test_report.md` — berisi sheet **Summary** (agregat: total skenario, pass, fail, major, minor) dan sheet **Scenario Detail** (langkah, ekspektasi, aktual, path screenshot, catatan)
976
+
977
+ **👤 Human:**
978
+ - Review temuan Major → kirim ke `/fixer`
979
+ - Setelah fix, jalankan ulang `/manual-test` untuk retest — iterasi baru otomatis tercatat, histori iterasi sebelumnya tetap tersimpan di laporan yang sama
980
+
981
+ ---
982
+
983
+ ### **Step 3: Hardening** 👤🤖 (Per-Release)
984
+
985
+ Setelah 3-5 fitur selesai & siap rilis, jalankan hardening:
986
+
987
+ ```bash
988
+ /harden-release "1.0.0"
989
+ ```
990
+
991
+ **Agents yang jalan:**
992
+ - **Security Agent** OWASP audit, threat modeling, vulnerability scan
993
+ - **Reliability Agent** — Load testing, performance optimization
994
+ - **Document Agent** CHANGELOG generation
995
+
996
+ **Output:**
997
+ - `logs/hardening/security_audit_1.0.0.md`
998
+ - `logs/hardening/reliability_test_1.0.0.md`
999
+ - Updated `CHANGELOG.md`
1000
+ - `git tag v1.0.0`
1001
+
1002
+ **👤 Human:**
1003
+ - [ ] Review security findings
1004
+ - [ ] Review performance metrics
1005
+ - [ ] Approve release
1006
+
1007
+ ---
1008
+
1009
+ ### **Step 4 (Optional): Production Deployment** 👤🤖
1010
+
1011
+ **When to do this:**
1012
+ - Setelah hardening disetujui
1013
+ - Sebelum deployment ke production
1014
+ - Saat merencanakan scaling atau cost optimization
1015
+ - Saat ada infrastructure review perlu
1016
+
1017
+ **Step 4.1: Infrastructure Analysis**
1018
+
1019
+ ```bash
1020
+ /sysarch
1021
+
1022
+ "Analyze current application and design server specifications
1023
+ for production deployment. Create deployment plan."
1024
+ ```
1025
+
1026
+ **🤖 SysArch Agent akan:**
1027
+ 1. Read `project_overview.md`, `specifications/*.md`, codebase
1028
+ 2. Analyze database schema, API endpoints, file storage needs
1029
+ 3. **ASK critical questions** tentang:
1030
+ - User load (concurrent users, growth rate)
1031
+ - Transaction volume (bookings/day, payments/day)
1032
+ - Data & storage (file uploads, backup requirements)
1033
+ - Performance targets (response time, page load)
1034
+ - Availability (uptime, HA requirements)
1035
+ - Budget & deployment preferences
1036
+ - Security & compliance needs
1037
+
1038
+ **👤 Human:**
1039
+ - [ ] Answer all questions accurately
1040
+ - [ ] Provide conservative estimates
1041
+
1042
+ **Output:**
1043
+ - `architecture/current_state.md`
1044
+ - `architecture/server_specifications.md`
1045
+ - `architecture/deployment_plan.md`
1046
+ - `architecture/cost_analysis.md`
1047
+ - `architecture/monitoring_plan.md`
1048
+
1049
+ **Step 4.2: Review & Approve**
1050
+
1051
+ **👤 Human Review:**
1052
+ - [ ] Server specs sufficient?
1053
+ - [ ] Cost sesuai budget?
1054
+ - [ ] Deployment plan clear?
1055
+ - [ ] Monitoring comprehensive?
1056
+ - [ ] Backup & disaster recovery OK?
1057
+
1058
+ **If cost too high:**
1059
+ ```bash
1060
+ /sysarch
1061
+
1062
+ "Cost $500/month, budget $200/month.
1063
+ Provide 2-3 cost optimization scenarios dengan trade-offs."
1064
+ ```
1065
+
1066
+ **Step 4.3: Deploy**
1067
+
1068
+ **👤 Human:**
1069
+ - [ ] Follow deployment_plan.md step-by-step
1070
+ - [ ] Setup infrastructure (VPS, Docker, PostgreSQL, monitoring, SSL, backups)
1071
+ - [ ] Verify deployment (app accessible, SSL valid, monitoring alerts OK, backup running)
1072
+ - [ ] Performance check (page load < 3s)
1073
+
1074
+ ---
1075
+
1076
+ ### **Step 5: Final Documentation** 👤🤖 (Per-Release)
1077
+
1078
+ ```bash
1079
+ /document
1080
+
1081
+ "Generate FSD + API documentation dari semua specifications"
1082
+ ```
1083
+
1084
+ **Output:**
1085
+ - `documentation/FSD_{{projectName}}.md`
1086
+ - `documentation/API_Documentation.md`
1087
+
1088
+ **👤 Human:**
1089
+ - [ ] Documentation complete & clear?
1090
+
1091
+ ---
1092
+
1093
+ ## 👤 Tanggung Jawab Manusia (Human-in-the-Loop)
1094
+
1095
+ AI Agent **TIDAK DAPAT** dan **TIDAK BOLEH** mengambil keputusan untuk hal-hal berikut:
1096
+
1097
+ ### **1. Business Decisions** 🎯
1098
+ - ❌ Menentukan prioritas fitur (mana yang dikerjakan duluan?)
1099
+ - ❌ Menentukan pricing strategy (berapa harga produk?)
1100
+ - ❌ Menentukan target market (siapa user kita?)
1101
+ - ❌ Approve budget & timeline
1102
+
1103
+ **👤 Human:** Product Owner / Business Stakeholder
1104
+
1105
+ ---
1106
+
1107
+ ### **2. Architecture Decisions** 🏗️
1108
+ - Pilih monolith vs microservices?
1109
+ - ❌ Pilih SQL vs NoSQL?
1110
+ - ❌ Pilih cloud provider (AWS vs GCP vs Azure)?
1111
+ - ❌ Approve tech stack yang diusulkan Agent
1112
+
1113
+ **👤 Human:** Tech Lead / Solution Architect
1114
+
1115
+ **✅ Agent:** Memberikan **rekomendasi** + pros/cons, tapi **final decision** tetap di manusia
1116
+
1117
+ ---
1118
+
1119
+ ### **3. Security & Compliance** 🔒
1120
+ - ❌ Approve deployment ke production
1121
+ - ❌ Approve perubahan database schema di production
1122
+ - Approve akses ke production secrets/API keys
1123
+ - ❌ Menentukan data retention policy (GDPR, UU PDP)
1124
+
1125
+ **👤 Human:** Security Engineer / Compliance Officer
1126
+
1127
+ **⚠️ Warning:** Agent **DAPAT** menjalankan command berbahaya (`rm -rf`, `DROP TABLE`, dll) jika tidak diawasi!
1128
+
1129
+ ---
1130
+
1131
+ ### **4. Code Quality Gates** ✅
1132
+ - ❌ Approve merge ke `main` branch
1133
+ - Approve deployment ke staging/production
1134
+ - ❌ Skip failing tests (NEVER!)
1135
+
1136
+ **👤 Human:** Senior Developer / Team Lead
1137
+
1138
+ **Process:**
1139
+ 1. Agent creates code → Human reviews
1140
+ 2. If OK → Human approves (via Git PR)
1141
+ 3. If NOT OK Human provides feedback → Agent fixes
1142
+
1143
+ ---
1144
+
1145
+ ### **5. User Experience Decisions** 🎨
1146
+ - ❌ Final approval untuk UI/UX design
1147
+ - ❌ Menentukan user flow (apakah flow ini intuitif?)
1148
+ - ❌ Approve wording (error messages, button labels, dll)
1149
+
1150
+ **👤 Human:** UX Designer / Product Manager
1151
+
1152
+ **✅ Agent:** Generate UI berdasarkan guidelines, tapi **final polish** tetap perlu human touch
1153
+
1154
+ ---
1155
+
1156
+ ## 📋 Daily Workflow Checklist
1157
+
1158
+ ### **Morning Routine** ☀️
1159
+
1160
+ ```bash
1161
+ # 1. Check project progress
1162
+ /pm
1163
+
1164
+ "Tampilkan status project saat ini dari task_list.md"
1165
+ ```
1166
+
1167
+ ```bash
1168
+ # 2. Sync context dengan Agent
1169
+ /developer
1170
+
1171
+ "Baca logs/development/dev_*.md, apa progres terakhir?"
1172
+ ```
1173
+
1174
+ **👤 Human:**
1175
+ - [ ] Review task progress dari task_list.md
1176
+ - [ ] Review semua changes semalam (git diff)
1177
+ - [ ] Check error logs (jika ada background process)
1178
+ - [ ] Prioritize tasks hari ini (based on task_list.md priorities)
1179
+
1180
+ ---
1181
+
1182
+ ### **Development Cycle** 🔄
1183
+
1184
+ ```
1185
+ [Analyst] [👤 Review] [PM] [Developer] [👤 Test] → [Fixer (if bugs)] → [Tester] → [👤 Approve]
1186
+
1187
+ (Create task in
1188
+ task_list.md)
1189
+ (After MVP)
1190
+
1191
+ [SysArch] → [👤 Review] → [Deploy] → [Monitor]
1192
+ ```
1193
+
1194
+ **Per Feature (2-4 hours):**
1195
+ 1. **Analyst:** Create spec (30 min)
1196
+ 2. **👤 Human:** Review & approve spec (15 min)
1197
+ 3. **PM:** Create task in task_list.md (5 min) ⭐ NEW
1198
+ 4. **Developer:** Implement code + update task status (1-2 hours)
1199
+ 5. **👤 Human:** Code review + manual test (30 min)
1200
+ 6. **Fixer:** Fix bugs if found + update task status (15-30 min) ← **OPTIONAL**
1201
+ 7. **Tester:** Create & run tests + update task status (30 min)
1202
+ 8. **👤 Human:** Verify test results (15 min)
1203
+
1204
+ **Repeat** untuk fitur berikutnya
1205
+
1206
+ **Before Production Deploy (after MVP complete):**
1207
+ 1. **SysArch:** Analyze app & create infrastructure plan (2-3 hours)
1208
+ 2. **👤 Human:** Answer requirements questions & review plan (1 hour)
1209
+ 3. **SysArch/Developer:** Deploy to production (2-4 hours)
1210
+ 4. **SysArch:** Setup monitoring & alerts (1 hour)
1211
+ 5. **👤 Human:** Verify deployment & monitor metrics (ongoing)
1212
+
1213
+ ---
1214
+
1215
+ ### **Evening Routine** 🌙
1216
+
1217
+ **👤 Human:**
1218
+ - [ ] Review semua development logs hari ini
1219
+ - [ ] Commit & push changes ke Git
1220
+ - [ ] Update project board (Trello/Jira/Linear)
1221
+ - [ ] Note blocker untuk besok
1222
+
1223
+ ```bash
1224
+ # Optional: Update task status based on logs
1225
+ /pm
1226
+
1227
+ "Update task_list.md berdasarkan development logs hari ini"
1228
+ ```
1229
+
1230
+ ```bash
1231
+ # Optional: Minta Agent summarize hari ini
1232
+ /developer
1233
+
1234
+ "Summarize semua development logs hari ini,
1235
+ apa saja yang sudah selesai dan apa yang masih pending?"
1236
+ ```
1237
+
1238
+ ```bash
1239
+ # Optional: Generate status report
1240
+ /pm
1241
+
1242
+ "Generate project status report untuk hari ini"
1243
+ ```
1244
+
1245
+ ---
1246
+
1247
+ ## ⚠️ Common Pitfalls & How to Avoid
1248
+
1249
+ ### **1. Agent Tidak Punya Context** 🤔
1250
+ **Symptom:** Agent buat code yang tidak sesuai project
1251
+
1252
+ **Fix:**
1253
+ ```bash
1254
+ # Selalu arahkan Agent untuk baca context dulu
1255
+ /developer
1256
+
1257
+ "Baca project_overview.md dan specification/003_*.md
1258
+ sebelum implementasi fitur Booking"
1259
+ ```
1260
+
1261
+ ---
1262
+
1263
+ ### **2. Agent Menjalankan Command Berbahaya** ⚠️
1264
+ **Symptom:** Agent suggest `rm -rf` atau `DROP DATABASE`
1265
+
1266
+ **Fix:**
1267
+ - **👤 Human:** ALWAYS review command sebelum execute
1268
+ - Use Git (semua changes bisa di-rollback)
1269
+ - Backup database sebelum migration
1270
+
1271
+ ---
1272
+
1273
+ ### **3. Spec Tidak Jelas Code Salah** 📝
1274
+ **Symptom:** Developer Agent tanya-tanya terus karena spec ambiguous
1275
+
1276
+ **Fix:**
1277
+ - **👤 Human:** Review spec dari Analyst dengan detail
1278
+ - Minta Analyst revisi jika ada yang unclear
1279
+ - Jangan approve spec yang setengah-setengah
1280
+
1281
+ ---
1282
+
1283
+ ### **4. Infrastructure Planning & Deployment** ⚙️ NEW
1284
+ **Symptom:** Aplikasi sudah siap, tapi bingung deploy dimana dan butuh server apa
1285
+
1286
+ **Solution:**
1287
+ ```bash
1288
+ /sysarch
1289
+
1290
+ "Analyze current application ({{projectName}} Reservation System).
1291
+
1292
+ Context:
1293
+ - Next.js 14 App Router
1294
+ - PostgreSQL database with 15 tables
1295
+ - File uploads: 10-20 photos/day (~5MB each)
1296
+ - Target: 100 concurrent users, 50 bookings/day
1297
+ - Budget: $200/month
1298
+ - Location: Indonesia users only
1299
+ - Required: 99% uptime, daily backups
1300
+
1301
+ Design server specifications and deployment plan."
1302
+ ```
1303
+
1304
+ **SysArch Agent akan:**
1305
+ 1. Analyze codebase & database schema
1306
+ 2. Ask clarifying questions tentang load, growth, budget
1307
+ 3. Create server specifications (CPU, RAM, Storage)
1308
+ 4. Design deployment architecture (1-server, 2-server, or cloud)
1309
+ 5. Estimate monthly costs
1310
+ 6. Provide deployment step-by-step guide
1311
+ 7. Setup monitoring plan
1312
+
1313
+ **👤 Human:**
1314
+ - [ ] Answer all requirements questions dengan data akurat
1315
+ - [ ] Review cost analysis (sesuai budget?)
1316
+ - [ ] Review server specs (cukup untuk load?)
1317
+ - [ ] Approve deployment plan
1318
+ - [ ] Execute deployment following the guide
1319
+
1320
+ ---
1321
+
1322
+ ### **5. Performance Issues in Production** 🐌
1323
+ **Symptom:** Aplikasi lambat, page load > 5 seconds, API timeout
1324
+
1325
+ **Solution:**
1326
+ ```bash
1327
+ /sysarch
1328
+
1329
+ "Performance analysis request.
1330
+
1331
+ Current metrics:
1332
+ - Page load time: 8 seconds (target: < 3s)
1333
+ - API response time: 3-5 seconds (target: < 500ms)
1334
+ - Database query time: 2-4 seconds per request
1335
+ - Server CPU: 85% average
1336
+ - Server RAM: 90% usage
1337
+
1338
+ Analyze bottlenecks and provide optimization recommendations.
1339
+ Consider: database indexing, query optimization, caching, CDN, server upgrade."
1340
+ ```
1341
+
1342
+ **SysArch Agent akan:**
1343
+ 1. Analyze performance metrics
1344
+ 2. Identify bottlenecks (database, server resources, network)
1345
+ 3. Recommend optimizations
1346
+ 4. Estimate performance improvement & costs
1347
+ 5. Provide implementation plan
1348
+
1349
+ ---
1350
+
1351
+ ### **6. Test Coverage Rendah** 🧪
1352
+ **Symptom:** Production bug yang seharusnya ketahuan di test
1353
+
1354
+ **Fix:**
1355
+ ```bash
1356
+ /tester
1357
+
1358
+ "Test coverage untuk Booking API masih 60%,
1359
+ tambahkan test untuk edge cases:
1360
+ - Booking di tanggal yang sudah penuh
1361
+ - Booking dengan pax > 22
1362
+ - Booking dengan tanggal di masa lalu"
1363
+ ```
1364
+
1365
+ ### **7. Bugs di Production** 🐛
1366
+ **Symptom:** User report bug di production, perlu hotfix cepat
1367
+
1368
+ **Fix:**
1369
+ ```bash
1370
+ /fixer
1371
+
1372
+ "URGENT: Production bug reported.
1373
+
1374
+ Issue: User tidak bisa cancel booking yang sudah DP_PAID
1375
+ Error: 500 Internal Server Error
1376
+ Endpoint: POST /api/backoffice/bookings/:id/cancel
1377
+
1378
+ Expected: Booking bisa di-cancel dengan refund policy
1379
+ Actual: Server error, booking tidak ter-cancel
1380
+
1381
+ Reproduce:
1382
+ 1. Login as admin
1383
+ 2. Open booking detail (status: DP_PAID)
1384
+ 3. Click Cancel button
1385
+ 4. Error 500 muncul
1386
+
1387
+ Logs: [paste error logs dari production]"
1388
+ ```
1389
+
1390
+ **Fixer Agent akan:**
1391
+ 1. Analyze production logs
1392
+ 2. Reproduce locally
1393
+ 3. Fix bug dengan minimal changes (hotfix approach)
1394
+ 4. Update dokumen spesifikasi terkait fitur yang difixing sesuai dengan scope fixing yang diberikan oleh user
1395
+ 4. Run regression tests
1396
+ 5. Create fixing log dengan deployment notes
1397
+
1398
+ **👤 Human:**
1399
+ - [ ] Test fix di staging
1400
+ - [ ] Approve deployment ke production
1401
+ - [ ] Monitor production logs setelah deploy
1402
+ - [ ] Notify users bug sudah fixed
1403
+
1404
+ ---
1405
+
1406
+ ## 🎯 Success Metrics
1407
+
1408
+ **Project dianggap berhasil jika:**
1409
+ - Semua spesifikasi di-review & approve manusia
1410
+ - ✅ Test coverage > 80%
1411
+ - Zero critical bugs di production
1412
+ - Development logs lengkap (easy onboarding developer baru)
1413
+ - Documentation up-to-date
1414
+ - Infrastructure well-planned & cost-optimized ⭐ NEW
1415
+ - Production deployment smooth dengan monitoring active ⭐ NEW
1416
+ - ✅ Performance meets SLA (response time, uptime) ⭐ NEW
1417
+
1418
+ **AI Agent membantu achieve ini dengan:**
1419
+ - 🤖 Konsistensi code quality (follow standards)
1420
+ - 🤖 Dokumentasi otomatis (never outdated)
1421
+ - 🤖 Fast iteration (spec → code → test dalam 1 hari)
1422
+ - 🤖 Infrastructure planning data-driven (SysArch Agent) ⭐ NEW
1423
+ - 🤖 Cost optimization recommendations NEW
1424
+ - 🤖 Performance monitoring & alerting setup NEW
1425
+
1426
+ **Tapi final quality tetap tanggung jawab Human!** 👤
1427
+
1428
+
1429
+
1430
+ ---
1431
+
1432
+ ## 📝 Aturan Main (Rules of Engagement)
1433
+
1434
+ ### **For AI Agents** 🤖
1435
+ 1. **Always Read Context First:**
1436
+ - Baca `project_overview.md` sebelum mulai task
1437
+ - Baca specification terkait sebelum coding
1438
+ - Baca logs terakhir untuk tahu progres
1439
+
1440
+ 2. **Never Assume:**
1441
+ - Jika spec tidak jelas → ASK human clarification
1442
+ - Jika ada breaking change → WARN human terlebih dahulu
1443
+ - Jika perlu run destructive command → CONFIRM dulu
1444
+
1445
+ 3. **Document Everything:**
1446
+ - Setiap code change harus ada di development log
1447
+ - Setiap test run harus ada di testing log
1448
+ - Setiap bug fix harus ada di fixing log
1449
+
1450
+ ### **For Humans** 👤
1451
+ 1. **Don't Edit Logs Manually:**
1452
+ - Biarkan Agent yang menulis `logs/development/*.md` dan `logs/testing/*.md`
1453
+ - Format konsisten, easy to parse untuk Agent
1454
+
1455
+ 2. **Always Review Before Approve:**
1456
+ - Specifications (apakah sesuai bisnis requirement?)
1457
+ - Code (apakah logic benar & secure?)
1458
+ - Tests (apakah coverage cukup?)
1459
+
1460
+ 3. **Read Logs After Break:**
1461
+ ```bash
1462
+ # Jika baru buka VS Code setelah istirahat
1463
+ /developer
1464
+
1465
+ "Baca semua logs/development/dev_*.md,
1466
+ summarize progres terakhir dan apa yang pending"
1467
+ ```
1468
+
1469
+ 4. **Terminal Safety:**
1470
+ - **⚠️ NEVER** auto-approve terminal commands tanpa review
1471
+ - Especially: `rm`, `DROP`, `DELETE`, deployment commands
1472
+ - Use Git (easy rollback jika ada masalah)
1473
+
1474
+ 5. **UI/UX Consistency:**
1475
+ - Jika hasil UI jelek/tidak konsisten:
1476
+ ```bash
1477
+ /analyst
1478
+
1479
+ "Update UI/UX Guidelines di project_overview.md.
1480
+ Warna button inconsistent, seharusnya pakai Ocean Teal (#0E7490)
1481
+ untuk primary button, Sunset Coral (#F97316) untuk CTA"
1482
+ ```
1483
+
1484
+ 6. **Infrastructure Planning:** ⭐ NEW
1485
+ - Before production deployment, always consult SysArch Agent
1486
+ - Provide accurate data (realistic estimates, not best-case scenario)
1487
+ - Consider growth: plan for 6-12 months, not just current needs
1488
+ - Budget for monitoring & backups (non-negotiable)
1489
+ ```bash
1490
+ /sysarch
1491
+
1492
+ "Analyze app and design production infrastructure.
1493
+ Be conservative with estimates, include 50% growth buffer.
1494
+ Budget: $200/month (strict), prioritize reliability over features."
1495
+ ```
1496
+
1497
+ ---
1498
+
1499
+ ## ⚙️ Customizing Agent Behavior
1500
+
1501
+ Jika ingin mengubah cara kerja Agent (misal: Developer pakai TDD strict, atau Analyst harus bikin ERD diagram), edit file di `.github/prompts/`:
1502
+
1503
+ ### **File Structure:**
1504
+ ```
1505
+ .github/prompts/
1506
+ ├── initiator.prompt.md # Aturan buat project_overview.md
1507
+ ├── analyst.prompt.md # Aturan buat specifications
1508
+ ├── developer.prompt.md # Coding standards & logging format
1509
+ ├── fixer.prompt.md # Bug fixing strategy & debugging approach
1510
+ ├── tester.prompt.md # Testing strategy & coverage requirements
1511
+ ├── sysarch.prompt.md # Infrastructure planning & deployment ⭐ NEW
1512
+ └── document.prompt.md # Documentation format
1513
+ ```
1514
+
1515
+ ### **Example Modification:**
1516
+
1517
+ **File:** `.github/prompts/developer.prompt.md`
1518
+
1519
+ **Before:**
1520
+ ```markdown
1521
+ **CODING STYLE:** Follow Next.js App Router best practices
1522
+ ```
1523
+
1524
+ **After:**
1525
+ ```markdown
1526
+ **CODING STYLE:**
1527
+ - Follow Next.js App Router best practices
1528
+ - MUST use Test-Driven Development (TDD)
1529
+ - Write test first before implementation
1530
+ - Minimum test coverage: 90%
1531
+ ```
1532
+
1533
+ **Effect:** Developer Agent akan selalu bikin test dulu sebelum coding
1534
+
1535
+ ---
1536
+
1537
+ **File:** `.github/prompts/fixer.prompt.md`
1538
+
1539
+ **Customize:**
1540
+ ```markdown
1541
+ **BUG FIXING PRIORITY:**
1542
+ 1. Security vulnerabilities (CRITICAL - fix within 2 hours)
1543
+ 2. Data loss bugs (HIGH - fix within 4 hours)
1544
+ 3. Payment/financial bugs (HIGH - fix within 4 hours)
1545
+ 4. UI/UX bugs (MEDIUM - fix within 24 hours)
1546
+ 5. Performance issues (LOW - fix within 1 week)
1547
+
1548
+ **DEBUGGING APPROACH:**
1549
+ - Always reproduce bug locally first
1550
+ - Use git bisect to find regression commit
1551
+ - Write test case that fails before fix
1552
+ - Verify test passes after fix
1553
+ - Check for similar bugs in codebase
1554
+ ```
1555
+
1556
+ **Effect:** Fixer Agent akan prioritize bugs berdasarkan severity
1557
+
1558
+ ---
1559
+
1560
+ **File:** `.github/prompts/sysarch.prompt.md` ⭐ NEW
1561
+
1562
+ **Customize:**
1563
+ ```markdown
1564
+ **INFRASTRUCTURE PREFERENCES:**
1565
+ - Default cloud provider: DigitalOcean (cost-effective for startups)
1566
+ - Minimum server specs: 2 vCPU, 4GB RAM (never go below this)
1567
+ - Database: Always use managed database (Supabase/AWS RDS)
1568
+ - Backups: Daily automated backups, 30 days retention (non-negotiable)
1569
+ - Monitoring: Free tier tools only (UptimeRobot, Sentry, Papertrail)
1570
+ - CDN: Optional for MVP, required when traffic > 10k users/month
1571
+
1572
+ **COST OPTIMIZATION PRIORITIES:**
1573
+ 1. Data integrity & backups (non-negotiable)
1574
+ 2. Acceptable performance (2-3s page load OK for MVP)
1575
+ 3. 99% uptime (99.9% nice to have)
1576
+ 4. CDN (add later when needed)
1577
+
1578
+ **SCALING TRIGGERS:**
1579
+ - CPU > 70% for 24 hours → Vertical scaling
1580
+ - RAM > 80% for 24 hours → Vertical scaling
1581
+ - Response time > 3s → Add caching layer
1582
+ - Traffic > 1000 concurrent users → Horizontal scaling
1583
+ ```
1584
+
1585
+ **Effect:** SysArch Agent akan always recommend cost-effective solutions untuk startup
1586
+
1587
+ ---
1588
+
1589
+ ## 🚨 Troubleshooting
1590
+
1591
+ ### **Problem: Agent Lupa Context**
1592
+ **Symptom:** Agent buat code yang tidak sesuai dengan project
1593
+
1594
+ **Solution:**
1595
+ ```bash
1596
+ /developer
1597
+
1598
+ "STOP. Baca ulang:
1599
+ 1. project_overview.md (tech stack & UI guidelines)
1600
+ 2. specifications/004_spec_pricing.md (requirement)
1601
+ 3. logs/development/dev_003_*.md (code yang sudah ada)
1602
+
1603
+ Lalu implementasi ulang dengan benar"
1604
+ ```
1605
+
1606
+ ---
1607
+
1608
+ ### **Problem: Specification Terlalu Umum**
1609
+ **Symptom:** Developer Agent tanya-tanya terus karena spec tidak detail
1610
+
1611
+ **Solution:**
1612
+ ```bash
1613
+ /analyst
1614
+
1615
+ "SPEC-005 terlalu general. Breakdown menjadi atomic specifications:
1616
+ - 005-001: Revenue Summary Card
1617
+ - 005-002: Profit Trend Chart
1618
+ - 005-003: Upcoming Trips Timeline
1619
+
1620
+ Setiap spec harus punya:
1621
+ - User story jelas
1622
+ - API contract lengkap
1623
+ - UI mockup dengan Tailwind classes"
1624
+ ```
1625
+
1626
+ ---
1627
+
1628
+ ### **Problem: Task Status Out of Sync** ⭐ NEW
1629
+ **Symptom:** task_list.md status tidak sesuai dengan development logs atau test results
1630
+
1631
+ **Solution:**
1632
+ ```bash
1633
+ /pm
1634
+
1635
+ "Update task_list.md berdasarkan logs di logs/development/ dan logs/testing/.
1636
+ Check semua task status dan pastikan sinkron dengan actual progress"
1637
+ ```
1638
+
1639
+ **PM Agent akan:**
1640
+ 1. Read all logs di logs/development/ dan logs/testing/
1641
+ 2. Identify completed tasks
1642
+ 3. Update task status accordingly
1643
+ 4. Update "Last Updated" timestamps
1644
+ 5. Generate summary of changes
1645
+
1646
+ **Manual Fix (if needed):**
1647
+ - Edit `task/task_list.md` langsung
1648
+ - Update status field: `not_started`, `dev`, `ready_to_test`, `testing_ready`, `testing`, `passed`, `failed`
1649
+ - Update "Last Updated" timestamp: `[YYYY-MM-DD HH:MM]`
1650
+ - Update "Assigned To" field if task handed off
1651
+
1652
+ ---
1653
+
1654
+ ### **Problem: Too Many Tasks, Tidak Tahu Prioritas** ⭐ NEW
1655
+ **Symptom:** Bingung mau kerjakan task mana dulu
1656
+
1657
+ **Solution:**
1658
+ ```bash
1659
+ /pm
1660
+
1661
+ "Tampilkan semua task dengan status 'not_started',
1662
+ sort by priority (P0 → P1 → P2 → P3),
1663
+ dan cek dependencies"
1664
+ ```
1665
+
1666
+ **PM Agent akan:**
1667
+ 1. List all not_started tasks
1668
+ 2. Sort by priority level
1669
+ 3. Show dependencies for each task
1670
+ 4. Recommend next task to work on (no blockers, highest priority)
1671
+
1672
+ **👤 Human Decision:**
1673
+ - Focus on P0 (Critical) tasks first
1674
+ - Check dependencies (don't start task if dependency not done)
1675
+ - Consider business impact vs technical complexity
1676
+
1677
+ ---
1678
+
1679
+ ### **Problem: Agent Lupa Context**
1680
+ **Symptom:** Agent buat code yang tidak sesuai dengan project
1681
+
1682
+ **Solution:**
1683
+ ```bash
1684
+ /developer
1685
+
1686
+ "STOP. Baca ulang:
1687
+ 1. project_overview.md (tech stack & UI guidelines)
1688
+ 2. specifications/004_spec_pricing.md (requirement)
1689
+ 3. logs/development/dev_003_*.md (code yang sudah ada)
1690
+
1691
+ Lalu implementasi ulang dengan benar"
1692
+ ```
1693
+
1694
+ ---
1695
+
1696
+ ### **Problem: Specification Terlalu Umum**
1697
+ **Symptom:** Developer Agent tanya-tanya terus karena spec tidak detail
1698
+
1699
+ **Solution:**
1700
+ ```bash
1701
+ /analyst
1702
+
1703
+ "SPEC-005 terlalu general. Breakdown menjadi atomic specifications:
1704
+ - 005-001: Revenue Summary Card
1705
+ - 005-002: Profit Trend Chart
1706
+ - 005-003: Upcoming Trips Timeline
1707
+
1708
+ Setiap spec harus punya:
1709
+ - User story jelas
1710
+ - API contract lengkap
1711
+ - UI mockup dengan Tailwind classes"
1712
+ ```
1713
+
1714
+ ---
1715
+
1716
+ ### **Problem: Task Status Out of Sync** ⭐ NEW
1717
+ **Symptom:** task_list.md status tidak sesuai dengan development logs atau test results
1718
+
1719
+ **Solution:**
1720
+ ```bash
1721
+ /pm
1722
+
1723
+ "Update task_list.md berdasarkan logs di logs/development/ dan logs/testing/.
1724
+ Check semua task status dan pastikan sinkron dengan actual progress"
1725
+ ```
1726
+
1727
+ **PM Agent akan:**
1728
+ 1. Read all logs di logs/development/ dan logs/testing/
1729
+ 2. Identify completed tasks
1730
+ 3. Update task status accordingly
1731
+ 4. Update "Last Updated" timestamps
1732
+ 5. Generate summary of changes
1733
+
1734
+ **Manual Fix (if needed):**
1735
+ - Edit `task/task_list.md` langsung
1736
+ - Update status field: `not_started`, `dev`, `ready_to_test`, `testing_ready`, `testing`, `passed`, `failed`
1737
+ - Update "Last Updated" timestamp: `[YYYY-MM-DD HH:MM]`
1738
+ - Update "Assigned To" field if task handed off
1739
+
1740
+ ---
1741
+
1742
+ ### **Problem: Too Many Tasks, Tidak Tahu Prioritas** ⭐ NEW
1743
+ **Symptom:** Bingung mau kerjakan task mana dulu
1744
+
1745
+ **Solution:**
1746
+ ```bash
1747
+ /pm
1748
+
1749
+ "Tampilkan semua task dengan status 'not_started',
1750
+ sort by priority (P0 → P1 → P2 → P3),
1751
+ dan cek dependencies"
1752
+ ```
1753
+
1754
+ **PM Agent akan:**
1755
+ 1. List all not_started tasks
1756
+ 2. Sort by priority level
1757
+ 3. Show dependencies for each task
1758
+ 4. Recommend next task to work on (no blockers, highest priority)
1759
+
1760
+ **👤 Human Decision:**
1761
+ - Focus on P0 (Critical) tasks first
1762
+ - Check dependencies (don't start task if dependency not done)
1763
+ - Consider business impact vs technical complexity
1764
+
1765
+ ---
1766
+
1767
+ ### **Problem: Agent Lupa Context**
1768
+ **Symptom:** Agent buat code yang tidak sesuai dengan project
1769
+
1770
+ **Solution:**
1771
+ ```bash
1772
+ /developer
1773
+
1774
+ "STOP. Baca ulang:
1775
+ 1. project_overview.md (tech stack & UI guidelines)
1776
+ 2. specifications/004_spec_pricing.md (requirement)
1777
+ 3. logs/development/dev_003_*.md (code yang sudah ada)
1778
+
1779
+ Lalu implementasi ulang dengan benar"
1780
+ ```
1781
+
1782
+ ---
1783
+
1784
+ ### **Problem: Specification Terlalu Umum**
1785
+ **Symptom:** Developer Agent tanya-tanya terus karena spec tidak detail
1786
+
1787
+ **Solution:**
1788
+ ```bash
1789
+ /analyst
1790
+
1791
+ "SPEC-005 terlalu general. Breakdown menjadi atomic specifications:
1792
+ - 005-001: Revenue Summary Card
1793
+ - 005-002: Profit Trend Chart
1794
+ - 005-003: Upcoming Trips Timeline
1795
+
1796
+ Setiap spec harus punya:
1797
+ - User story jelas
1798
+ - API contract lengkap
1799
+ - UI mockup dengan Tailwind classes"
1800
+ ```
1801
+
1802
+ ---
1803
+
1804
+ ### **Problem: Task Status Out of Sync** ⭐ NEW
1805
+ **Symptom:** task_list.md status tidak sesuai dengan development logs atau test results
1806
+
1807
+ **Solution:**
1808
+ ```bash
1809
+ /pm
1810
+
1811
+ "Update task_list.md berdasarkan logs di logs/development/ dan logs/testing/.
1812
+ Check semua task status dan pastikan sinkron dengan actual progress"
1813
+ ```
1814
+
1815
+ **PM Agent akan:**
1816
+ 1. Read all logs di logs/development/ dan logs/testing/
1817
+ 2. Identify completed tasks
1818
+ 3. Update task status accordingly
1819
+ 4. Update "Last Updated" timestamps
1820
+ 5. Generate summary of changes
1821
+
1822
+ **Manual Fix (if needed):**
1823
+ - Edit `task/task_list.md` langsung
1824
+ - Update status field: `not_started`, `dev`, `ready_to_test`, `testing_ready`, `testing`, `passed`, `failed`
1825
+ - Update "Last Updated" timestamp: `[YYYY-MM-DD HH:MM]`
1826
+ - Update "Assigned To" field if task handed off
1827
+
1828
+ ---
1829
+
1830
+ ### **Problem: Too Many Tasks, Tidak Tahu Prioritas** ⭐ NEW
1831
+ **Symptom:** Bingung mau kerjakan task mana dulu
1832
+
1833
+ **Solution:**
1834
+ ```bash
1835
+ /pm
1836
+
1837
+ "Tampilkan semua task dengan status 'not_started',
1838
+ sort by priority (P0 → P1 → P2 → P3),
1839
+ dan cek dependencies"
1840
+ ```
1841
+
1842
+ **PM Agent akan:**
1843
+ 1. List all not_started tasks
1844
+ 2. Sort by priority level
1845
+ 3. Show dependencies for each task
1846
+ 4. Recommend next task to work on (no blockers, highest priority)
1847
+
1848
+ **👤 Human Decision:**
1849
+ - Focus on P0 (Critical) tasks first
1850
+ - Check dependencies (don't start task if dependency not done)
1851
+ - Consider business impact vs technical complexity
1852
+
1853
+ ---
1854
+
1855
+ ## 🎓 Learning Resources
1856
+
1857
+ **Untuk memahami lebih dalam cara kerja AI Agent:**
1858
+
1859
+ 1. **Function Calling / Tool Use:**
1860
+ - [OpenAI Function Calling Guide](https://platform.openai.com/docs/guides/function-calling)
1861
+ - [Anthropic Claude Tool Use](https://docs.anthropic.com/claude/docs/tool-use)
1862
+
1863
+ 2. **Prompt Engineering:**
1864
+ - [Prompt Engineering Guide](https://www.promptingguide.ai/)
1865
+ - [Anthropic Prompt Library](https://docs.anthropic.com/claude/prompt-library)
1866
+
1867
+ 3. **Agent Frameworks:**
1868
+ - [LangChain Agents](https://python.langchain.com/docs/modules/agents/)
1869
+ - [AutoGPT](https://github.com/Significant-Gravitas/AutoGPT)
1870
+
1871
+ **Best Practice untuk System Instructions:**
1872
+ - Be specific (jangan ambiguous)
1873
+ - Give examples (few-shot learning)
1874
+ - Set constraints (what NOT to do)
1875
+ - Define success criteria (how to verify output)
1876
+
1877
+ ---
1878
+
1879
+ ## 📊 Project Progress Tracking
1880
+
1881
+ **Recommended Tools:**
1882
+ - **Linear / Jira:** Task management (link ke SPEC-xxx)
1883
+ - **GitHub Projects:** Kanban board per sprint
1884
+ - **Notion:** Knowledge base (meeting notes, decisions)
1885
+
1886
+ **Integration dengan AI Workflow:**
1887
+ ```
1888
+ GitHub Issue #45: Implement Pricing Module
1889
+
1890
+ Analyst creates: SPEC-004
1891
+
1892
+ Developer implements: codes/app/api/pricing/
1893
+
1894
+ Tester creates: tests/integration/pricing.test.ts
1895
+
1896
+ Close issue with link to dev log & test results
1897
+ ```
1898
+
1899
+ ---
1900
+
1901
+ ## 🤝 Team Collaboration
1902
+
1903
+ **Jika tim > 1 person:**
1904
+
1905
+ ### **Developer Onboarding:**
1906
+ ```bash
1907
+ # New developer joins team
1908
+ /developer
1909
+
1910
+ "Summarize project_overview.md dan semua specifications
1911
+ dalam bentuk onboarding guide untuk new developer.
1912
+
1913
+ Include:
1914
+ - Tech stack & why we choose it
1915
+ - Folder structure explanation
1916
+ - How to run project locally
1917
+ - Common commands
1918
+ - Where to find documentation"
1919
+ ```
1920
+
1921
+ ### **Code Review Process:**
1922
+ 1. Developer A → Bikin feature dengan Developer Agent
1923
+ 2. Developer A → Create PR di GitHub
1924
+ 3. Developer B → Review PR (manual)
1925
+ 4. If OK → Merge
1926
+ 5. If NOT → Developer A ask Developer Agent to fix
1927
+
1928
+ ### **Knowledge Sharing:**
1929
+ - **Weekly:** Tester Agent generate test coverage report
1930
+ - **Monthly:** Document Agent generate changelog dari semua dev logs
1931
+ - **Quarterly:**
1932
+ - Analyst Agent review & update project_overview.md
1933
+ - SysArch Agent review infrastructure costs & optimization opportunities ⭐ NEW
1934
+
1935
+ ---
1936
+
1937
+ *Happy Vibe Coding!* 🚀✨
1938
+
1939
+ **Remember:**
1940
+ - AI Agent = **Accelerator** (makes you 10x faster)
1941
+ - Human = **Navigator** (makes sure direction is correct)
1942
+ - SysArch Agent = **Infrastructure Guardian** (keeps costs low, performance high) ⭐ NEW
1943
+
1944
+ **Together = Unstoppable** 💪🤖👤