← BLOG
Tutorial

Buat Skills dan Perintah Kustom untuk Claude Code

Skills mengubah prompt berulang menjadi perintah yang dapat digunakan kembali. Tulis SKILL.md sekali, panggil dengan /skill-name, dan Claude Code mengeksekusi workflow lengkap setiap saat.

Skills adalah file markdown yang mendefinisikan workflow yang dapat digunakan kembali untuk Claude Code. Alih-alih mengetik prompt kompleks yang sama setiap kali Anda ingin deploy, menjalankan code review, atau menghasilkan dokumentasi, Anda menulis SKILL.md sekali dan memanggilnya dengan slash command.

Apa itu Claude Code Skill?

Skill adalah file markdown (SKILL.md) yang berisi instruksi yang diikuti Claude Code saat Anda memanggilnya. Ia bisa menyertakan deskripsi, pembatasan tool, pengaturan konteks, dan instruksi langkah demi langkah. Anggaplah ini sebagai prompt tersimpan dengan kekuatan super.

Bagaimana cara membuat Skill?

Buat file SKILL.md di direktori .claude/skills/ proyek Anda (dibagikan dengan tim) atau di ~/.claude/skills/ (pribadi):

markdown
# .claude/skills/deploy.md
---
name: deploy
description: Deploy branch saat ini ke staging
allowed-tools: Bash, Read
---

## Langkah
1. Jalankan test suite: `npm run test`
2. Jika tes lulus, build proyek: `npm run build`
3. Deploy ke staging: `npm run deploy:staging`
4. Verifikasi deployment dengan memeriksa health endpoint
5. Posting ringkasan apa yang di-deploy

Sekarang Anda bisa memanggilnya:

bash
# Di Claude Code
> /deploy

Opsi frontmatter apa yang tersedia?

OpsiFungsinyaContoh
nameNama slash commanddeploy
descriptionTampil di daftar skillDeploy ke staging
allowed-toolsBatasi tools mana yang bisa digunakan skillBash, Read, Edit
disable-model-invocationCegah panggilan AI bersarangtrue
contextPenanganan sesifork (berjalan di konteks terisolasi)

Apa kasus penggunaan yang bagus untuk Skills?

  • +Workflow deployment (tes → build → deploy → verifikasi)
  • +Checklist code review (keamanan, performa, style)
  • +Pembuatan dokumentasi (API docs, changelog, README)
  • +Operasi database (migrasi, seeding, backup)
  • +Onboarding anggota tim baru (tur proyek, verifikasi setup)
  • +Manajemen rilis (version bump, changelog, tag, publish)

Bagaimana cara menggunakan variabel di Skills?

Skills mendukung argumen melalui $ARGUMENTS (teks lengkap) dan variabel posisional ($0, $1, dll.):

markdown
# .claude/skills/create-component.md
---
name: create-component
description: Buat komponen React baru
---

Buat komponen React baru bernama $0 di direktori components.

Persyaratan:
- TypeScript dengan interface props yang tepat
- Tailwind CSS untuk styling
- Export sebagai default
- Sertakan unit test dasar di __tests__/

Penggunaan: /create-component UserProfile

Memanggil dengan argumen

bash
# Satu argumen
> /create-component UserProfile

# Beberapa argumen
> /create-component UserProfile --with-tests --with-story

Bagaimana cara berbagi Skills dengan tim Anda?

Letakkan Skills di direktori .claude/skills/ proyek Anda dan commit ke git. Setiap developer yang meng-clone repo mendapatkan skills yang sama. Skills pribadi diletakkan di ~/.claude/skills/ dan tidak dibagikan.

INFO

Skills berpadu baik dengan Hooks. Misalnya, skill "deploy" dapat memicu hook PostToolUse yang mengirim notifikasi Slack setelah deployment. Bangun otomatisasi Anda berlapis-lapis.

Pertanyaan yang sering diajukan

Berapa banyak Skills yang bisa saya miliki?+
Tidak ada batasan keras. Claude Code menemukan semua file SKILL.md di .claude/skills/ dan ~/.claude/skills/ saat sesi dimulai. Jaga jumlahnya tetap terkendali (di bawah 20) agar daftar skill tetap berguna.
Bisakah Skills memanggil Skills lainnya?+
Tidak secara langsung. Skill adalah serangkaian instruksi untuk satu pemanggilan. Namun, Anda bisa membuat skill "meta" yang menyertakan instruksi untuk menjalankan beberapa slash command secara berurutan.
Apa perbedaan antara Skills dan CLAUDE.md?+
CLAUDE.md menyediakan konteks pasif yang berlaku untuk setiap sesi. Skills adalah perintah aktif yang Anda panggil untuk tugas tertentu. CLAUDE.md berkata "begini cara proyek ini bekerja." Skills berkata "begini cara melakukan hal spesifik ini."
Bisakah saya membatasi apa yang bisa dilakukan Skill?+
Ya. Gunakan opsi frontmatter allowed-tools untuk membatasi tools mana yang bisa diakses skill. Misalnya, skill dokumentasi mungkin hanya memerlukan Read dan Write, sementara skill deploy memerlukan akses Bash.
ALL POSTSSTART FREE COURSE →