> ## ☕ AI Agent Coffee Shop Commerce Platform > Platform AI untuk otomatisasi order, customer service, loyalty customer, dan manajemen multi cabang coffee shop.
Customer-Facing Agent Architecture
## ☕ AI Agent Coffee Shop Commerce Platform Platform AI untuk otomatisasi order, customer service, loyalty customer, dan manajemen multi cabang coffee shop. Dibuat & Dikembangkan oleh: Kukuh TW 📧 Email:
kukuhtw@gmail.com📱 WhatsApp:https://wa.me/628129893706📷 Instagram:@kukuhtw🐦 X/Twitter:@kukuhtw👍 Facebook:https://www.facebook.com/kukuhtw💼 LinkedIn:https://linkedin.com/in/kukuhtw🌐 Demo:https://botlelang.com/toko_kopi© 2026 Kukuh TW. All rights reserved.
Dokumen ini merancang evolusi dari chatbot intent-based saat ini menjadi customer-facing hybrid agent yang lebih natural seperti agent modern, tetapi tetap aman untuk use case order dan checkout.
Tujuan
- Menjaga alur order, promo, dan checkout tetap deterministik.
- Menambah layer agentic untuk rekomendasi, penjelasan menu, pemahaman bahasa natural, dan advisory response.
- Menyediakan fondasi memory, planning, tool execution, dan policy guardrails.
- Menghindari migrasi besar yang merusak
ChatbotEngineyang sudah stabil.
Prinsip Utama
- Commerce core tetap deterministic
ChatbotEngine tetap menjadi sumber kebenaran untuk cart, promo, checkout, dan order lifecycle.
- Agent layer fokus ke reasoning
Agent tidak langsung menulis state sensitif. Agent hanya:
- memahami maksud customer yang lebih kompleks
- memilih tool yang relevan
- membangun jawaban natural
- melakukan handoff ke deterministic flow jika perlu
- Tool-gated mutation
Perubahan state hanya boleh lewat tool yang eksplisit dan bisa diaudit.
- Policy first
Sebelum tool mutating dijalankan, PolicyEngine memutuskan apakah aksi aman, perlu klarifikasi, atau harus di-handoff.
- Memory bounded
Untuk customer-facing bot, memory disimpan terbatas dan terstruktur:
- session memory
- customer memory
- conversation summary memory
Komponen Baru
1. ConversationModeRouter
File: app/Agent/Routing/ConversationModeRouter.php
Tugas:
- memisahkan request menjadi
transactional,advisory, atauhandoff - contoh
transactional: tambah item, ubah item, checkout - contoh
advisory: rekomendasi menu, budget-based suggestion, tanya promo
2. CustomerAgentKernel
File: app/Agent/CustomerAgentKernel.php
Tugas:
- entry point untuk advisory mode
- membaca memory customer
- membuat rencana langkah sederhana
- mengeksekusi tools melalui registry
- mengecek policy sebelum mutasi
- menyusun jawaban natural
3. ToolRegistry + ToolInterface
Files:
app/Agent/ToolRegistry.phpapp/Agent/ToolInterface.php
Tools awal yang disiapkan:
get_branch_menuget_cart_snapshotget_active_promosbegin_checkout
Evolusi berikutnya:
add_to_cartupdate_cart_itemremove_cart_itemapply_promoget_branch_infoget_order_history_summary
4. PolicyEngine
Files:
app/Agent/Policy/PolicyEngine.phpapp/Agent/Policy/PolicyDecision.php
Tugas:
- mencegah tool mutating dijalankan saat niat customer belum jelas
- menjaga checkout hanya terjadi saat intent memang checkout
- mewajibkan klarifikasi untuk kondisi ambigu
5. CustomerMemoryStore
Files:
app/Agent/Memory/MemoryStoreInterface.phpapp/Agent/Memory/CustomerMemoryStore.php
Tugas:
- menyimpan ringkasan interaksi penting
- menyimpan preferensi customer yang aman
- menjadi dasar personalization lintas sesi
Skema Database Awal
Migration file:
database/add_customer_agent_tables.sql
Tables:
agent_memoriesagent_tasksagent_task_steps
Tujuan tabel:
agent_memories: simpan memory customer/advisoryagent_tasks: log satu task agentagent_task_steps: log plan dan tool execution per task
Integrasi Bertahap dengan Engine Lama
Fase 1
ChatbotEnginetetap seperti sekarangCustomerAgentKernelbelum dipakai di production flow- tujuan fase ini: scaffolding + kontrak arsitektur
Fase 2
Tambahkan adapter di depan ChatbotEngine:
- detect intent seperti biasa
- build context
- route via
ConversationModeRouter - jika
transactional->ChatbotEngine - jika
advisory->CustomerAgentKernel
Fase 3
Tambahkan tool mutating yang aman:
begin_checkoutapply_promoadd_to_cart
Tetap dengan policy guard sebelum execute.
Fase 4
Tambahkan reflection ringan:
- ringkas percakapan sukses
- simpan preferensi customer
- simpan phrasing yang membantu rekomendasi
Perbedaan dengan Arsitektur Lama
Lama
- deteksi intent
- pilih 1 skill
- skill langsung reply
- context disimpan sebagai state machine
Baru
- deteksi intent
- route mode
- advisory mode masuk agent kernel
- agent kernel buat plan kecil
- tools execute
- policy check
- hasil dirangkai jadi reply
- memory diperbarui
Guardrails yang Disarankan
- Agent tidak boleh menghitung harga final sendiri.
- Agent tidak boleh mengarang promo atau stok.
- Agent tidak boleh memulai checkout jika customer masih ragu.
- Agent tidak boleh menulis ke cart tanpa tool mutating yang eksplisit.
- Saat confidence rendah, agent harus klarifikasi atau handoff.
Use Cases yang Cocok
- "Aku pengen yang manis tapi nggak terlalu creamy."
- "Budget aku 30 ribuan, enaknya apa?"
- "Yang mirip pesanan aku minggu lalu apa ya?"
- "Kalau aku suka latte, ada rekomendasi lain?"
- "Promo yang paling cocok buat cart aku sekarang apa?"
Use Cases yang Harus Tetap Deterministic
- tambah/hapus item final
- validasi promo
- hitung subtotal/diskon/pajak
- status payment
- pembuatan order
- update order status
Langkah Implementasi Berikutnya
- Tambahkan adapter
CustomerConversationServicedi atasChatbotEngine. - Daftarkan
CustomerAgentKernelke flow webhook/chat web. - Tambahkan tool mutating satu per satu.
- Tambahkan observability untuk
agent_tasksdanagent_task_steps. - Tambahkan halaman dashboard untuk melihat log advisory agent.