create-vasvibe 0.2.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/index.mjs +9 -3
- package/src/scaffold.mjs +1 -1
- package/template/.agents/agents/analyst/agent.json +2 -3
- package/template/.agents/agents/developer/agent.json +2 -2
- package/template/.agents/agents/devops/agent.json +44 -0
- package/template/.agents/agents/document/agent.json +2 -3
- package/template/.agents/agents/fixer/agent.json +2 -2
- package/template/.agents/agents/initiator/agent.json +2 -5
- package/template/.agents/agents/orchestrator/agent.json +44 -0
- package/template/.agents/agents/pm/agent.json +2 -4
- package/template/.agents/agents/qa/agent.json +44 -0
- package/template/.agents/agents/sysarch/agent.json +2 -2
- package/template/.agents/agents/tester/agent.json +2 -2
- package/template/.agents/skills/developer/SKILL.md +6 -6
- package/template/.agents/skills/pm/SKILL.md +15 -17
- package/template/.claude/agents/analyst.md +5 -6
- package/template/.claude/agents/developer.md +12 -83
- package/template/.claude/agents/devops.md +29 -0
- package/template/.claude/agents/document.md +35 -14
- package/template/.claude/agents/fixer.md +8 -6
- package/template/.claude/agents/initiator.md +2 -3
- package/template/.claude/agents/orchestrator.md +41 -0
- package/template/.claude/agents/pm.md +4 -196
- package/template/.claude/agents/qa.md +53 -0
- package/template/.claude/agents/sysarch.md +15 -17
- package/template/.claude/agents/tester.md +8 -6
- package/template/.github/prompts/developer.prompt.md +4 -4
- package/template/.github/prompts/fixer.prompt.md +28 -3
- package/template/.github/prompts/pm.prompt.md +2 -2
- package/template/.github/prompts/tester.prompt.md +27 -2
- package/template/.opencode/commands/analyst.md +5 -6
- package/template/.opencode/commands/developer.md +11 -112
- package/template/.opencode/commands/devops.md +29 -0
- package/template/.opencode/commands/document.md +35 -14
- package/template/.opencode/commands/fixer.md +8 -6
- package/template/.opencode/commands/initiator.md +2 -3
- package/template/.opencode/commands/orchestrator.md +41 -0
- package/template/.opencode/commands/pm.md +4 -173
- package/template/.opencode/commands/qa.md +53 -0
- package/template/.opencode/commands/sysarch.md +15 -17
- package/template/.opencode/commands/tester.md +8 -3
- package/template/AGENT_PERSONAS.md +389 -0
- package/template/GIT_STRUCTURE_GUIDE.md +1 -1
- package/template/README.md +60 -433
- package/template/agent/workflows/_shared/git-branch-management.md +25 -0
- package/template/agent/workflows/_shared/state-management.md +5 -0
- package/template/agent/workflows/analyst.md +6 -4
- package/template/agent/workflows/developer.md +11 -5
- package/template/agent/workflows/devops.md +29 -0
- package/template/agent/workflows/document.md +35 -11
- package/template/agent/workflows/fixer.md +9 -4
- package/template/agent/workflows/initiator.md +3 -1
- package/template/agent/workflows/orchestrator.md +41 -0
- package/template/agent/workflows/pm.md +5 -3
- package/template/agent/workflows/qa.md +53 -0
- package/template/agent/workflows/{sysacrh.md → sysarch.md} +4 -2
- package/template/agent/workflows/tester.md +8 -3
- package/template/opencode.json +312 -0
- package/template/project_overview_example.md +1 -1
- package/template/schemas/dev_log.template.md +26 -0
- package/template/schemas/product-ci.template.yml +50 -0
- package/template/schemas/specification.template.md +27 -0
- package/template/schemas/style_guide.template.md +29 -0
- package/template/schemas/task_list.template.md +33 -0
- package/template/state/knowledge_base/.gitkeep +1 -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
|
|
269
|
-
|
|
270
|
-
**Capabilities:**
|
|
271
|
-
- ✅ Membaca spesifikasi dari Analyst
|
|
272
|
-
- ✅ Menulis kode (frontend, backend, database migration)
|
|
273
|
-
- ✅ Mengikuti coding standards & best practices
|
|
274
|
-
- ✅ Membuat development log otomatis (`logs/development/dev_*.md`)
|
|
275
|
-
- ✅ Menjalankan build & check errors
|
|
276
|
-
- ✅ Fixing bugs berdasarkan error feedback
|
|
277
|
-
- ✅ **Update task status** di `task/task_list.md` (not_started → dev → ready_to_test)
|
|
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
|
|
140
|
+
Dalam workflow ini, kita memecah siklus SDLC (Software Development Life Cycle) menjadi 8 **persona agen terspesialisasi**:
|
|
310
141
|
|
|
311
|
-
**
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
-
|
|
316
|
-
|
|
317
|
-
|
|
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
|
|
318
150
|
|
|
319
|
-
**
|
|
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
|
-
---
|
|
504
|
-
|
|
505
|
-
## 🤖 Peran & Perintah (Slash Commands)
|
|
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
|
|
|
@@ -1254,13 +890,7 @@ tambahkan test untuk edge cases:
|
|
|
1254
890
|
- Booking dengan tanggal di masa lalu"
|
|
1255
891
|
```
|
|
1256
892
|
|
|
1257
|
-
---
|
|
1258
|
-
|
|
1259
893
|
### **7. Bugs di Production** 🐛
|
|
1260
|
-
|
|
1261
|
-
---
|
|
1262
|
-
|
|
1263
|
-
### **5. Bugs di Production** 🐛
|
|
1264
894
|
**Symptom:** User report bug di production, perlu hotfix cepat
|
|
1265
895
|
|
|
1266
896
|
**Fix:**
|
|
@@ -1839,6 +1469,3 @@ Include:
|
|
|
1839
1469
|
- SysArch Agent = **Infrastructure Guardian** (keeps costs low, performance high) ⭐ NEW
|
|
1840
1470
|
|
|
1841
1471
|
**Together = Unstoppable** 💪🤖👤
|
|
1842
|
-
- Human = **Navigator** (makes sure direction is correct)
|
|
1843
|
-
|
|
1844
|
-
**Together = Unstoppable** 💪🤖👤
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Git Branch Management (Shared)
|
|
2
|
+
|
|
3
|
+
## Rules
|
|
4
|
+
1. **NEVER** commit/push langsung ke `main` atau `development`.
|
|
5
|
+
2. **PENTING — Struktur Repo:** Workspace ini terdiri dari DUA repo git terpisah:
|
|
6
|
+
- **Agent repo** (root): `{project-name}/` — berisi semua file agent, spec, task, logs. Jangan commit kode produk di sini.
|
|
7
|
+
- **Product repo** (subfolder): `codes/` — repo git terpisah yang di-push ke `{repo-url}`. Semua operasi git untuk kode produk dilakukan DI DALAM folder `codes/`.
|
|
8
|
+
3. **Semua perintah git untuk kode produk harus dijalankan dari dalam folder `codes/`.**
|
|
9
|
+
4. **Konvensi Nama Branch:** gunakan format `feature/nama-fitur`, `fix/nama-bug`, atau `test/nama-fitur`.
|
|
10
|
+
5. **Konvensi Commit (CRITICAL):** Wajib menggunakan **Conventional Commits** format:
|
|
11
|
+
- `feat: [pesan]` untuk fitur baru.
|
|
12
|
+
- `fix: [pesan]` untuk bug fix.
|
|
13
|
+
- `chore: [pesan]` untuk update tooling/config.
|
|
14
|
+
- `docs: [pesan]` untuk perubahan dokumentasi.
|
|
15
|
+
- `test: [pesan]` untuk penambahan test.
|
|
16
|
+
|
|
17
|
+
## Steps
|
|
18
|
+
1. **Cek branch saat ini** dengan `git -C codes/ branch --show-current`.
|
|
19
|
+
2. **Cek apakah ada perubahan yang belum di-commit** dengan `git -C codes/ status`.
|
|
20
|
+
- **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.
|
|
21
|
+
3. **Jika working tree clean:**
|
|
22
|
+
- Pindah ke branch `development`: `git -C codes/ checkout development`.
|
|
23
|
+
- Pull perubahan terbaru: `git -C codes/ pull origin development`.
|
|
24
|
+
- Buat atau pindah ke branch yang sesuai dengan task: `git -C codes/ checkout -b [type]/[nama-task]`.
|
|
25
|
+
4. **JANGAN lakukan commit dan push otomatis** setelah pekerjaan selesai. Hasil pekerjaan perlu diverifikasi oleh user terlebih dahulu.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# State Management (Shared)
|
|
2
|
+
|
|
3
|
+
- Baca `state/context.json` di awal session untuk memahami konteks project saat ini.
|
|
4
|
+
- Update `state/context.json` di akhir session jika ada perubahan state atau status penting.
|
|
5
|
+
- Jika ada operan data spesifik atau context handoff ke agent lain, tulis ke `state/agent_handoff.json`.
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
2. **Validate:**
|
|
8
8
|
- Apakah "Tech Stack" dan "UI Guidelines" di `project_overview.md` sudah terisi?
|
|
9
9
|
- Jika KOSONG/BELUM JELAS: **BERHENTI**. Ajukan pertanyaan klarifikasi kepada saya untuk melengkapinya dulu. Jangan lanjut sebelum ini jelas.
|
|
10
|
-
3. **Directory Check:** Cek/Buat folder `
|
|
10
|
+
3. **Directory Check:** Cek/Buat folder `specifications/`.
|
|
11
11
|
4. **INFRASTRUCTURE CHECK (CRITICAL):**
|
|
12
|
-
- Cek apakah file `
|
|
12
|
+
- Cek apakah file `specifications/000_spec_environment_setup.md` sudah ada?
|
|
13
13
|
- **JIKA BELUM ADA:**
|
|
14
14
|
- Abaikan permintaan fitur user saat ini.
|
|
15
15
|
- Prioritas utama adalah membuat spesifikasi Environment.
|
|
@@ -52,7 +52,9 @@
|
|
|
52
52
|
|
|
53
53
|
9. **Review & Finalize:**
|
|
54
54
|
- Pastikan spesifikasi lengkap, jelas, dan sesuai standar dokumentasi.
|
|
55
|
-
- Simpan file di `
|
|
55
|
+
- Simpan file di `specifications/` dengan format penamaan yang benar.
|
|
56
56
|
|
|
57
57
|
**INPUT SAYA:**
|
|
58
|
-
"[INPUT USER DISINI]"
|
|
58
|
+
"[INPUT USER DISINI]"
|
|
59
|
+
## State Management
|
|
60
|
+
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -3,17 +3,20 @@
|
|
|
3
3
|
|
|
4
4
|
**INSTRUCTION STEPS:**
|
|
5
5
|
1. **Load Context:**
|
|
6
|
-
- Baca file spesifikasi target (misal: `specifications/001_...md`).
|
|
7
6
|
- **BACA file `task/task_list.md`** untuk menemukan task yang akan dikerjakan.
|
|
8
|
-
- Temukan file detail task di `task/[TASK-ID]_[nama-task].md` yang sesuai.
|
|
7
|
+
- Temukan file detail task di `task/[TASK-ID]_[nama-task]/task_detail.md` yang sesuai.
|
|
8
|
+
- Baca file spesifikasi target (misal: `specifications/001_...md`).
|
|
9
9
|
|
|
10
10
|
2. **Update Task Status - START (CRITICAL):**
|
|
11
11
|
- Di `task/task_list.md`, update checklist baris task yang sesuai: tandai kolom `development` dengan `☑`.
|
|
12
|
-
- Di file detail task `task/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
12
|
+
- Di file detail task `task/[TASK-ID]_[nama-task]/task_detail.md`, **APPEND** entry baru ke Status Log:
|
|
13
13
|
```
|
|
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
|
+
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/git-branch-management.md` untuk aturan git branch dan folder struktur.
|
|
19
|
+
|
|
17
20
|
3. **Directory Check:** Cek apakah folder `codes/` ada. Jika tidak, **BUAT FOLDERNYA**.
|
|
18
21
|
|
|
19
22
|
4. **Action (Coding):**
|
|
@@ -23,6 +26,7 @@
|
|
|
23
26
|
- Simpan file source code di dalam folder `codes/`.
|
|
24
27
|
- Perhatikan detail UI/UX jika ada instruksi visual. **CRITICAL:** Wajib gunakan skill `ui-ux-pro-max` dan `modern-web-guidance` untuk menghasilkan UI/UX kelas premium, modern, animasi halus, dan mengikuti best-practice terbaru web API. Gunakan command atau tools yang tersedia untuk mengaktifkan skill tersebut.
|
|
25
28
|
- Perhatikan apakah setiap spesifikasi terdiri dari frontend dan backend atau salah satu saja.
|
|
29
|
+
- **SECURITY (CRITICAL):** DILARANG KERAS men-hardcode credentials (API keys, secrets, passwords) di source code. Semua harus via environment variables (`.env`). Pastikan key baru didaftarkan di `.env.example`.
|
|
26
30
|
- Lakukan *Self-Reflection*: "Apakah kode ini aman? Apakah efisien?"
|
|
27
31
|
- Buat unit test yang bisa dieksekusi secara otomatis menggunakan framework dan tool yang tersedia seperti jest.
|
|
28
32
|
|
|
@@ -57,10 +61,12 @@
|
|
|
57
61
|
|
|
58
62
|
6. **Update Task Status - COMPLETE (CRITICAL):**
|
|
59
63
|
- Di `task/task_list.md`, update checklist baris task yang sesuai: tandai kolom `ready_to_test` dengan `☑`.
|
|
60
|
-
- Di file detail task `task/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
64
|
+
- Di file detail task `task/[TASK-ID]_[nama-task]/task_detail.md`, **APPEND** entry baru ke Status Log:
|
|
61
65
|
```
|
|
62
66
|
| [YYYY-MM-DD HH:MM] | dev agent | ready to test | [catatan penting jika ada] |
|
|
63
67
|
```
|
|
64
68
|
|
|
65
69
|
**INPUT SAYA:**
|
|
66
|
-
"Tolong implementasikan spesifikasi berikut: [NAMA FILE SPEC]"
|
|
70
|
+
"Tolong implementasikan spesifikasi berikut: [NAMA FILE SPEC]"
|
|
71
|
+
## State Management
|
|
72
|
+
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|