{"id":507,"date":"2026-07-14T08:48:28","date_gmt":"2026-07-14T01:48:28","guid":{"rendered":"https:\/\/komunitech.com\/blog\/?p=507"},"modified":"2026-07-14T08:49:32","modified_gmt":"2026-07-14T01:49:32","slug":"cara-bikin-sub-agent-di-claude-code-panduan-konfigurasi-lengkap","status":"publish","type":"post","link":"https:\/\/komunitech.com\/blog\/tutorial\/cara-bikin-sub-agent-di-claude-code-panduan-konfigurasi-lengkap\/","title":{"rendered":"Cara Bikin Sub-Agent di Claude Code: Panduan Konfigurasi Lengkap"},"content":{"rendered":"<p><em>tl;dr:<\/em> Sub-agent di Claude Code itu asisten AI khusus yang jalan di context window sendiri \u2014 dipakai buat tugas sampingan (nyari file, baca log, riset) biar percakapan utama kamu gak numpuk konteks. Claude Code punya 3 sub-agent bawaan (Explore, Plan, general-purpose), tapi kamu juga bisa bikin custom pakai file Markdown + YAML frontmatter. Artikel ini jelasin cara bikinnya langkah demi langkah, plus kapan tepat dipakai.<\/p>\n<h2>Kenapa Butuh Sub-Agent<\/h2>\n<p>Bayangkan kamu lagi minta Claude Code implementasi fitur baru. Di tengah jalan, dia perlu nyari 40 file yang relevan dan baca isinya. Kalau semua hasil pencarian itu masuk ke percakapan utama, context window kamu cepat penuh sama informasi yang gak bakal kamu rujuk lagi \u2014 dan itu bikin Claude makin lambat dan mahal.<\/p>\n<p>Sub-agent menyelesaikan ini: tugas sampingan itu didelegasikan ke asisten terpisah yang kerja di <strong>context window-nya sendiri<\/strong>, terus cuma balikin ringkasannya ke percakapan utama. Konteks utama tetap bersih, fokus, dan hemat token.<\/p>\n<p>Konsep ini mirip dengan <a href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-bikin-tim-sub-agent-openclaw-untuk-otomatisasi-bisnis\/\" target=\"_blank\" rel=\"noopener\">sistem sub-agent di OpenClaw<\/a> \u2014 sama-sama soal delegasi dan isolasi konteks, cuma Claude Code fokus di konteks coding.<\/p>\n<h2>Manfaat Sub-Agent<\/h2>\n<ul>\n<li><strong>Jaga konteks bersih<\/strong> \u2014 eksplorasi dan implementasi gak numpuk di percakapan utama.<\/li>\n<li><strong>Batasi tool<\/strong> \u2014 sub-agent bisa dikunci cuma boleh baca file (gak bisa edit), buat keamanan.<\/li>\n<li><strong>Reusable<\/strong> \u2014 konfigurasi bisa dipakai ulang lintas proyek.<\/li>\n<li><strong>Spesialisasi<\/strong> \u2014 system prompt fokus buat domain tertentu (review keamanan, testing, dll).<\/li>\n<li><strong>Hemat biaya<\/strong> \u2014 routing tugas ringan ke model murah kayak Haiku.<\/li>\n<\/ul>\n<h2>Sub-Agent Bawaan Claude Code<\/h2>\n<p>Sebelum bikin custom, kenali dulu 3 sub-agent bawaan:<\/p>\n<h3>Explore<\/h3>\n<p>Agent read-only yang cepat, dioptimalkan buat nyari dan analisis codebase. <strong>Tools:<\/strong> read-only (Write &amp; Edit ditolak). <strong>Fungsi:<\/strong> nemuin file, cari kode, eksplorasi codebase tanpa ngubah apa pun.<\/p>\n<h3>Plan<\/h3>\n<p>Agent riset yang dipakai saat plan mode \u2014 ngumpulin konteks sebelum Claude nyajiin rencana. Read-only juga, jadi eksplorasi tetap di context window terpisah sementara percakapan utama tetap read-only.<\/p>\n<h3>General-purpose<\/h3>\n<p>Agent serba bisa buat tugas kompleks multi-langkah yang butuh eksplorasi sekaligus aksi. <strong>Tools:<\/strong> semua. Dipakai kalau tugas butuh eksplorasi + modifikasi, reasoning kompleks, atau beberapa langkah bergantung.<\/p>\n<h2>Cara Bikin Sub-Agent Custom<\/h2>\n<p>Sub-agent custom adalah <strong>file Markdown dengan YAML frontmatter<\/strong>. Ada dua cara bikinnya: minta Claude nulisin, atau tulis file-nya sendiri.<\/p>\n<h3>Langkah 1: Tentukan Scope<\/h3>\n<p>Pilih apakah sub-agent ini level <strong>proyek<\/strong> (cuma buat repo ini, simpan di <code>.claude\/agents\/<\/code> dalam proyek) atau level <strong>user<\/strong> (bisa dipakai lintas semua proyek kamu). Level user cocok buat sub-agent yang sering kamu pakai di mana-mana.<\/p>\n<h3>Langkah 2: Buat File dengan Frontmatter<\/h3>\n<p>Struktur dasarnya: bagian YAML frontmatter di atas (metadata), terus system prompt di bawahnya. Field penting di frontmatter:<\/p>\n<ul>\n<li><strong>name<\/strong> \u2014 nama sub-agent<\/li>\n<li><strong>description<\/strong> \u2014 kapan Claude harus mendelegasikan ke sub-agent ini. <em>Ini krusial<\/em> \u2014 Claude pakai deskripsi ini buat mutusin kapan manggil sub-agent. Tulis sejelas mungkin.<\/li>\n<li><strong>tools<\/strong> \u2014 tool apa aja yang boleh diakses (batasi buat keamanan)<\/li>\n<li><strong>model<\/strong> \u2014 model yang dipakai (misal <code>haiku<\/code> buat hemat biaya di tugas ringan)<\/li>\n<\/ul>\n<h3>Langkah 3: Tulis System Prompt yang Fokus<\/h3>\n<p>Di bawah frontmatter, tulis instruksi spesifik buat sub-agent ini. Makin fokus system prompt-nya ke satu domain (misalnya &#8220;kamu adalah reviewer keamanan yang cek SQL injection dan XSS&#8221;), makin bagus hasilnya.<\/p>\n<h3>Langkah 4: Biarkan Claude Delegasi Otomatis<\/h3>\n<p>Setelah file dibuat, Claude bakal otomatis mendelegasikan ke sub-agent kamu ketika ada tugas yang cocok sama <code>description<\/code>-nya. Kamu gak perlu manggil manual tiap kali.<\/p>\n<h2>Tips Bikin Sub-Agent yang Efektif<\/h2>\n<ul>\n<li><strong>Deskripsi = kunci.<\/strong> Kalau <code>description<\/code>-nya kabur, Claude gak tau kapan harus pakai. Tulis kondisi pemicunya jelas.<\/li>\n<li><strong>Batasi tools.<\/strong> Sub-agent yang cuma butuh baca? Kunci ke read-only. Ini prinsip keamanan (least privilege) \u2014 jangan kasih akses edit kalau gak perlu.<\/li>\n<li><strong>Pilih model sesuai tugas.<\/strong> Tugas ringan dan berulang \u2192 Haiku (murah &amp; cepat). Tugas kompleks \u2192 model lebih kuat.<\/li>\n<li><strong>Satu sub-agent, satu fungsi.<\/strong> Jangan bikin sub-agent yang ngerjain segalanya \u2014 pecah jadi spesialis.<\/li>\n<\/ul>\n<h2>Kapan TIDAK Perlu Sub-Agent<\/h2>\n<p>Sub-agent punya overhead sendiri. Jangan pakai kalau:<\/p>\n<ul>\n<li>Tugasnya simpel dan cepat \u2014 bikin sub-agent malah nambah kerumitan.<\/li>\n<li>Kamu butuh hasil eksplorasi tetap ada di percakapan utama buat rujukan berikutnya \u2014 sub-agent cuma balikin ringkasan, detail mentahnya &#8220;hilang&#8221; dari konteks utama.<\/li>\n<\/ul>\n<p>Buat pemahaman lebih dalam soal apa itu Claude Code dan fitur-fitur lainnya (MCP, hooks, Agent SDK), baca <a href=\"https:\/\/komunitech.com\/blog\/ai-agent\/apa-itu-claude-code-panduan-lengkap-untuk-pemula-2026\/\" target=\"_blank\" rel=\"noopener\">panduan lengkap Claude Code untuk pemula<\/a>.<\/p>\n<hr>\n<p><em>Disclaimer: Artikel ini bersifat edukasi dan informasi, bukan saran final. Detail konfigurasi sub-agent Claude Code bisa berubah antar versi \u2014 cek dokumentasi resmi buat sintaks terbaru sebelum implementasi.<\/em><\/p>\n<p><strong>Referensi:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/code.claude.com\/docs\/en\/sub-agents\" target=\"_blank\" rel=\"noopener nofollow\">Claude Code Documentation \u2014 Create custom subagents<\/a><\/li>\n<li><a href=\"https:\/\/code.claude.com\/docs\/en\/overview\" target=\"_blank\" rel=\"noopener nofollow\">Claude Code Documentation \u2014 Overview<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>tl;dr: Sub-agent di Claude Code itu asisten AI khusus yang jalan di context window sendiri \u2014 dipakai buat tugas sampingan (nyari file, baca log, riset) biar percakapan utama kamu gak numpuk konteks. Claude Code punya 3 sub-agent bawaan (Explore, Plan, general-purpose), tapi kamu juga bisa bikin custom pakai file Markdown + YAML frontmatter. Artikel ini [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":512,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[75],"tags":[132,139,138,124,140],"class_list":["post-507","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial","tag-claude-code","tag-claude-code-tutorial","tag-custom-subagent","tag-sub-agent","tag-yaml-frontmatter"],"_links":{"self":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/507","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/comments?post=507"}],"version-history":[{"count":1,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/507\/revisions"}],"predecessor-version":[{"id":509,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/507\/revisions\/509"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/media\/512"}],"wp:attachment":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/media?parent=507"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/categories?post=507"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/tags?post=507"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}