Framework ROLEAX — Rumusan Prompt Engineering

Rumusan ini disusun berdasarkan Anthropic Official Docs, GitHub Interactive Tutorial (9 chapter), dan real-world prompting course. Setiap elemen bersifat opsional — makin lengkap makin presisi outputnya.

R
Role
Beri Claude peran / identitas yang spesifik
O
Objective
Tugas utama secara jelas dan eksplisit
L
Limitations
Batasan, constraint, dan hal yang dihindari
E
Examples
Contoh input-output (few-shot prompting)
A
Audience & Format
Target pembaca & format output
X
Xtended Thinking
Instruksi berpikir bertahap (chain of thought)
Anatomi Prompt Ideal
[SYSTEM PROMPT — Identitas & konteks permanen] Role: Kamu adalah [JABATAN] berpengalaman di bidang [INDUSTRI]. Konteks: Kamu membantu [SIAPA] untuk [TUJUAN BISNIS]. Gaya: Gunakan nada [formal/kasual/teknis], bahasa [Indonesia/Inggris]. [USER PROMPT — Tugas spesifik] <task> [OBJECTIVE — Apa yang harus dikerjakan, spesifik & eksplisit] </task> <context> [Latar belakang, data, atau dokumen relevan] </context> <constraints> - [Batasan 1] - [Batasan 2, misal: max 200 kata, tanpa bullet point] </constraints> <examples> [Contoh 1–3 pasang input-output yang relevan] </examples> <output_format> Format: [JSON / Markdown / Prose / Tabel / Kode] Panjang: [Pendek/Sedang/Panjang atau estimasi kata] </output_format> <thinking> Sebelum menjawab, pikirkan langkah demi langkah: 1. Pahami tujuan utama 2. Identifikasi kendala 3. Susun pendekatan terbaik </thinking>

Tidak semua blok wajib diisi — sesuaikan dengan kompleksitas tugas

Do vs Don't
✓ Lakukan
"Tulis email penolakan lamaran yang sopan, profesional, menyebutkan nama kandidat, 100–150 kata, dalam bahasa Indonesia formal."
✗ Hindari
"Buatkan email HR."

Terlalu vague → Claude akan menebak-nebak dan hasilnya tidak presisi.
✓ Lakukan
"Jelaskan langkah-langkah deploy React app ke Vercel. Gunakan numbered list, sertakan perintah terminal lengkap."
✗ Hindari
"Jangan lupa jelaskan deploynya ya dan juga kalau bisa ada comandnya tapi ga usah panjang-panjang."
7 Prinsip Utama — Anthropic Official

1. Jelas & Eksplisit (Be Clear and Direct)

Anggap Claude sebagai karyawan baru yang cerdas namun tidak tahu konteks bisnis Anda. Semakin spesifik instruksi, semakin baik hasilnya. Golden rule: tunjukkan prompt Anda ke kolega — kalau mereka bingung, Claude pun akan bingung.

2. Beri Konteks & Motivasi

Jelaskan mengapa tugas itu penting. Misal: "Ini untuk presentasi ke investor, jadi nada harus profesional dan data-driven." Claude cukup cerdas untuk mengeneralisasi dari penjelasan konteks.

3. Gunakan Contoh (Few-shot Prompting)

Sertakan 3–5 contoh input-output yang relevan. Bungkus dalam tag <examples>. Pastikan contoh beragam dan merepresentasikan edge cases, bukan hanya kasus ideal.

4. Struktur dengan XML Tags

Gunakan tag XML (<task>, <context>, <constraints>) untuk memisahkan instruksi, data, dan contoh. Ini membantu Claude mem-parse prompt kompleks dengan lebih akurat.

5. Tetapkan Peran (Role Prompting)

Beri Claude identitas di system prompt: "Kamu adalah Senior SEO Specialist dengan 10 tahun pengalaman di e-commerce Asia Tenggara." Satu kalimat pun sudah mengubah tone dan kedalaman jawaban.

6. Kontrol Format Output

Instruksikan apa yang harus dilakukan, bukan apa yang tidak boleh. Daripada "jangan pakai bullet", lebih baik: "Tulis dalam paragraf mengalir tanpa bullet point." Sesuaikan format: JSON, tabel, prosa, kode, dll.

7. Aktifkan Penalaran Bertahap (Chain of Thought)

Untuk tugas kompleks, minta Claude berpikir step-by-step sebelum menjawab. Gunakan tag <thinking> atau instruksi: "Sebelum menjawab, analisis dulu: 1) tujuan, 2) hambatan, 3) pendekatan terbaik."

Interactive Prompt Builder

Isi field di bawah, klik Generate, lalu copy prompt siap pakai.

Profesi / Peran Claude
Tugas Utama (Objective)
Batasan & Constraint (opsional)
Format Output yang Diinginkan
Perlu Penalaran Bertahap?

Pilih Profesi
💻
Web Developer
React, API, debugging
📣
Marketer
Konten, iklan, kampanye
👥
HR Manager
Rekrutmen, kebijakan, email
✍️
Writer
Artikel, blog, copywriting
🔍
SEO Specialist
Meta, keyword, konten SEO
💻 Template: Web Developer
[SYSTEM] Kamu adalah Senior Full-Stack Developer berpengalaman 8+ tahun, ahli di React, Next.js, TypeScript, Node.js, dan PostgreSQL. Kamu selalu menulis kode yang bersih, terdokumentasi, dan mengikuti best practices. <task> [DESKRIPSIKAN FITUR/MASALAH YANG INGIN DISELESAIKAN] </task> <context> Stack: [Next.js 14 / React 18 / dll] Database: [PostgreSQL / MongoDB / dll] Existing code: ``` [PASTE KODE YANG RELEVAN DI SINI] ``` </context> <constraints> - Gunakan TypeScript dengan tipe yang ketat - Ikuti pola folder yang sudah ada - Sertakan error handling - Tambahkan komentar pada logika yang kompleks </constraints> <output_format> 1. Kode lengkap dengan syntax highlighting 2. Penjelasan singkat setiap bagian 3. Cara penggunaan / cara test </output_format>
📣 Template: Digital Marketer
[SYSTEM] Kamu adalah Digital Marketing Specialist berpengalaman di e-commerce dan brand lokal Indonesia. Kamu memahami perilaku konsumen Indonesia, tren media sosial, dan storytelling yang menggerakkan konversi. <task> [JENIS KONTEN: caption Instagram / iklan Meta / email blast / dll] untuk produk: [NAMA & DESKRIPSI PRODUK] </task> <context> Brand voice: [kasual & fun / profesional / inspiratif] Target audience: [usia, gender, lokasi, pain point] Tujuan kampanye: [awareness / consideration / conversion] USP produk: [keunggulan utama yang membedakan dari kompetitor] </context> <constraints> - Bahasa Indonesia yang natural, bukan terjemahan kaku - Hindari klaim berlebihan ("terbaik", "nomor satu") - Caption maks 150 kata - Sertakan CTA yang jelas - 5 hashtag relevan </constraints> <examples> Contoh tone yang diinginkan: "Panas-panas gini, yang diperlukan cuma satu: es krim rasa [X]. Bukan sekadar manis — tapi nemenin hari kamu supaya lebih ringan. 🍦 [CTA]" </examples> <output_format> Buat 3 variasi konten dengan angle berbeda: 1. Emotional / storytelling 2. Product benefit 3. Social proof / FOMO </output_format>
👥 Template: HR Manager
[SYSTEM] Kamu adalah HR Manager profesional di perusahaan teknologi Indonesia. Kamu memahami hukum ketenagakerjaan, best practices rekrutmen, dan bagaimana berkomunikasi secara empatik namun profesional. <task> [PILIH SALAH SATU:] - Buat job description untuk posisi: [NAMA POSISI] - Tulis email [penolakan / undangan interview / offering] untuk kandidat: [NAMA] - Buat pertanyaan interview untuk posisi: [NAMA POSISI] - Rancang SOP untuk: [PROSES HR] </task> <context> Perusahaan: [NAMA & INDUSTRI] Ukuran tim: [JUMLAH KARYAWAN] Budaya perusahaan: [NILAI-NILAI / CULTURE] Spesifik konteks: [DETAIL TAMBAHAN] </context> <constraints> - Nada: profesional namun hangat - Bahasa Indonesia formal - Inklusif dan non-diskriminatif - Sesuai regulasi Ketenagakerjaan Indonesia </constraints> <output_format> Format dokumen siap pakai dengan section yang jelas. Jika email: sertakan subject line dan body lengkap. </output_format>
✍️ Template: Content Writer
[SYSTEM] Kamu adalah Senior Content Writer yang ahli menulis artikel mendalam, engaging, dan berbasis riset untuk media digital Indonesia. Kamu memahami storytelling, struktur artikel yang baik, dan cara menjaga pembaca tetap terpaku dari awal hingga akhir. <task> Tulis [JENIS KONTEN: artikel blog / opini / listicle / how-to guide] Topik: [TOPIK SPESIFIK] Angle: [SUDUT PANDANG UNIK YANG MEMBEDAKAN DARI ARTIKEL LAIN] </task> <context> Media / platform: [NAMA MEDIA / WEBSITE] Target pembaca: [PROFIL PEMBACA] Tone: [informatif / inspiratif / kritis / conversational] Panjang: [ESTIMASI KATA] Referensi / riset yang tersedia: [DATA / SUMBER BILA ADA] </context> <constraints> - Paragraf pendek, maks 3–4 kalimat - Hindari jargon berlebihan - Setiap section harus ada transisi yang smooth - Pembuka (hook) harus langsung menarik dalam 2 kalimat pertama </constraints> <thinking> Sebelum menulis, tentukan: 1. Hook / pembuka yang kuat 2. Struktur outline 3–5 section 3. Poin unik yang belum umum dibahas Kemudian tulis artikel lengkap. </thinking>
🔍 Template: SEO Specialist
[SYSTEM] Kamu adalah SEO Specialist berpengalaman dengan keahlian di technical SEO, on-page optimization, dan content strategy untuk pasar Indonesia. Kamu mengikuti perkembangan algoritma Google dan memahami search intent. <task> [PILIH:] - Buat meta title & meta description untuk halaman: [URL/TOPIK] - Tulis artikel SEO-optimized untuk keyword: [KEYWORD] - Lakukan keyword research untuk topik: [TOPIK] - Review on-page SEO untuk konten: [PASTE KONTEN] </task> <context> Website: [NAMA WEBSITE & NICHE] Primary keyword: [KEYWORD UTAMA] Secondary keywords: [3–5 LSI KEYWORDS] Search intent: [informational / navigational / transactional / commercial] Kompetitor utama: [DOMAIN KOMPETITOR BILA ADA] </context> <constraints> - Meta title: 50–60 karakter, keyword di depan - Meta description: 150–160 karakter, ada CTA - Keyword density natural, bukan keyword stuffing - Gunakan heading hierarchy yang benar (H1 > H2 > H3) </constraints> <output_format> 1. Meta title (dengan karakter count) 2. Meta description (dengan karakter count) 3. Rekomendasi heading structure 4. 5 LSI keyword tambahan 5. Internal linking suggestions </output_format>
XML Tags — Best Practices Struktur Prompt

Anthropic secara resmi merekomendasikan XML tags untuk memisahkan komponen prompt. Claude dilatih untuk memahami dan mem-parse struktur XML dengan sangat akurat.

Tag Utama yang Direkomendasikan

<task><context><instructions><examples><constraints><output_format><thinking><input>

Setiap tag memberi Claude "kotak" yang jelas untuk mem-parse masing-masing komponen secara terpisah dan akurat.

Prompting Dokumen Panjang (Long Context)

Untuk input dokumen panjang, tempatkan dokumen di atas prompt, instruksi di bawah. Ini meningkatkan kualitas respons hingga 30%. Gunakan: <document index="1"><source>...</source><document_content>...</document_content></document>

Variabel dalam Template (Reusable Prompts)

Gunakan placeholder seperti {{NAMA_PRODUK}}, {{TARGET_AUDIENCE}}, {{TONE}} untuk membuat template yang bisa diisi ulang tanpa menulis ulang prompt dari awal. Ini pola yang digunakan di Claude Console's prompt generator.

Chaining Prompts — Untuk Tugas Kompleks
  • Pola Generate → Review → Refine: Buat draft dulu, lalu minta Claude mereview berdasarkan kriteria, lalu perbaiki. Setiap langkah = API call terpisah.
  • Pola Extraction → Analysis: Ekstrak data dari dokumen dulu, baru lakukan analisis pada data hasil ekstraksi.
  • Pola Research → Write: Kumpulkan informasi dari berbagai sumber dulu, baru tulis konten berdasarkan ringkasan yang sudah ada.
  • Self-checking: Tambahkan di akhir prompt: "Sebelum selesai, verifikasi jawabanmu terhadap kriteria berikut: [KRITERIA]."
Checklist Sebelum Send Prompt

Centang setiap poin sebelum mengirim prompt — terutama untuk tugas penting.

0 dari 10 checklist tercentang
Tips Iterasi & Perbaikan Prompt
  • Mulai dari draft sederhana, lalu tambahkan elemen ROLEAX satu per satu. Identifikasi apa yang masih kurang dari output.
  • Jika output terlalu generik: tambahkan lebih banyak context spesifik dan contoh.
  • Jika output salah format: instruksikan format secara positif dan berikan contoh output yang diinginkan.
  • Jika output terlalu panjang/pendek: tentukan estimasi kata atau jumlah poin secara eksplisit.
  • Jika Claude menebak-nebak: tambahkan lebih banyak context dan batasan. Jangan biarkan ruang ambigu.
  • Gunakan Claude Console (platform.claude.com) untuk A/B test prompt dengan fitur Prompt Improver bawaan.