# 🚀 Ekosistem Antigravity — Full Architecture (11 Agents)

## Arsitektur Dua Lapis

```mermaid
flowchart TB
    subgraph ORCH["🔷 ORCHESTRATION LAYER"]
        direction LR
        MOD["🔒 MOD\nModerator"]
        PLN["📋 PLN\nPlanner"]
        EXE["⚡ EXE\nExecutor"]
        TEC["🔧 TEC\nTechnical"]
        MOD --> PLN --> EXE --> TEC
        TEC --> EXE
    end

    subgraph DOMAIN["🔶 DOMAIN SPECIALIST LAYER"]
        direction LR
        PO["📊 PO\nProduct Owner"]
        CTA["⚖️ CTA\nCompliance Tax"]
        ARC["🏗️ ARC\nLead Architect"]
        TRS["💰 TRS\nTreasury"]
        TAX["🧾 TAX\nTax Integration"]
        SWE["💻 SWE\nSoftware Engineer"]
        QA["🔍 QA\nQA Audit"]
    end

    USER["👤 User"] --> MOD
    EXE --> PO & CTA & ARC & TRS & TAX & SWE & QA
    PLN --> PO & CTA & ARC
    MOD --> USER
```

---

## Registry Lengkap — 11 Subagent Aktif

### 🔷 Orchestration Layer (Pipeline Utama)

| # | Kode | TypeName | Role | Tulis Kode? | Jalankan Shell? |
|:-:|:----:|----------|------|:-----------:|:---------------:|
| 1 | **MOD** | `moderator` | Pintu Gerbang & Router | ❌ | ❌ |
| 2 | **PLN** | `planner` | Perencana & Prompt Creator | ❌ | ❌ |
| 3 | **EXE** | `executor` | Eksekutor & Pelapor | ✅ | ✅ |
| 4 | **TEC** | `technical` | Analisis Kode & Bug | ✅ | ✅ |

### 🔶 Domain Specialist Layer (AGENTS.md §2.1–2.7)

| # | Kode | TypeName | Role | Tulis Kode? | Standar Utama |
|:-:|:----:|----------|------|:-----------:|---------------|
| 5 | **PO** | `product_owner` | Product Owner & Business Analyst | ❌ | ISO 9001 |
| 6 | **CTA** | `compliance_tax` | Compliance, IFRS/PSAK & Tax Auditor | ❌ | IFRS/PSAK, ISA |
| 7 | **ARC** | `lead_architect` | Software Architect & Security Officer | ❌ | ISO 27001, ISO 25010 |
| 8 | **TRS** | `treasury` | Treasury & Supplier Reconciliation | ❌ | PSAK 2, PSAK 71 |
| 9 | **TAX** | `tax_integration` | Tax Accountant & Coretax DJP | ❌ | UU HPP, PER-03/PJ |
| 10 | **SWE** | `software_engineer` | Enterprise Software Engineer CI3 | ✅ | OWASP, Clean Code |
| 11 | **QA** | `qa_audit` | QA Engineer & ISO Auditor | ✅ | ISO/IEC 25010 |

---

## Routing Map — Siapa Memanggil Siapa?

```mermaid
flowchart LR
    subgraph "Alur Standar"
        U["👤 User"] --> MOD
        MOD -->|"invoke_subagent"| PLN
        PLN -->|"invoke_subagent"| EXE
    end

    subgraph "Specialist Calls"
        EXE -->|"Bug/Refactor"| TEC
        EXE -->|"Write Code"| SWE
        EXE -->|"Run Tests"| QA
        PLN -->|"Business Spec"| PO
        PLN -->|"Audit Compliance"| CTA
        PLN -->|"Architecture"| ARC
        EXE -->|"Treasury"| TRS
        EXE -->|"Tax/Coretax"| TAX
    end
```

### Routing Rules (dari MOD)

| Jenis Permintaan | Pipeline |
|-------------------|----------|
| 🐛 Bug teknis / debugging | MOD → PLN → EXE → TEC → (CTA jika perlu) |
| 🔒 Audit keamanan | MOD → PLN → EXE → TEC → ARC |
| ⚖️ Kepatuhan akuntansi/pajak | MOD → PLN → CTA → EXE → TAX |
| 💰 Arus kas / rekonsiliasi | MOD → PLN → EXE → TRS |
| 🧾 Integrasi Coretax DJP | MOD → PLN → EXE → TAX → CTA |
| 📊 Fitur bisnis baru | MOD → PLN → PO → ARC → EXE → SWE → QA |
| 🏗️ Redesign arsitektur | MOD → PLN → ARC → EXE → SWE → QA |
| ✅ Code review & QA | MOD → PLN → EXE → QA → CTA |

---

## Cara Memanggil Agent

### Via Pipeline Otomatis (`/mod`)
```
Ketik /mod → jelaskan task → MOD routing otomatis
```

### Via invoke_subagent Langsung
```
invoke_subagent → TypeName: "product_owner"     → PO
invoke_subagent → TypeName: "compliance_tax"     → CTA
invoke_subagent → TypeName: "lead_architect"     → ARC
invoke_subagent → TypeName: "treasury"           → TRS
invoke_subagent → TypeName: "tax_integration"    → TAX
invoke_subagent → TypeName: "software_engineer"  → SWE
invoke_subagent → TypeName: "qa_audit"           → QA
```

### Contoh: Task Kompleks — Fitur Baru Akuntansi
```
1. MOD menerima request dari User
2. MOD → PLN: "Susun rencana fitur baru"
3. PLN → PO: "Buat PRD dan Acceptance Criteria"
4. PLN → ARC: "Rancang skema database"
5. PLN → CTA: "Validasi kepatuhan PSAK"
6. PLN → EXE: "Implementasikan berdasarkan rencana"
7. EXE → SWE: "Tulis kode CI3"
8. EXE → QA: "Uji dan audit kode"
9. QA verdict → EXE → PLN → MOD → User
```

---

## Catatan Penting

> [!IMPORTANT]
> **11 subagent aktif dalam sesi ini.** Semua siap dipanggil kapan saja tanpa perlu didefinisikan ulang.

> [!TIP]
> **Aturan Emas**: Hanya **EXE**, **TEC**, **SWE**, dan **QA** yang boleh menulis kode / menjalankan perintah shell. Agent lain (MOD, PLN, PO, CTA, ARC, TRS, TAX) hanya memberikan analisis, spesifikasi, atau audit.

> [!WARNING]
> **Agent SWE tetap tunduk pada Scope Lock AGENTS.md** — Agent 1-7 hanya boleh mengubah file di modul yang menjadi tanggung jawabnya. Pastikan instruksi ke SWE menyebutkan nomor Agent dan modul target.
