{"content_id":"9bufu7fxqw","slug":"claude-code-rules-skills-agents-guide","locale":"id","schema_type":"HowTo","category":"tutorial","category_name":"Tutorial","title":"Panduan Praktis Claude Code Rules·Skills·Agents","summary":"Rules, Skills, dan Agents di Claude Code masing-masing berfungsi untuk menangani instruksi berkelanjutan, prosedur yang dapat digunakan kembali, dan pendelegasian tugas yang terisolasi. Panduan ini menjelaskan struktur file yang tepat, cara pemanggilan, serta prinsip keamanan dan pengelolaan konteks melalui contoh praktis.","sponsorship_disclosure":null,"author":{"name":"injoys","url":"https://injoys.com/ko/about"},"key_points":["Buat direktori `.claude` di root proyek dan bedakan cakupan pengaturan bersama dengan pengaturan pribadi.","Pisahkan standar yang harus selalu dipatuhi ke dalam file Markdown di `.claude/rules` dan batasi jalur penerapannya jika diperlukan.","Tulis prosedur berulang di `.claude/skills/\u003cnama\u003e/SKILL.md` dan atur metode pemanggilan otomatis atau eksplisit.","Delegasikan tugas yang memerlukan konteks dan peran independen kepada subagen `.claude/agents/\u003cnama\u003e.md`.","Periksa pemuatan, izin alat, dan kualitas hasil melalui tugas validasi kecil sebelum menerapkannya ke repositori tim."],"content_markdown":"Fitur ekstensi Claude Code tidak semuanya merupakan jenis prompt yang sama. **Rules adalah pedoman yang diterapkan secara berkelanjutan**, **Skills adalah prosedur kerja yang digunakan kembali secara berulang**, dan **Agents adalah pelaksana berdasarkan peran yang bekerja dalam konteks terpisah**. Dengan membedakan ketiga fitur ini secara tepat, pengulangan prompt dapat dikurangi sekaligus mengelola konteks percakapan utama secara efisien.\n\nDokumen ini menjelaskan pengaturan pada tingkat proyek. Metadata atau tampilan yang didukung dapat berbeda tergantung versi Claude Code, sehingga kolom yang tidak berfungsi perlu diperiksa kembali dalam dokumentasi resmi versi yang terinstal.\n\n## Langkah 1: Menentukan direktori `.claude` dan cakupan pengaturan\n\nRules, Skills, dan Agents yang akan dibagikan dalam proyek umumnya ditempatkan di bawah `.claude` pada root repositori.\n\n```text\nmy-project/\n├── .claude/\n│   ├── rules/\n│   │   ├── code-style.md\n│   │   └── api.md\n│   ├── skills/\n│   │   └── fix-issue/\n│   │       └── SKILL.md\n│   └── agents/\n│       ├── code-reviewer.md\n│       └── test-runner.md\n├── src/\n└── package.json\n```\n\nDirektori dapat dibuat sebagai berikut.\n\n```bash\nmkdir -p .claude/rules\nmkdir -p .claude/skills/fix-issue\nmkdir -p .claude/agents\n```\n\n### Dua kesalahpahaman tentang `.claude`\n\n1. `.claude` tidak selalu diperlukan untuk semua pedoman Claude Code. Pedoman proyek juga dapat dikelola melalui `CLAUDE.md` di root atau `.claude/CLAUDE.md`, sedangkan pengaturan pribadi pengguna dapat ditempatkan di bawah `~/.claude` dalam direktori home.\n2. Nama file dibedakan berdasarkan huruf besar dan kecil, tergantung sistem operasi. Agar sesuai dengan format resmi, file masuk Skill sebaiknya ditulis sebagai `SKILL.md` dengan huruf besar. Jika disimpan sebagai `skill.md`, file tersebut mungkin tidak dikenali.\n\n### Kriteria pemilihan pengaturan proyek dan pengaturan pribadi\n\n| Cakupan | Konten yang sesuai | Contoh |\n|---|---|---|\n| Bersama dalam proyek | Aturan dan otomatisasi yang harus diikuti secara sama oleh semua kontributor | Perintah pengujian, struktur direktori, konvensi API |\n| Pribadi pengguna | Preferensi pribadi atau pengaturan yang tidak boleh dipublikasikan dalam repositori | Cara kerja pribadi, pilihan alat lokal |\n| Khusus lokal | Jalur atau pengaturan eksperimen yang hanya berlaku di komputer tertentu | Jalur data lokal, prosedur debugging sementara |\n\nHanya file yang akan digunakan bersama oleh tim yang di-commit ke Git. Jangan mencatat secret key, token, atau kata sandi server internal dalam Rules atau Skills.\n\n## Langkah 2: Membuat pedoman berkelanjutan dengan Rules\n\nRules adalah fitur untuk membagi dan mengelola pedoman proyek yang perlu dijadikan acuan oleh Claude saat bekerja ke dalam beberapa file Markdown. Di antara aturan yang berada di bawah `.claude/rules`, file tanpa kondisi `paths` dimuat sebagai pedoman proyek, sedangkan file yang menentukan kondisi jalur diterapkan ketika menangani file terkait.\n\n### Contoh Rule dasar\n\n`.claude/rules/code-style.md` dapat ditulis sebagai berikut.\n\n```markdown\n# Prinsip penulisan kode\n\n- Kode aplikasi baru ditulis dalam TypeScript.\n- Untuk fungsi publik, jelaskan nilai input, nilai kembalian, dan kondisi kegagalan.\n- Jangan menyembunyikan kegagalan dengan menghapus pengujian yang sudah ada.\n- Setelah perubahan, jalankan pengujian terkait dan pemeriksaan tipe.\n- Tulis penjelasan dalam bahasa Korea, tetapi gunakan konvensi penamaan yang sudah ada untuk identifier kode.\n```\n\nRule yang baik dapat diverifikasi. “Tulis kode dengan bagus” kurang jelas dibandingkan “Setelah perubahan, jalankan `npm test` dan `npm run typecheck`.”\n\n### Rule yang hanya diterapkan pada jalur tertentu\n\nJika aturan frontend dan backend berbeda, cakupannya dapat dipersempit dengan `paths` pada YAML front matter.\n\n```markdown\n---\npaths:\n  - \"src/api/**/*.ts\"\n  - \"tests/api/**/*.ts\"\n---\n\n# Aturan API\n\n- Validasi semua input API dengan skema.\n- Tangani kegagalan autentikasi dan kekurangan izin sebagai kesalahan yang berbeda.\n- Jika endpoint diubah, perbarui juga pengujian API yang terkait.\n```\n\nAturan berdasarkan jalur mengurangi masalah ketika pedoman yang tidak diperlukan memenuhi konteks semua pekerjaan.\n\n### Konten yang tidak boleh dimasukkan ke dalam Rules\n\n- Prosedur migrasi yang hanya dijalankan satu kali\n- Persyaratan terperinci yang hanya diperlukan untuk isu tertentu\n- Instruksi mutlak yang saling bertentangan\n- Kalimat panjang yang mengulang konten yang sudah dipaksakan melalui kode atau konfigurasi linter\n- Data sensitif seperti kata sandi, API key, dan informasi pelanggan\n\nRules bukanlah “alat jaminan ajaib yang selalu dipatuhi.” Jika terdapat pedoman yang ambigu atau saling bertentangan, hasilnya dapat berbeda. Karena itu, gunakan juga sarana verifikasi deterministik seperti pengujian, linter, dan kontrol izin.\n\n## Langkah 3: Mengotomatiskan prosedur berulang dengan Skills\n\nSkill menggabungkan deskripsi, prosedur kerja, alat yang diperlukan, dan materi pendukung ke dalam satu unit yang dapat digunakan kembali. Struktur dasar Skill proyek adalah `.claude/skills/\u003cskill-name\u003e/SKILL.md`, dan template atau skrip dapat ditambahkan ke direktori yang sama jika diperlukan.\n\nBerbeda dengan Rules, Skill digunakan ketika diperlukan untuk pekerjaan tertentu. Claude dapat memilihnya secara otomatis berdasarkan deskripsi Skill, atau pengguna dapat memanggilnya secara eksplisit dengan format `/\u003cskill-name\u003e`. Skill tidak selalu hanya berfungsi secara manual.\n\n### Contoh Skill untuk memperbaiki isu\n\nBerikut adalah contoh `.claude/skills/fix-issue/SKILL.md`.\n\n```markdown\n---\nname: fix-issue\ndescription: Mereproduksi bug, mempersempit penyebabnya, lalu melakukan perbaikan minimal dan pengujian regresi.\ndisable-model-invocation: true\nallowed-tools: Read, Grep, Glob, Edit, Bash(npm test:*)\n---\n\n# Prosedur perbaikan isu\n\nIsu target: $ARGUMENTS\n\n1. Periksa kode terkait dan pengujian yang sudah ada.\n2. Sebelum melakukan perbaikan, rangkum cara reproduksi dan perilaku yang diharapkan.\n3. Jelaskan akar penyebab dalam satu paragraf.\n4. Terapkan perbaikan dengan cakupan dampak sekecil mungkin.\n5. Tambahkan pengujian regresi atau pastikan pengujian yang sudah ada memverifikasi masalah tersebut.\n6. Jalankan pengujian yang diizinkan dan rangkum hasilnya.\n7. Laporkan file yang diubah, risiko yang tersisa, dan hal-hal yang perlu diperiksa secara manual.\n```\n\nSkill ini dapat dipanggil sebagai berikut.\n\n```text\n/fix-issue Masalah foto profil yang tidak diperbarui setelah login\n```\n\n`disable-model-invocation: true` berguna untuk membatasi agar Claude tidak menjalankan Skill ini atas inisiatif sendiri dan hanya menjalankannya ketika dipanggil langsung oleh pengguna. Kolom front matter yang didukung dapat berbeda tergantung versi Claude Code.\n\n### Contoh Skill yang mengutamakan desain\n\nJika ingin membuat dokumen desain terlebih dahulu alih-alih langsung menulis kode, alur berikut dapat dimasukkan ke dalam Skill.\n\n1. Pisahkan persyaratan dari bagian yang ambigu.\n2. Periksa struktur yang sudah ada dan modul yang dapat digunakan kembali.\n3. Rancang aliran data, antarmuka, dan kondisi kegagalan.\n4. Tulis dokumen desain di bawah `docs/design/`.\n5. Lakukan implementasi setelah memastikan persetujuan pengguna atau kondisi persetujuan yang telah ditentukan.\n6. Sajikan metode pengujian dan rollback.\n\n### Syarat Skill yang baik\n\n- Input dan hasil akhir jelas.\n- Urutan prosedur dan kondisi penghentian dinyatakan secara eksplisit.\n- Hanya mengizinkan alat yang diperlukan.\n- Pisahkan materi referensi yang panjang ke file tersendiri.\n- Jika gagal, instruksikan untuk melapor dan tidak melanjutkan secara sembarangan.\n- Satu Skill tidak memiliki terlalu banyak tujuan.\n\nPekerjaan berulang dengan awal dan akhir yang jelas, seperti membuat commit, meninjau kode, memeriksa rilis, dan merancang API, cocok dijadikan Skill.\n\n## Langkah 4: Memisahkan peran dan konteks dengan Agents\n\nSubagen Claude Code menjalankan peran tertentu dalam konteks terpisah dan mengembalikan hasilnya ke percakapan utama. Fitur ini berguna ketika tidak ingin menumpuk seluruh hasil pencarian atau log pengujian dalam jumlah besar di konteks utama.\n\nAgen proyek umumnya didefinisikan dalam `.claude/agents/\u003cagent-name\u003e.md`. Agen dapat diperiksa atau dikelola melalui perintah `/agents`, dan pengguna juga dapat meminta dalam bahasa alami agar pekerjaan didelegasikan kepada agen tertentu.\n\n### Contoh agen peninjau kode\n\n`.claude/agents/code-reviewer.md` dapat ditulis sebagai berikut.\n\n```markdown\n---\nname: code-reviewer\ndescription: Peninjau yang berfokus pada pembacaan untuk memeriksa cacat, risiko keamanan, dan pengujian yang terlewat dalam kode yang diubah\ntools: Read, Grep, Glob, Bash\nmodel: sonnet\n---\n\nAnda adalah agen khusus peninjauan kode.\n\nLakukan peninjauan berdasarkan urutan prioritas berikut.\n\n1. Cacat yang dapat menyebabkan gangguan nyata atau kehilangan data\n2. Masalah keamanan terkait autentikasi, izin, dan validasi input\n3. Masalah konkurensi, transaksi, dan penanganan kesalahan\n4. Pengujian yang terlewat sehingga persyaratan tidak dapat diverifikasi\n5. Struktur yang sangat menurunkan kemudahan pemeliharaan\n\nUntuk setiap temuan, sertakan jalur file, bukti, kondisi terjadinya, dan arah perbaikan minimal.\nJangan melaporkan preferensi gaya tanpa dasar sebagai cacat.\nJangan memperbaiki kode secara langsung dan hanya kembalikan hasil peninjauan.\n```\n\nPermintaan dapat diberikan sebagai berikut.\n\n```text\nMinta agen code-reviewer meninjau perubahan pada branch saat ini.\n```\n\n### Perbedaan antara Skill dan Agent\n\n| Kriteria | Rules | Skills | Agents |\n|---|---|---|---|\n| Tujuan utama | Memberikan pedoman berkelanjutan | Menggunakan kembali prosedur berulang | Mendelegasikan pekerjaan berdasarkan peran |\n| Waktu penerapan | Selalu atau berdasarkan kondisi jalur | Dipilih otomatis atau dipanggil secara eksplisit | Delegasi Claude atau permintaan pengguna |\n| Konteks | Disertakan sebagai pedoman dalam pekerjaan utama | Terutama dijalankan dalam alur kerja saat ini | Dijalankan dalam konteks terpisah, lalu mengembalikan hasil |\n| Contoh utama | Standar pengodean | Prosedur perbaikan isu | Peninjau kode |\n| Lokasi penyimpanan | `.claude/rules/*.md` | `.claude/skills/\u003cnama\u003e/SKILL.md` | `.claude/agents/*.md` |\n\n### Agents dan Agent Teams berbeda\n\nFakta bahwa subagen biasa menggunakan konteks terpisah tidak berarti agen dapat berkomunikasi secara bebas satu sama lain. Subagen biasa menggunakan struktur delegasi: menjalankan tugas yang diberikan lalu mengembalikan hasil kepada agen utama. Fitur Agent Teams, yang memungkinkan beberapa sesi independen saling bertukar pesan, merupakan fitur terpisah. Status dukungan dan syarat aktivasinya perlu diperiksa dalam dokumentasi resmi.\n\nJika alur kerja dirancang dengan asumsi bahwa agen akan terus membuat agen lain secara berantai, alur tersebut dapat gagal akibat batasan versi atau izin. Lebih aman untuk memulai dengan struktur sederhana, yaitu agen utama membagi pekerjaan kepada subagen berdasarkan peran lalu menggabungkan hasilnya.\n\n## Langkah 5: Memverifikasi pemuatan, izin, dan kualitas\n\nJangan berasumsi bahwa file konfigurasi akan berfungsi sesuai tujuan hanya karena sudah dibuat. Verifikasi setiap komponen secara terpisah dengan pekerjaan kecil.\n\n### Urutan verifikasi yang disarankan\n\n1. **Periksa Rules:** Minta penanganan file yang terkena aturan dan yang tidak terkena aturan untuk memeriksa kondisi jalur.\n2. **Periksa Skills:** Panggil Skill secara eksplisit dan pastikan argumen input, hasil, serta kondisi penghentian berfungsi.\n3. **Periksa Agents:** Berikan pekerjaan berisiko rendah seperti peninjauan hanya-baca, lalu periksa format hasilnya.\n4. **Periksa izin:** Tinjau apakah alat yang dapat melakukan perubahan, seperti Bash dan Edit, hanya diberikan kepada konfigurasi yang benar-benar memerlukannya.\n5. **Verifikasi otomatis:** Periksa hasil AI secara independen melalui pengujian, pemeriksaan tipe, linter, dan pemeriksaan keamanan.\n\n### Hal yang perlu diperiksa saat terjadi kegagalan\n\n- Apakah `.claude` benar-benar berada di root proyek?\n- Apakah nama file Skill tepat `SKILL.md`?\n- Apakah Skill berada dalam struktur `.claude/skills/\u003cnama\u003e/SKILL.md`?\n- Apakah file Agent merupakan file Markdown yang berada tepat di bawah `.claude/agents`?\n- Apakah awal dan akhir YAML front matter ditutup dengan `---`?\n- Apakah `name` dan `description` cukup spesifik untuk membedakan pekerjaan?\n- Apakah pola jalur sesuai dengan struktur proyek yang sebenarnya?\n- Apakah versi Claude Code yang terinstal mendukung metadata yang digunakan?\n- Apakah izin alat atau kebijakan organisasi menghalangi eksekusi?\n\n## Alasan anggaran konteks dan keamanan harus dirancang bersama\n\nTujuan Rules, Skills, dan Agents bukan hanya menambahkan fungsi. Ketiganya juga merupakan **sarana rekayasa konteks** untuk mengendalikan informasi apa yang dimasukkan ke dalam konteks dan kapan informasi tersebut dimasukkan.\n\nJika aturan dibuat terlalu panjang, pedoman yang tidak relevan dengan pekerjaan saat ini akan memenuhi konteks dan meningkatkan kemungkinan konflik. Sebaliknya, jika eksplorasi dan analisis log diserahkan kepada subagen, hanya kesimpulan dan bukti yang perlu tersisa dalam percakapan utama.\n\nDari sisi keamanan, prinsip-prinsip berikut penting.\n\n- Tinjau Rules dan Skills seperti kode lain dalam repositori.\n- Baca file Agent atau Skill yang diperoleh dari sumber eksternal sebelum menjalankannya.\n- Minimalkan perintah shell, akses jaringan, dan izin modifikasi file.\n- Jangan langsung memercayai perintah yang disertakan dalam input pengguna atau isi isu.\n- Terapkan tahap persetujuan manusia untuk deployment, penghapusan, pembayaran, dan migrasi data.\n- Jangan menyimpan informasi rahasia dalam file prompt; gunakan sistem pengelolaan rahasia yang terpisah.\n\n## Fitur mana yang harus dipilih\n\nKeputusan dapat dibuat dengan cepat melalui pertanyaan berikut.\n\n- Apakah semua pekerjaan terkait harus mengikutinya? → **Rule**\n- Apakah ini prosedur berulang yang memiliki awal dan akhir? → **Skill**\n- Apakah diperlukan peran terpisah dan konteks independen? → **Agent**\n- Apakah perintah deterministik perlu dijalankan sebelum atau sesudah peristiwa tertentu? → **Pertimbangkan Hook**\n\nSebagai contoh, “gunakan TypeScript” adalah Rule, sedangkan “jalankan proses mulai dari reproduksi bug hingga pengujian regresi” adalah Skill. “Baca perubahan dan hanya laporkan cacat keamanan” cocok untuk Agent. Tindakan yang terhubung ke peristiwa tertentu, seperti wajib menjalankan formatter setelah mengedit file, mungkin lebih cocok menggunakan Hooks.\n\nKonfigurasi yang paling stabil tidak menganggap ketiga fitur tersebut saling bersaing, melainkan menggabungkannya. Gunakan Rule untuk memberikan standar umum, Skill untuk menjalankan prosedur standar, dan Agent untuk memisahkan pekerjaan dengan konteks besar seperti investigasi dan peninjauan, lalu lengkapi verifikasi deterministik dengan pengujian dan Hooks.","content_html":"\u003cp\u003eFitur ekstensi Claude Code tidak semuanya merupakan jenis prompt yang sama. \u003cstrong\u003eRules adalah pedoman yang diterapkan secara berkelanjutan\u003c/strong\u003e, \u003cstrong\u003eSkills adalah prosedur kerja yang digunakan kembali secara berulang\u003c/strong\u003e, dan \u003cstrong\u003eAgents adalah pelaksana berdasarkan peran yang bekerja dalam konteks terpisah\u003c/strong\u003e. Dengan membedakan ketiga fitur ini secara tepat, pengulangan prompt dapat dikurangi sekaligus mengelola konteks percakapan utama secara efisien.\u003c/p\u003e\n\u003cp\u003eDokumen ini menjelaskan pengaturan pada tingkat proyek. Metadata atau tampilan yang didukung dapat berbeda tergantung versi Claude Code, sehingga kolom yang tidak berfungsi perlu diperiksa kembali dalam dokumentasi resmi versi yang terinstal.\u003c/p\u003e\n\u003ch2\u003e\n\u003ca href=\"#langkah-1-menentukan-direktori-claude-dan-cakupan-pengaturan\" class=\"anchor\" id=\"langkah-1-menentukan-direktori-claude-dan-cakupan-pengaturan\"\u003e\u003c/a\u003eLangkah 1: Menentukan direktori \u003ccode\u003e.claude\u003c/code\u003e dan cakupan pengaturan\u003c/h2\u003e\n\u003cp\u003eRules, Skills, dan Agents yang akan dibagikan dalam proyek umumnya ditempatkan di bawah \u003ccode\u003e.claude\u003c/code\u003e pada root repositori.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003emy-project/\n\u003c/span\u003e\u003cspan\u003e├── .claude/\n\u003c/span\u003e\u003cspan\u003e│   ├── rules/\n\u003c/span\u003e\u003cspan\u003e│   │   ├── code-style.md\n\u003c/span\u003e\u003cspan\u003e│   │   └── api.md\n\u003c/span\u003e\u003cspan\u003e│   ├── skills/\n\u003c/span\u003e\u003cspan\u003e│   │   └── fix-issue/\n\u003c/span\u003e\u003cspan\u003e│   │       └── SKILL.md\n\u003c/span\u003e\u003cspan\u003e│   └── agents/\n\u003c/span\u003e\u003cspan\u003e│       ├── code-reviewer.md\n\u003c/span\u003e\u003cspan\u003e│       └── test-runner.md\n\u003c/span\u003e\u003cspan\u003e├── src/\n\u003c/span\u003e\u003cspan\u003e└── package.json\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eDirektori dapat dibuat sebagai berikut.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003emkdir\u003c/span\u003e\u003cspan\u003e -p\u003c/span\u003e\u003cspan\u003e .claude/rules\n\u003c/span\u003e\u003cspan\u003emkdir\u003c/span\u003e\u003cspan\u003e -p\u003c/span\u003e\u003cspan\u003e .claude/skills/fix-issue\n\u003c/span\u003e\u003cspan\u003emkdir\u003c/span\u003e\u003cspan\u003e -p\u003c/span\u003e\u003cspan\u003e .claude/agents\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003e\n\u003ca href=\"#dua-kesalahpahaman-tentang-claude\" class=\"anchor\" id=\"dua-kesalahpahaman-tentang-claude\"\u003e\u003c/a\u003eDua kesalahpahaman tentang \u003ccode\u003e.claude\u003c/code\u003e\n\u003c/h3\u003e\n\u003col\u003e\n\u003cli\u003e\n\u003ccode\u003e.claude\u003c/code\u003e tidak selalu diperlukan untuk semua pedoman Claude Code. Pedoman proyek juga dapat dikelola melalui \u003ccode\u003eCLAUDE.md\u003c/code\u003e di root atau \u003ccode\u003e.claude/CLAUDE.md\u003c/code\u003e, sedangkan pengaturan pribadi pengguna dapat ditempatkan di bawah \u003ccode\u003e~/.claude\u003c/code\u003e dalam direktori home.\u003c/li\u003e\n\u003cli\u003eNama file dibedakan berdasarkan huruf besar dan kecil, tergantung sistem operasi. Agar sesuai dengan format resmi, file masuk Skill sebaiknya ditulis sebagai \u003ccode\u003eSKILL.md\u003c/code\u003e dengan huruf besar. Jika disimpan sebagai \u003ccode\u003eskill.md\u003c/code\u003e, file tersebut mungkin tidak dikenali.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch3\u003e\n\u003ca href=\"#kriteria-pemilihan-pengaturan-proyek-dan-pengaturan-pribadi\" class=\"anchor\" id=\"kriteria-pemilihan-pengaturan-proyek-dan-pengaturan-pribadi\"\u003e\u003c/a\u003eKriteria pemilihan pengaturan proyek dan pengaturan pribadi\u003c/h3\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCakupan\u003c/th\u003e\n\u003cth\u003eKonten yang sesuai\u003c/th\u003e\n\u003cth\u003eContoh\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Cakupan\"\u003eBersama dalam proyek\u003c/td\u003e\n\u003ctd data-label=\"Konten yang sesuai\"\u003eAturan dan otomatisasi yang harus diikuti secara sama oleh semua kontributor\u003c/td\u003e\n\u003ctd data-label=\"Contoh\"\u003ePerintah pengujian, struktur direktori, konvensi API\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Cakupan\"\u003ePribadi pengguna\u003c/td\u003e\n\u003ctd data-label=\"Konten yang sesuai\"\u003ePreferensi pribadi atau pengaturan yang tidak boleh dipublikasikan dalam repositori\u003c/td\u003e\n\u003ctd data-label=\"Contoh\"\u003eCara kerja pribadi, pilihan alat lokal\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Cakupan\"\u003eKhusus lokal\u003c/td\u003e\n\u003ctd data-label=\"Konten yang sesuai\"\u003eJalur atau pengaturan eksperimen yang hanya berlaku di komputer tertentu\u003c/td\u003e\n\u003ctd data-label=\"Contoh\"\u003eJalur data lokal, prosedur debugging sementara\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003cp\u003eHanya file yang akan digunakan bersama oleh tim yang di-commit ke Git. Jangan mencatat secret key, token, atau kata sandi server internal dalam Rules atau Skills.\u003c/p\u003e\n\u003ch2\u003e\n\u003ca href=\"#langkah-2-membuat-pedoman-berkelanjutan-dengan-rules\" class=\"anchor\" id=\"langkah-2-membuat-pedoman-berkelanjutan-dengan-rules\"\u003e\u003c/a\u003eLangkah 2: Membuat pedoman berkelanjutan dengan Rules\u003c/h2\u003e\n\u003cp\u003eRules adalah fitur untuk membagi dan mengelola pedoman proyek yang perlu dijadikan acuan oleh Claude saat bekerja ke dalam beberapa file Markdown. Di antara aturan yang berada di bawah \u003ccode\u003e.claude/rules\u003c/code\u003e, file tanpa kondisi \u003ccode\u003epaths\u003c/code\u003e dimuat sebagai pedoman proyek, sedangkan file yang menentukan kondisi jalur diterapkan ketika menangani file terkait.\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#contoh-rule-dasar\" class=\"anchor\" id=\"contoh-rule-dasar\"\u003e\u003c/a\u003eContoh Rule dasar\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003e.claude/rules/code-style.md\u003c/code\u003e dapat ditulis sebagai berikut.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e# Prinsip penulisan kode\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003e- Kode aplikasi baru ditulis dalam TypeScript.\n\u003c/span\u003e\u003cspan\u003e- Untuk fungsi publik, jelaskan nilai input, nilai kembalian, dan kondisi kegagalan.\n\u003c/span\u003e\u003cspan\u003e- Jangan menyembunyikan kegagalan dengan menghapus pengujian yang sudah ada.\n\u003c/span\u003e\u003cspan\u003e- Setelah perubahan, jalankan pengujian terkait dan pemeriksaan tipe.\n\u003c/span\u003e\u003cspan\u003e- Tulis penjelasan dalam bahasa Korea, tetapi gunakan konvensi penamaan yang sudah ada untuk identifier kode.\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eRule yang baik dapat diverifikasi. “Tulis kode dengan bagus” kurang jelas dibandingkan “Setelah perubahan, jalankan \u003ccode\u003enpm test\u003c/code\u003e dan \u003ccode\u003enpm run typecheck\u003c/code\u003e.”\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#rule-yang-hanya-diterapkan-pada-jalur-tertentu\" class=\"anchor\" id=\"rule-yang-hanya-diterapkan-pada-jalur-tertentu\"\u003e\u003c/a\u003eRule yang hanya diterapkan pada jalur tertentu\u003c/h3\u003e\n\u003cp\u003eJika aturan frontend dan backend berbeda, cakupannya dapat dipersempit dengan \u003ccode\u003epaths\u003c/code\u003e pada YAML front matter.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e---\n\u003c/span\u003e\u003cspan\u003epaths:\n\u003c/span\u003e\u003cspan\u003e  - \"src/api/\u003c/span\u003e\u003cspan\u003e**/\u003c/span\u003e\u003cspan\u003e*.ts\"\n\u003c/span\u003e\u003cspan\u003e  - \"tests/api/\u003c/span\u003e\u003cspan\u003e**/\u003c/span\u003e\u003cspan\u003e*.ts\"\n\u003c/span\u003e\u003cspan\u003e---\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003e# Aturan API\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003e- Validasi semua input API dengan skema.\n\u003c/span\u003e\u003cspan\u003e- Tangani kegagalan autentikasi dan kekurangan izin sebagai kesalahan yang berbeda.\n\u003c/span\u003e\u003cspan\u003e- Jika endpoint diubah, perbarui juga pengujian API yang terkait.\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAturan berdasarkan jalur mengurangi masalah ketika pedoman yang tidak diperlukan memenuhi konteks semua pekerjaan.\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#konten-yang-tidak-boleh-dimasukkan-ke-dalam-rules\" class=\"anchor\" id=\"konten-yang-tidak-boleh-dimasukkan-ke-dalam-rules\"\u003e\u003c/a\u003eKonten yang tidak boleh dimasukkan ke dalam Rules\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProsedur migrasi yang hanya dijalankan satu kali\u003c/li\u003e\n\u003cli\u003ePersyaratan terperinci yang hanya diperlukan untuk isu tertentu\u003c/li\u003e\n\u003cli\u003eInstruksi mutlak yang saling bertentangan\u003c/li\u003e\n\u003cli\u003eKalimat panjang yang mengulang konten yang sudah dipaksakan melalui kode atau konfigurasi linter\u003c/li\u003e\n\u003cli\u003eData sensitif seperti kata sandi, API key, dan informasi pelanggan\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRules bukanlah “alat jaminan ajaib yang selalu dipatuhi.” Jika terdapat pedoman yang ambigu atau saling bertentangan, hasilnya dapat berbeda. Karena itu, gunakan juga sarana verifikasi deterministik seperti pengujian, linter, dan kontrol izin.\u003c/p\u003e\n\u003ch2\u003e\n\u003ca href=\"#langkah-3-mengotomatiskan-prosedur-berulang-dengan-skills\" class=\"anchor\" id=\"langkah-3-mengotomatiskan-prosedur-berulang-dengan-skills\"\u003e\u003c/a\u003eLangkah 3: Mengotomatiskan prosedur berulang dengan Skills\u003c/h2\u003e\n\u003cp\u003eSkill menggabungkan deskripsi, prosedur kerja, alat yang diperlukan, dan materi pendukung ke dalam satu unit yang dapat digunakan kembali. Struktur dasar Skill proyek adalah \u003ccode\u003e.claude/skills/\u0026lt;skill-name\u0026gt;/SKILL.md\u003c/code\u003e, dan template atau skrip dapat ditambahkan ke direktori yang sama jika diperlukan.\u003c/p\u003e\n\u003cp\u003eBerbeda dengan Rules, Skill digunakan ketika diperlukan untuk pekerjaan tertentu. Claude dapat memilihnya secara otomatis berdasarkan deskripsi Skill, atau pengguna dapat memanggilnya secara eksplisit dengan format \u003ccode\u003e/\u0026lt;skill-name\u0026gt;\u003c/code\u003e. Skill tidak selalu hanya berfungsi secara manual.\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#contoh-skill-untuk-memperbaiki-isu\" class=\"anchor\" id=\"contoh-skill-untuk-memperbaiki-isu\"\u003e\u003c/a\u003eContoh Skill untuk memperbaiki isu\u003c/h3\u003e\n\u003cp\u003eBerikut adalah contoh \u003ccode\u003e.claude/skills/fix-issue/SKILL.md\u003c/code\u003e.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e---\n\u003c/span\u003e\u003cspan\u003ename: fix-issue\n\u003c/span\u003e\u003cspan\u003edescription: Mereproduksi bug, mempersempit penyebabnya, lalu melakukan perbaikan minimal dan pengujian regresi.\n\u003c/span\u003e\u003cspan\u003edisable-model-invocation: true\n\u003c/span\u003e\u003cspan\u003eallowed-tools: Read, Grep, Glob, Edit, Bash(npm test:\u003c/span\u003e\u003cspan\u003e*)\n\u003c/span\u003e\u003cspan\u003e---\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003e# Prosedur perbaikan isu\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003eIsu target: $ARGUMENTS\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003e1. Periksa kode terkait dan pengujian yang sudah ada.\n\u003c/span\u003e\u003cspan\u003e2. Sebelum melakukan perbaikan, rangkum cara reproduksi dan perilaku yang diharapkan.\n\u003c/span\u003e\u003cspan\u003e3. Jelaskan akar penyebab dalam satu paragraf.\n\u003c/span\u003e\u003cspan\u003e4. Terapkan perbaikan dengan cakupan dampak sekecil mungkin.\n\u003c/span\u003e\u003cspan\u003e5. Tambahkan pengujian regresi atau pastikan pengujian yang sudah ada memverifikasi masalah tersebut.\n\u003c/span\u003e\u003cspan\u003e6. Jalankan pengujian yang diizinkan dan rangkum hasilnya.\n\u003c/span\u003e\u003cspan\u003e7. Laporkan file yang diubah, risiko yang tersisa, dan hal-hal yang perlu diperiksa secara manual.\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSkill ini dapat dipanggil sebagai berikut.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e/fix-issue Masalah foto profil yang tidak diperbarui setelah login\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003ccode\u003edisable-model-invocation: true\u003c/code\u003e berguna untuk membatasi agar Claude tidak menjalankan Skill ini atas inisiatif sendiri dan hanya menjalankannya ketika dipanggil langsung oleh pengguna. Kolom front matter yang didukung dapat berbeda tergantung versi Claude Code.\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#contoh-skill-yang-mengutamakan-desain\" class=\"anchor\" id=\"contoh-skill-yang-mengutamakan-desain\"\u003e\u003c/a\u003eContoh Skill yang mengutamakan desain\u003c/h3\u003e\n\u003cp\u003eJika ingin membuat dokumen desain terlebih dahulu alih-alih langsung menulis kode, alur berikut dapat dimasukkan ke dalam Skill.\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003ePisahkan persyaratan dari bagian yang ambigu.\u003c/li\u003e\n\u003cli\u003ePeriksa struktur yang sudah ada dan modul yang dapat digunakan kembali.\u003c/li\u003e\n\u003cli\u003eRancang aliran data, antarmuka, dan kondisi kegagalan.\u003c/li\u003e\n\u003cli\u003eTulis dokumen desain di bawah \u003ccode\u003edocs/design/\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eLakukan implementasi setelah memastikan persetujuan pengguna atau kondisi persetujuan yang telah ditentukan.\u003c/li\u003e\n\u003cli\u003eSajikan metode pengujian dan rollback.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch3\u003e\n\u003ca href=\"#syarat-skill-yang-baik\" class=\"anchor\" id=\"syarat-skill-yang-baik\"\u003e\u003c/a\u003eSyarat Skill yang baik\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInput dan hasil akhir jelas.\u003c/li\u003e\n\u003cli\u003eUrutan prosedur dan kondisi penghentian dinyatakan secara eksplisit.\u003c/li\u003e\n\u003cli\u003eHanya mengizinkan alat yang diperlukan.\u003c/li\u003e\n\u003cli\u003ePisahkan materi referensi yang panjang ke file tersendiri.\u003c/li\u003e\n\u003cli\u003eJika gagal, instruksikan untuk melapor dan tidak melanjutkan secara sembarangan.\u003c/li\u003e\n\u003cli\u003eSatu Skill tidak memiliki terlalu banyak tujuan.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePekerjaan berulang dengan awal dan akhir yang jelas, seperti membuat commit, meninjau kode, memeriksa rilis, dan merancang API, cocok dijadikan Skill.\u003c/p\u003e\n\u003ch2\u003e\n\u003ca href=\"#langkah-4-memisahkan-peran-dan-konteks-dengan-agents\" class=\"anchor\" id=\"langkah-4-memisahkan-peran-dan-konteks-dengan-agents\"\u003e\u003c/a\u003eLangkah 4: Memisahkan peran dan konteks dengan Agents\u003c/h2\u003e\n\u003cp\u003eSubagen Claude Code menjalankan peran tertentu dalam konteks terpisah dan mengembalikan hasilnya ke percakapan utama. Fitur ini berguna ketika tidak ingin menumpuk seluruh hasil pencarian atau log pengujian dalam jumlah besar di konteks utama.\u003c/p\u003e\n\u003cp\u003eAgen proyek umumnya didefinisikan dalam \u003ccode\u003e.claude/agents/\u0026lt;agent-name\u0026gt;.md\u003c/code\u003e. Agen dapat diperiksa atau dikelola melalui perintah \u003ccode\u003e/agents\u003c/code\u003e, dan pengguna juga dapat meminta dalam bahasa alami agar pekerjaan didelegasikan kepada agen tertentu.\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#contoh-agen-peninjau-kode\" class=\"anchor\" id=\"contoh-agen-peninjau-kode\"\u003e\u003c/a\u003eContoh agen peninjau kode\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003e.claude/agents/code-reviewer.md\u003c/code\u003e dapat ditulis sebagai berikut.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e---\n\u003c/span\u003e\u003cspan\u003ename: code-reviewer\n\u003c/span\u003e\u003cspan\u003edescription: Peninjau yang berfokus pada pembacaan untuk memeriksa cacat, risiko keamanan, dan pengujian yang terlewat dalam kode yang diubah\n\u003c/span\u003e\u003cspan\u003etools: Read, Grep, Glob, Bash\n\u003c/span\u003e\u003cspan\u003emodel: sonnet\n\u003c/span\u003e\u003cspan\u003e---\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003eAnda adalah agen khusus peninjauan kode.\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003eLakukan peninjauan berdasarkan urutan prioritas berikut.\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003e1. Cacat yang dapat menyebabkan gangguan nyata atau kehilangan data\n\u003c/span\u003e\u003cspan\u003e2. Masalah keamanan terkait autentikasi, izin, dan validasi input\n\u003c/span\u003e\u003cspan\u003e3. Masalah konkurensi, transaksi, dan penanganan kesalahan\n\u003c/span\u003e\u003cspan\u003e4. Pengujian yang terlewat sehingga persyaratan tidak dapat diverifikasi\n\u003c/span\u003e\u003cspan\u003e5. Struktur yang sangat menurunkan kemudahan pemeliharaan\n\u003c/span\u003e\u003cspan\u003e\n\u003c/span\u003e\u003cspan\u003eUntuk setiap temuan, sertakan jalur file, bukti, kondisi terjadinya, dan arah perbaikan minimal.\n\u003c/span\u003e\u003cspan\u003eJangan melaporkan preferensi gaya tanpa dasar sebagai cacat.\n\u003c/span\u003e\u003cspan\u003eJangan memperbaiki kode secara langsung dan hanya kembalikan hasil peninjauan.\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePermintaan dapat diberikan sebagai berikut.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003eMinta agen code-reviewer meninjau perubahan pada branch saat ini.\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003e\n\u003ca href=\"#perbedaan-antara-skill-dan-agent\" class=\"anchor\" id=\"perbedaan-antara-skill-dan-agent\"\u003e\u003c/a\u003ePerbedaan antara Skill dan Agent\u003c/h3\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eKriteria\u003c/th\u003e\n\u003cth\u003eRules\u003c/th\u003e\n\u003cth\u003eSkills\u003c/th\u003e\n\u003cth\u003eAgents\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Kriteria\"\u003eTujuan utama\u003c/td\u003e\n\u003ctd data-label=\"Rules\"\u003eMemberikan pedoman berkelanjutan\u003c/td\u003e\n\u003ctd data-label=\"Skills\"\u003eMenggunakan kembali prosedur berulang\u003c/td\u003e\n\u003ctd data-label=\"Agents\"\u003eMendelegasikan pekerjaan berdasarkan peran\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Kriteria\"\u003eWaktu penerapan\u003c/td\u003e\n\u003ctd data-label=\"Rules\"\u003eSelalu atau berdasarkan kondisi jalur\u003c/td\u003e\n\u003ctd data-label=\"Skills\"\u003eDipilih otomatis atau dipanggil secara eksplisit\u003c/td\u003e\n\u003ctd data-label=\"Agents\"\u003eDelegasi Claude atau permintaan pengguna\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Kriteria\"\u003eKonteks\u003c/td\u003e\n\u003ctd data-label=\"Rules\"\u003eDisertakan sebagai pedoman dalam pekerjaan utama\u003c/td\u003e\n\u003ctd data-label=\"Skills\"\u003eTerutama dijalankan dalam alur kerja saat ini\u003c/td\u003e\n\u003ctd data-label=\"Agents\"\u003eDijalankan dalam konteks terpisah, lalu mengembalikan hasil\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Kriteria\"\u003eContoh utama\u003c/td\u003e\n\u003ctd data-label=\"Rules\"\u003eStandar pengodean\u003c/td\u003e\n\u003ctd data-label=\"Skills\"\u003eProsedur perbaikan isu\u003c/td\u003e\n\u003ctd data-label=\"Agents\"\u003ePeninjau kode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd data-label=\"Kriteria\"\u003eLokasi penyimpanan\u003c/td\u003e\n\u003ctd data-label=\"Rules\"\u003e\u003ccode\u003e.claude/rules/*.md\u003c/code\u003e\u003c/td\u003e\n\u003ctd data-label=\"Skills\"\u003e\u003ccode\u003e.claude/skills/\u0026lt;nama\u0026gt;/SKILL.md\u003c/code\u003e\u003c/td\u003e\n\u003ctd data-label=\"Agents\"\u003e\u003ccode\u003e.claude/agents/*.md\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003ch3\u003e\n\u003ca href=\"#agents-dan-agent-teams-berbeda\" class=\"anchor\" id=\"agents-dan-agent-teams-berbeda\"\u003e\u003c/a\u003eAgents dan Agent Teams berbeda\u003c/h3\u003e\n\u003cp\u003eFakta bahwa subagen biasa menggunakan konteks terpisah tidak berarti agen dapat berkomunikasi secara bebas satu sama lain. Subagen biasa menggunakan struktur delegasi: menjalankan tugas yang diberikan lalu mengembalikan hasil kepada agen utama. Fitur Agent Teams, yang memungkinkan beberapa sesi independen saling bertukar pesan, merupakan fitur terpisah. Status dukungan dan syarat aktivasinya perlu diperiksa dalam dokumentasi resmi.\u003c/p\u003e\n\u003cp\u003eJika alur kerja dirancang dengan asumsi bahwa agen akan terus membuat agen lain secara berantai, alur tersebut dapat gagal akibat batasan versi atau izin. Lebih aman untuk memulai dengan struktur sederhana, yaitu agen utama membagi pekerjaan kepada subagen berdasarkan peran lalu menggabungkan hasilnya.\u003c/p\u003e\n\u003ch2\u003e\n\u003ca href=\"#langkah-5-memverifikasi-pemuatan-izin-dan-kualitas\" class=\"anchor\" id=\"langkah-5-memverifikasi-pemuatan-izin-dan-kualitas\"\u003e\u003c/a\u003eLangkah 5: Memverifikasi pemuatan, izin, dan kualitas\u003c/h2\u003e\n\u003cp\u003eJangan berasumsi bahwa file konfigurasi akan berfungsi sesuai tujuan hanya karena sudah dibuat. Verifikasi setiap komponen secara terpisah dengan pekerjaan kecil.\u003c/p\u003e\n\u003ch3\u003e\n\u003ca href=\"#urutan-verifikasi-yang-disarankan\" class=\"anchor\" id=\"urutan-verifikasi-yang-disarankan\"\u003e\u003c/a\u003eUrutan verifikasi yang disarankan\u003c/h3\u003e\n\u003col\u003e\n\u003cli\u003e\n\u003cstrong\u003ePeriksa Rules:\u003c/strong\u003e Minta penanganan file yang terkena aturan dan yang tidak terkena aturan untuk memeriksa kondisi jalur.\u003c/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePeriksa Skills:\u003c/strong\u003e Panggil Skill secara eksplisit dan pastikan argumen input, hasil, serta kondisi penghentian berfungsi.\u003c/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePeriksa Agents:\u003c/strong\u003e Berikan pekerjaan berisiko rendah seperti peninjauan hanya-baca, lalu periksa format hasilnya.\u003c/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePeriksa izin:\u003c/strong\u003e Tinjau apakah alat yang dapat melakukan perubahan, seperti Bash dan Edit, hanya diberikan kepada konfigurasi yang benar-benar memerlukannya.\u003c/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eVerifikasi otomatis:\u003c/strong\u003e Periksa hasil AI secara independen melalui pengujian, pemeriksaan tipe, linter, dan pemeriksaan keamanan.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch3\u003e\n\u003ca href=\"#hal-yang-perlu-diperiksa-saat-terjadi-kegagalan\" class=\"anchor\" id=\"hal-yang-perlu-diperiksa-saat-terjadi-kegagalan\"\u003e\u003c/a\u003eHal yang perlu diperiksa saat terjadi kegagalan\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eApakah \u003ccode\u003e.claude\u003c/code\u003e benar-benar berada di root proyek?\u003c/li\u003e\n\u003cli\u003eApakah nama file Skill tepat \u003ccode\u003eSKILL.md\u003c/code\u003e?\u003c/li\u003e\n\u003cli\u003eApakah Skill berada dalam struktur \u003ccode\u003e.claude/skills/\u0026lt;nama\u0026gt;/SKILL.md\u003c/code\u003e?\u003c/li\u003e\n\u003cli\u003eApakah file Agent merupakan file Markdown yang berada tepat di bawah \u003ccode\u003e.claude/agents\u003c/code\u003e?\u003c/li\u003e\n\u003cli\u003eApakah awal dan akhir YAML front matter ditutup dengan \u003ccode\u003e---\u003c/code\u003e?\u003c/li\u003e\n\u003cli\u003eApakah \u003ccode\u003ename\u003c/code\u003e dan \u003ccode\u003edescription\u003c/code\u003e cukup spesifik untuk membedakan pekerjaan?\u003c/li\u003e\n\u003cli\u003eApakah pola jalur sesuai dengan struktur proyek yang sebenarnya?\u003c/li\u003e\n\u003cli\u003eApakah versi Claude Code yang terinstal mendukung metadata yang digunakan?\u003c/li\u003e\n\u003cli\u003eApakah izin alat atau kebijakan organisasi menghalangi eksekusi?\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\n\u003ca href=\"#alasan-anggaran-konteks-dan-keamanan-harus-dirancang-bersama\" class=\"anchor\" id=\"alasan-anggaran-konteks-dan-keamanan-harus-dirancang-bersama\"\u003e\u003c/a\u003eAlasan anggaran konteks dan keamanan harus dirancang bersama\u003c/h2\u003e\n\u003cp\u003eTujuan Rules, Skills, dan Agents bukan hanya menambahkan fungsi. Ketiganya juga merupakan \u003cstrong\u003esarana rekayasa konteks\u003c/strong\u003e untuk mengendalikan informasi apa yang dimasukkan ke dalam konteks dan kapan informasi tersebut dimasukkan.\u003c/p\u003e\n\u003cp\u003eJika aturan dibuat terlalu panjang, pedoman yang tidak relevan dengan pekerjaan saat ini akan memenuhi konteks dan meningkatkan kemungkinan konflik. Sebaliknya, jika eksplorasi dan analisis log diserahkan kepada subagen, hanya kesimpulan dan bukti yang perlu tersisa dalam percakapan utama.\u003c/p\u003e\n\u003cp\u003eDari sisi keamanan, prinsip-prinsip berikut penting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTinjau Rules dan Skills seperti kode lain dalam repositori.\u003c/li\u003e\n\u003cli\u003eBaca file Agent atau Skill yang diperoleh dari sumber eksternal sebelum menjalankannya.\u003c/li\u003e\n\u003cli\u003eMinimalkan perintah shell, akses jaringan, dan izin modifikasi file.\u003c/li\u003e\n\u003cli\u003eJangan langsung memercayai perintah yang disertakan dalam input pengguna atau isi isu.\u003c/li\u003e\n\u003cli\u003eTerapkan tahap persetujuan manusia untuk deployment, penghapusan, pembayaran, dan migrasi data.\u003c/li\u003e\n\u003cli\u003eJangan menyimpan informasi rahasia dalam file prompt; gunakan sistem pengelolaan rahasia yang terpisah.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\n\u003ca href=\"#fitur-mana-yang-harus-dipilih\" class=\"anchor\" id=\"fitur-mana-yang-harus-dipilih\"\u003e\u003c/a\u003eFitur mana yang harus dipilih\u003c/h2\u003e\n\u003cp\u003eKeputusan dapat dibuat dengan cepat melalui pertanyaan berikut.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eApakah semua pekerjaan terkait harus mengikutinya? → \u003cstrong\u003eRule\u003c/strong\u003e\n\u003c/li\u003e\n\u003cli\u003eApakah ini prosedur berulang yang memiliki awal dan akhir? → \u003cstrong\u003eSkill\u003c/strong\u003e\n\u003c/li\u003e\n\u003cli\u003eApakah diperlukan peran terpisah dan konteks independen? → \u003cstrong\u003eAgent\u003c/strong\u003e\n\u003c/li\u003e\n\u003cli\u003eApakah perintah deterministik perlu dijalankan sebelum atau sesudah peristiwa tertentu? → \u003cstrong\u003ePertimbangkan Hook\u003c/strong\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSebagai contoh, “gunakan TypeScript” adalah Rule, sedangkan “jalankan proses mulai dari reproduksi bug hingga pengujian regresi” adalah Skill. “Baca perubahan dan hanya laporkan cacat keamanan” cocok untuk Agent. Tindakan yang terhubung ke peristiwa tertentu, seperti wajib menjalankan formatter setelah mengedit file, mungkin lebih cocok menggunakan Hooks.\u003c/p\u003e\n\u003cp\u003eKonfigurasi yang paling stabil tidak menganggap ketiga fitur tersebut saling bersaing, melainkan menggabungkannya. Gunakan Rule untuk memberikan standar umum, Skill untuk menjalankan prosedur standar, dan Agent untuk memisahkan pekerjaan dengan konteks besar seperti investigasi dan peninjauan, lalu lengkapi verifikasi deterministik dengan pengujian dan Hooks.\u003c/p\u003e\n","tags":["Rekayasa konteks","Claude Code","Pemrograman AI","Keterampilan agen","Agen pemrograman"],"faqs":[{"question":"Apakah folder `.claude` mutlak diperlukan di Claude Code?","answer":"Folder tersebut digunakan untuk mengelola Rules, Skills, dan Agents proyek dalam struktur standar, tetapi tidak mutlak diperlukan untuk semua petunjuk. Petunjuk proyek juga dapat ditempatkan di `CLAUDE.md` pada direktori root atau `.claude/CLAUDE.md`, sedangkan pengaturan pribadi dapat dikelola di bawah `~/.claude`."},{"question":"Apa perbedaan antara Rules dan `CLAUDE.md`?","answer":"`CLAUDE.md` cocok untuk menyediakan petunjuk inti proyek dalam satu dokumen. `.claude/rules` memudahkan pemisahan file berdasarkan topik dan penerapan kondisi berdasarkan path, sehingga membantu memodularkan aturan seiring membesarnya proyek."},{"question":"Apakah nama file Skill adalah `skill.md` atau `SKILL.md`?","answer":"Nama file entri yang sesuai dengan struktur resmi Agent Skills adalah `SKILL.md` dengan huruf kapital. Skill proyek sebaiknya ditempatkan di `.claude/skills/\u003cskill-name\u003e/SKILL.md`, dan pada sistem operasi yang membedakan huruf besar-kecil, `skill.md` akan diperlakukan sebagai file yang berbeda."},{"question":"Apakah Claude Code Skill hanya dijalankan saat dipanggil oleh pengguna?","answer":"Tidak selalu. Claude dapat melihat deskripsi Skill dan memilihnya secara otomatis untuk tugas yang sesuai, dan pengguna juga dapat memanggilnya dengan `/\u003cskill-name\u003e`. Jika pemanggilan otomatis perlu dicegah, Anda dapat mempertimbangkan pengaturan `disable-model-invocation` pada versi yang mendukungnya."},{"question":"Mana yang sebaiknya digunakan, Skill atau Agent?","answer":"Skill cocok untuk menjalankan prosedur berulang dalam alur kerja saat ini. Jika diperlukan peran terpisah dan konteks yang terisolasi, seperti untuk riset berskala besar, analisis pengujian, atau tinjauan kode, Agent lebih sesuai. Hal-hal yang harus diterapkan secara berkelanjutan, seperti standar pengodean umum, dipisahkan menjadi Rule."},{"question":"Apakah subagen dapat berkomunikasi langsung satu sama lain atau memanggil agen lain?","answer":"Subagen Claude Code pada umumnya bekerja dalam konteks terpisah, lalu mengembalikan hasilnya kepada agen utama. Kolaborasi langsung antara beberapa sesi independen harus dibedakan dari fitur Agent Teams yang terpisah, dan Anda perlu memeriksa status dukungan serta batasan versi yang digunakan."},{"question":"Jika Rules dibuat, apakah Claude akan selalu mematuhi petunjuk dengan sempurna?","answer":"Tidak. Rules adalah petunjuk yang diberikan secara berkelanjutan, tetapi bukan mekanisme penegakan yang bersifat mutlak. Karena petunjuk dapat terlewat akibat konflik atau ambiguitas, Rules harus digunakan bersama linter, pemeriksaan tipe, pengujian, Hooks, dan tinjauan kode."},{"question":"Apakah aman untuk langsung menggunakan Skill atau Agent yang diperoleh dari pihak luar?","answer":"Sebaiknya jangan langsung menjalankannya. Tinjau terlebih dahulu petunjuk yang disertakan dalam file, perintah shell, alat yang diizinkan, serta cakupan akses jaringan dan file, lalu uji dengan hak akses minimum. Pastikan juga tidak ada konten yang mendorong pengiriman informasi rahasia atau perubahan file yang berisiko."}],"sources":[{"url":"https://code.claude.com/docs/en/memory","title":"Dokumentasi Claude Code: Kelola memori Claude","type":"source"},{"url":"https://code.claude.com/docs/en/skills","title":"Dokumentasi Claude Code: Perluas kemampuan Claude dengan keterampilan","type":"source"},{"url":"https://code.claude.com/docs/en/sub-agents","title":"Dokumentasi Claude Code: Buat subagen khusus","type":"source"},{"url":"https://code.claude.com/docs/en/settings","title":"Dokumentasi Claude Code: Pengaturan Claude Code","type":"source"}],"images":[{"id":767,"url":"https://injoys.com/rails/active_storage/blobs/proxy/eyJfcmFpbHMiOnsiZGF0YSI6OTgyOSwicHVyIjoiYmxvYl9pZCJ9fQ==--8ba3d33d24232863ea1d744998bca1e2dbb088c6/ai-7c680af1.webp","is_representative":true,"generation_method":"ai_photo","license":"ai_generated","mime_type":"image/webp","translations":{"ko":{"alt":"책상에서 노트북의 개발 워크플로 대시보드를 살펴보는 사람","caption":"개발자가 노트북에서 프로젝트 파일과 자동화 작업 상태를 확인하고 있다.","description":null},"en":{"alt":"Person viewing a development workflow dashboard on a laptop at a desk","caption":"A developer reviews project files and automation task statuses on a laptop.","description":null},"ja":{"alt":"デスクでノートパソコンの開発ワークフローダッシュボードを見る人","caption":"開発者がノートパソコンでプロジェクトファイルと自動化タスクの状態を確認している。","description":null},"es":{"alt":"Persona viendo un panel de flujo de desarrollo en un portátil sobre un escritorio","caption":"Un desarrollador revisa archivos del proyecto y estados de tareas automatizadas en un portátil.","description":null},"id":{"alt":"Seseorang melihat dasbor alur kerja pengembangan di laptop pada meja","caption":"Seorang pengembang memeriksa berkas proyek dan status tugas otomatis di laptop.","description":null},"pt":{"alt":"Pessoa visualizando um painel de fluxo de desenvolvimento em um notebook","caption":"Um desenvolvedor verifica arquivos do projeto e o status de tarefas automatizadas no notebook.","description":null},"zh-hant":{"alt":"坐在書桌前查看筆電開發工作流程儀表板的人","caption":"開發者正在筆電上檢查專案檔案與自動化任務狀態。","description":null},"de":{"alt":"Person betrachtet ein Dashboard für Entwicklungsabläufe auf einem Laptop am Schreibtisch","caption":"Ein Entwickler prüft Projektdateien und den Status automatisierter Aufgaben auf einem Laptop.","description":null}}},{"id":768,"url":"https://injoys.com/rails/active_storage/blobs/proxy/eyJfcmFpbHMiOnsiZGF0YSI6OTgzNSwicHVyIjoiYmxvYl9pZCJ9fQ==--458d876e5a3cb0d4581f0909c6198e47789eda8b/ai-54d6eb4e.webp","is_representative":false,"generation_method":"ai_image","license":"ai_generated","mime_type":"image/webp","translations":{"ko":{"alt":"폴더, 필터, 자동화 단계, AI 작업 공간, 보안 및 검증 흐름을 연결한 워크플로 다이어그램","caption":"규칙과 자동화 단계가 보안 계층을 거쳐 테스트와 검증으로 이어지는 구조를 보여준다.","description":null},"en":{"alt":"Workflow diagram linking folders, filters, automation steps, an AI workspace, security, and validation","caption":"Rules and automated steps flow through a security layer into testing and validation.","description":null},"ja":{"alt":"フォルダー、フィルター、自動化工程、AI作業環境、セキュリティ、検証を結ぶワークフロー図","caption":"ルールと自動化工程がセキュリティ層を経てテストと検証へ進む構成を示している。","description":null},"es":{"alt":"Diagrama de flujo con carpetas, filtros, automatización, espacio de IA, seguridad y validación","caption":"Las reglas y los pasos automatizados pasan por una capa de seguridad hasta las pruebas y la validación.","description":null},"id":{"alt":"Diagram alur folder, filter, tahap otomatisasi, ruang kerja AI, keamanan, dan validasi","caption":"Aturan dan tahapan otomatis mengalir melalui lapisan keamanan menuju pengujian dan validasi.","description":null},"pt":{"alt":"Diagrama de fluxo com pastas, filtros, automação, ambiente de IA, segurança e validação","caption":"Regras e etapas automatizadas passam por uma camada de segurança até os testes e a validação.","description":null},"zh-hant":{"alt":"連結資料夾、篩選器、自動化步驟、AI 工作區、安全與驗證的流程圖","caption":"規則與自動化步驟經過安全層後，進入測試與驗證流程。","description":null},"de":{"alt":"Workflow mit Ordnern, Filtern, Automatisierung, KI-Arbeitsplatz, Sicherheit und Validierung","caption":"Regeln und automatisierte Schritte führen über eine Sicherheitsebene zu Tests und Validierung.","description":null}}}],"published_at":"2026-08-19T16:14:05+09:00","updated_at":"2026-08-19T16:14:05+09:00","license":"cc_by","translation_status":"reviewed","available_locales":["ko","en","ja","es"],"data_locales":["ko","en","ja","es","id","pt","zh-hant","de"],"url":"https://injoys.com/en/articles/claude-code-rules-skills-agents-guide"}