Ikhtisar
Agent Skills memperluas Claude dengan kemampuan khusus yang Claude secara otomatis memanggil ketika relevan. Skills dikemas sebagai fileSKILL.md yang berisi instruksi, deskripsi, dan sumber daya pendukung opsional.
Untuk informasi komprehensif tentang Skills, termasuk manfaat, arsitektur, dan panduan penulisan, lihat ikhtisar Agent Skills.
Cara Skills Bekerja dengan SDK
Saat menggunakan Claude Agent SDK, Skills adalah:- Didefinisikan sebagai artefak filesystem: Dibuat sebagai file
SKILL.mddi direktori tertentu (.claude/skills/) - Dimuat dari filesystem: Skills dimuat dari lokasi filesystem yang diatur oleh
settingSources(TypeScript) atausetting_sources(Python) - Ditemukan secara otomatis: Setelah pengaturan filesystem dimuat, metadata Skill ditemukan saat startup dari direktori pengguna dan proyek; konten penuh dimuat saat dipicu
- Dipanggil oleh model: Claude secara otomatis memilih kapan menggunakannya berdasarkan konteks
- Disaring melalui opsi
skills: Skills yang ditemukan diaktifkan secara default. Berikan daftar nama skill,"all", atau[]untuk mengontrol mana yang tersedia dalam sesi
Skills ditemukan melalui sumber pengaturan filesystem. Dengan opsi
query() default, SDK memuat sumber pengguna dan proyek, jadi skills di ~/.claude/skills/, <cwd>/.claude/skills/, dan .claude/skills/ di direktori induk mana pun dari <cwd> hingga akar repositori tersedia. Jika Anda menetapkan settingSources secara eksplisit, sertakan 'user' atau 'project' untuk mempertahankan penemuan skill, atau gunakan opsi plugins untuk memuat skills dari jalur tertentu.Menggunakan Skills dengan SDK
Atur opsiskills pada query() untuk mengontrol Skills mana yang tersedia untuk sesi. Ketika dihilangkan, Skills yang ditemukan diaktifkan dan alat Skill tersedia, sesuai dengan perilaku CLI. Berikan "all" untuk mengaktifkan setiap Skill yang ditemukan, daftar nama Skill untuk mengaktifkan hanya yang tersebut, atau [] untuk menonaktifkan semua. Ketika Anda menetapkan skills, SDK secara otomatis menambahkan alat Skill ke allowedTools. Jika Anda juga meneruskan daftar tools eksplisit, sertakan "Skill" dalam daftar tersebut sehingga Claude dapat memanggil skills.
Setelah dikonfigurasi, Claude secara otomatis menemukan Skills dari filesystem dan memanggilnya ketika relevan dengan permintaan pengguna.
name di SKILL.md atau nama direktori Skill. Gunakan plugin:skill untuk Skills yang disediakan plugin.
skills adalah filter konteks, bukan sandbox. Skills yang tidak tercantum disembunyikan dari model dan ditolak oleh alat Skill, tetapi file mereka tetap di disk dan dapat diakses melalui Read dan Bash.
Lokasi Skill
Skills dimuat dari direktori filesystem berdasarkan konfigurasisettingSources/setting_sources Anda:
- Project Skills (
.claude/skills/): Dibagikan dengan tim Anda melalui git - dimuat ketikasetting_sourcesmencakup"project" - User Skills (
~/.claude/skills/): Skills pribadi di semua proyek - dimuat ketikasetting_sourcesmencakup"user" - Plugin Skills: Disertakan dengan plugin Claude Code yang diinstal
Membuat Skills
Skills didefinisikan sebagai direktori yang berisi fileSKILL.md dengan frontmatter YAML dan konten Markdown. Bidang description menentukan kapan Claude memanggil Skill Anda.
Contoh struktur direktori:
- Agent Skills dalam Claude Code: Panduan lengkap dengan contoh
- Agent Skills Best Practices: Panduan penulisan dan konvensi penamaan
Pembatasan Alat
Bidang frontmatter
allowed-tools di SKILL.md hanya didukung saat menggunakan Claude Code CLI secara langsung. Ini tidak berlaku saat menggunakan Skills melalui SDK.Saat menggunakan SDK, kontrol akses alat melalui opsi allowedTools utama dalam konfigurasi query Anda.allowedTools untuk pra-persetujuan alat tertentu. Tanpa callback canUseTool, apa pun yang tidak ada dalam daftar ditolak:
Pernyataan impor dari contoh pertama diasumsikan dalam cuplikan kode berikut.
Menemukan Skills yang Tersedia
Untuk melihat Skills mana yang tersedia dalam aplikasi SDK Anda, cukup tanyakan kepada Claude:Menguji Skills
Uji Skills dengan mengajukan pertanyaan yang cocok dengan deskripsi mereka:Pemecahan Masalah
Skills Tidak Ditemukan
Periksa konfigurasi settingSources: Skills ditemukan melalui sumber pengaturanuser dan project. Jika Anda menetapkan settingSources/setting_sources secara eksplisit dan menghilangkan sumber tersebut, skills tidak dimuat:
settingSources/setting_sources, lihat referensi SDK TypeScript atau referensi SDK Python.
Periksa direktori kerja: SDK memuat Skills dari .claude/skills/ dalam opsi cwd dan di setiap direktori induk hingga akar repositori. Pastikan cwd menunjuk ke atau di bawah direktori yang berisi .claude/skills/, dalam repositori yang sama:
Skill Tidak Digunakan
Periksa opsiskills: Jika Anda melewatkan daftar skills, konfirmasi nama skill disertakan. Melewatkan [] menonaktifkan semua skills.
Periksa deskripsi: Pastikan itu spesifik dan mencakup kata kunci yang relevan. Lihat Agent Skills Best Practices untuk panduan tentang menulis deskripsi yang efektif.
Pemecahan Masalah Tambahan
Untuk pemecahan masalah Skills umum (sintaks YAML, debugging, dll.), lihat bagian pemecahan masalah Claude Code Skills.Dokumentasi Terkait
Panduan Skills
- Agent Skills dalam Claude Code: Panduan Skills lengkap dengan pembuatan, contoh, dan pemecahan masalah
- Agent Skills Overview: Ikhtisar konseptual, manfaat, dan arsitektur
- Agent Skills Best Practices: Panduan penulisan untuk Skills yang efektif
- Agent Skills Cookbook: Contoh Skills dan template
Sumber Daya SDK
- Subagents dalam SDK: Agen berbasis filesystem serupa dengan opsi programatis
- Slash Commands dalam SDK: Perintah yang dipanggil pengguna
- SDK Overview: Konsep SDK umum
- Referensi SDK TypeScript: Dokumentasi API lengkap
- Referensi SDK Python: Dokumentasi API lengkap