create-vasvibe 0.2.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/.agents/agents/sysarch/agent.json +1 -1
- package/template/.claude/agents/developer.md +1 -1
- package/template/.claude/agents/fixer.md +25 -0
- package/template/.claude/agents/pm.md +0 -186
- package/template/.claude/agents/tester.md +25 -0
- package/template/.github/prompts/developer.prompt.md +1 -1
- package/template/.github/prompts/fixer.prompt.md +25 -0
- package/template/.github/prompts/tester.prompt.md +25 -0
- package/template/.opencode/commands/developer.md +1 -1
- package/template/.opencode/commands/fixer.md +25 -0
- package/template/.opencode/commands/pm.md +0 -168
- package/template/.opencode/commands/tester.md +32 -0
- package/template/AGENT_PERSONAS.md +389 -0
- package/template/README.md +60 -424
- package/template/agent/workflows/developer.md +25 -0
- package/template/agent/workflows/fixer.md +25 -0
- package/template/agent/workflows/tester.md +25 -0
- package/template/project_overview_example.md +1 -1
- /package/template/agent/workflows/{sysacrh.md → sysarch.md} +0 -0
package/template/README.md
CHANGED
|
@@ -3,32 +3,43 @@
|
|
|
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
4
|
|
|
5
5
|
Selamat datang di ekosistem **Vibe Coding**.
|
|
6
|
-
Ini adalah standar alur kerja pengembangan software berbasis **AI Agent**
|
|
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.
|
|
7
13
|
|
|
8
14
|
---
|
|
9
15
|
|
|
10
16
|
## ⚡ Quick start (untuk tim baru)
|
|
11
17
|
|
|
12
|
-
|
|
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:
|
|
13
19
|
|
|
14
20
|
```bash
|
|
21
|
+
# Interaktif (akan ada pertanyaan)
|
|
15
22
|
npx create-vasvibe my-new-project
|
|
23
|
+
|
|
24
|
+
# Masuk ke direktori kerja
|
|
16
25
|
cd my-new-project
|
|
17
26
|
```
|
|
18
27
|
|
|
19
|
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
- `project_overview_example.md`, `GIT_STRUCTURE_GUIDE.md`, `
|
|
23
|
-
|
|
24
|
-
Flag yang tersedia:
|
|
25
|
-
- `--yes` skip semua prompt
|
|
26
|
-
- `--no-git` skip git init
|
|
27
|
-
- `--no-claude` / `--no-opencode` / `--no-github` / `--no-workflows` untuk exclude toolchain tertentu
|
|
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`.
|
|
28
32
|
|
|
29
|
-
|
|
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/` |
|
|
30
42
|
|
|
31
|
-
---
|
|
32
43
|
|
|
33
44
|
## 🤖 Tentang AI Agent
|
|
34
45
|
|
|
@@ -50,6 +61,7 @@ Dalam workflow ini, kita menggunakan **8 AI Agent persona** yang bekerja secara
|
|
|
50
61
|
3. **Role Segregation:** Analis, Developer, dan QA adalah persona berbeda dengan tanggung jawab spesifik.
|
|
51
62
|
4. **Log Everything:** Setiap sesi coding dan testing dicatat untuk menjaga kontinuitas memori AI.
|
|
52
63
|
5. **Human-in-the-Loop:** Manusia sebagai Decision Maker, AI sebagai Executor.
|
|
64
|
+
6. **Git Branching & Repo Management:** Agent seperti Developer, Fixer, dan Tester dibekali pemahaman ketat mengenai *git branching* (membuat branch, pull/merge origin) untuk menjaga keutuhan `main`/`development` branch.
|
|
53
65
|
|
|
54
66
|
---
|
|
55
67
|
|
|
@@ -58,18 +70,23 @@ Workflow ini akan secara otomatis mengelola struktur folder berikut:
|
|
|
58
70
|
|
|
59
71
|
```text
|
|
60
72
|
root/
|
|
61
|
-
├── .
|
|
62
|
-
│
|
|
63
|
-
│
|
|
64
|
-
│
|
|
65
|
-
|
|
66
|
-
│
|
|
67
|
-
│
|
|
68
|
-
|
|
69
|
-
│
|
|
70
|
-
│
|
|
71
|
-
|
|
72
|
-
│
|
|
73
|
+
├── .agents/ # [BRAIN] Konfigurasi Google Antigravity & Skills
|
|
74
|
+
│ ├── agents/ # Definisi persona agent (analyst, developer, tester, dll)
|
|
75
|
+
│ └── skills/ # Folder berisi reusable tools/skills yang dapat diakses oleh agent
|
|
76
|
+
│
|
|
77
|
+
├── .claude/ # [BRAIN] Konfigurasi & Prompt Claude Code
|
|
78
|
+
│ └── agents/
|
|
79
|
+
│
|
|
80
|
+
├── .opencode/ # [BRAIN] Konfigurasi & Commands OpenCode
|
|
81
|
+
│ └── commands/
|
|
82
|
+
│
|
|
83
|
+
├── .github/ # [BRAIN] Konfigurasi GitHub Copilot Workspace
|
|
84
|
+
│ └── prompts/
|
|
85
|
+
│
|
|
86
|
+
├── agent/workflows/ # [CORE] Source of Truth untuk semua instruksi agent
|
|
87
|
+
│ ├── analyst.md
|
|
88
|
+
│ ├── developer.md
|
|
89
|
+
│ └── ...
|
|
73
90
|
│
|
|
74
91
|
├── project_overview.md # [MASTER] Definisi produk, tech stack, & UI/UX
|
|
75
92
|
│ # 👤 HUMAN: Review & approve setelah Initiator Agent buat
|
|
@@ -78,43 +95,34 @@ root/
|
|
|
78
95
|
│ ├── README.md # Index semua spesifikasi
|
|
79
96
|
│ ├── 000_spec_environment_setup.md # Infrastruktur (Wajib pertama)
|
|
80
97
|
│ ├── 001_spec_database_schema.md
|
|
81
|
-
│ ├── 002_spec_authentication.md
|
|
82
|
-
│ ├── 003_spec_booking_management.md
|
|
83
98
|
│ └── ... # 👤 HUMAN: Review setiap spec sebelum dev
|
|
84
99
|
│
|
|
85
100
|
├── task/ # [PROJECT MANAGEMENT] Output dari PM Agent ⭐ NEW
|
|
86
101
|
│ ├── task_list.md # Central task tracking (priority, status, dependencies)
|
|
87
|
-
│
|
|
102
|
+
│ ├── PROJECT_STATUS_REPORT.md # Progress reports
|
|
103
|
+
│ ├── TASK-001/ # Folder khusus per task
|
|
104
|
+
│ │ ├── plan.md # Rencana kerja & log eksekusi task terkait
|
|
105
|
+
│ │ └── ...
|
|
106
|
+
│ └── TASK-002/ # Setiap task baru akan diisolasi ke dalam sub-folder tersendiri
|
|
88
107
|
│
|
|
89
108
|
├── architecture/ # [INFRA] Output dari SysArch Agent
|
|
90
109
|
│ ├── current_state.md # Application analysis
|
|
91
110
|
│ ├── server_specifications.md # Server specs (CPU, RAM, Storage)
|
|
92
|
-
│
|
|
93
|
-
│ ├── cost_analysis.md # Infrastructure cost breakdown
|
|
94
|
-
│ └── monitoring_plan.md # Observability & alerting
|
|
111
|
+
│ └── ...
|
|
95
112
|
│
|
|
96
113
|
├── codes/ # [SRC] Output dari Developer Agent
|
|
97
114
|
│ ├── docker-compose.yml
|
|
98
115
|
│ ├── package.json
|
|
99
|
-
│ ├──
|
|
100
|
-
│ ├── app/ # Next.js App Router
|
|
101
|
-
│ ├── components/
|
|
116
|
+
│ ├── app/ # Aplikasi utama
|
|
102
117
|
│ └── ... # 👤 HUMAN: Code review & testing manual
|
|
103
118
|
│
|
|
104
119
|
├── tests/ # [TEST] Output dari Tester Agent
|
|
105
|
-
│ ├── unit/
|
|
106
|
-
│ ├── integration/
|
|
107
120
|
│ └── e2e/ # 👤 HUMAN: Verify test results
|
|
108
121
|
│
|
|
109
122
|
├── logs/ # [TRACKING] Auto-generated logs
|
|
110
123
|
│ ├── development/ # Developer Agent logs
|
|
111
|
-
│ │ ├── dev_001_database_schema.md
|
|
112
|
-
│ │ ├── dev_002_auth_system.md
|
|
113
|
-
│ │ └── ...
|
|
114
124
|
│ ├── testing/ # Tester Agent logs
|
|
115
|
-
│ │ └── test_*.md
|
|
116
125
|
│ └── fixing/ # Bug fixing logs
|
|
117
|
-
│ └── fixing_*.md
|
|
118
126
|
│
|
|
119
127
|
└── documentation/ # [FINAL] Technical Writer output
|
|
120
128
|
└── FSD_{{projectName}}.md # Functional Specification Document
|
|
@@ -129,391 +137,19 @@ root/
|
|
|
129
137
|
|
|
130
138
|
## 🤖 AI Agent Personas & Capabilities
|
|
131
139
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
**Total: 8 Specialized Agents**
|
|
135
|
-
|
|
136
|
-
### 1. **Initiator Agent** (`/initiator`)
|
|
137
|
-
**Role:** Project Initiator & Product Manager
|
|
138
|
-
|
|
139
|
-
**Capabilities:**
|
|
140
|
-
- ✅ Mengubah ide kasar menjadi `project_overview.md` yang terstruktur
|
|
141
|
-
- ✅ Menentukan tech stack berdasarkan kebutuhan
|
|
142
|
-
- ✅ Mendefinisikan UI/UX guidelines (color palette, typography, component library)
|
|
143
|
-
- ✅ Membuat development roadmap & timeline
|
|
144
|
-
|
|
145
|
-
**Input Example:**
|
|
146
|
-
```
|
|
147
|
-
/initiator
|
|
148
|
-
|
|
149
|
-
"Aplikasi manajemen booking kapal wisata Labuan Bajo,
|
|
150
|
-
pakai Next.js, harus ada payment gateway dan backoffice
|
|
151
|
-
untuk admin."
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
**Output:**
|
|
155
|
-
- `project_overview.md` (complete dengan target audience, tech stack, roadmap)
|
|
156
|
-
|
|
157
|
-
**👤 Human Task:**
|
|
158
|
-
- Review `project_overview.md`
|
|
159
|
-
- Approve atau minta revisi (tech stack, UI guidelines, timeline)
|
|
160
|
-
|
|
161
|
-
---
|
|
162
|
-
|
|
163
|
-
### 2. **PM Agent** (`/pm`) ⭐ NEW
|
|
164
|
-
**Role:** Project Manager & Task Coordinator
|
|
165
|
-
|
|
166
|
-
**Capabilities:**
|
|
167
|
-
- ✅ Membuat dan mengelola task list di `task/task_list.md`
|
|
168
|
-
- ✅ Memecah specifications menjadi actionable tasks dengan priority (P0-P3)
|
|
169
|
-
- ✅ Tracking status setiap task (not_started → dev → testing → passed)
|
|
170
|
-
- ✅ Mengelola dependencies antar task
|
|
171
|
-
- ✅ Generate project status reports
|
|
172
|
-
- ✅ Monitoring progress dari development logs
|
|
173
|
-
- ✅ Mengidentifikasi blockers dan bottlenecks
|
|
174
|
-
|
|
175
|
-
**When to Use:**
|
|
176
|
-
- Setelah Analyst membuat specifications (untuk create task list)
|
|
177
|
-
- Saat ingin cek project progress
|
|
178
|
-
- Saat perlu update task status setelah development/testing
|
|
179
|
-
- Saat planning sprint atau prioritization
|
|
180
|
-
|
|
181
|
-
**Input Example:**
|
|
182
|
-
```
|
|
183
|
-
/pm
|
|
184
|
-
|
|
185
|
-
"Buat task list berdasarkan semua specifications yang sudah ada"
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
**Output:**
|
|
189
|
-
- `task/task_list.md` dengan struktur:
|
|
190
|
-
- Priority sections (P0: Critical → P3: Low)
|
|
191
|
-
- Task format: TASK-XXX dengan spec reference, status, dependencies
|
|
192
|
-
- Summary: Total tasks, completed, in progress, blocked
|
|
193
|
-
- `task/PROJECT_STATUS_REPORT.md` (jika diminta generate report)
|
|
194
|
-
|
|
195
|
-
**Task Status Flow:**
|
|
196
|
-
```
|
|
197
|
-
not_started → dev (Developer working) → ready_to_test (Dev complete)
|
|
198
|
-
→ testing_ready (Test scenarios created) → testing (Tester running)
|
|
199
|
-
→ passed/failed → human_validated
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
**Priority Levels:**
|
|
203
|
-
- **P0 (Critical):** Blockers, production bugs, foundational features
|
|
204
|
-
- **P1 (High):** Core features, important bugs
|
|
205
|
-
- - **P2 (Medium):** Enhancement, minor features
|
|
206
|
-
- **P3 (Low):** Nice-to-have, future improvements
|
|
207
|
-
|
|
208
|
-
**👤 Human Task:**
|
|
209
|
-
- Review task priorities (sesuai bisnis priority?)
|
|
210
|
-
- Validate task breakdown (granularity OK?)
|
|
211
|
-
- Approve task assignments
|
|
212
|
-
- Manual validation setelah task passed (human_validated status)
|
|
213
|
-
|
|
214
|
-
**Workflow Integration:**
|
|
215
|
-
```
|
|
216
|
-
[Analyst] Create specs → [PM] Generate task list
|
|
217
|
-
↓
|
|
218
|
-
[Developer] Pick task → Update status: dev → ready_to_test
|
|
219
|
-
↓
|
|
220
|
-
[Tester] Create tests → Update status: testing_ready → testing → passed
|
|
221
|
-
↓
|
|
222
|
-
[PM] Monitor progress → Generate status reports
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
### 3. **Analyst Agent** (`/analyst`)
|
|
228
|
-
**Role:** Lead System Analyst & DevOps Architect
|
|
229
|
-
|
|
230
|
-
**Capabilities:**
|
|
231
|
-
- ✅ Membaca `project_overview.md` untuk context
|
|
232
|
-
- ✅ Membuat spesifikasi infrastruktur (Docker, database schema)
|
|
233
|
-
- ✅ Membuat spesifikasi fitur (user stories, API contracts, UI mockups)
|
|
234
|
-
- ✅ Memecah fitur besar menjadi atomic specifications (1 file = 1 user story)
|
|
235
|
-
- ✅ Validasi tech stack sudah terisi sebelum lanjut
|
|
236
|
-
|
|
237
|
-
**Critical Rule:**
|
|
238
|
-
- **WAJIB** membuat `000_spec_environment_setup.md` terlebih dahulu sebelum spec fitur
|
|
239
|
-
|
|
240
|
-
**Input Example:**
|
|
241
|
-
```
|
|
242
|
-
/analyst
|
|
243
|
-
|
|
244
|
-
"Buat spesifikasi untuk fitur Booking Management"
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
**Output:**
|
|
248
|
-
- `specifications/004_spec_booking_management.md`
|
|
249
|
-
- Atau breakdown menjadi multiple atomic specs jika fitur terlalu besar
|
|
250
|
-
|
|
251
|
-
**👤 Human Task:**
|
|
252
|
-
- Review spesifikasi (apakah sesuai kebutuhan bisnis?)
|
|
253
|
-
- Check API contracts & database schema
|
|
254
|
-
- Approve sebelum Developer mulai coding
|
|
255
|
-
|
|
256
|
-
**Workflow Integration:**
|
|
257
|
-
```
|
|
258
|
-
[Analyst] Create specification
|
|
259
|
-
↓
|
|
260
|
-
[PM] Create task from spec → Add to task/task_list.md
|
|
261
|
-
↓
|
|
262
|
-
[Developer] Pick task and implement
|
|
263
|
-
```
|
|
264
|
-
|
|
265
|
-
---
|
|
266
|
-
|
|
267
|
-
### 4. **Developer Agent** (`/developer`)
|
|
268
|
-
**Role:** Senior Full-Stack Developer
|
|
140
|
+
Dalam workflow ini, kita memecah siklus SDLC (Software Development Life Cycle) menjadi 8 **persona agen terspesialisasi**:
|
|
269
141
|
|
|
270
|
-
**
|
|
271
|
-
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
-
|
|
275
|
-
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
**Input Example:**
|
|
280
|
-
```
|
|
281
|
-
/developer
|
|
282
|
-
|
|
283
|
-
"Implementasikan SPEC-004 (Pricing Configuration Module)"
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
**Output:**
|
|
287
|
-
- Kode di `codes/` (API routes, components, database schema)
|
|
288
|
-
- `logs/development/dev_004_pricing_module.md` (log perubahan)
|
|
289
|
-
|
|
290
|
-
**👤 Human Task:**
|
|
291
|
-
- Code review (check logic, security, performance)
|
|
292
|
-
- Manual testing di browser/Postman
|
|
293
|
-
- Approve atau minta fixing
|
|
294
|
-
|
|
295
|
-
**Task Management Workflow:**
|
|
296
|
-
```
|
|
297
|
-
[Developer] Read task/task_list.md → Find task with status "not_started"
|
|
298
|
-
↓
|
|
299
|
-
[Developer] Update status: not_started → dev (set "Assigned To: Developer Agent")
|
|
300
|
-
↓
|
|
301
|
-
[Developer] Implement feature → Create development log
|
|
302
|
-
↓
|
|
303
|
-
[Developer] Update status: dev → ready_to_test (with timestamp)
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
---
|
|
307
|
-
|
|
308
|
-
### 5. **Tester Agent** (`/tester`)
|
|
309
|
-
**Role:** QA Engineer & Test Automation Specialist
|
|
310
|
-
|
|
311
|
-
**Capabilities:**
|
|
312
|
-
- ✅ Membuat unit tests, integration tests, E2E tests
|
|
313
|
-
- ✅ Menjalankan tests di terminal
|
|
314
|
-
- ✅ Menganalisis test failures & memberikan fixing recommendation
|
|
315
|
-
- ✅ Membuat testing log (`logs/testing/test_*.md`)
|
|
316
|
-
- ✅ Self-healing: Memperbaiki tests yang broken karena code changes
|
|
317
|
-
- ✅ **Update task status** di `task/task_list.md` (ready_to_test → testing_ready → testing → passed/failed)
|
|
318
|
-
|
|
319
|
-
**Input Example:**
|
|
320
|
-
```
|
|
321
|
-
/tester
|
|
322
|
-
|
|
323
|
-
"Buat dan jalankan test untuk Pricing Configuration API"
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
**Output:**
|
|
327
|
-
- Test files di `tests/`
|
|
328
|
-
- Terminal execution results
|
|
329
|
-
- `logs/testing/test_004_pricing.md`
|
|
330
|
-
|
|
331
|
-
**👤 Human Task:**
|
|
332
|
-
- Verify test coverage (apakah sudah lengkap?)
|
|
333
|
-
- Check test results (all green?)
|
|
334
|
-
- Manual exploratory testing untuk edge cases
|
|
335
|
-
|
|
336
|
-
**Task Management Workflow:**
|
|
337
|
-
```
|
|
338
|
-
[Tester] Read task/task_list.md → Find task with status "ready_to_test"
|
|
339
|
-
↓
|
|
340
|
-
[Tester] Create test scenarios → Update status: ready_to_test → testing_ready
|
|
341
|
-
↓
|
|
342
|
-
[Tester] Run tests → Update status: testing_ready → testing
|
|
343
|
-
↓
|
|
344
|
-
[Tester] Check results → Update status: testing → passed (or failed)
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
---
|
|
348
|
-
|
|
349
|
-
### 6. **Fixer Agent** (`/fixer`)
|
|
350
|
-
**Role:** Bug Hunter & Debugging Specialist
|
|
351
|
-
|
|
352
|
-
**Capabilities:**
|
|
353
|
-
- ✅ Menganalisis error messages (compile errors, runtime errors, test failures)
|
|
354
|
-
- ✅ Membaca stack trace dan pinpoint root cause
|
|
355
|
-
- ✅ Memperbaiki bugs dengan minimal side effects
|
|
356
|
-
- ✅ Membuat fixing log (`logs/fixing/fixing_*.md`)
|
|
357
|
-
- ✅ Validasi fix dengan menjalankan tests
|
|
358
|
-
- ✅ Regression testing (pastikan fix tidak break fitur lain)
|
|
359
|
-
- ✅ **Update task status** di `task/task_list.md` (failed → fixing → ready_to_test)
|
|
360
|
-
|
|
361
|
-
**When to Use:**
|
|
362
|
-
- Setelah Developer bikin code tapi ada errors
|
|
363
|
-
- Setelah Tester report bugs
|
|
364
|
-
- Production bugs yang perlu hotfix
|
|
365
|
-
- Build failures di CI/CD
|
|
366
|
-
|
|
367
|
-
**Input Example:**
|
|
368
|
-
```
|
|
369
|
-
/fixer
|
|
370
|
-
|
|
371
|
-
"Ada bug di create booking: DP amount tidak ter-kalkulasi.
|
|
372
|
-
Error: Cannot read property 'totalPrice' of undefined
|
|
373
|
-
File: app/api/backoffice/bookings/route.ts:45
|
|
374
|
-
|
|
375
|
-
Error terjadi saat user submit booking form dengan pax > 10"
|
|
376
|
-
```
|
|
377
|
-
|
|
378
|
-
**Output:**
|
|
379
|
-
- Fixed code di `codes/`
|
|
380
|
-
- `logs/fixing/fixing_003_booking_dp_calculation.md` (detailed analysis + solution)
|
|
381
|
-
- Test execution result (verify fix works)
|
|
382
|
-
|
|
383
|
-
**👤 Human Task:**
|
|
384
|
-
- Verify fix logic (apakah benar-benar solve root cause?)
|
|
385
|
-
- Check for side effects (fitur lain masih jalan?)
|
|
386
|
-
- Manual testing dengan scenario yang sama
|
|
387
|
-
- Approve atau minta alternative solution
|
|
388
|
-
|
|
389
|
-
**Workflow Integration:**
|
|
390
|
-
```
|
|
391
|
-
Developer creates code → Error found
|
|
392
|
-
↓
|
|
393
|
-
Fixer analyzes → Fix bug → Run tests
|
|
394
|
-
↓
|
|
395
|
-
All green? → Done ✅
|
|
396
|
-
Not green? → Iterate fix
|
|
397
|
-
```
|
|
398
|
-
|
|
399
|
-
**Task Management Workflow:**
|
|
400
|
-
```
|
|
401
|
-
[Tester] Find bugs → Update task status: passed → failed
|
|
402
|
-
↓
|
|
403
|
-
[Fixer] Read task/task_list.md → Find task with status "failed"
|
|
404
|
-
↓
|
|
405
|
-
[Fixer] Update status: failed → fixing (set "Assigned To: Fixer Agent")
|
|
406
|
-
↓
|
|
407
|
-
[Fixer] Fix bugs → Create fixing log
|
|
408
|
-
↓
|
|
409
|
-
[Fixer] Update status: fixing → ready_to_test (back to Tester)
|
|
410
|
-
```
|
|
411
|
-
|
|
412
|
-
---
|
|
413
|
-
|
|
414
|
-
### 7. **SysArch Agent** (`/sysarch`)
|
|
415
|
-
**Role:** System Architecture & Operations Specialist
|
|
416
|
-
|
|
417
|
-
**Capabilities:**
|
|
418
|
-
- ✅ Menganalisis application requirements dari codebase dan specifications
|
|
419
|
-
- ✅ Mendesain server specifications (CPU, RAM, Storage, Bandwidth)
|
|
420
|
-
- ✅ Merencanakan infrastructure architecture (dev, staging, production)
|
|
421
|
-
- ✅ Mengestimasi resource requirements & costs
|
|
422
|
-
- ✅ Merekomendasikan deployment strategies (VPS, cloud, containerized)
|
|
423
|
-
- ✅ Membuat operational guidelines (monitoring, backup, scaling, disaster recovery)
|
|
424
|
-
- ✅ Mengoptimasi biaya infrastruktur
|
|
425
|
-
|
|
426
|
-
**When to Use:**
|
|
427
|
-
- Sebelum deployment ke production (infrastructure planning)
|
|
428
|
-
- Saat aplikasi mulai lambat (performance analysis & scaling recommendation)
|
|
429
|
-
- Saat budget review (cost optimization analysis)
|
|
430
|
-
- Saat planning capacity untuk high season
|
|
431
|
-
|
|
432
|
-
**Input Example:**
|
|
433
|
-
```
|
|
434
|
-
/sysarch
|
|
435
|
-
|
|
436
|
-
"Analyze current codebase and design server specifications
|
|
437
|
-
for production deployment. Target: 100 concurrent users,
|
|
438
|
-
50 bookings/day, 99.9% uptime."
|
|
439
|
-
```
|
|
440
|
-
|
|
441
|
-
**Output:**
|
|
442
|
-
- `architecture/current_state.md` - Application analysis
|
|
443
|
-
- `architecture/server_specifications.md` - Detailed server specs
|
|
444
|
-
- `architecture/deployment_plan.md` - Step-by-step deployment guide
|
|
445
|
-
- `architecture/cost_analysis.md` - Infrastructure cost breakdown
|
|
446
|
-
- `architecture/monitoring_plan.md` - Observability & alerting setup
|
|
447
|
-
|
|
448
|
-
**👤 Human Task:**
|
|
449
|
-
- Jawab questions tentang load requirements (concurrent users, transactions, etc.)
|
|
450
|
-
- Review server specifications (sesuai budget?)
|
|
451
|
-
- Approve deployment plan
|
|
452
|
-
- Check cost estimates (sustainable?)
|
|
453
|
-
- Decide cloud provider preference
|
|
454
|
-
|
|
455
|
-
**Critical Questions SysArch Will Ask:**
|
|
456
|
-
1. **User Load:** Concurrent users, growth rate, peak season multiplier
|
|
457
|
-
2. **Transaction Volume:** Bookings/day, payments/day, API requests/min
|
|
458
|
-
3. **Data & Storage:** File uploads, data retention, backup requirements
|
|
459
|
-
4. **Performance:** API response time, page load time, CDN needs
|
|
460
|
-
5. **Availability:** Uptime target (99%, 99.9%, 99.99%), HA requirements
|
|
461
|
-
6. **Budget:** Monthly infrastructure budget, cloud provider preference
|
|
462
|
-
7. **Security:** SSL, WAF, DDoS protection, compliance (PCI-DSS, GDPR, UU PDP)
|
|
463
|
-
|
|
464
|
-
**Example Workflow:**
|
|
465
|
-
```
|
|
466
|
-
[SysArch] Ask requirements → [👤 Human] Answer questions
|
|
467
|
-
↓
|
|
468
|
-
[SysArch] Analyze codebase → Design architecture
|
|
469
|
-
↓
|
|
470
|
-
[SysArch] Create specs & deployment plan → [👤 Human] Review & Approve
|
|
471
|
-
↓
|
|
472
|
-
[Developer/SysArch] Deploy to production
|
|
473
|
-
↓
|
|
474
|
-
[SysArch] Setup monitoring → [👤 Human] Monitor metrics
|
|
475
|
-
```
|
|
476
|
-
|
|
477
|
-
---
|
|
478
|
-
|
|
479
|
-
### 8. **Document Agent** (`/document`)
|
|
480
|
-
**Role:** Technical Writer
|
|
481
|
-
|
|
482
|
-
**Capabilities:**
|
|
483
|
-
- ✅ Menggabungkan semua specifications menjadi FSD (Functional Specification Document)
|
|
484
|
-
- ✅ Generate API documentation
|
|
485
|
-
- ✅ Membuat user manual / deployment guide
|
|
486
|
-
- ✅ Format markdown yang professional & readable
|
|
487
|
-
|
|
488
|
-
**Input Example:**
|
|
489
|
-
```
|
|
490
|
-
/document
|
|
491
|
-
|
|
492
|
-
"Generate FSD lengkap dari semua specifications"
|
|
493
|
-
```
|
|
494
|
-
|
|
495
|
-
**Output:**
|
|
496
|
-
- `documentation/FSD_{{projectName}}.md`
|
|
497
|
-
- `documentation/API_Documentation.md`
|
|
498
|
-
|
|
499
|
-
**👤 Human Task:**
|
|
500
|
-
- Final review dokumentasi
|
|
501
|
-
- Share ke stakeholder (investor, klien)
|
|
502
|
-
|
|
503
|
-
---
|
|
142
|
+
1. **Initiator Agent** (`/initiator`) - Project kickoff & overview
|
|
143
|
+
2. **PM Agent** (`/pm`) - Task management & coordination
|
|
144
|
+
3. **Analyst Agent** (`/analyst`) - Technical specifications
|
|
145
|
+
4. **Developer Agent** (`/developer`) - Code implementation (termasuk Repo Management)
|
|
146
|
+
5. **Tester Agent** (`/tester`) - Test automation & QA (termasuk Repo Management)
|
|
147
|
+
6. **Fixer Agent** (`/fixer`) - Bug fixing & debugging (termasuk Repo Management)
|
|
148
|
+
7. **SysArch Agent** (`/sysarch`) - Infrastructure & deployment planning
|
|
149
|
+
8. **Document Agent** (`/document`) - Final documentation
|
|
504
150
|
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
| Agent | Command | Primary Function | Output | Human Review |
|
|
508
|
-
| --- | --- | --- | --- | --- |
|
|
509
|
-
| **Initiator** | `/initiator` | Project kickoff & overview | `project_overview.md` | ⚠️ **CRITICAL** |
|
|
510
|
-
| **PM** | `/pm` | Task management & coordination | `task/task_list.md`, `task/PROJECT_STATUS_REPORT.md` | ✅ **MEDIUM** |
|
|
511
|
-
| **Analyst** | `/analyst` | Technical specifications | `specifications/*.md` | ⚠️ **HIGH** |
|
|
512
|
-
| **Developer** | `/developer` | Code implementation | `codes/*`, `logs/development/` | ⚠️ **HIGH** |
|
|
513
|
-
| **Tester** | `/tester` | Test automation & QA | `tests/*`, `logs/testing/` | ✅ **MEDIUM** |
|
|
514
|
-
| **Fixer** | `/fixer` | Bug fixing & debugging | `codes/*`, `logs/fixing/` | ⚠️ **HIGH** |
|
|
515
|
-
| **SysArch** | `/sysarch` | Infrastructure & deployment planning | `architecture/*` | ⚠️ **CRITICAL** |
|
|
516
|
-
| **Document** | `/document` | Final documentation | `documentation/*.md` | ✅ **LOW** |
|
|
151
|
+
> 🔗 **Detail lengkap** mengenai cara kerja, rules, integrasi alur tugas, serta kemampuan (*capabilities*) dari tiap-tiap agen dapat dibaca di panduan terpisah:
|
|
152
|
+
> 👉 **[BACA: Panduan Persona & Kemampuan Agen (AGENT_PERSONAS.md)](./AGENT_PERSONAS.md)**
|
|
517
153
|
|
|
518
154
|
---
|
|
519
155
|
|
|
@@ -14,6 +14,31 @@
|
|
|
14
14
|
| [YYYY-MM-DD HH:MM] | dev agent | development started | - |
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
+
2b. **Repo Management (CRITICAL - lakukan sebelum mulai coding):**
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
- **PENTING — Struktur Repo:** Workspace ini terdiri dari DUA repo git terpisah:
|
|
21
|
+
- **Agent repo** (root): `{project-name}/` — berisi semua file agent, spec, task, logs. Jangan commit kode produk di sini.
|
|
22
|
+
- **Product repo** (subfolder): `codes/` — repo git terpisah yang di-push ke `{repo-url}`. Semua operasi git untuk kode produk dilakukan DI DALAM folder `codes/`.
|
|
23
|
+
- **Semua perintah git untuk kode produk harus dijalankan dari dalam folder `codes/`.**
|
|
24
|
+
- **Cek branch saat ini** dengan `git -C codes/ branch --show-current` (atau masuk ke folder codes terlebih dahulu).
|
|
25
|
+
- **Apakah branch sudah sesuai** dengan fitur yang akan dikembangkan?
|
|
26
|
+
- **Jika YA:** Lanjut ke step 3.
|
|
27
|
+
- **Jika TIDAK:**
|
|
28
|
+
- Cek apakah ada perubahan yang belum di-commit dengan `git -C codes/ status`.
|
|
29
|
+
- **Jika ada perubahan belum ter-commit:** HENTIKAN pekerjaan. Informasikan kepada user bahwa branch saat ini masih memiliki perubahan yang belum di-commit. Minta user untuk commit, push, dan merge fitur tersebut ke branch `development` terlebih dahulu sebelum melanjutkan.
|
|
30
|
+
- **Jika semua sudah ter-commit (working tree clean):**
|
|
31
|
+
1. Pindah ke branch `development`: `git -C codes/ checkout development`.
|
|
32
|
+
2. Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
33
|
+
3. Buat atau pindah ke branch yang sesuai dengan fitur:
|
|
34
|
+
- Jika branch sudah ada: `git -C codes/ checkout nama-branch-fitur`.
|
|
35
|
+
- Jika branch belum ada: `git -C codes/ checkout -b nama-branch-fitur`.
|
|
36
|
+
- **Jika dari awal sudah di branch `development`:**
|
|
37
|
+
1. Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
38
|
+
2. Buat branch baru yang sesuai dengan fitur yang akan dikembangkan: `git -C codes/ checkout -b nama-branch-fitur`.
|
|
39
|
+
- **Konvensi nama branch:** gunakan format `feature/nama-fitur` (misal: `feature/login`, `feature/payment-gateway`).
|
|
40
|
+
- **JANGAN lakukan commit dan push otomatis** setelah pekerjaan selesai. Hasil pekerjaan perlu diverifikasi oleh user terlebih dahulu.
|
|
41
|
+
|
|
17
42
|
3. **Directory Check:** Cek apakah folder `codes/` ada. Jika tidak, **BUAT FOLDERNYA**.
|
|
18
43
|
|
|
19
44
|
4. **Action (Coding):**
|
|
@@ -22,6 +22,31 @@
|
|
|
22
22
|
| [YYYY-MM-DD HH:MM] | fixer agent | fixing started | Issues: [ringkasan issue] |
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
+
2b. **Repo Management (CRITICAL - lakukan sebelum mulai coding):**
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
- **PENTING — Struktur Repo:** Workspace ini terdiri dari DUA repo git terpisah:
|
|
29
|
+
- **Agent repo** (root): `{project-name}/` — berisi semua file agent, spec, task, logs. Jangan commit kode produk di sini.
|
|
30
|
+
- **Product repo** (subfolder): `codes/` — repo git terpisah yang di-push ke `{repo-url}`. Semua operasi git untuk kode produk dilakukan DI DALAM folder `codes/`.
|
|
31
|
+
- **Semua perintah git untuk kode produk harus dijalankan dari dalam folder `codes/`.**
|
|
32
|
+
- **Cek branch saat ini** dengan `git -C codes/ branch --show-current` (atau masuk ke folder codes terlebih dahulu).
|
|
33
|
+
- **Apakah branch sudah sesuai** dengan fitur yang akan dikembangkan?
|
|
34
|
+
- **Jika YA:** Lanjut ke step 3.
|
|
35
|
+
- **Jika TIDAK:**
|
|
36
|
+
- Cek apakah ada perubahan yang belum di-commit dengan `git -C codes/ status`.
|
|
37
|
+
- **Jika ada perubahan belum ter-commit:** HENTIKAN pekerjaan. Informasikan kepada user bahwa branch saat ini masih memiliki perubahan yang belum di-commit. Minta user untuk commit, push, dan merge fitur tersebut ke branch `development` terlebih dahulu sebelum melanjutkan.
|
|
38
|
+
- **Jika semua sudah ter-commit (working tree clean):**
|
|
39
|
+
1. Pindah ke branch `development`: `git -C codes/ checkout development`.
|
|
40
|
+
2. Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
41
|
+
3. Buat atau pindah ke branch yang sesuai dengan fitur:
|
|
42
|
+
- Jika branch sudah ada: `git -C codes/ checkout nama-branch-fitur`.
|
|
43
|
+
- Jika branch belum ada: `git -C codes/ checkout -b nama-branch-fitur`.
|
|
44
|
+
- **Jika dari awal sudah di branch `development`:**
|
|
45
|
+
1. Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
46
|
+
2. Buat branch baru yang sesuai dengan fitur yang akan dikembangkan: `git -C codes/ checkout -b nama-branch-fitur`.
|
|
47
|
+
- **Konvensi nama branch:** gunakan format `feature/nama-fitur` (misal: `feature/login`, `feature/payment-gateway`).
|
|
48
|
+
- **JANGAN lakukan commit dan push otomatis** setelah pekerjaan selesai. Hasil pekerjaan perlu diverifikasi oleh user terlebih dahulu.
|
|
49
|
+
|
|
25
50
|
3. **DIAGNOSIS & EXECUTION:**
|
|
26
51
|
- Analisis input error/bug dari user.
|
|
27
52
|
- Temukan akar masalah (*Root Cause*).
|
|
@@ -15,6 +15,31 @@
|
|
|
15
15
|
| [YYYY-MM-DD HH:MM] | test agent | test created | - |
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
+
2b. **Repo Management (CRITICAL - lakukan sebelum mulai coding):**
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
- **PENTING — Struktur Repo:** Workspace ini terdiri dari DUA repo git terpisah:
|
|
22
|
+
- **Agent repo** (root): `{project-name}/` — berisi semua file agent, spec, task, logs. Jangan commit kode produk di sini.
|
|
23
|
+
- **Product repo** (subfolder): `codes/` — repo git terpisah yang di-push ke `{repo-url}`. Semua operasi git untuk kode produk dilakukan DI DALAM folder `codes/`.
|
|
24
|
+
- **Semua perintah git untuk kode produk harus dijalankan dari dalam folder `codes/`.**
|
|
25
|
+
- **Cek branch saat ini** dengan `git -C codes/ branch --show-current` (atau masuk ke folder codes terlebih dahulu).
|
|
26
|
+
- **Apakah branch sudah sesuai** dengan fitur yang akan dikembangkan?
|
|
27
|
+
- **Jika YA:** Lanjut ke step 3.
|
|
28
|
+
- **Jika TIDAK:**
|
|
29
|
+
- Cek apakah ada perubahan yang belum di-commit dengan `git -C codes/ status`.
|
|
30
|
+
- **Jika ada perubahan belum ter-commit:** HENTIKAN pekerjaan. Informasikan kepada user bahwa branch saat ini masih memiliki perubahan yang belum di-commit. Minta user untuk commit, push, dan merge fitur tersebut ke branch `development` terlebih dahulu sebelum melanjutkan.
|
|
31
|
+
- **Jika semua sudah ter-commit (working tree clean):**
|
|
32
|
+
1. Pindah ke branch `development`: `git -C codes/ checkout development`.
|
|
33
|
+
2. Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
34
|
+
3. Buat atau pindah ke branch yang sesuai dengan fitur:
|
|
35
|
+
- Jika branch sudah ada: `git -C codes/ checkout nama-branch-fitur`.
|
|
36
|
+
- Jika branch belum ada: `git -C codes/ checkout -b nama-branch-fitur`.
|
|
37
|
+
- **Jika dari awal sudah di branch `development`:**
|
|
38
|
+
1. Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
39
|
+
2. Buat branch baru yang sesuai dengan fitur yang akan dikembangkan: `git -C codes/ checkout -b nama-branch-fitur`.
|
|
40
|
+
- **Konvensi nama branch:** gunakan format `feature/nama-fitur` (misal: `feature/login`, `feature/payment-gateway`).
|
|
41
|
+
- **JANGAN lakukan commit dan push otomatis** setelah pekerjaan selesai. Hasil pekerjaan perlu diverifikasi oleh user terlebih dahulu.
|
|
42
|
+
|
|
18
43
|
3. **Directory Check:** Cek apakah folder `tests/e2e/` ada. Jika tidak, **BUAT FOLDERNYA**.
|
|
19
44
|
|
|
20
45
|
4. **Action (Test Case Generation):**
|
|
File without changes
|