# Skill Layer — AI Product

File ini berisi konteks dan asumsi default untuk project bertipe **AI product** — aplikasi di mana AI (LLM, ML model, atau AI pipeline) adalah fitur inti, bukan hanya tooling development.

---

## Kapan Pakai Skill Ini

Gunakan jika project Anda adalah:
- Chatbot atau AI assistant yang menghadap user
- Tool yang menggunakan LLM untuk generate konten, analisis, atau keputusan
- Platform yang mengintegrasikan AI sebagai fitur utama (bukan background dev tool)
- Product yang kualitasnya bergantung pada kualitas output AI

---

## Asumsi Default yang Langsung Diterapkan

### AI Provider
- Primary: OpenAI GPT-4o atau Anthropic Claude (pilih sesuai brief atau rekomendasikan)
- Fallback provider wajib (jangan single point of failure di satu AI provider)
- SDK resmi provider, jangan raw HTTP kecuali ada alasan kuat

### Prompt Management
- Prompt disimpan di file atau database, bukan di-hardcode
- Prompt versioning — setiap perubahan prompt punya versi
- Prompt testing environment terpisah dari production
- A/B testing kemampuan untuk prompt iteration

### Response Handling
- Streaming response untuk chat/generation yang panjang (better UX)
- Output validation — jangan langsung trust output AI tanpa validation
- Fallback jika AI gagal atau timeout
- Retry logic dengan backoff untuk API error

### Cost Management
- Token usage tracking per user/session/feature
- Cost alert threshold
- Model selection berdasarkan complexity task (jangan pakai GPT-4o untuk semua task)
- Caching response untuk prompt yang sama (jika deterministic)

### Safety & Guardrails AI
- Input moderation untuk konten user sebelum dikirim ke LLM
- Output moderation untuk response AI sebelum ditampilkan ke user
- PII detection — jangan kirim data sensitif ke external AI provider tanpa review
- Rate limiting per user untuk generative feature

### User Experience
- Loading state yang informatif (bukan spinner biasa — user perlu tahu AI sedang berpikir)
- Streaming output untuk response panjang
- Ability to stop generation
- Feedback mechanism (thumbs up/down) untuk improve over time
- Regenerate option untuk output yang kurang memuaskan

### Data & Privacy
- Clarify dengan provider: apakah data training dipakai oleh provider?
- Data retention policy untuk conversation history
- User consent untuk penggunaan data dengan AI
- Opt-out option jika required

---

## Pertanyaan Tambahan untuk Brief AI Product

- AI provider mana yang sudah dipertimbangkan? (OpenAI, Anthropic, Google, self-hosted)
- Apakah data yang dikirim ke AI mengandung PII atau data sensitif?
- Apakah butuh streaming response atau batch saja cukup?
- Apakah ada compliance requirement? (GDPR, HIPAA, dsb)
- Berapa estimasi monthly token usage? (untuk cost planning)
- Apakah perlu human-in-the-loop untuk aksi penting?

---

## Guardrails Tambahan untuk AI Product

- Jangan pernah expose API key AI provider ke frontend/client
- Jangan stream output langsung ke user tanpa moderation check untuk konten sensitif
- Selalu ada fallback jika AI tidak tersedia — produk tidak boleh down total karena AI down
- Jangan build dependency yang tidak bisa diganti provider — abstraksi AI layer dari awal
- Output AI yang akan dipakai untuk keputusan penting (medis, hukum, finansial) harus ada human review
- Cost tracking bukan opsional — billing shock adalah risiko nyata di AI product
