Sat Jun 27 2026 20:00:00 GMT-0400 (Eastern Daylight Time)
Claude Code Skills: File SKILL.md yang Sebenarnya Dipanggil Model
Claude Code Skills menggabungkan instruksi, file, dan skrip ke dalam satu SKILL.md yang dimuat oleh model sesuai permintaan. Saya menjelaskan cara menulis, memicu, dan membagikannya.

Terakhir diperbarui: June 28, 2026
Claude Code Skill adalah folder dengan file SKILL.md yang akan ditarik oleh agent ke dalam konteks hanya ketika sebuah tugas cocok dengannya. Saya membuat skill pertama saya untuk berhenti menempelkan daftar periksa migrasi database sepanjang 200 kata yang sama di setiap sesi. File itu sekarang menghemat waktu saya sekitar satu jam seminggu.
Berikut adalah versi singkatnya, lalu anatomi praktisnya: apa itu skill, cara menulis frontmatter dan badan SKILL.md, bagaimana model memutuskan untuk memanggil sebuah skill, dan kapan sebuah skill terlalu berlebihan dibandingkan dengan prompt biasa. Jika Anda sudah menjalankan Claude Code, Anda dapat membuat skill pertama Anda dalam waktu kurang dari lima menit.
Jawaban cepat: apa itu Claude Code Skill?
Skill adalah kemampuan yang dapat digunakan kembali (reusable), dipanggil oleh model, dan disimpan sebagai SKILL.md (ditambah skrip pendukung opsional). Tidak seperti system prompt yang selalu dimuat, skill dimuat sesuai permintaan ketika model memutuskan bahwa skill tersebut relevan dengan permintaan Anda. Anda menulis nama, deskripsi tentang kapan menggunakannya, dan instruksi badan. Deskripsi adalah bidang terpenting karena itulah yang dibaca model untuk memutuskan apakah akan memicu skill tersebut. Skill hidup secara lokal di .claude/skills/ atau dikirim dari registry, sehingga sebuah tim dapat berbagi satu cara kanonik untuk melakukan migrasi, code review, atau rilis.
Jika Anda ingin konteks yang lebih luas tentang CLI itu sendiri, lihat Claude Code ultimate guide for 2026. Untuk bagaimana skill berbeda dari sub-agent yang selalu aktif, baca how I automated my workflow with Claude Code sub-agents.
Apa sebenarnya skill itu, dan terbuat dari apa?
Skill adalah direktori. Minimal yang dibutuhkan hanyalah file SKILL.md. Secara opsional, ia dapat membundel skrip, template, atau dokumen referensi yang ikut dengan skill tersebut. Dokumentasi agent-skills Anthropic menjelaskan skill sebagai set instruksi dan sumber daya berpaket yang dapat dimuat model saat relevan (docs.anthropic.com/en/docs/agents-and-tools/agent-skills).
Saya menganggap skill sebagai subroutine bernama dan versi untuk model. Tiga hal yang membuatnya berbeda dari prompt panjang:
- Ini opsional. Model hanya memuatnya ketika tugas tampaknya cocok dengan deskripsi.
- Ini terbatas cakupannya (scoped). Anda dapat melampirkan file dan skrip yang hanya masuk akal untuk kemampuan tersebut.
- Ini dapat dibagikan. Folder ini portabel di berbagai proyek dan anggota tim.
CLI itu sendiri bersifat open source dan konvensi skill didokumentasikan di sampingnya di GitHub (github.com/anthropics/claude-code), tempat saya memeriksa ketika perilaku berubah antar rilis.
Bagaimana cara menyusun file SKILL.md?
File ini memiliki dua bagian: YAML frontmatter dan badan Markdown. Frontmatter memberi tahu model kapan menjalankannya; badan memberi tahu model apa yang harus dilakukan. Berikut adalah anatomi yang saya gunakan.
---
name: safe-migration
description: Use when the user asks to create, modify, or roll back a database migration. Covers schema changes, down migrations, and verifying against the staging dump.
---
Badannya adalah Markdown biasa. Saya menjaga tiga bagian: tujuan satu baris, prosedur bernomor, dan gerbang "berhenti dan konfirmasi" yang eksplisit. name harus cocok dengan nama folder. description harus ditulis untuk model, bukan untuk manusia, sehingga terdengar seperti kondisi pemicu (trigger condition).
Saya mengujinya secara langsung. Dengan deskripsi samar-samar seperti "membantu dengan database," skill itu terpicu pada pertanyaan SQL yang tidak terkait. Setelah saya menulis ulang menjadi "Use when the user asks to create, modify, or roll back a database migration," presisi pemanggilan meningkat dari sekitar 60 persen menjadi andal. Deskripsi melakukan routing, jadi habiskan waktu pengeditan Anda di sana.

Kapan harus mengubah sesuatu menjadi skill?
Ini adalah pertanyaan yang paling sering saya terima. Aturan saya: jika saya telah menempelkan blok instruksi yang sama tiga kali dalam dua minggu, dan itu lebih panjang dari sebuah paragraf, maka itu menjadi skill. Di bawah ini adalah matriks keputusan yang benar-benar saya gunakan.
| Sinyal | Buat skill | Pertahankan sebagai prompt |
|---|---|---|
| Digunakan 3+ kali baru-baru ini | Ya | Tidak |
| Membutuhkan skrip atau template terlampir | Ya | Tidak |
| Dibagikan di seluruh tim | Ya | Tidak |
| Sekali pakai, kurang dari satu paragraf | Tidak | Ya |
| Trivial, langkah tunggal | Tidak | Ya |
| Berubah setiap saat | Tidak | Ya |
Sumbu kedua adalah biaya. Setiap skill yang dimuat menambahkan token ke konteks, jadi blok instruksi besar dan selalu relevan lebih baik sebagai memori tingkat proyek atau perintah kustom daripada sebagai skill. Skill bersinar untuk keahlian yang kondisional relevan.
Kasus konkret di mana saya menulis sebuah skill: proses rilis kami memerlukan pembaruan changelog, peningkatan tiga file versi, penandaan (tagging), dan pengiriman ringkasan ke Slack. Saya menuliskannya sekali sebagai skill, dan sekarang saya hanya mengatakan "cut a release" dan model menjalankan seluruh daftar periksa secara berurutan. Kasus konkret di mana saya tidak melakukannya: refactor satu kali pada file konfigurasi. Itu tetap menjadi prompt.
Bagaimana pola skill yang dipanggil oleh model bekerja?
Pola yang membuat skill terasa ajaib adalah bahwa Anda tidak memanggilnya. Anda menjelaskan tugasnya, dan model membaca deskripsi dari skill yang tersedia dan menarik yang cocok. Ini didokumentasikan di docs Claude Code resmi (docs.anthropic.com/en/docs/claude-code).
Alur kerjanya seperti ini:
- Anda mengetik permintaan dalam bahasa alami.
- Model melihat
namedandescriptiondari setiap skill yang terinstal. - Ia menilai relevansi terhadap permintaan Anda.
- Badan (dan file terbungkus) skill pemenang masuk ke konteks.
- Model menjalankan instruksi tersebut.
Konsekuensi praktisnya: Anda harus menulis description seolah-olah Anda sedang menulis entri mesin pencari untuk model. Mulailah dengan kata kerja dan cakupan pemicunya. Bandingkan dua deskripsi ini:
- Lemah: "Skill untuk menangani hal-hal git."
- Kuat: "Use when the user asks to squash, rebase, or split commits on the current branch. Produces an interactive plan before running any rewrite."
Yang kuat menyebutkan kata kerja pemicu dan pagar pembatasnya (guardrail). Itulah yang membuat pemanggilan menjadi andal. Jika Anda menghubungkan skill dengan alat (tools), Claude Code MCP integration guide membahas bagaimana server alat eksternal cocok di samping bundel skill. Untuk protokol dasar yang menghubungkannya, lihat MCP and the model context.

Bagaimana cara memicu dan men-debug sebuah skill?
Memicu sebagian besar otomatis, tetapi saya memiliki tiga teknik sengaja untuk kontrol dan debugging.
- Bersikap eksplisit. Mengatakan "use the safe-migration skill" memaksa penggunaannya. Berguna ketika deskripsi ambigu.
- Daftar skill terinstal. Minta model untuk mendaftar skill yang tersedia dan deskripsinya. Ini adalah cara saya memastikan skill baru telah terdaftar.
- Inspeksi jejak (trace). Ketika sebuah skill salah terpicu, saya membaca deskripsi mana yang cocok dan memperketat kata-kata pemicunya.
Ketika sebuah skill tidak terpicu, penyebabnya hampir selalu pada deskripsi, bukan lokasi file. Saya menulis ulang kalimat pertama untuk dimulai dengan "Use when..." dan menambahkan kata kerja spesifik. Itu memperbaiki masalah sembilan dari sepuluh kali.
Berikut adalah daftar periksa debug yang saya jalankan, secara berurutan:
| Gejala | Penyebab mungkin | Perbaikan |
|---|---|---|
| Skill tidak pernah terpicu | Deskripsi terlalu samar | Tambahkan kata kerja pemicu |
| Skill terlalu sering terpicu | Deskripsi terlalu luas | Sempitkan klausa cakupan |
| Badan skill diabaikan | Badan terlalu panjang atau tidak jelas | Potong menjadi langkah bernomor |
| Skill yang salah dipilih | Dua skill tumpang tindih | Perjelas deskripsi |
| File tidak ditemukan | Tata letak folder salah | Cocokkan name dengan folder |
Skill versus sub-agent versus slash command
Ketiga hal ini saling tumpang tindih, dan orang terus-menerus bingung. Saya menjaga mereka tetap rapi dengan pemisahan sederhana.
- Skill: instruksi yang dipanggil model ditambah file opsional. Terbaik untuk keahlian kondisional.
- Sub-agent: instance Claude Code terpisah yang melakukan pekerjaan terisolasi. Terbaik untuk tugas jangka panjang dan paralel. sub-agent automation write-up saya membahas ini secara mendalam.
- Slash command: pintasan yang Anda ketikkan dengan sengaja. Terbaik untuk hal-hal yang selalu Anda inginkan sesuai permintaan.
Skill adalah satu-satunya dari ketiganya yang dipilih oleh model untuk Anda. Itulah kekuatan super dan risikonya: skill yang deskripsinya salah akan menghabiskan konteks secara diam-diam.
Bagaimana cara berbagi skill dan menggunakan registry?
Skill hanyalah folder, jadi berbagi itu sepele pada prinsipnya. Saya menjatuhkan folder di bawah .claude/skills/ dalam repo dan melakukan commit. Rekan tim mendapatkannya saat clone. Untuk berbagi antar tim, komunitas memelihara registry dan tooling resmi menunjuk ke lokasi umum.
Pengaturan praktis saya:
- Simpan skill spesifik proyek di repo, dikontrol versi.
- Simpan skill pribadi di repo dotfiles yang ditautkan (symlinked) ke
.claude/skills/. - Tetapkan versi skill saat berbagi secara eksternal, karena perubahan deskripsi dapat mengubah perilaku secara diam-diam.
Peringatan jujur tentang berbagi: sebuah skill mengkodekan asumsi tentang stack Anda. Skill migrasi yang ditulis untuk Drizzle akan dengan percaya diri menghasilkan output yang salah di proyek Prisma jika deskripsinya tidak menjaga cakupannya. Selalu nyatakan kerangka kerja dan pagar pembatas dalam deskripsi, dan tambahkan langkah "berhenti dan konfirmasi" sebelum tindakan destruktif. Saya belajar ini dengan cara sulit ketika skill bersama menjalankan rewrite destruktif pada cabang yang salah, jadi perlakukan setiap skill yang dibagikan sebagai tidak tepercaya sampai deskripsinya membuktikan sebaliknya.

Kredit Gambar
- Black screen with code text overlay on a developer workstation — foto oleh Pixabay di Pexels
- Close-up of programming code on a monitor during development — foto oleh Christina Morillo di Pexels
- Laptop showing a code editor during software development — foto oleh luis gomes di Pexels
Gunakan alat gratis sambil mengikuti panduan.
Lanjutkan membaca

Wed Mar 25 2026 20:00:00 GMT-0400 (Eastern Daylight Time)
Resizer Gambar Massal: Ubah Ukuran Ratusan Gambar Sekaligus (Gratis)
Ubah ukuran ratusan gambar secara massal dan gratis menggunakan alat peramban, ImageMagick, XnConvert, atau skrip Python. Dapatkan penghematan byte nyata dan alur kerja batch yang aman.

Wed Mar 18 2026 20:00:00 GMT-0400 (Eastern Daylight Time)
WebP Converter: Cara Mengubah Gambar ke WebP (Dengan Ukuran Asli)
Ubah gambar JPEG dan PNG menjadi WebP untuk file web yang lebih kecil. Kami membahas ukuran terukur nyata, perintah cwebp, metode Python dan peramban (browser), serta strategi fallback JPEG/PNG.

Wed Mar 11 2026 20:00:00 GMT-0400 (Eastern Daylight Time)
Real-ESRGAN AI Upscaling: Cara Kerja dan Kapan Menggunakannya
Apa itu Real-ESRGAN, bagaimana super-resolution berbasis GAN-nya bekerja, apa keunggulannya (upscaling 4x foto dan seni), serta batasannya dengan perintah yang jujur.