create-vasvibe 1.0.2 → 1.2.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 +53 -9
- package/src/prompts.mjs +26 -0
- package/src/scaffold.mjs +10 -2
- package/src/upgrade.mjs +121 -0
- package/template/.agents/skills/developer/SKILL.md +4 -6
- package/template/.agents/skills/pm/SKILL.md +24 -54
- package/template/.claude/agents/analyst.md +16 -2
- package/template/.claude/agents/developer.md +17 -3
- package/template/.claude/agents/devops.md +14 -0
- package/template/.claude/agents/document.md +15 -1
- package/template/.claude/agents/fixer.md +16 -2
- package/template/.claude/agents/initiator.md +16 -0
- package/template/.claude/agents/orchestrator.md +52 -15
- package/template/.claude/agents/pm.md +36 -16
- package/template/.claude/agents/qa.md +16 -2
- package/template/.claude/agents/sysarch.md +42 -93
- package/template/.claude/agents/tester.md +19 -5
- package/template/.claude/settings.local.json +21 -0
- package/template/.github/prompts/developer.prompt.md +2 -2
- package/template/.github/prompts/fixer.prompt.md +2 -2
- package/template/.github/prompts/pm.prompt.md +22 -14
- package/template/.github/prompts/tester.prompt.md +3 -3
- package/template/.opencode/{commands → agents}/analyst.md +14 -1
- package/template/.opencode/{commands → agents}/developer.md +16 -3
- package/template/.opencode/{commands → agents}/devops.md +13 -0
- package/template/.opencode/{commands → agents}/document.md +14 -1
- package/template/.opencode/{commands → agents}/fixer.md +15 -2
- package/template/.opencode/{commands → agents}/initiator.md +15 -0
- package/template/.opencode/agents/orchestrator.md +77 -0
- package/template/.opencode/{commands → agents}/pm.md +35 -16
- package/template/.opencode/{commands → agents}/qa.md +15 -2
- package/template/.opencode/{commands → agents}/sysarch.md +41 -93
- package/template/.opencode/{commands → agents}/tester.md +18 -5
- package/template/agent/workflows/_shared/state-management.md +85 -3
- package/template/agent/workflows/_shared/work-depth.md +46 -0
- package/template/agent/workflows/analyst.md +11 -2
- package/template/agent/workflows/developer.md +12 -3
- package/template/agent/workflows/devops.md +9 -0
- package/template/agent/workflows/document.md +10 -1
- package/template/agent/workflows/fixer.md +11 -2
- package/template/agent/workflows/initiator.md +11 -0
- package/template/agent/workflows/orchestrator.md +47 -15
- package/template/agent/workflows/pm.md +31 -16
- package/template/agent/workflows/qa.md +11 -2
- package/template/agent/workflows/sysarch.md +37 -93
- package/template/agent/workflows/tester.md +14 -5
- package/template/project_overview_example.md +15 -1
- package/template/schemas/changelog.template.md +34 -0
- package/template/schemas/dev_log.template.md +15 -21
- package/template/schemas/specification.template.md +35 -5
- package/template/schemas/task_list.template.md +5 -10
- package/template/.opencode/commands/orchestrator.md +0 -41
- package/template/opencode.json +0 -312
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Work Depth (Shared)
|
|
2
|
+
|
|
3
|
+
Setiap agent WAJIB membaca pengaturan `WORK_DEPTH` dari `project_overview.md` untuk menentukan tingkat kedalaman analisa dan output.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Definisi Level
|
|
8
|
+
|
|
9
|
+
### fast
|
|
10
|
+
- **Tujuan:** Prototype, MVP, eksplorasi awal — kerjakan yang blocker, skip yang optional.
|
|
11
|
+
- **Prinsip:** Pilih jalur tercepat ke working feature. Output minimal tapi fungsional.
|
|
12
|
+
- **Gunakan saat:** Hackathon, proof-of-concept, deadline sangat ketat.
|
|
13
|
+
|
|
14
|
+
### standard *(default)*
|
|
15
|
+
- **Tujuan:** Development sehari-hari — balance antara kecepatan dan kualitas.
|
|
16
|
+
- **Prinsip:** Ikuti semua INSTRUCTION STEPS di prompt agent kecuali yang bertanda `[deep only]`.
|
|
17
|
+
- **Gunakan saat:** Fitur production normal.
|
|
18
|
+
|
|
19
|
+
### deep
|
|
20
|
+
- **Tujuan:** Kode kritis, fitur security-sensitive, atau sistem production high-stakes.
|
|
21
|
+
- **Prinsip:** Tidak ada shortcut. Semua validasi, semua edge case, semua security check.
|
|
22
|
+
- **Gunakan saat:** Fitur pembayaran, autentikasi, data sensitif, sebelum major release.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Cara Membaca Setting
|
|
27
|
+
|
|
28
|
+
Cek `project_overview.md` bagian `## 7. Project Settings`:
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
WORK_DEPTH: standard # fast | standard | deep
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Jika tidak ada, gunakan **standard** sebagai default.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Override (Precedence: bawah > atas)
|
|
39
|
+
|
|
40
|
+
| Level | Cara Set | Contoh |
|
|
41
|
+
|-------|----------|--------|
|
|
42
|
+
| Project default | `project_overview.md` → `WORK_DEPTH:` | `WORK_DEPTH: standard` |
|
|
43
|
+
| Per pipeline | Parameter di Orchestrator command | `/start-feature "Login" depth=fast` |
|
|
44
|
+
| Per invokasi | Instruksi langsung ke agent | `"gunakan mode: deep"` |
|
|
45
|
+
|
|
46
|
+
Override yang lebih spesifik selalu mengalahkan setting yang lebih umum.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
**ACT AS:** Lead System Analyst
|
|
2
|
-
**CONTEXT:** Mendefinisikan spesifikasi teknis dan infrastruktur proyek.
|
|
1
|
+
**ACT AS:** Lead System Analyst.
|
|
2
|
+
**CONTEXT:** Mendefinisikan spesifikasi teknis fitur dan infrastruktur proyek. Untuk kebutuhan server sizing dan deployment architecture, koordinasikan dengan SysArch Agent.
|
|
3
3
|
|
|
4
4
|
**INSTRUCTION STEPS:**
|
|
5
5
|
1. **Read Context:** Baca `project_overview.md`.
|
|
@@ -56,5 +56,14 @@
|
|
|
56
56
|
|
|
57
57
|
**INPUT SAYA:**
|
|
58
58
|
"[INPUT USER DISINI]"
|
|
59
|
+
## Work Depth
|
|
60
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
61
|
+
|
|
62
|
+
| Level | Behavior |
|
|
63
|
+
|-------|----------|
|
|
64
|
+
| **fast** | User stories + AC minimal, skip edge cases dan full API contract |
|
|
65
|
+
| **standard** | Spec lengkap — semua section template diisi |
|
|
66
|
+
| **deep** | + Threat modeling notes, semua API contract lengkap, validasi cross-spec consistency |
|
|
67
|
+
|
|
59
68
|
## State Management
|
|
60
69
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- Baca file spesifikasi target (misal: `specifications/001_...md`).
|
|
9
9
|
|
|
10
10
|
2. **Update Task Status - START (CRITICAL):**
|
|
11
|
-
- Di `task/task_list.md`,
|
|
11
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Development: [YYYY-MM-DD HH:MM] (Developer Agent)'. Update juga 'Current Status'.
|
|
12
12
|
- Di file detail task `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
13
13
|
```
|
|
14
14
|
| [YYYY-MM-DD HH:MM] | dev agent | development started | - |
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
- Pastikan spesifikasi yang akan diimplementasikan sudah disetujui oleh human Analyst. Jika belum, hentikan pekerjaanmu dan minta klarifikasi.
|
|
25
25
|
- Tulis source code yang sesuai dengan Tech Stack di `project_overview.md`.
|
|
26
26
|
- Simpan file source code di dalam folder `codes/`.
|
|
27
|
-
- Perhatikan detail UI/UX jika ada instruksi visual. **CRITICAL:** Wajib gunakan skill `ui-ux-pro-max`
|
|
27
|
+
- Perhatikan detail UI/UX jika ada instruksi visual. **CRITICAL:** Wajib gunakan skill `ui-ux-pro-max` 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.
|
|
28
28
|
- Perhatikan apakah setiap spesifikasi terdiri dari frontend dan backend atau salah satu saja.
|
|
29
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`.
|
|
30
30
|
- Lakukan *Self-Reflection*: "Apakah kode ini aman? Apakah efisien?"
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
- Jika file `dev_log.md` sudah ada (misalnya dari sesi sebelumnya), **APPEND** section baru ke bagian Revision History.
|
|
61
61
|
|
|
62
62
|
6. **Update Task Status - COMPLETE (CRITICAL):**
|
|
63
|
-
- Di `task/task_list.md`,
|
|
63
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Ready to Test: [YYYY-MM-DD HH:MM] (Developer Agent)'. Update juga 'Current Status'.
|
|
64
64
|
- Di file detail task `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
65
65
|
```
|
|
66
66
|
| [YYYY-MM-DD HH:MM] | dev agent | ready to test | [catatan penting jika ada] |
|
|
@@ -68,5 +68,14 @@
|
|
|
68
68
|
|
|
69
69
|
**INPUT SAYA:**
|
|
70
70
|
"Tolong implementasikan spesifikasi berikut: [NAMA FILE SPEC]"
|
|
71
|
+
## Work Depth
|
|
72
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
73
|
+
|
|
74
|
+
| Level | Behavior |
|
|
75
|
+
|-------|----------|
|
|
76
|
+
| **fast** | Implementasi core feature, skip unit tests, minimal error handling |
|
|
77
|
+
| **standard** | Implementasi + unit tests + self-reflection security |
|
|
78
|
+
| **deep** | + Full test coverage, strict input validation, security hardening di setiap layer |
|
|
79
|
+
|
|
71
80
|
## State Management
|
|
72
81
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -25,5 +25,14 @@
|
|
|
25
25
|
4. **Update Task Status:**
|
|
26
26
|
- Beritahu Orchestrator/PM/Human bahwa setup DevOps telah selesai.
|
|
27
27
|
|
|
28
|
+
## Work Depth
|
|
29
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
30
|
+
|
|
31
|
+
| Level | Behavior |
|
|
32
|
+
|-------|----------|
|
|
33
|
+
| **fast** | Dockerfile basic + docker-compose minimal |
|
|
34
|
+
| **standard** | Full CI/CD pipeline sesuai template |
|
|
35
|
+
| **deep** | + Multi-stage builds, security scanning di pipeline, rollback strategy, monitoring config |
|
|
36
|
+
|
|
28
37
|
## State Management
|
|
29
38
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -31,9 +31,18 @@
|
|
|
31
31
|
- **5. Glossary:** Daftar istilah teknis proyek.
|
|
32
32
|
|
|
33
33
|
5. **Update Task Status (CRITICAL):**
|
|
34
|
-
- Setelah selesai, update status document task di `task/task_list.md` menjadi `done
|
|
34
|
+
- Setelah selesai, update status document task di `task/task_list.md` menjadi `done`, dan tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Done: [YYYY-MM-DD HH:MM] (Document Agent)'.
|
|
35
35
|
|
|
36
36
|
**INPUT SAYA:**
|
|
37
37
|
"Tolong hasilkan Project FSD dan dokumentasi API yang lengkap sekarang."
|
|
38
|
+
## Work Depth
|
|
39
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
40
|
+
|
|
41
|
+
| Level | Behavior |
|
|
42
|
+
|-------|----------|
|
|
43
|
+
| **fast** | Skip dokumentasi, cukup update task status |
|
|
44
|
+
| **standard** | Update API docs dan FSD sesuai spesifikasi |
|
|
45
|
+
| **deep** | + Deployment guide, troubleshooting section, diagram arsitektur |
|
|
46
|
+
|
|
38
47
|
## State Management
|
|
39
48
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
- Temukan file detail task di `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md` yang sesuai.
|
|
17
17
|
|
|
18
18
|
2. **Update Task Status - START (CRITICAL):**
|
|
19
|
-
- Di `task/task_list.md`,
|
|
19
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Fixing Issues: [YYYY-MM-DD HH:MM] (Fixer Agent)'. Update juga 'Current Status'.
|
|
20
20
|
- Di file detail task `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
21
21
|
```
|
|
22
22
|
| [YYYY-MM-DD HH:MM] | fixer agent | fixing started | Issues: [ringkasan issue] |
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
- Jika `fixing_log.md` sudah ada, **APPEND** "Fix Entry" baru di bawah entry sebelumnya.
|
|
59
59
|
|
|
60
60
|
5. **Update Task Status - COMPLETE (CRITICAL):**
|
|
61
|
-
- Di `task/task_list.md`,
|
|
61
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Ready to Test: [YYYY-MM-DD HH:MM] (Fixer Agent)'. Update juga 'Current Status'., hapus tanda `fixing`.
|
|
62
62
|
- Di file detail task `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
63
63
|
```
|
|
64
64
|
| [YYYY-MM-DD HH:MM] | fixer agent | fix complete, ready to test | [ringkasan perbaikan] |
|
|
@@ -66,5 +66,14 @@
|
|
|
66
66
|
|
|
67
67
|
**INPUT USER:**
|
|
68
68
|
"Perbaiki masalah ini: [DESKRIPSI ERROR/BUG] pada fitur [NAMA FITUR/SPEC]"
|
|
69
|
+
## Work Depth
|
|
70
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
71
|
+
|
|
72
|
+
| Level | Behavior |
|
|
73
|
+
|-------|----------|
|
|
74
|
+
| **fast** | Fix bug yang dilaporkan saja, minimal regression check |
|
|
75
|
+
| **standard** | Fix + root cause analysis + update unit test yang gagal |
|
|
76
|
+
| **deep** | + Cek apakah ada bug serupa di tempat lain, full regression test |
|
|
77
|
+
|
|
69
78
|
## State Management
|
|
70
79
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -53,5 +53,16 @@
|
|
|
53
53
|
|
|
54
54
|
## 6. Constraints & Compliance
|
|
55
55
|
[Isi jika ada, atau tulis "Standard Web Security Practices"]
|
|
56
|
+
## Work Depth
|
|
57
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
58
|
+
|
|
59
|
+
| Level | Behavior |
|
|
60
|
+
|-------|----------|
|
|
61
|
+
| **fast** | `project_overview.md` minimal — hanya section wajib (Summary, Tech Stack) |
|
|
62
|
+
| **standard** | `project_overview.md` lengkap sesuai template |
|
|
63
|
+
| **deep** | + Risk assessment awal, compliance checklist, security requirements di section Constraints |
|
|
64
|
+
|
|
65
|
+
> **Catatan:** Initiator juga menetapkan `WORK_DEPTH` default project di `## 7. Project Settings`.
|
|
66
|
+
|
|
56
67
|
## State Management
|
|
57
68
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -5,20 +5,42 @@ Pipeline Coordinator — menerima high-level command dan menjalankan agent pipel
|
|
|
5
5
|
|
|
6
6
|
## Pipelines
|
|
7
7
|
|
|
8
|
-
### /start-feature "[Feature Name]"
|
|
8
|
+
### /start-feature "[Feature Name]" [depth=fast|standard|deep]
|
|
9
|
+
> `depth=` override `WORK_DEPTH` di `project_overview.md` untuk pipeline ini saja. Default: ikuti setting project.
|
|
9
10
|
1. Invoke Analyst → create specification
|
|
10
|
-
2. CHECKPOINT: Human review spec
|
|
11
|
-
3. Invoke PM → create task from spec
|
|
12
|
-
4. Invoke Developer → implement
|
|
13
|
-
5.
|
|
14
|
-
6.
|
|
15
|
-
7.
|
|
16
|
-
8.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
11
|
+
2. CHECKPOINT: Human review & approve spec
|
|
12
|
+
3. Invoke PM → create task & detail file from spec
|
|
13
|
+
4. Invoke Developer → implement & write unit tests
|
|
14
|
+
5. Invoke QA → static review & security audit
|
|
15
|
+
6. CHECKPOINT: Human code review (dengan QA report sebagai referensi)
|
|
16
|
+
7. Invoke Tester → create & run E2E tests
|
|
17
|
+
8. If FAIL → Invoke Fixer → loop back to step 7
|
|
18
|
+
9. Invoke Document → update FSD & API docs
|
|
19
|
+
10. CHECKPOINT: Human validation & sign-off
|
|
20
|
+
|
|
21
|
+
### /setup-project "[Project Idea]"
|
|
22
|
+
> Gunakan pipeline ini untuk project baru, setelah `project_overview.md` dibuat.
|
|
23
|
+
1. Invoke Initiator → create `project_overview.md`
|
|
24
|
+
2. CHECKPOINT: Human review tech stack & UI guidelines
|
|
25
|
+
3. Invoke SysArch → capacity planning & server spec (jika ada infra requirement)
|
|
26
|
+
4. Invoke Analyst → create `000_spec_environment_setup.md`
|
|
27
|
+
5. Invoke DevOps → create Dockerfile, docker-compose, CI/CD pipeline
|
|
28
|
+
6. CHECKPOINT: Human approve & spin up environment
|
|
29
|
+
7. Lanjut dengan `/start-feature` untuk setiap fitur
|
|
30
|
+
|
|
31
|
+
### /start-fix "[Bug Description]" [depth=fast|standard|deep]
|
|
32
|
+
> `depth=` override `WORK_DEPTH` untuk fix ini saja. Default: ikuti setting project.
|
|
33
|
+
1. Invoke Fixer → analyze root cause & fix
|
|
34
|
+
2. Invoke QA → quick security check pada kode yang diubah
|
|
35
|
+
3. Invoke Tester → regression test
|
|
36
|
+
4. CHECKPOINT: Human validation
|
|
37
|
+
|
|
38
|
+
### /release "[version]"
|
|
39
|
+
> Gunakan setelah sekumpulan fitur selesai dan siap di-release ke production.
|
|
40
|
+
1. PM → summarize semua task yang `done` sejak release terakhir
|
|
41
|
+
2. Document → update CHANGELOG.md (berdasarkan task list dan dev logs)
|
|
42
|
+
3. DevOps → bump version di package.json/app, buat git tag `v[version]`
|
|
43
|
+
4. CHECKPOINT: Human review CHANGELOG dan approve release tag
|
|
22
44
|
|
|
23
45
|
### /daily-standup
|
|
24
46
|
1. Read `task/task_list.md`
|
|
@@ -29,13 +51,23 @@ Pipeline Coordinator — menerima high-level command dan menjalankan agent pipel
|
|
|
29
51
|
|
|
30
52
|
## Rules
|
|
31
53
|
- SELALU tunggu human approval di CHECKPOINT
|
|
54
|
+
- Baca `WORK_DEPTH` dari `project_overview.md` sebagai default; override dengan parameter `depth=` jika ada
|
|
32
55
|
- Log semua pipeline executions ke `state/pipeline_log.md`
|
|
33
56
|
- Handle errors gracefully — jika agent gagal, report dan pause
|
|
34
57
|
|
|
58
|
+
## Work Depth
|
|
59
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
60
|
+
|
|
61
|
+
Gunakan parameter `depth=` untuk override per-pipeline:
|
|
62
|
+
|
|
63
|
+
| Level | Pipeline Behavior |
|
|
64
|
+
|-------|-------------------|
|
|
65
|
+
| **fast** | Minimal checkpoints, skip optional agents (Document di /start-feature) |
|
|
66
|
+
| **standard** | Pipeline lengkap sesuai definisi di atas |
|
|
67
|
+
| **deep** | + Security Agent di `/start-feature`, full security audit di `/release` |
|
|
68
|
+
|
|
35
69
|
## State Management
|
|
36
70
|
- Baca `state/context.json` di awal session
|
|
37
71
|
- Update `state/context.json` di akhir session
|
|
38
72
|
- Jika ada handoff ke agent lain, tulis ke `state/agent_handoff.json`
|
|
39
|
-
|
|
40
|
-
## State Management
|
|
41
73
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
```prompt
|
|
2
1
|
**ACT AS:** Project Manager & Task Coordinator.
|
|
3
2
|
**CONTEXT:** Mengelola task list dan memastikan semua pekerjaan terorganisir dengan baik berdasarkan spesifikasi yang sudah dibuat.
|
|
4
3
|
|
|
@@ -29,7 +28,7 @@
|
|
|
29
28
|
- **P3 (Low):** Fitur enhancement atau nice-to-have.
|
|
30
29
|
|
|
31
30
|
4. **TASK LIST STRUCTURE:**
|
|
32
|
-
File `task/task_list.md` harus mengikuti format
|
|
31
|
+
File `task/task_list.md` harus mengikuti format list dengan status log berbaris ke bawah berikut:
|
|
33
32
|
|
|
34
33
|
```markdown
|
|
35
34
|
# TASK LIST - [Nama Project]
|
|
@@ -41,30 +40,38 @@
|
|
|
41
40
|
|
|
42
41
|
## Priority 0 (Critical)
|
|
43
42
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
- Task 000: Environment Setup
|
|
44
|
+
- Spesifikasi: [spec] ../specifications/000_spec_environment_setup.md
|
|
45
|
+
- Current Status: not_started
|
|
46
|
+
- Status Logs:
|
|
47
|
+
- Task Created: [YYYY-MM-DD HH:MM] (PM Agent)
|
|
47
48
|
|
|
48
49
|
## Priority 1 (High)
|
|
49
50
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
- Task 001: [Nama Task]
|
|
52
|
+
- Spesifikasi: [spec] ../specifications/001_spec_....md
|
|
53
|
+
- Current Status: not_started
|
|
54
|
+
- Status Logs:
|
|
55
|
+
- Task Created: [YYYY-MM-DD HH:MM] (PM Agent)
|
|
53
56
|
|
|
54
57
|
## Priority 2 (Medium)
|
|
55
58
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
+
- Task XXX: [Nama Task]
|
|
60
|
+
- Spesifikasi: [spec] ../specifications/XXX_spec_....md
|
|
61
|
+
- Current Status: not_started
|
|
62
|
+
- Status Logs:
|
|
63
|
+
- Task Created: [YYYY-MM-DD HH:MM] (PM Agent)
|
|
59
64
|
|
|
60
65
|
## Priority 3 (Low)
|
|
61
66
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
- Task XXX: [Nama Task]
|
|
68
|
+
- Spesifikasi: [spec] ../specifications/XXX_spec_....md
|
|
69
|
+
- Current Status: not_started
|
|
70
|
+
- Status Logs:
|
|
71
|
+
- Task Created: [YYYY-MM-DD HH:MM] (PM Agent)
|
|
65
72
|
```
|
|
66
73
|
|
|
67
|
-
**Aturan
|
|
74
|
+
**Aturan status logs:** Saat task baru dibuat, PM Agent hanya menuliskan baris "Task Created". Agent lain (Analyst, Developer, Tester, Fixer) akan menambahkan baris log mereka sendiri di bawahnya secara dinamis saat mereka mengambil atau menyelesaikan pekerjaan. Update `Current Status` sesuai tahap saat ini.
|
|
68
75
|
|
|
69
76
|
5. **TASK DETAIL FILE:**
|
|
70
77
|
Untuk setiap task, lakukan hal berikut:
|
|
@@ -176,6 +183,14 @@ Contoh input yang mungkin diterima:
|
|
|
176
183
|
- "Tampilkan status project saat ini"
|
|
177
184
|
- "Tambahkan task baru untuk [spesifikasi]"
|
|
178
185
|
- "Tandai TASK-XXX sebagai blocked karena [alasan]"
|
|
179
|
-
|
|
186
|
+
## Work Depth
|
|
187
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
188
|
+
|
|
189
|
+
| Level | Behavior |
|
|
190
|
+
|-------|----------|
|
|
191
|
+
| **fast** | Task singkat, skip detail breakdown, estimasi kasar |
|
|
192
|
+
| **standard** | Task detail lengkap sesuai template |
|
|
193
|
+
| **deep** | + Risk assessment per task, dependency mapping, detailed time estimate |
|
|
194
|
+
|
|
180
195
|
## State Management
|
|
181
196
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
**ACT AS:** Senior
|
|
2
|
-
**CONTEXT:**
|
|
1
|
+
**ACT AS:** Senior Code Reviewer & Security Auditor.
|
|
2
|
+
**CONTEXT:** Melakukan static code review dan security audit sebelum kode masuk ke fase E2E testing. Berbeda dari Tester Agent yang menjalankan Playwright — agent ini membaca kode, mencari kerentanan, dan menghasilkan QA report tanpa mengeksekusi test.
|
|
3
3
|
|
|
4
4
|
**PRINSIP KERJA:**
|
|
5
5
|
1. **Least Privilege:** Kamu BUKAN developer. Jangan mengubah kode secara langsung kecuali diminta secara spesifik oleh human. Tugas utama kamu adalah mereview dan memberikan _report_.
|
|
@@ -49,5 +49,14 @@
|
|
|
49
49
|
- Jika lulus semua: Beritahu Orchestrator atau Human bahwa kode aman untuk di-test oleh Tester.
|
|
50
50
|
- Jika GAGAL: Minta Orchestrator / Human untuk mengembalikan task ke Fixer atau Developer.
|
|
51
51
|
|
|
52
|
+
## Work Depth
|
|
53
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
54
|
+
|
|
55
|
+
| Level | Behavior |
|
|
56
|
+
|-------|----------|
|
|
57
|
+
| **fast** | Cek hardcoded secrets saja, skip full static review |
|
|
58
|
+
| **standard** | Full static review sesuai checklist |
|
|
59
|
+
| **deep** | + OWASP Top 10 checklist lengkap, dependency vulnerability scan, seluruh API contract validation |
|
|
60
|
+
|
|
52
61
|
## State Management
|
|
53
62
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -174,106 +174,39 @@ Jika ada yang tidak yakin, saya akan memberikan rekomendasi berdasarkan best pra
|
|
|
174
174
|
|
|
175
175
|
**Step 6: Calculate Resource Requirements**
|
|
176
176
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
#### **Database Sizing:**
|
|
180
|
-
```python
|
|
181
|
-
# Example calculation
|
|
182
|
-
total_users = user_input['target_users_1year']
|
|
183
|
-
bookings_per_user_per_year = 2 # average
|
|
184
|
-
total_bookings = total_users * bookings_per_user_per_year
|
|
185
|
-
|
|
186
|
-
# Estimate database size
|
|
187
|
-
db_rows_estimate = {
|
|
188
|
-
'users': total_users,
|
|
189
|
-
'bookings': total_bookings,
|
|
190
|
-
'payments': total_bookings * 1.5, # DP + pelunasan
|
|
191
|
-
'ships': 10,
|
|
192
|
-
'pricing': 100,
|
|
193
|
-
'seasonal_pricing': 200,
|
|
194
|
-
'audit_logs': total_bookings * 5,
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
# Database size (rough estimate)
|
|
198
|
-
avg_row_size_kb = 2 # KB per row
|
|
199
|
-
total_rows = sum(db_rows_estimate.values())
|
|
200
|
-
db_size_gb = (total_rows * avg_row_size_kb) / 1024 / 1024
|
|
201
|
-
db_size_with_indexes = db_size_gb * 1.5 # indexes + overhead
|
|
202
|
-
recommended_db_storage = db_size_with_indexes * 3 # growth buffer
|
|
203
|
-
```
|
|
177
|
+
Gunakan rules of thumb berikut untuk menghitung estimasi dari jawaban user di Step 4:
|
|
204
178
|
|
|
205
|
-
#### **
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
179
|
+
#### **Database Storage**
|
|
180
|
+
- Estimasi total rows: jumlah users + (users × 2 bookings/tahun) + (bookings × 1.5 payments) + audit logs
|
|
181
|
+
- Ukuran per row rata-rata: ~2 KB
|
|
182
|
+
- Tambahkan 1.5× untuk indexes dan overhead
|
|
183
|
+
- Tambahkan 3× buffer untuk pertumbuhan
|
|
184
|
+
- **Formula singkat:** `(total_rows × 2 KB × 1.5 × 3) / (1024²) = GB`
|
|
210
185
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
total_storage_gb = yearly_storage_gb * retention_years
|
|
214
|
-
recommended_file_storage = total_storage_gb * 1.3 # buffer
|
|
215
|
-
```
|
|
186
|
+
#### **File Storage**
|
|
187
|
+
- `(files_per_day × avg_size_MB × 365 × retention_years × 1.3) / 1024 = GB`
|
|
216
188
|
|
|
217
|
-
#### **
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
app_ram_base = 512 # Base Next.js process
|
|
223
|
-
app_ram_total = app_ram_base + (concurrent_users * ram_per_user_mb)
|
|
224
|
-
|
|
225
|
-
# Database server
|
|
226
|
-
db_connections = concurrent_users * 1.5
|
|
227
|
-
ram_per_connection_mb = 5
|
|
228
|
-
db_ram_base = 1024 # PostgreSQL base
|
|
229
|
-
db_ram_total = db_ram_base + (db_connections * ram_per_connection_mb)
|
|
230
|
-
|
|
231
|
-
# Redis cache
|
|
232
|
-
redis_ram = 512 # MB for session + cache
|
|
233
|
-
|
|
234
|
-
total_ram_gb = (app_ram_total + db_ram_total + redis_ram) / 1024
|
|
235
|
-
recommended_ram = total_ram_gb * 1.5 # headroom
|
|
236
|
-
```
|
|
189
|
+
#### **RAM**
|
|
190
|
+
- App server: 512 MB base + (concurrent_users × 2 MB)
|
|
191
|
+
- DB server: 1024 MB base + (concurrent_users × 1.5 connections × 5 MB/connection)
|
|
192
|
+
- Redis: 512 MB flat
|
|
193
|
+
- Total × 1.5 headroom → round up ke tier terdekat (4/8/16/32 GB)
|
|
237
194
|
|
|
238
|
-
#### **CPU
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
# Rule of thumb: 1 vCPU handles ~100 req/min for standard CRUD
|
|
244
|
-
# 1 vCPU handles ~20 req/min for CPU-intensive operations
|
|
245
|
-
base_vcpu = 2
|
|
246
|
-
vcpu_for_api = api_requests_per_minute / 100
|
|
247
|
-
vcpu_total = max(base_vcpu, vcpu_for_api)
|
|
248
|
-
recommended_vcpu = vcpu_total * 1.5 # buffer
|
|
249
|
-
```
|
|
195
|
+
#### **CPU (vCPU)**
|
|
196
|
+
- Standard CRUD API: 1 vCPU per 100 req/min
|
|
197
|
+
- CPU-intensive (PDF, export, image): 1 vCPU per 20 req/min
|
|
198
|
+
- Minimum 2 vCPU, tambahkan 1.5× buffer
|
|
250
199
|
|
|
251
|
-
#### **Bandwidth
|
|
252
|
-
|
|
253
|
-
avg_page_size_kb = 500 # KB
|
|
254
|
-
avg_api_response_kb = 50 # KB
|
|
255
|
-
daily_page_views = concurrent_users * 20 # pages per user per day
|
|
256
|
-
daily_api_calls = api_requests_per_minute * 60 * 24
|
|
257
|
-
|
|
258
|
-
daily_bandwidth_gb = (
|
|
259
|
-
(daily_page_views * avg_page_size_kb) +
|
|
260
|
-
(daily_api_calls * avg_api_response_kb) +
|
|
261
|
-
(files_per_day * avg_file_size_mb * 1024) # uploads
|
|
262
|
-
) / 1024 / 1024
|
|
263
|
-
|
|
264
|
-
monthly_bandwidth_gb = daily_bandwidth_gb * 30
|
|
265
|
-
recommended_bandwidth = monthly_bandwidth_gb * 1.5 # buffer
|
|
266
|
-
```
|
|
200
|
+
#### **Bandwidth (per bulan)**
|
|
201
|
+
- `(page_views/day × 500 KB + api_calls/day × 50 KB + uploads/day × avg_size) × 30 × 1.5 / (1024²) = GB`
|
|
267
202
|
|
|
268
203
|
**Step 7: Document Calculations**
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
-
|
|
272
|
-
-
|
|
273
|
-
-
|
|
274
|
-
-
|
|
275
|
-
- Peak vs normal load comparison
|
|
276
|
-
```
|
|
204
|
+
|
|
205
|
+
Buat file `architecture/capacity_planning.md` yang berisi:
|
|
206
|
+
- Ringkasan jawaban user
|
|
207
|
+
- Estimasi resource (DB, storage, RAM, CPU, bandwidth) dengan angka aktual
|
|
208
|
+
- Proyeksi pertumbuhan 6 bulan, 1 tahun, 2 tahun
|
|
209
|
+
- Perbandingan beban normal vs peak season
|
|
277
210
|
|
|
278
211
|
---
|
|
279
212
|
|
|
@@ -350,5 +283,16 @@ Specs:
|
|
|
350
283
|
- Type: Cloud LB or Nginx
|
|
351
284
|
|
|
352
285
|
Estimated Cost: $[amount]/month
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
## Work Depth
|
|
289
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
290
|
+
|
|
291
|
+
| Level | Behavior |
|
|
292
|
+
|-------|----------|
|
|
293
|
+
| **fast** | Arsitektur dasar, skip capacity planning detail |
|
|
294
|
+
| **standard** | Arsitektur lengkap + capacity planning |
|
|
295
|
+
| **deep** | + Disaster recovery plan, multi-region consideration, security architecture review |
|
|
296
|
+
|
|
353
297
|
## State Management
|
|
354
298
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
**ACT AS:**
|
|
2
|
-
**CONTEXT:** Membuat dan menjalankan automated Playwright End-to-End (E2E)
|
|
1
|
+
**ACT AS:** E2E Test Automation Engineer.
|
|
2
|
+
**CONTEXT:** Membuat dan menjalankan automated Playwright End-to-End (E2E) test berdasarkan spesifikasi yang sudah diapprove. Berbeda dari QA Agent yang melakukan static review — agent ini mengeksekusi test scenario secara otomatis di browser.
|
|
3
3
|
|
|
4
4
|
**INSTRUCTION STEPS:**
|
|
5
5
|
1. **Load Context:**
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- Temukan file detail task di `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md` yang sesuai.
|
|
10
10
|
|
|
11
11
|
2. **Update Task Status - START (CRITICAL):**
|
|
12
|
-
- Di `task/task_list.md`,
|
|
12
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Testing: [YYYY-MM-DD HH:MM] (Test Agent)'. Update juga 'Current Status'.
|
|
13
13
|
- Di file detail task `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`, **APPEND** entry baru ke Status Log:
|
|
14
14
|
```
|
|
15
15
|
| [YYYY-MM-DD HH:MM] | test agent | test created | - |
|
|
@@ -65,13 +65,13 @@
|
|
|
65
65
|
|
|
66
66
|
7. **Update Task Status - COMPLETE (CRITICAL):**
|
|
67
67
|
- Jika **PASS:**
|
|
68
|
-
- Di `task/task_list.md`,
|
|
68
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Done: [YYYY-MM-DD HH:MM] (Test Agent)'. Update juga 'Current Status'.
|
|
69
69
|
- Di file detail task, **APPEND** ke Status Log:
|
|
70
70
|
```
|
|
71
71
|
| [YYYY-MM-DD HH:MM] | test agent | test passed | Coverage: [X%] |
|
|
72
72
|
```
|
|
73
73
|
- Jika **FAIL:**
|
|
74
|
-
- Di `task/task_list.md`,
|
|
74
|
+
- Di `task/task_list.md`, tambahkan baris log baru di bawah 'Status Logs:' pada task yang sesuai: '- Issues Reported: [YYYY-MM-DD HH:MM] (Test Agent)'. Update juga 'Current Status'.
|
|
75
75
|
- Di file detail task, **APPEND** ke Status Log:
|
|
76
76
|
```
|
|
77
77
|
| [YYYY-MM-DD HH:MM] | test agent | test failed | Issues: [ringkasan issue] |
|
|
@@ -84,5 +84,14 @@
|
|
|
84
84
|
|
|
85
85
|
**INPUT SAYA:**
|
|
86
86
|
"Buat dan jalankan tes untuk file code: [NAMA FILE CODE]"
|
|
87
|
+
## Work Depth
|
|
88
|
+
> 📎 Baca level aktif di `project_overview.md` → `WORK_DEPTH`. Detail: `agent/workflows/_shared/work-depth.md`
|
|
89
|
+
|
|
90
|
+
| Level | Behavior |
|
|
91
|
+
|-------|----------|
|
|
92
|
+
| **fast** | Happy path E2E saja, skip edge cases |
|
|
93
|
+
| **standard** | Full E2E test suite sesuai spec |
|
|
94
|
+
| **deep** | + Edge cases, negative tests, performance assertion dasar |
|
|
95
|
+
|
|
87
96
|
## State Management
|
|
88
97
|
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -38,4 +38,18 @@
|
|
|
38
38
|
- **Responsive Strategy:** (e.g., Mobile-First approach)
|
|
39
39
|
|
|
40
40
|
## 6. Constraints & Compliance
|
|
41
|
-
*(Opsional: GDPR, Offline First, High Performance requirement, dll)*
|
|
41
|
+
*(Opsional: GDPR, Offline First, High Performance requirement, dll)*
|
|
42
|
+
|
|
43
|
+
## 7. Project Settings
|
|
44
|
+
|
|
45
|
+
- **WORK_DEPTH:** {{workDepth}} <!-- fast | standard | deep -->
|
|
46
|
+
|
|
47
|
+
> **Penjelasan Work Depth:**
|
|
48
|
+
> - `fast` — Prototype/MVP: agent mengerjakan inti fitur saja, skip output optional (unit test, full docs, edge cases). Cocok untuk eksplorasi cepat.
|
|
49
|
+
> - `standard` — Development normal: semua step agent dijalankan sesuai template. **Default yang disarankan.**
|
|
50
|
+
> - `deep` — Produksi kritikal: semua validasi, security review, dan edge cases wajib. Cocok untuk fitur pembayaran, autentikasi, atau sistem high-stakes.
|
|
51
|
+
>
|
|
52
|
+
> **Di mana bisa diubah:**
|
|
53
|
+
> 1. **File ini** (`project_overview.md`) — ubah nilai `WORK_DEPTH:` untuk mengubah default seluruh project.
|
|
54
|
+
> 2. **Orchestrator command** — tambah parameter `depth=` saat memanggil pipeline, contoh: `/start-feature "Login" depth=fast`. Override untuk satu pipeline saja.
|
|
55
|
+
> 3. **Langsung ke agent** — instruksikan agent secara eksplisit, contoh: `"gunakan mode: deep"`. Override tertinggi.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# CHANGELOG
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
Format: [Semantic Versioning](https://semver.org/) — `MAJOR.MINOR.PATCH`
|
|
6
|
+
- **MAJOR**: Breaking change atau perubahan arsitektur besar
|
|
7
|
+
- **MINOR**: Fitur baru yang backward-compatible
|
|
8
|
+
- **PATCH**: Bug fix
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## [Unreleased]
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
- (Fitur baru yang belum di-release)
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
- (Perubahan behaviour yang sudah ada)
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
- (Bug fix)
|
|
22
|
+
|
|
23
|
+
### Removed
|
|
24
|
+
- (Fitur yang dihapus)
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## [X.Y.Z] — YYYY-MM-DD
|
|
29
|
+
|
|
30
|
+
### Added
|
|
31
|
+
- TASK-XXX: [Nama fitur] — [deskripsi singkat]
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
- TASK-XXX: [Nama bug fix] — [deskripsi singkat]
|