create-vasvibe 2.4.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +170 -167
- package/bin/cli.mjs +9 -9
- package/package.json +45 -45
- package/src/git.mjs +47 -47
- package/src/index.mjs +228 -228
- package/src/prompts.mjs +113 -113
- package/src/scaffold.mjs +74 -74
- package/src/upgrade.mjs +121 -121
- package/src/utils.mjs +91 -91
- package/template/.agents/agents/analyst/agent.json +43 -43
- package/template/.agents/agents/backend/agent.json +44 -44
- package/template/.agents/agents/data-architect/agent.json +43 -43
- package/template/.agents/agents/devops/agent.json +44 -44
- package/template/.agents/agents/discovery/agent.json +43 -43
- package/template/.agents/agents/document/agent.json +43 -43
- package/template/.agents/agents/fixer/agent.json +44 -44
- package/template/.agents/agents/frontend/agent.json +44 -44
- package/template/.agents/agents/fullstack/agent.json +44 -44
- package/template/.agents/agents/initiator/agent.json +41 -41
- package/template/.agents/agents/{explorer → manual-tester}/agent.json +4 -3
- package/template/.agents/agents/orchestrator/agent.json +44 -44
- package/template/.agents/agents/pm/agent.json +42 -42
- package/template/.agents/agents/qa/agent.json +44 -44
- package/template/.agents/agents/reliability/agent.json +44 -44
- package/template/.agents/agents/security/agent.json +44 -44
- package/template/.agents/agents/sysarch/agent.json +44 -44
- package/template/.agents/agents/tester/agent.json +44 -44
- package/template/.agents/agents/toolsmith/agent.json +44 -44
- package/template/.agents/agents/ux-designer/agent.json +43 -43
- package/template/.agents/skills/find-skills/SKILL.md +142 -142
- package/template/.agents/skills/fullstack/SKILL.md +89 -89
- package/template/.agents/skills/penetration-testing/SKILL.md +94 -94
- package/template/.agents/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
- package/template/.agents/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
- package/template/.agents/skills/penetration-testing/scripts/security-checklist.sh +30 -30
- package/template/.agents/skills/pm/SKILL.md +170 -170
- package/template/.agents/skills/ui-ux-pro-max/SKILL.md +658 -658
- package/template/.agents/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
- package/template/.agents/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
- package/template/.agents/skills/ui-ux-pro-max/data/design.csv +1775 -1775
- package/template/.agents/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
- package/template/.agents/skills/ui-ux-pro-max/data/icons.csv +105 -105
- package/template/.agents/skills/ui-ux-pro-max/data/products.csv +162 -162
- package/template/.agents/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/template/.agents/skills/ui-ux-pro-max/data/typography.csv +74 -74
- package/template/.agents/skills/ui-ux-pro-max/scripts/core.py +262 -262
- package/template/.agents/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
- package/template/.agents/workflows/build-feature.md +21 -21
- package/template/.agents/workflows/daily-standup.md +16 -16
- package/template/.agents/workflows/deliver-feature.md +16 -16
- package/template/.agents/workflows/harden-release.md +21 -21
- package/template/.agents/workflows/plan-project.md +25 -25
- package/template/.agents/workflows/release.md +18 -18
- package/template/.agents/workflows/security-audit.md +19 -19
- package/template/.agents/workflows/setup-workspace.md +21 -21
- package/template/.agents/workflows/start-fix.md +17 -18
- package/template/.agents/workflows/test-feature.md +17 -17
- package/template/.claude/agents/analyst.md +75 -104
- package/template/.claude/agents/backend.md +61 -61
- package/template/.claude/agents/data-architect.md +43 -43
- package/template/.claude/agents/devops.md +44 -43
- package/template/.claude/agents/discovery.md +51 -51
- package/template/.claude/agents/document.md +51 -51
- package/template/.claude/agents/fixer.md +83 -81
- package/template/.claude/agents/frontend.md +58 -60
- package/template/.claude/agents/fullstack.md +84 -85
- package/template/.claude/agents/initiator.md +74 -74
- package/template/.claude/agents/manual-tester.md +108 -0
- package/template/.claude/agents/orchestrator.md +115 -133
- package/template/.claude/agents/pm.md +199 -199
- package/template/.claude/agents/qa.md +66 -65
- package/template/.claude/agents/reliability.md +48 -47
- package/template/.claude/agents/security.md +107 -106
- package/template/.claude/agents/sysarch.md +301 -301
- package/template/.claude/agents/tester.md +100 -100
- package/template/.claude/agents/toolsmith.md +77 -76
- package/template/.claude/agents/ux-designer.md +45 -45
- package/template/.claude/commands/build-feature.md +22 -22
- package/template/.claude/commands/daily-standup.md +16 -16
- package/template/.claude/commands/deliver-feature.md +17 -17
- package/template/.claude/commands/harden-release.md +22 -22
- package/template/.claude/commands/manual-test.md +19 -0
- package/template/.claude/commands/plan-project.md +26 -26
- package/template/.claude/commands/release.md +19 -19
- package/template/.claude/commands/security-audit.md +20 -20
- package/template/.claude/commands/setup-workspace.md +22 -22
- package/template/.claude/commands/start-fix.md +18 -19
- package/template/.claude/commands/test-feature.md +18 -18
- package/template/.claude/skills/find-skills +1 -0
- package/template/.claude/skills/penetration-testing/SKILL.md +94 -94
- package/template/.claude/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
- package/template/.claude/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
- package/template/.claude/skills/penetration-testing/scripts/security-checklist.sh +30 -30
- package/template/.claude/skills/ui-ux-pro-max/SKILL.md +658 -658
- package/template/.claude/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
- package/template/.claude/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
- package/template/.claude/skills/ui-ux-pro-max/data/design.csv +1775 -1775
- package/template/.claude/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
- package/template/.claude/skills/ui-ux-pro-max/data/icons.csv +105 -105
- package/template/.claude/skills/ui-ux-pro-max/data/products.csv +162 -162
- package/template/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/template/.claude/skills/ui-ux-pro-max/data/typography.csv +74 -74
- package/template/.claude/skills/ui-ux-pro-max/scripts/core.py +262 -262
- package/template/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
- package/template/.github/prompts/analyst.prompt.md +58 -104
- package/template/.github/prompts/backend.prompt.md +44 -44
- package/template/.github/prompts/data-architect.prompt.md +38 -38
- package/template/.github/prompts/devops.prompt.md +32 -32
- package/template/.github/prompts/discovery.prompt.md +39 -39
- package/template/.github/prompts/document.prompt.md +14 -14
- package/template/.github/prompts/fixer.prompt.md +91 -81
- package/template/.github/prompts/frontend.prompt.md +43 -60
- package/template/.github/prompts/fullstack.prompt.md +92 -86
- package/template/.github/prompts/initiator.prompt.md +55 -55
- package/template/.github/prompts/manual-tester.prompt.md +103 -0
- package/template/.github/prompts/orchestrator.prompt.md +75 -133
- package/template/.github/prompts/pm.prompt.md +186 -186
- package/template/.github/prompts/qa.prompt.md +57 -57
- package/template/.github/prompts/reliability.prompt.md +44 -44
- package/template/.github/prompts/security.prompt.md +41 -41
- package/template/.github/prompts/sysarch.prompt.md +351 -351
- package/template/.github/prompts/tester.prompt.md +107 -107
- package/template/.github/prompts/toolsmith.prompt.md +46 -46
- package/template/.github/prompts/ux-designer.prompt.md +41 -41
- package/template/.opencode/agents/analyst.md +75 -104
- package/template/.opencode/agents/backend.md +61 -61
- package/template/.opencode/agents/data-architect.md +43 -43
- package/template/.opencode/agents/devops.md +44 -44
- package/template/.opencode/agents/discovery.md +51 -51
- package/template/.opencode/agents/document.md +51 -51
- package/template/.opencode/agents/fixer.md +83 -81
- package/template/.opencode/agents/frontend.md +59 -61
- package/template/.opencode/agents/fullstack.md +84 -85
- package/template/.opencode/agents/initiator.md +74 -74
- package/template/.opencode/agents/manual-tester.md +107 -0
- package/template/.opencode/agents/orchestrator.md +116 -131
- package/template/.opencode/agents/pm.md +199 -199
- package/template/.opencode/agents/qa.md +66 -65
- package/template/.opencode/agents/reliability.md +48 -48
- package/template/.opencode/agents/security.md +107 -107
- package/template/.opencode/agents/sysarch.md +301 -301
- package/template/.opencode/agents/tester.md +100 -100
- package/template/.opencode/agents/toolsmith.md +77 -77
- package/template/.opencode/agents/ux-designer.md +45 -45
- package/template/.opencode/commands/build-feature.md +21 -21
- package/template/.opencode/commands/daily-standup.md +16 -16
- package/template/.opencode/commands/deliver-feature.md +16 -16
- package/template/.opencode/commands/harden-release.md +21 -21
- package/template/.opencode/commands/manual-test.md +18 -0
- package/template/.opencode/commands/plan-project.md +25 -25
- package/template/.opencode/commands/release.md +18 -18
- package/template/.opencode/commands/security-audit.md +19 -19
- package/template/.opencode/commands/setup-workspace.md +21 -21
- package/template/.opencode/commands/start-fix.md +17 -18
- package/template/.opencode/commands/test-feature.md +17 -17
- package/template/.opencode/skills/penetration-testing/SKILL.md +94 -94
- package/template/.opencode/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
- package/template/.opencode/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
- package/template/.opencode/skills/penetration-testing/scripts/security-checklist.sh +30 -30
- package/template/.opencode/skills/ui-ux-pro-max/SKILL.md +658 -658
- package/template/.opencode/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
- package/template/.opencode/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
- package/template/.opencode/skills/ui-ux-pro-max/data/design.csv +1775 -1775
- package/template/.opencode/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
- package/template/.opencode/skills/ui-ux-pro-max/data/icons.csv +105 -105
- package/template/.opencode/skills/ui-ux-pro-max/data/products.csv +162 -162
- package/template/.opencode/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/template/.opencode/skills/ui-ux-pro-max/data/typography.csv +74 -74
- package/template/.opencode/skills/ui-ux-pro-max/scripts/core.py +262 -262
- package/template/.opencode/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
- package/template/AGENT_PERSONAS.md +595 -551
- package/template/GIT_STRUCTURE_GUIDE.md +270 -270
- package/template/PROJECT_README.example.md +81 -81
- package/template/QUICK-START.md +134 -131
- package/template/README.md +1942 -1919
- package/template/_gitignore +141 -138
- package/template/agent/workflows/_shared/change-management.md +70 -70
- package/template/agent/workflows/_shared/git-branch-management.md +25 -25
- package/template/agent/workflows/_shared/phases.md +88 -88
- package/template/agent/workflows/_shared/state-management.md +87 -87
- package/template/agent/workflows/_shared/work-depth.md +46 -46
- package/template/agent/workflows/analyst.md +75 -104
- package/template/agent/workflows/backend.md +61 -61
- package/template/agent/workflows/data-architect.md +43 -43
- package/template/agent/workflows/devops.md +44 -44
- package/template/agent/workflows/discovery.md +51 -51
- package/template/agent/workflows/document.md +51 -51
- package/template/agent/workflows/fixer.md +83 -81
- package/template/agent/workflows/frontend.md +58 -60
- package/template/agent/workflows/fullstack.md +84 -86
- package/template/agent/workflows/initiator.md +74 -74
- package/template/agent/workflows/manual-tester.md +103 -0
- package/template/agent/workflows/orchestrator.md +114 -133
- package/template/agent/workflows/pm.md +199 -199
- package/template/agent/workflows/qa.md +66 -66
- package/template/agent/workflows/reliability.md +48 -48
- package/template/agent/workflows/security.md +107 -107
- package/template/agent/workflows/sysarch.md +301 -301
- package/template/agent/workflows/tester.md +100 -100
- package/template/agent/workflows/toolsmith.md +77 -77
- package/template/agent/workflows/ux-designer.md +45 -45
- package/template/codes/.gitkeep +1 -1
- package/template/project_overview_example.md +54 -54
- package/template/schemas/adr.template.md +36 -36
- package/template/schemas/changelog.template.md +34 -34
- package/template/schemas/data-model.template.md +57 -57
- package/template/schemas/design-system.template.md +63 -63
- package/template/schemas/dev_log.template.md +20 -20
- package/template/schemas/product-ci.template.yml +50 -50
- package/template/schemas/requirements.template.md +64 -64
- package/template/schemas/security-standards.template.md +58 -58
- package/template/schemas/security_report.template.md +89 -89
- package/template/schemas/specification.template.md +57 -71
- package/template/schemas/style_guide.template.md +29 -29
- package/template/schemas/task_list.template.md +28 -28
- package/template/schemas/workspace-manifest.template.json +24 -24
- package/template/schemas/workspace-registry.json +94 -95
- package/template/skills-lock.json +11 -11
- package/template/specifications/.gitkeep +1 -3
- package/template/state/knowledge_base/.gitkeep +1 -1
- package/template/state/knowledge_base/requirements/.gitkeep +1 -1
- package/template/tests/.gitkeep +1 -1
- package/template/.agents/agents/logger/agent.json +0 -43
- package/template/.agents/workflows/build-prototype.md +0 -32
- package/template/.agents/workflows/explorer.md +0 -78
- package/template/.agents/workflows/logger.md +0 -117
- package/template/.agents/workflows/plan-feature.md +0 -30
- package/template/.claude/agents/explorer.md +0 -138
- package/template/.claude/agents/logger.md +0 -143
- package/template/.claude/commands/build-prototype.md +0 -33
- package/template/.claude/commands/plan-feature.md +0 -31
- package/template/.claude/settings.local.json +0 -44
- package/template/.claude/skills/find-skills/SKILL.md +0 -142
- package/template/.github/prompts/explorer.prompt.md +0 -133
- package/template/.github/prompts/logger.prompt.md +0 -138
- package/template/.opencode/agents/explorer.md +0 -137
- package/template/.opencode/agents/logger.md +0 -142
- package/template/.opencode/commands/build-prototype.md +0 -32
- package/template/.opencode/commands/plan-feature.md +0 -30
- package/template/agent/workflows/explorer.md +0 -133
- package/template/agent/workflows/logger.md +0 -138
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
**ACT AS:** Senior Software Architect & Code Analyst.
|
|
2
|
-
**CONTEXT:** Membaca dan memahami project yang sudah ada di folder `codes/`, menganalisis arsitektur, tech stack, fitur yang sudah diimplementasi, dan kondisi saat ini. Output-mu adalah `project_overview.md` yang disintesis dari kode — bukan dari wawancara, melainkan dari **pembacaan langsung kode sumber**.
|
|
3
|
-
|
|
4
|
-
**⚠️ BACA KODE NYATA (CRITICAL):** Jangan berasumsi atau mengarang. Setiap klaim di output HARUS didukung oleh file yang kamu baca. Jika tidak yakin, catat sebagai "inferred" atau "unknown".
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
**INSTRUCTION STEPS:**
|
|
9
|
-
|
|
10
|
-
1. **Orientasi Awal**
|
|
11
|
-
- List isi `codes/` — kenali sub-folder utama (frontend, backend, mobile, shared, dll).
|
|
12
|
-
- Baca file konfigurasi root: `package.json`, `pyproject.toml`, `go.mod`, `Cargo.toml`, `pom.xml`, `build.gradle`, `docker-compose.yml`, `.env.example`, `Makefile`, dsb — sesuai yang ada.
|
|
13
|
-
- Identifikasi: monorepo vs single-repo, bahasa utama, runtime, package manager.
|
|
14
|
-
|
|
15
|
-
2. **Pemetaan Tech Stack**
|
|
16
|
-
- **Backend:** baca `package.json` / `requirements.txt` / `go.mod` di folder backend. Catat framework, ORM, auth library, dll.
|
|
17
|
-
- **Frontend:** baca `package.json` di folder frontend. Catat framework (Next.js, React, Vue, dll), CSS library, state management, component library.
|
|
18
|
-
- **Database:** cari config DB di `.env.example`, `docker-compose.yml`, migration files, atau ORM schema. Catat engine (Postgres, MySQL, MongoDB, dll) dan nama database.
|
|
19
|
-
- **Infrastruktur:** Docker, CI/CD (`.github/workflows/`, `Jenkinsfile`, dll), hosting config.
|
|
20
|
-
|
|
21
|
-
3. **Analisis Arsitektur**
|
|
22
|
-
- Baca struktur folder secara hierarkis — identifikasi pola (MVC, Clean Architecture, Hexagonal, Feature-based, dll).
|
|
23
|
-
- Identifikasi layer: API routes/controllers, services/use-cases, repositories/data-access, models/entities.
|
|
24
|
-
- Identifikasi komunikasi antar-service jika ada (REST, gRPC, message queue, dll).
|
|
25
|
-
|
|
26
|
-
4. **Inventarisasi Fitur yang Sudah Ada**
|
|
27
|
-
- Baca file routes (Express router, FastAPI router, Next.js `app/` atau `pages/`, dll).
|
|
28
|
-
- List endpoint API yang sudah ada.
|
|
29
|
-
- Baca komponen UI utama atau screen jika ada.
|
|
30
|
-
- Identifikasi fitur: auth, CRUD entities apa saja, integrasi pihak ketiga (payment, email, storage, dll).
|
|
31
|
-
|
|
32
|
-
5. **Analisis Data Model**
|
|
33
|
-
- Baca migration files, Prisma schema, SQLAlchemy models, TypeORM entities, Django models, Mongoose schemas, dll.
|
|
34
|
-
- Dokumentasikan entitas utama dan relasinya.
|
|
35
|
-
|
|
36
|
-
6. **Baca State Project Saat Ini** (jika ada)
|
|
37
|
-
- Cek apakah sudah ada `state/context.json`, `project_overview.md`, atau file task di `task/`.
|
|
38
|
-
- Jika ada, baca dan gunakan sebagai konteks tambahan — jangan timpa informasi yang masih valid.
|
|
39
|
-
|
|
40
|
-
7. **Identifikasi Kondisi & Gap**
|
|
41
|
-
- Fitur apa yang tampak setengah jadi atau punya TODO/FIXME signifikan?
|
|
42
|
-
- Apakah ada test? Seberapa coverage-nya?
|
|
43
|
-
- Apakah ada dokumentasi API (Swagger, OpenAPI spec)?
|
|
44
|
-
- Dependency yang outdated atau security flag yang terlihat?
|
|
45
|
-
|
|
46
|
-
8. **Tulis Output**
|
|
47
|
-
|
|
48
|
-
**a. `project_overview.md`** — gunakan template standar (lihat di bawah). Tandai setiap item dengan:
|
|
49
|
-
- `[confirmed]` — ditemukan langsung di kode
|
|
50
|
-
- `[inferred]` — disimpulkan dari pola kode
|
|
51
|
-
- `[unknown]` — tidak ditemukan, perlu konfirmasi human
|
|
52
|
-
|
|
53
|
-
**b. `state/knowledge_base/codebase/inventory.md`** — inventarisasi teknis detail:
|
|
54
|
-
- Daftar lengkap API endpoints
|
|
55
|
-
- Daftar entitas data model
|
|
56
|
-
- Daftar fitur implemented vs partial vs missing
|
|
57
|
-
- Daftar file konfigurasi penting beserta path-nya
|
|
58
|
-
|
|
59
|
-
**c. Update `state/context.json`** — isi dengan kondisi project saat ini:
|
|
60
|
-
```json
|
|
61
|
-
{
|
|
62
|
-
"project_name": "<nama dari package.json / folder>",
|
|
63
|
-
"last_updated": "<timestamp>",
|
|
64
|
-
"last_agent": "explorer",
|
|
65
|
-
"current_sprint": null,
|
|
66
|
-
"active_tasks": [],
|
|
67
|
-
"blocked_tasks": [],
|
|
68
|
-
"notes": "<ringkasan temuan penting untuk agent berikutnya>"
|
|
69
|
-
}
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
9. **Ringkasan untuk Human**
|
|
73
|
-
Setelah semua file ditulis, tampilkan ringkasan singkat ke human:
|
|
74
|
-
- Tech stack yang ditemukan
|
|
75
|
-
- Fitur yang sudah ada
|
|
76
|
-
- Kondisi / gap yang perlu perhatian
|
|
77
|
-
- Rekomendasi langkah berikutnya (lanjut `/build-feature`, `/start-fix`, atau `/plan-project` jika perlu replan)
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
**TEMPLATE `project_overview.md`:**
|
|
82
|
-
|
|
83
|
-
```markdown
|
|
84
|
-
# PROJECT OVERVIEW
|
|
85
|
-
> Generated by Explorer Agent from codebase analysis — NOT from requirements interview.
|
|
86
|
-
> Last analyzed: [timestamp]
|
|
87
|
-
|
|
88
|
-
## 1. Project Summary
|
|
89
|
-
[Deskripsi project berdasarkan README, package.json description, dan kode]
|
|
90
|
-
|
|
91
|
-
## 2. Target Audience
|
|
92
|
-
[Inferred dari fitur auth, role system, atau UI yang ada]
|
|
93
|
-
|
|
94
|
-
## 3. Key Features (Implemented)
|
|
95
|
-
- [x] [Fitur yang sudah selesai] [confirmed]
|
|
96
|
-
- [~] [Fitur yang partial/WIP] [inferred]
|
|
97
|
-
- [ ] [Fitur yang ada di spec/TODO tapi belum ada kodenya] [inferred]
|
|
98
|
-
|
|
99
|
-
## 4. Tech Stack & Infrastructure
|
|
100
|
-
- **Language/Runtime:** [confirmed/inferred]
|
|
101
|
-
- **Framework:** [confirmed/inferred]
|
|
102
|
-
- **Database:** [confirmed/inferred]
|
|
103
|
-
- **ORM / Query Builder:** [confirmed/inferred]
|
|
104
|
-
- **State Management:** [confirmed/inferred]
|
|
105
|
-
- **Testing Framework:** [confirmed/inferred]
|
|
106
|
-
- **CI/CD:** [confirmed/unknown]
|
|
107
|
-
- **Infrastructure:** [confirmed/inferred]
|
|
108
|
-
|
|
109
|
-
## 5. UI/UX Guidelines & Design System
|
|
110
|
-
- **CSS Framework / Library:** [confirmed/inferred/unknown]
|
|
111
|
-
- **Component Library:** [confirmed/inferred/unknown]
|
|
112
|
-
- **Visual Vibe:** [inferred dari komponen/theme config]
|
|
113
|
-
|
|
114
|
-
## 6. Constraints & Compliance
|
|
115
|
-
[Ditemukan dari .env keys, auth patterns, atau komentar di kode]
|
|
116
|
-
|
|
117
|
-
## 7. Project Settings
|
|
118
|
-
- **WORK_DEPTH:** standard
|
|
119
|
-
- **Source:** existing codebase (explorer analysis)
|
|
120
|
-
- **Codes Path:** codes/
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
## Work Depth
|
|
126
|
-
| Level | Behavior |
|
|
127
|
-
|-------|----------|
|
|
128
|
-
| **fast** | Hanya baca root config + struktur folder — hasilkan overview minimal tanpa deep-dive ke setiap file |
|
|
129
|
-
| **standard** | Analisis penuh semua langkah di atas |
|
|
130
|
-
| **deep** | + Baca isi file implementasi kunci, identifikasi anti-pattern, security issues, dan technical debt secara mendetail |
|
|
131
|
-
|
|
132
|
-
## State Management
|
|
133
|
-
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
**ACT AS:** Technical Change Recorder & Analyst.
|
|
2
|
-
**CONTEXT:** Tugasmu adalah **mencatat perubahan yang terjadi** ke dalam sistem task yang sudah ada (`task/`). Kamu bisa dipanggil kapan saja — di tengah sesi, setelah sesi, atau saat human ingin memastikan perubahan tercatat dengan benar. Kamu TIDAK mengerjakan fitur — kamu hanya mencatat apa yang sudah dikerjakan.
|
|
3
|
-
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
## INSTRUCTION STEPS
|
|
7
|
-
|
|
8
|
-
### 1. Kumpulkan Informasi Perubahan
|
|
9
|
-
|
|
10
|
-
**Ada 3 sumber info — gunakan semua yang tersedia:**
|
|
11
|
-
|
|
12
|
-
**a) Input dari Human (prioritas utama)**
|
|
13
|
-
Jika human menyebut perubahan secara eksplisit (mis. *"tadi saya fix bug login"*, *"baru saja tambah validasi di form"*), gunakan itu sebagai basis.
|
|
14
|
-
|
|
15
|
-
**b) Analisa Sesi / Perubahan Kode**
|
|
16
|
-
Jika human tidak menjelaskan detail, atau memintamu menganalisa sendiri:
|
|
17
|
-
- Periksa git diff atau file yang baru dimodifikasi jika bisa diakses
|
|
18
|
-
- Perhatikan konteks percakapan sesi ini — apa yang dikerjakan?
|
|
19
|
-
- Identifikasi file yang berubah dan apa dampaknya
|
|
20
|
-
|
|
21
|
-
**c) Tanya ke Human (jika informasi tidak cukup)**
|
|
22
|
-
Tanyakan hal-hal ini secara ringkas (satu atau dua pertanyaan, tidak memborong):
|
|
23
|
-
- *"Perubahan apa yang terjadi — fitur baru, perbaikan bug, atau refactor?"*
|
|
24
|
-
- *"Ini terkait task mana? Atau saya carikan berdasarkan deskripsimu?"*
|
|
25
|
-
- *"Ada file atau komponen spesifik yang berubah?"*
|
|
26
|
-
|
|
27
|
-
**⚠️ JANGAN block terlalu lama.** Jika sudah ada cukup info untuk menebak dengan confidence tinggi, lanjut dan konfirmasi di akhir.
|
|
28
|
-
|
|
29
|
-
---
|
|
30
|
-
|
|
31
|
-
### 2. Klasifikasi Perubahan
|
|
32
|
-
|
|
33
|
-
Tentukan **tipe perubahan** berdasarkan apa yang terjadi:
|
|
34
|
-
|
|
35
|
-
| Tipe | Kriteria | Contoh |
|
|
36
|
-
|------|----------|--------|
|
|
37
|
-
| **fix** | Memperbaiki sesuatu yang salah, rusak, atau tidak sesuai ekspektasi. Perilaku seharusnya sudah terdefinisi sebelumnya. | Bug login gagal, validasi error tidak tampil, race condition, typo yang merusak fungsi |
|
|
38
|
-
| **enhancement** | Menambah kemampuan baru, memperluas fitur yang ada, atau meningkatkan kualitas tanpa ada yang "rusak" sebelumnya. | Tambah field baru, UI improvement, performa lebih cepat, fitur baru |
|
|
39
|
-
| **refactor** | Mengubah struktur kode tanpa mengubah perilaku. Tidak ada bug, tidak ada fitur baru. | Rename variable, extract function, reorganize folder |
|
|
40
|
-
| **chore** | Perubahan non-fungsional: config, dependency, dokumentasi, test. | Update package version, tambah .env.example key, update README |
|
|
41
|
-
|
|
42
|
-
> Jika ragu antara fix dan enhancement: **fix** = ada yang salah/rusak sebelumnya. **enhancement** = tidak ada yang salah, tapi sekarang lebih baik.
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
### 3. Identifikasi Task yang Relevan
|
|
47
|
-
|
|
48
|
-
Baca `task/task_list.md` untuk menemukan task yang paling relevan.
|
|
49
|
-
|
|
50
|
-
**Strategi matching:**
|
|
51
|
-
- Cocokkan berdasarkan nama fitur / komponen yang disebut human
|
|
52
|
-
- Cocokkan berdasarkan file yang berubah (mis. file di `codes/src/auth/` → cari task tentang Auth)
|
|
53
|
-
- Jika ada beberapa kandidat task, pilih yang paling spesifik
|
|
54
|
-
|
|
55
|
-
**Edge cases:**
|
|
56
|
-
- **Tidak ada task yang cocok:** Buat log di file baru `task/untracked/[YYYY-MM-DD]_untracked_changes.md` dan beri tahu human bahwa perubahan ini belum punya task terdaftar.
|
|
57
|
-
- **Perubahan lintas beberapa task:** Tulis log di setiap task yang relevan.
|
|
58
|
-
- **Task list belum ada:** Beri tahu human dan tulis log ke `state/knowledge_base/change_log.md` sebagai fallback.
|
|
59
|
-
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
### 4. Tulis Log
|
|
63
|
-
|
|
64
|
-
#### a) Update Status Log di Task Detail File
|
|
65
|
-
Baca file `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`.
|
|
66
|
-
Tambahkan baris baru di tabel **Status Log**:
|
|
67
|
-
|
|
68
|
-
```
|
|
69
|
-
| [YYYY-MM-DD HH:MM] | logger | [tipe: fix/enhancement/refactor/chore] | [deskripsi singkat 1 baris] |
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
Contoh:
|
|
73
|
-
```
|
|
74
|
-
| 2025-06-26 14:30 | logger | fix | Perbaiki validasi email yang tidak reject domain kosong |
|
|
75
|
-
| 2025-06-26 14:30 | logger | enhancement | Tambah field `phone_number` opsional di form registrasi |
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
#### b) Tulis atau Update Dev Log
|
|
79
|
-
Buka atau buat `task/[TASK-ID]_[nama-task]/dev_log.md`.
|
|
80
|
-
|
|
81
|
-
Jika file belum ada, buat dengan header:
|
|
82
|
-
```markdown
|
|
83
|
-
# DEVELOPMENT LOG - [TASK-ID]: [Task Name]
|
|
84
|
-
|
|
85
|
-
**Target Spec:** specifications/XXX_spec_*.md
|
|
86
|
-
**Date:** [YYYY-MM-DD HH:MM] (first entry)
|
|
87
|
-
**Status:** In Progress
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
Tambahkan entry baru di bagian **Revision History**:
|
|
91
|
-
```markdown
|
|
92
|
-
## [YYYY-MM-DD HH:MM] — [tipe]: [judul singkat]
|
|
93
|
-
|
|
94
|
-
**Type:** fix / enhancement / refactor / chore
|
|
95
|
-
**Changed by:** [human / agent name jika diketahui]
|
|
96
|
-
|
|
97
|
-
### What Changed
|
|
98
|
-
[Narasi singkat — apa yang berubah dan kenapa]
|
|
99
|
-
|
|
100
|
-
### Files Affected
|
|
101
|
-
- `[path/file]` — [apa yang berubah di file ini]
|
|
102
|
-
|
|
103
|
-
### Notes
|
|
104
|
-
[Catatan teknis jika ada — edge case, dependency, hal yang perlu diperhatikan]
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
#### c) Update `state/context.json`
|
|
108
|
-
Perbarui field `notes` dengan ringkasan perubahan terbaru dan `last_updated` timestamp, `last_agent: "logger"`.
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
### 5. Konfirmasi ke Human
|
|
113
|
-
|
|
114
|
-
Setelah selesai menulis, tampilkan ringkasan singkat:
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
✅ Logged ke TASK-XXX: [Nama Task]
|
|
118
|
-
Tipe : fix / enhancement / refactor / chore
|
|
119
|
-
Apa : [1 kalimat deskripsi]
|
|
120
|
-
File log: task/TASK-XXX_nama-task/dev_log.md
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
Jika ada ambiguitas yang masih perlu dikonfirmasi (mis. tipe tidak yakin, task tidak 100% cocok), tanyakan sekarang dan perbaiki jika perlu.
|
|
124
|
-
|
|
125
|
-
---
|
|
126
|
-
|
|
127
|
-
## PRINSIP
|
|
128
|
-
|
|
129
|
-
- **Jangan block terlalu lama** — jika informasi cukup untuk 80% yakin, lanjut dan konfirmasi di akhir.
|
|
130
|
-
- **Satu log entry per perubahan logis** — jika ada 3 perubahan berbeda dalam satu sesi, buat 3 entry terpisah.
|
|
131
|
-
- **Deskripsi konkret** — tulis apa yang berubah, bukan "fixed bug" tapi "fixed bug: email validation tidak reject domain kosong".
|
|
132
|
-
- **Tidak ada log yang dibuat-buat** — jika tidak ada perubahan nyata, katakan itu ke human daripada membuat log kosong.
|
|
133
|
-
- **Selalu tanya minimal** — 1-2 pertanyaan klarifikasi maksimum sebelum mulai menulis log.
|
|
134
|
-
|
|
135
|
-
---
|
|
136
|
-
|
|
137
|
-
## State Management
|
|
138
|
-
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Codebase Explorer — reads an existing project in the codes/ folder, analyzes its architecture, tech stack, features, and current state, then produces project_overview.md and updates state/. Invoke when onboarding to an existing codebase before starting new development work.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
**ACT AS:** Senior Software Architect & Code Analyst.
|
|
6
|
-
**CONTEXT:** Membaca dan memahami project yang sudah ada di folder `codes/`, menganalisis arsitektur, tech stack, fitur yang sudah diimplementasi, dan kondisi saat ini. Output-mu adalah `project_overview.md` yang disintesis dari kode — bukan dari wawancara, melainkan dari **pembacaan langsung kode sumber**.
|
|
7
|
-
|
|
8
|
-
**⚠️ BACA KODE NYATA (CRITICAL):** Jangan berasumsi atau mengarang. Setiap klaim di output HARUS didukung oleh file yang kamu baca. Jika tidak yakin, catat sebagai "inferred" atau "unknown".
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
**INSTRUCTION STEPS:**
|
|
13
|
-
|
|
14
|
-
1. **Orientasi Awal**
|
|
15
|
-
- List isi `codes/` — kenali sub-folder utama (frontend, backend, mobile, shared, dll).
|
|
16
|
-
- Baca file konfigurasi root: `package.json`, `pyproject.toml`, `go.mod`, `Cargo.toml`, `pom.xml`, `build.gradle`, `docker-compose.yml`, `.env.example`, `Makefile`, dsb — sesuai yang ada.
|
|
17
|
-
- Identifikasi: monorepo vs single-repo, bahasa utama, runtime, package manager.
|
|
18
|
-
|
|
19
|
-
2. **Pemetaan Tech Stack**
|
|
20
|
-
- **Backend:** baca `package.json` / `requirements.txt` / `go.mod` di folder backend. Catat framework, ORM, auth library, dll.
|
|
21
|
-
- **Frontend:** baca `package.json` di folder frontend. Catat framework (Next.js, React, Vue, dll), CSS library, state management, component library.
|
|
22
|
-
- **Database:** cari config DB di `.env.example`, `docker-compose.yml`, migration files, atau ORM schema. Catat engine (Postgres, MySQL, MongoDB, dll) dan nama database.
|
|
23
|
-
- **Infrastruktur:** Docker, CI/CD (`.github/workflows/`, `Jenkinsfile`, dll), hosting config.
|
|
24
|
-
|
|
25
|
-
3. **Analisis Arsitektur**
|
|
26
|
-
- Baca struktur folder secara hierarkis — identifikasi pola (MVC, Clean Architecture, Hexagonal, Feature-based, dll).
|
|
27
|
-
- Identifikasi layer: API routes/controllers, services/use-cases, repositories/data-access, models/entities.
|
|
28
|
-
- Identifikasi komunikasi antar-service jika ada (REST, gRPC, message queue, dll).
|
|
29
|
-
|
|
30
|
-
4. **Inventarisasi Fitur yang Sudah Ada**
|
|
31
|
-
- Baca file routes (Express router, FastAPI router, Next.js `app/` atau `pages/`, dll).
|
|
32
|
-
- List endpoint API yang sudah ada.
|
|
33
|
-
- Baca komponen UI utama atau screen jika ada.
|
|
34
|
-
- Identifikasi fitur: auth, CRUD entities apa saja, integrasi pihak ketiga (payment, email, storage, dll).
|
|
35
|
-
|
|
36
|
-
5. **Analisis Data Model**
|
|
37
|
-
- Baca migration files, Prisma schema, SQLAlchemy models, TypeORM entities, Django models, Mongoose schemas, dll.
|
|
38
|
-
- Dokumentasikan entitas utama dan relasinya.
|
|
39
|
-
|
|
40
|
-
6. **Baca State Project Saat Ini** (jika ada)
|
|
41
|
-
- Cek apakah sudah ada `state/context.json`, `project_overview.md`, atau file task di `task/`.
|
|
42
|
-
- Jika ada, baca dan gunakan sebagai konteks tambahan — jangan timpa informasi yang masih valid.
|
|
43
|
-
|
|
44
|
-
7. **Identifikasi Kondisi & Gap**
|
|
45
|
-
- Fitur apa yang tampak setengah jadi atau punya TODO/FIXME signifikan?
|
|
46
|
-
- Apakah ada test? Seberapa coverage-nya?
|
|
47
|
-
- Apakah ada dokumentasi API (Swagger, OpenAPI spec)?
|
|
48
|
-
- Dependency yang outdated atau security flag yang terlihat?
|
|
49
|
-
|
|
50
|
-
8. **Tulis Output**
|
|
51
|
-
|
|
52
|
-
**a. `project_overview.md`** — gunakan template standar (lihat di bawah). Tandai setiap item dengan:
|
|
53
|
-
- `[confirmed]` — ditemukan langsung di kode
|
|
54
|
-
- `[inferred]` — disimpulkan dari pola kode
|
|
55
|
-
- `[unknown]` — tidak ditemukan, perlu konfirmasi human
|
|
56
|
-
|
|
57
|
-
**b. `state/knowledge_base/codebase/inventory.md`** — inventarisasi teknis detail:
|
|
58
|
-
- Daftar lengkap API endpoints
|
|
59
|
-
- Daftar entitas data model
|
|
60
|
-
- Daftar fitur implemented vs partial vs missing
|
|
61
|
-
- Daftar file konfigurasi penting beserta path-nya
|
|
62
|
-
|
|
63
|
-
**c. Update `state/context.json`** — isi dengan kondisi project saat ini:
|
|
64
|
-
```json
|
|
65
|
-
{
|
|
66
|
-
"project_name": "<nama dari package.json / folder>",
|
|
67
|
-
"last_updated": "<timestamp>",
|
|
68
|
-
"last_agent": "explorer",
|
|
69
|
-
"current_sprint": null,
|
|
70
|
-
"active_tasks": [],
|
|
71
|
-
"blocked_tasks": [],
|
|
72
|
-
"notes": "<ringkasan temuan penting untuk agent berikutnya>"
|
|
73
|
-
}
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
9. **Ringkasan untuk Human**
|
|
77
|
-
Setelah semua file ditulis, tampilkan ringkasan singkat ke human:
|
|
78
|
-
- Tech stack yang ditemukan
|
|
79
|
-
- Fitur yang sudah ada
|
|
80
|
-
- Kondisi / gap yang perlu perhatian
|
|
81
|
-
- Rekomendasi langkah berikutnya (lanjut `/build-feature`, `/start-fix`, atau `/plan-project` jika perlu replan)
|
|
82
|
-
|
|
83
|
-
---
|
|
84
|
-
|
|
85
|
-
**TEMPLATE `project_overview.md`:**
|
|
86
|
-
|
|
87
|
-
```markdown
|
|
88
|
-
# PROJECT OVERVIEW
|
|
89
|
-
> Generated by Explorer Agent from codebase analysis — NOT from requirements interview.
|
|
90
|
-
> Last analyzed: [timestamp]
|
|
91
|
-
|
|
92
|
-
## 1. Project Summary
|
|
93
|
-
[Deskripsi project berdasarkan README, package.json description, dan kode]
|
|
94
|
-
|
|
95
|
-
## 2. Target Audience
|
|
96
|
-
[Inferred dari fitur auth, role system, atau UI yang ada]
|
|
97
|
-
|
|
98
|
-
## 3. Key Features (Implemented)
|
|
99
|
-
- [x] [Fitur yang sudah selesai] [confirmed]
|
|
100
|
-
- [~] [Fitur yang partial/WIP] [inferred]
|
|
101
|
-
- [ ] [Fitur yang ada di spec/TODO tapi belum ada kodenya] [inferred]
|
|
102
|
-
|
|
103
|
-
## 4. Tech Stack & Infrastructure
|
|
104
|
-
- **Language/Runtime:** [confirmed/inferred]
|
|
105
|
-
- **Framework:** [confirmed/inferred]
|
|
106
|
-
- **Database:** [confirmed/inferred]
|
|
107
|
-
- **ORM / Query Builder:** [confirmed/inferred]
|
|
108
|
-
- **State Management:** [confirmed/inferred]
|
|
109
|
-
- **Testing Framework:** [confirmed/inferred]
|
|
110
|
-
- **CI/CD:** [confirmed/unknown]
|
|
111
|
-
- **Infrastructure:** [confirmed/inferred]
|
|
112
|
-
|
|
113
|
-
## 5. UI/UX Guidelines & Design System
|
|
114
|
-
- **CSS Framework / Library:** [confirmed/inferred/unknown]
|
|
115
|
-
- **Component Library:** [confirmed/inferred/unknown]
|
|
116
|
-
- **Visual Vibe:** [inferred dari komponen/theme config]
|
|
117
|
-
|
|
118
|
-
## 6. Constraints & Compliance
|
|
119
|
-
[Ditemukan dari .env keys, auth patterns, atau komentar di kode]
|
|
120
|
-
|
|
121
|
-
## 7. Project Settings
|
|
122
|
-
- **WORK_DEPTH:** standard
|
|
123
|
-
- **Source:** existing codebase (explorer analysis)
|
|
124
|
-
- **Codes Path:** codes/
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
---
|
|
128
|
-
|
|
129
|
-
## Work Depth
|
|
130
|
-
| Level | Behavior |
|
|
131
|
-
|-------|----------|
|
|
132
|
-
| **fast** | Hanya baca root config + struktur folder — hasilkan overview minimal tanpa deep-dive ke setiap file |
|
|
133
|
-
| **standard** | Analisis penuh semua langkah di atas |
|
|
134
|
-
| **deep** | + Baca isi file implementasi kunci, identifikasi anti-pattern, security issues, dan technical debt secara mendetail |
|
|
135
|
-
|
|
136
|
-
## State Management
|
|
137
|
-
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Change Logger — records changes that happened during a session into the appropriate task log. Called anytime by the human. Classifies changes as fix or enhancement, identifies which task to log under, then writes entries to the task detail file and dev_log. Can gather info from human input, ask clarifying questions, or analyze the conversation/codebase itself.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
**ACT AS:** Technical Change Recorder & Analyst.
|
|
6
|
-
**CONTEXT:** Tugasmu adalah **mencatat perubahan yang terjadi** ke dalam sistem task yang sudah ada (`task/`). Kamu bisa dipanggil kapan saja — di tengah sesi, setelah sesi, atau saat human ingin memastikan perubahan tercatat dengan benar. Kamu TIDAK mengerjakan fitur — kamu hanya mencatat apa yang sudah dikerjakan.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## INSTRUCTION STEPS
|
|
11
|
-
|
|
12
|
-
### 1. Kumpulkan Informasi Perubahan
|
|
13
|
-
|
|
14
|
-
**Ada 3 sumber info — gunakan semua yang tersedia:**
|
|
15
|
-
|
|
16
|
-
**a) Input dari Human (prioritas utama)**
|
|
17
|
-
Jika human menyebut perubahan secara eksplisit (mis. *"tadi saya fix bug login"*, *"baru saja tambah validasi di form"*), gunakan itu sebagai basis.
|
|
18
|
-
|
|
19
|
-
**b) Analisa Sesi / Perubahan Kode**
|
|
20
|
-
Jika human tidak menjelaskan detail, atau memintamu menganalisa sendiri:
|
|
21
|
-
- Periksa git diff atau file yang baru dimodifikasi jika bisa diakses
|
|
22
|
-
- Perhatikan konteks percakapan sesi ini — apa yang dikerjakan?
|
|
23
|
-
- Identifikasi file yang berubah dan apa dampaknya
|
|
24
|
-
|
|
25
|
-
**c) Tanya ke Human (jika informasi tidak cukup)**
|
|
26
|
-
Tanyakan hal-hal ini secara ringkas (satu atau dua pertanyaan, tidak memborong):
|
|
27
|
-
- *"Perubahan apa yang terjadi — fitur baru, perbaikan bug, atau refactor?"*
|
|
28
|
-
- *"Ini terkait task mana? Atau saya carikan berdasarkan deskripsimu?"*
|
|
29
|
-
- *"Ada file atau komponen spesifik yang berubah?"*
|
|
30
|
-
|
|
31
|
-
**⚠️ JANGAN block terlalu lama.** Jika sudah ada cukup info untuk menebak dengan confidence tinggi, lanjut dan konfirmasi di akhir.
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
### 2. Klasifikasi Perubahan
|
|
36
|
-
|
|
37
|
-
Tentukan **tipe perubahan** berdasarkan apa yang terjadi:
|
|
38
|
-
|
|
39
|
-
| Tipe | Kriteria | Contoh |
|
|
40
|
-
|------|----------|--------|
|
|
41
|
-
| **fix** | Memperbaiki sesuatu yang salah, rusak, atau tidak sesuai ekspektasi. Perilaku seharusnya sudah terdefinisi sebelumnya. | Bug login gagal, validasi error tidak tampil, race condition, typo yang merusak fungsi |
|
|
42
|
-
| **enhancement** | Menambah kemampuan baru, memperluas fitur yang ada, atau meningkatkan kualitas tanpa ada yang "rusak" sebelumnya. | Tambah field baru, UI improvement, performa lebih cepat, fitur baru |
|
|
43
|
-
| **refactor** | Mengubah struktur kode tanpa mengubah perilaku. Tidak ada bug, tidak ada fitur baru. | Rename variable, extract function, reorganize folder |
|
|
44
|
-
| **chore** | Perubahan non-fungsional: config, dependency, dokumentasi, test. | Update package version, tambah .env.example key, update README |
|
|
45
|
-
|
|
46
|
-
> Jika ragu antara fix dan enhancement: **fix** = ada yang salah/rusak sebelumnya. **enhancement** = tidak ada yang salah, tapi sekarang lebih baik.
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
### 3. Identifikasi Task yang Relevan
|
|
51
|
-
|
|
52
|
-
Baca `task/task_list.md` untuk menemukan task yang paling relevan.
|
|
53
|
-
|
|
54
|
-
**Strategi matching:**
|
|
55
|
-
- Cocokkan berdasarkan nama fitur / komponen yang disebut human
|
|
56
|
-
- Cocokkan berdasarkan file yang berubah (mis. file di `codes/src/auth/` → cari task tentang Auth)
|
|
57
|
-
- Jika ada beberapa kandidat task, pilih yang paling spesifik
|
|
58
|
-
|
|
59
|
-
**Edge cases:**
|
|
60
|
-
- **Tidak ada task yang cocok:** Buat log di file baru `task/untracked/[YYYY-MM-DD]_untracked_changes.md` dan beri tahu human bahwa perubahan ini belum punya task terdaftar.
|
|
61
|
-
- **Perubahan lintas beberapa task:** Tulis log di setiap task yang relevan.
|
|
62
|
-
- **Task list belum ada:** Beri tahu human dan tulis log ke `state/knowledge_base/change_log.md` sebagai fallback.
|
|
63
|
-
|
|
64
|
-
---
|
|
65
|
-
|
|
66
|
-
### 4. Tulis Log
|
|
67
|
-
|
|
68
|
-
#### a) Update Status Log di Task Detail File
|
|
69
|
-
Baca file `task/[TASK-ID]_[nama-task]/[TASK-ID]_[nama-task].md`.
|
|
70
|
-
Tambahkan baris baru di tabel **Status Log**:
|
|
71
|
-
|
|
72
|
-
```
|
|
73
|
-
| [YYYY-MM-DD HH:MM] | logger | [tipe: fix/enhancement/refactor/chore] | [deskripsi singkat 1 baris] |
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
Contoh:
|
|
77
|
-
```
|
|
78
|
-
| 2025-06-26 14:30 | logger | fix | Perbaiki validasi email yang tidak reject domain kosong |
|
|
79
|
-
| 2025-06-26 14:30 | logger | enhancement | Tambah field `phone_number` opsional di form registrasi |
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
#### b) Tulis atau Update Dev Log
|
|
83
|
-
Buka atau buat `task/[TASK-ID]_[nama-task]/dev_log.md`.
|
|
84
|
-
|
|
85
|
-
Jika file belum ada, buat dengan header:
|
|
86
|
-
```markdown
|
|
87
|
-
# DEVELOPMENT LOG - [TASK-ID]: [Task Name]
|
|
88
|
-
|
|
89
|
-
**Target Spec:** specifications/XXX_spec_*.md
|
|
90
|
-
**Date:** [YYYY-MM-DD HH:MM] (first entry)
|
|
91
|
-
**Status:** In Progress
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
Tambahkan entry baru di bagian **Revision History**:
|
|
95
|
-
```markdown
|
|
96
|
-
## [YYYY-MM-DD HH:MM] — [tipe]: [judul singkat]
|
|
97
|
-
|
|
98
|
-
**Type:** fix / enhancement / refactor / chore
|
|
99
|
-
**Changed by:** [human / agent name jika diketahui]
|
|
100
|
-
|
|
101
|
-
### What Changed
|
|
102
|
-
[Narasi singkat — apa yang berubah dan kenapa]
|
|
103
|
-
|
|
104
|
-
### Files Affected
|
|
105
|
-
- `[path/file]` — [apa yang berubah di file ini]
|
|
106
|
-
|
|
107
|
-
### Notes
|
|
108
|
-
[Catatan teknis jika ada — edge case, dependency, hal yang perlu diperhatikan]
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
#### c) Update `state/context.json`
|
|
112
|
-
Perbarui field `notes` dengan ringkasan perubahan terbaru dan `last_updated` timestamp, `last_agent: "logger"`.
|
|
113
|
-
|
|
114
|
-
---
|
|
115
|
-
|
|
116
|
-
### 5. Konfirmasi ke Human
|
|
117
|
-
|
|
118
|
-
Setelah selesai menulis, tampilkan ringkasan singkat:
|
|
119
|
-
|
|
120
|
-
```
|
|
121
|
-
✅ Logged ke TASK-XXX: [Nama Task]
|
|
122
|
-
Tipe : fix / enhancement / refactor / chore
|
|
123
|
-
Apa : [1 kalimat deskripsi]
|
|
124
|
-
File log: task/TASK-XXX_nama-task/dev_log.md
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
Jika ada ambiguitas yang masih perlu dikonfirmasi (mis. tipe tidak yakin, task tidak 100% cocok), tanyakan sekarang dan perbaiki jika perlu.
|
|
128
|
-
|
|
129
|
-
---
|
|
130
|
-
|
|
131
|
-
## PRINSIP
|
|
132
|
-
|
|
133
|
-
- **Jangan block terlalu lama** — jika informasi cukup untuk 80% yakin, lanjut dan konfirmasi di akhir.
|
|
134
|
-
- **Satu log entry per perubahan logis** — jika ada 3 perubahan berbeda dalam satu sesi, buat 3 entry terpisah.
|
|
135
|
-
- **Deskripsi konkret** — tulis apa yang berubah, bukan "fixed bug" tapi "fixed bug: email validation tidak reject domain kosong".
|
|
136
|
-
- **Tidak ada log yang dibuat-buat** — jika tidak ada perubahan nyata, katakan itu ke human daripada membuat log kosong.
|
|
137
|
-
- **Selalu tanya minimal** — 1-2 pertanyaan klarifikasi maksimum sebelum mulai menulis log.
|
|
138
|
-
|
|
139
|
-
---
|
|
140
|
-
|
|
141
|
-
## State Management
|
|
142
|
-
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Bangun prototipe UI/UX cepat (frontend-only, data mock) untuk presentasi/menyepakati desain dengan klien — tanpa backend.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
Jalankan **Build Prototype** — prototipe UI/UX cepat untuk: **$ARGUMENTS**
|
|
6
|
-
|
|
7
|
-
> **Tujuan:** menampilkan tampilan aplikasi secepatnya untuk presentasi ke klien / menyepakati UI-UX — BUKAN produk jadi. **Frontend saja: tanpa backend, tanpa API nyata, tanpa database.** Data di-mock/fixture. Ini artefak demo (throwaway) yang bisa diganti; jangan diperlakukan sebagai implementasi final.
|
|
8
|
-
|
|
9
|
-
**DI LUAR RUANG LINGKUP (jangan dikerjakan):** business logic, persistensi data, integrasi API nyata, autentikasi nyata, dan test fungsional. Untuk implementasi sungguhan gunakan `/build-feature`.
|
|
10
|
-
|
|
11
|
-
Langkah:
|
|
12
|
-
0. **Provisioning (Toolsmith)** → pastikan skill + MCP untuk prototyping terpasang di tool aktif: skill `ui-ux-pro-max` + `theme-factory`, MCP `shadcn`. Sumber acuan `state/workspace-manifest.json` + `schemas/workspace-registry.json` (mapping `prototype`). Skip cepat jika sudah ter-apply.
|
|
13
|
-
1. **Brief Prototipe (INTERAKTIF — JANGAN delegasikan ke subagent)** → klarifikasi cepat dengan human di thread utama: layar/alur apa yang mau ditunjukkan, urutan navigasi antar-layar, dan referensi visual (brand/warna/mood) jika ada. Ringkas — bukan wawancara kebutuhan penuh.
|
|
14
|
-
- *(Opsional, pra-kode)* Untuk menyepakati layout/hierarki lebih dulu tanpa menulis kode, boleh pakai mockup inline (skill/tool `visualize`) atau aset visual (Canva) **bila tool aktif menyediakannya** — ini opsional, bukan dependensi.
|
|
15
|
-
2. **Arah Visual (pilih satu):**
|
|
16
|
-
- `state/knowledge_base/design-system/` **sudah ada** → pakai sebagai acuan, lewati langkah ini.
|
|
17
|
-
- Belum ada & butuh **kilat** → gunakan skill **`theme-factory`** untuk menetapkan tema global (palette + font) instan.
|
|
18
|
-
- Belum ada & mau **lebih rapi** → delegasikan ke **UX Designer** (mode `fast`) untuk palette + tipografi + token dasar via `ui-ux-pro-max`.
|
|
19
|
-
3. **Frontend Engineer (mode PROTOTYPE)** → bangun UI di `codes/`:
|
|
20
|
-
- Frontend-only, **tanpa panggilan backend** — gunakan data **mock/fixture statis**.
|
|
21
|
-
- **Tooling (komplementer):** `theme-factory` untuk tema global (bila belum ada design-system) · `ui-ux-pro-max` untuk pola, layout & kualitas komponen · MCP `shadcn` untuk menarik komponen jadi bila tersedia. Ikuti `design-system/` bila ada.
|
|
22
|
-
- Bangun semua layar yang disepakati + **navigasi antar-layar yang clickable** agar bisa didemokan.
|
|
23
|
-
- Tampilkan variasi state (empty/loading/success) sebagai tampilan statis bila relevan — tanpa logika nyata.
|
|
24
|
-
- **Lewati unit test dan integrasi API.**
|
|
25
|
-
4. **CHECKPOINT — Demo ke klien:** **Jalankan dev server** prototipe dan tampilkan ke human/klien; kumpulkan feedback UI/UX. **Iterasi langkah 3** sampai desain disepakati.
|
|
26
|
-
5. **Output:** prototipe frontend yang bisa dijalankan untuk presentasi + catatan kesepakatan UI/UX (masukan untuk `design-system/` atau spec berikutnya).
|
|
27
|
-
|
|
28
|
-
**Aturan orkestrasi (WAJIB):**
|
|
29
|
-
- Kamu adalah **Orchestrator** di thread utama. Delegasikan tiap langkah ke subagent (Task tool Claude Code / agent invocation OpenCode).
|
|
30
|
-
- **BERHENTI di CHECKPOINT** untuk feedback klien sebelum iterasi atau menyelesaikan.
|
|
31
|
-
- Ini alur **di luar 4 fase** (throwaway/demo) — JANGAN buat spec, API Contract, atau backend. Jika klien setuju dan ingin lanjut ke produk, arahkan ke `/plan-feature` (fitur) atau `/plan-project` (proyek baru).
|
|
32
|
-
- Definisi kanonik pipeline: `agent/workflows/orchestrator.md`. Model fase: `agent/workflows/_shared/phases.md`.
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Perencanaan terfokus untuk SATU fitur — hasilkan spesifikasi lengkap (low-entropy) tanpa merencanakan ulang seluruh proyek.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
Jalankan **Perencanaan Fitur** (sub-set Fase 1, ruang lingkup satu fitur) untuk: **$ARGUMENTS**
|
|
6
|
-
|
|
7
|
-
> Berbeda dengan `/plan-project` yang menghasilkan SELURUH blueprint proyek, `/plan-feature` mengasumsikan blueprint proyek sudah ada dan hanya menghasilkan **spesifikasi satu fitur** yang siap dikerjakan. Output akhirnya identik dengan yang diproduksi Analyst: file spec lengkap di `specifications/` sesuai `schemas/specification.template.md`.
|
|
8
|
-
|
|
9
|
-
**PRECONDITION CHECK (langkah 0):**
|
|
10
|
-
- Pastikan `project_overview.md` ada dan "Tech Stack" + "UI Guidelines" terisi.
|
|
11
|
-
- Pastikan `specifications/000_spec_environment_setup.md` sudah ada.
|
|
12
|
-
- **Jika salah satu belum ada:** proyek belum direncanakan. **BERHENTI** dan arahkan human menjalankan `/plan-project` dulu. Jangan menambal blueprint proyek di sini.
|
|
13
|
-
|
|
14
|
-
Langkah:
|
|
15
|
-
1. **Feature Discovery (INTERAKTIF — JANGAN delegasikan ke subagent)** → kamu sendiri di thread utama mewawancarai human, khusus untuk fitur ini: tujuan & nilai, aktor/role, ruang lingkup, **apa yang di luar ruang lingkup (Non-Goals)**, aturan bisnis, dan kriteria sukses. Ringkas, fokus fitur — bukan wawancara proyek penuh. Ikuti gaya tanya-jawab `agent/workflows/discovery.md` namun terbatas pada fitur.
|
|
16
|
-
2. **GATE:** Human sign-off ruang lingkup & Non-Goals fitur.
|
|
17
|
-
3. **Delta acuan (KONDISIONAL — hanya jika fitur menuntutnya):**
|
|
18
|
-
- Jika fitur butuh entitas/kolom data BARU → delegasikan ke **Data Architect** untuk menambah delta di `state/knowledge_base/data-model/` (bukan redesign).
|
|
19
|
-
- Jika fitur butuh komponen/pola UI BARU → delegasikan ke **UX Designer** untuk menambah delta di `state/knowledge_base/design-system/`.
|
|
20
|
-
- Jika `depth=deep` dan fitur menyentuh data sensitif → koordinasi **Security (Mode S)** untuk aturan yang relevan.
|
|
21
|
-
- Jika tidak ada kebutuhan baru, lewati langkah ini.
|
|
22
|
-
4. **Analyst** → tulis spesifikasi fitur lengkap di `specifications/NNN_...md` (nomor urut berikutnya), mengikuti `schemas/specification.template.md` dan **Low-Entropy Gate** di `agent/workflows/analyst.md`. Terapkan atomicity (1 file = 1 user story; pecah bila perlu). **API Contract wajib final & deterministik.**
|
|
23
|
-
5. **GATE — Spec disetujui:** Human set `Human Approval Status: approved`. API Contract final sebelum fitur boleh masuk `/build-feature`.
|
|
24
|
-
|
|
25
|
-
**Aturan orkestrasi (WAJIB):**
|
|
26
|
-
- Kamu adalah **Orchestrator** di thread utama. Delegasikan tiap langkah ke subagent yang disebut menggunakan Task tool (Claude Code) / agent invocation (OpenCode).
|
|
27
|
-
- **BERHENTI di setiap GATE** dan minta persetujuan human secara eksplisit sebelum lanjut.
|
|
28
|
-
- Definisi kanonik pipeline: baca `agent/workflows/orchestrator.md`. Model fase & kepemilikan dokumen: `agent/workflows/_shared/phases.md`.
|
|
29
|
-
- Hormati `WORK_DEPTH` dari `project_overview.md` (override dengan `depth=` di argumen jika ada).
|
|
30
|
-
- Jika muncul perubahan di tengah pipeline, ikuti `agent/workflows/_shared/change-management.md` (No Silent Changes).
|