Referensi perintah plugin
Referensi untuk perintah shell plugin claude, /plugin dan /reload-plugins dalam sesi, dan flag yang memuat plugin untuk satu sesi.
Anda menjalankan perintah plugin baik sebagai claude plugin dari shell atau skrip Anda, atau sebagai /plugin dan /reload-plugins di dalam sesi Claude Code. Referensi ini memberikan flag, default, output, dan kode keluar setiap perintah, bersama dengan dua flag yang memuat plugin untuk satu sesi.
Tabel di bawah ini mencantumkan opsi yang umum digunakan untuk setiap subperintah, bukan semua opsi. Jalankan claude plugin --help di shell Anda untuk melihat subperintah mana yang dimiliki versi Anda, dan claude plugin <subcommand> --help untuk daftar opsi lengkap suatu subperintah.
[!NOTE]
Kasus-kasus ini tercakup di halaman lain:
- Instal dan kelola langkah, dan di mana
/pluginberjalan: lihat Instal dan kelola plugin- Apa yang diubah perintah di disk dan cakupan mana yang diutamakan: lihat Referensi pemuatan plugin
- Apa arti pesan kesalahan: lihat Troubleshoot plugin
Perintah claude plugin
Jalankan claude plugin <subcommand> dari shell Anda atau dari skrip, di luar sesi Claude Code. Subperintah ini menginstal dan mengelola plugin tanpa membuka panel /plugin.
claude plugins adalah alias untuk claude plugin.
Setiap subperintah menggunakan exit code, argumen plugin, dan nilai cakupan yang sama berikut ini:
- Exit code:
0jika berhasil dan1jika gagal.validatemenambahkan exit2untuk kesalahan yang tidak terduga, danevalmenambahkan kode yang tercantum di bagiannya. - Argumen plugin: argumen
<plugin>adalahnameplugin atauname@marketplace. Jika dua marketplace menawarkan nama yang sama, gunakan bentuk yang memenuhi syarat (qualified).configurehanya menerima bentuk yang memenuhi syarat. - Cakupan:
--scopemenerimauser,project, ataulocal, dan menentukan file pengaturan yang ditulis oleh perintah tersebut.updatejuga menerimamanaged.
plugin init
Membuat kerangka plugin baru di ~/.claude/skills/<name>/. Kecuali administrator Anda telah memblokir plugin direktori skills, plugin ini dimuat pada sesi Anda berikutnya sebagai <name>@skills-dir tanpa langkah instalasi.
new adalah alias untuk init.
Untuk alur kerja membuat, menguji, dan mengedit yang dimulai dengan perintah ini, lihat Membuat plugin.
claude plugin init <name> [options]
<name> menjadi nama direktori di bawah ~/.claude/skills/ dan name plugin di manifesnya.
Perintah ini tidak memiliki flag untuk lokasi lain. Untuk membuat kerangka di dalam proyek, lihat Membuat plugin.
| Flag | Deskripsi |
|---|---|
--description <text> |
Deskripsi manifes |
--author <name> |
Nama penulis. Default-nya git config user.name |
--author-email <email> |
Email penulis. Default-nya git config user.email |
--with <components...> |
Juga membuat file awal untuk skills, agents, hooks, mcp, lsp, output-style, atau channel |
-f, --force |
Menimpa .claude-plugin/ yang sudah ada di target |
Buat kerangka plugin dengan file skill dan hook awal:
claude plugin init my-helper --with skills hooks
Claude Code memvalidasi apa yang ditulisnya dan mencetak Created plugin "my-helper" at ~/.claude/skills/my-helper, diikuti oleh id yang digunakan saat dimuat dan perintah claude plugin disable yang menonaktifkannya.
Claude Code keluar dengan 1 tanpa menulis apa pun jika tidak dapat membuat kerangka dengan aman, dan pesannya menyebutkan alasannya. Berikut alasan yang umum:
- Nilai
--withyang tidak dikenal - Kerangka yang sudah ada di target tanpa
--force - Allowlist marketplace terkelola tanpa sumber
skills-dir, atau blocklist yang menyebutkannya. Pesannya adalahPlugins from ~/.claude/skills/ are blocked by your organization's managed settings.
plugin install
Menginstal plugin dari salah satu marketplace Anda. i adalah alias untuk install.
claude plugin install <plugin> [options]
Sebagian besar plugin terinstal tanpa permintaan konfirmasi. Untuk plugin yang entri marketplace-nya menjalankan perintah untuk menginstalnya atau menetapkan headersHelper untuk unduhannya, Claude Code terlebih dahulu mencetak perintah tersebut dan bertanya Run this command now? [y/N].
| Flag | Deskripsi |
|---|---|
-s, --scope <scope> |
Cakupan instalasi: user, project, atau local. Default-nya user |
--config <key=value> |
Menetapkan opsi userConfig yang dideklarasikan manifes plugin. Ulangi flag untuk setiap opsi. Kunci yang ditulis <server>.<key> menetapkan pengaturan yang dideklarasikan oleh server MCP yang dibundel dalam user_config-nya sendiri, untuk file bundel yang dikirimkan di dalam plugin. Bentuk <server>.<key> memerlukan Claude Code v2.1.285 atau yang lebih baru |
-y, --yes |
Menerima perintah instalasi yang ditampilkan tanpa permintaan Run this command now?. Diabaikan ketika perintah berjalan di dalam sesi Claude Code, seperti dari tool Bash atau hook. Memerlukan Claude Code v2.1.229 atau yang lebih baru |
--accept-command <sha256> |
Menerima perintah instalasi yang ditampilkan yang sha256-nya dilaporkan oleh eksekusi --json sebelumnya di shownCommand, sebagai pengganti -y. Tidak dapat digabungkan dengan -y. Lihat Menerima perintah instalasi yang ditampilkan. Memerlukan Claude Code v2.1.271 atau yang lebih baru |
--json |
Mencetak hasil sebagai satu objek JSON pada baris terakhir stdout alih-alih pesan yang dapat dibaca manusia, untuk digunakan dalam skrip. Lihat Format hasil JSON. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
--marketplace <source> |
Menginstal <plugin>, yang diberikan dengan nama polosnya, dari marketplace di <source>, dengan menambahkan marketplace tersebut terlebih dahulu jika Anda belum menambahkannya. Lihat Menambahkan marketplace dan menginstal dalam satu perintah. Memerlukan Claude Code v2.1.292 atau yang lebih baru |
Jalankan claude plugin install --help di shell Anda untuk melihat setiap opsi yang didukung versi Anda.
Berikan -y dari terminal Anda sendiri untuk menerima perintah yang ditampilkan tanpa permintaan konfirmasi. Berikut yang terjadi tanpa TTY dan ketika Claude menjalankan perintah tersebut:
- stdin atau stdout bukan TTY, dan Anda tidak memberikan
-ymaupun--accept-command: instalasi ditolak. Output menyatakan bahwa perintah hanya ditampilkan, dan exit code-nya1 - Claude menjalankan perintah melalui tool Bash-nya:
-ydiabaikan. Jalankan perintah dari terminal Anda sendiri sebagai gantinya
Untuk membagikan plugin kepada semua orang yang meng-clone proyek, jalankan claude plugin install dengan --scope project lalu lakukan commit pada .claude/settings.json. Kemudian minta setiap orang menambahkan marketplace dan menjalankan perintah yang sama di clone mereka sendiri:
claude plugin install formatter@my-marketplace --scope project
Claude Code mencetak Successfully installed plugin: formatter@my-marketplace (scope: project). Jika tidak ada yang baru terinstal, output menjelaskan alasannya:
- Sudah terinstal di cakupan tersebut: outputnya
Plugin "formatter@my-marketplace" is already installed (scope: project)dan exit code-nya0 - Anda menolak permintaan konfirmasi command-source: outputnya
Aborted.dan exit code-nya1 - Anda menolak permintaan konfirmasi
headersHelper, atau permintaan tersebut tidak dapat dikonfirmasi tanpa TTY: outputnyaAborted — the command was not run.dan exit code-nya1
Format hasil JSON
Ketika Anda memberikan --json ke plugin install, baris terakhir stdout adalah satu objek JSON. Uraikan hanya baris tersebut, karena Claude Code mencetak setiap perintah yang dideklarasikan marketplace sebelumnya.
Tiga field selalu ada:
command: subperintah yang dijalankan, sepertiinstalloutcome:okataufailedmessage: deskripsi hasil yang dapat dibaca manusia
Field lain, seperti pluginId, scope, dan failureCode, hanya muncul jika relevan.
Opsi --json pada plugin uninstall, plugin update, plugin enable, dan plugin disable mencetak objek yang sama dengan field milik subperintah tersebut.
Kesalahan penggunaan, seperti --scope yang tidak valid, tidak mencetak baris hasil dan keluar dengan 1 dengan alasannya di stderr.
Hasil JSON untuk perintah marketplace
Pada plugin marketplace add, plugin marketplace remove, dan plugin marketplace update, --json mencetak satu objek JSON pada baris terakhir stdout dengan field command, outcome, dan message. Berikut adalah hasil dari claude plugin marketplace remove your-marketplace --json:
{"command":"marketplace-remove","outcome":"ok","marketplace":"your-marketplace","message":"Successfully removed marketplace: your-marketplace"}
Nilai command adalah marketplace-add, marketplace-remove, atau marketplace-update. Field di bawah ini hanya muncul jika relevan:
marketplace: nama marketplace yang ditindaklanjuti oleh perintahfailureCode: kode yang menjelaskan mengapa perintah gagal, sepertiinvalid_source
plugin marketplace add dan plugin marketplace remove dapat tidak mencetak baris hasil ketika argumennya adalah nama yang dicadangkan anthropic-plugin-directory, jadi periksa exit code untuk nama tersebut.
Menerima perintah instalasi yang ditampilkan
Ketika eksekusi --json menampilkan perintah yang dideklarasikan marketplace dan tidak menjalankannya, hasil failed juga membawa objek shownCommand. Field-nya mencakup perintah sebagaimana ditampilkan, plugin pemiliknya, dan sha256 dari perintah tersebut.
Untuk menerima tepat perintah tersebut, jalankan ulang dengan sha256 tersebut sebagai --accept-command dari terminal Anda sendiri, karena flag ini tidak berpengaruh di dalam sesi Claude Code. Memerlukan Claude Code v2.1.271 atau yang lebih baru.
sha256 dihitung sebagai penerimaan untuk tepat perintah, plugin, dan katalog marketplace tersebut. Jika salah satunya berubah sejak perintah ditampilkan, Claude Code tidak menerima sha256 tersebut dan menampilkan perintahnya lagi. Perubahan yang diambil oleh penyegaran marketplace dari eksekusi itu sendiri juga dihitung sebagai perubahan semacam itu.
Jika shownCommand.acceptCommandMatched bernilai false, sha256 yang Anda berikan tidak cocok dengan perintah yang sekarang ditampilkan. Tinjau perintah tersebut sebelum menjalankan ulang dengan sha256-nya.
plugin uninstall
Menghapus plugin yang terinstal dari satu cakupan. remove dan rm adalah alias untuk uninstall.
claude plugin uninstall <plugin> [options]
| Flag | Deskripsi |
|---|---|
-s, --scope <scope> |
Menghapus instalasi dari cakupan: user, project, atau local. Default-nya user |
--keep-data |
Mempertahankan direktori data persisten plugin, ~/.claude/plugins/data/<id>/ |
--prune |
Juga menghapus dependensi yang diinstal otomatis yang tidak lagi dibutuhkan oleh plugin yang tersisa |
-y, --yes |
Melewati permintaan konfirmasi --prune. Wajib bersama --prune ketika stdin atau stdout bukan TTY |
--json |
Mencetak hasil sebagai satu objek JSON pada baris terakhir stdout, dalam format yang sama dengan plugin install --json. Tidak dapat digabungkan dengan --prune. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
Hapus instalasi plugin dari cakupan project:
claude plugin uninstall formatter@my-marketplace --scope project
Claude Code mencetak Successfully uninstalled plugin: formatter (scope: project). Jika plugin tidak terinstal di cakupan tersebut, perintah mencetak baris yang diawali Failed to uninstall plugin "formatter@my-marketplace": dan keluar dengan 1.
Jika baris kegagalan berlanjut dengan "formatter" was not uninstalled: dan menyebutkan file pengaturan, Claude Code tidak dapat memastikan bahwa pengaturan cakupan tersebut tidak lagi mengaktifkan plugin, sehingga plugin tetap terinstal beserta semua yang disimpannya. Dengan --json, hasilnya membawa failureCode: "settings_still_on". Pemeriksaan pengaturan ini memerlukan Claude Code v2.1.282 atau yang lebih baru.
Apa yang dihapus dan dipertahankan oleh penghapusan instalasi
Ketika Anda menghapus instalasi plugin dari cakupan terakhir tempat plugin tersebut terinstal, Claude Code juga menghapus opsi dan rahasia yang tersimpan milik plugin serta direktori datanya, ~/.claude/plugins/data/<id>/. Ada tiga pengecualian:
- Dengan
--keep-data, direktori data tetap ada - Ketika plugin lain yang terinstal menggunakan folder yang sama, seperti plugin yang ID-nya berbeda dari plugin ini hanya dalam huruf besar/kecil, direktori data tetap ada
- Ketika Claude Code tidak dapat membaca kembali daftar plugin yang terinstal setelah menghapus plugin dari cakupan tersebut, opsi, rahasia, dan direktori data semuanya tetap ada, karena plugin mungkin masih terinstal di cakupan lain. Penghapusan instalasi tetap berhasil. Pesannya mencantumkan apa yang tetap ada dan cara menghapusnya, dan dengan
--jsonhasilnya membawasavedKept: "install_records_unreadable"
Dengan --json, keptData melaporkan apakah direktori tetap ada, dan /plugin menampilkan · data preserved jika demikian. Untuk direktori yang tetap ada tanpa --keep-data, pelaporan ini memerlukan Claude Code v2.1.281 atau yang lebih baru. Field savedKept memerlukan Claude Code v2.1.282 atau yang lebih baru.
plugin enable
Mengaktifkan plugin yang dinonaktifkan. Untuk plugin yang disinkronkan dari claude.ai, berikan <name>@synced sebagai plugin.
claude plugin enable <plugin> [options]
| Flag | Deskripsi |
|---|---|
-s, --scope <scope> |
Cakupan tempat mengaktifkan: user, project, atau local. Dideteksi otomatis jika dihilangkan |
--json |
Mencetak hasil sebagai satu objek JSON pada baris terakhir stdout, dalam format yang sama dengan plugin install --json. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
Tanpa --scope, perintah memeriksa file pengaturan Anda dengan urutan local, project, user, dan menggunakan cakupan pertama yang menyebutkan plugin tersebut.
Jika Anda memberikan --scope tempat plugin tidak dideklarasikan, perintah akan menulis override atau gagal:
- Cakupan yang diutamakan daripada cakupan yang mendeklarasikan: Claude Code menulis override di cakupan yang Anda berikan. Misalnya,
claude plugin disable formatter --scope localmenonaktifkan plugin yang diaktifkan di project hanya untuk Anda - Cakupan lainnya: perintah gagal dengan
Plugin "formatter" is installed at project scope, not user. Use --scope project or omit --scope to auto-detect.
Jika plugin sudah diaktifkan di cakupan yang ditentukan, perintah mencetak Plugin "formatter" is already enabled dan keluar dengan 1. Dengan --json, hasilnya memiliki "failureCode": "already_in_goal_state" dan "alreadyInGoalState": true, sehingga skrip dapat memperlakukan kasus tersebut sebagai keberhasilan.
Ketika plugin mendeklarasikan dependensi, Claude Code juga mengaktifkannya. Perintah gagal dalam kasus-kasus berikut:
- Dependensi tidak terinstal: pengaktifan gagal dan mencetak perintah
claude plugin installuntuk setiap dependensi yang hilang - Dependensi diblokir oleh kebijakan plugin organisasi Anda: pengaktifan gagal dan menyebutkan dependensi yang diblokir
- Dependensi diatur ke
falsedi cakupan dengan prioritas lebih tinggi daripada cakupan target: pengaktifan gagal. Aktifkan dependensi di cakupan tersebut, atau berikan--scopeuntuk menulis di sana
Aktifkan kembali plugin di mana pun plugin tersebut dideklarasikan:
claude plugin enable formatter
Claude Code mencetak Successfully enabled plugin: formatter (scope: project), dengan menyebutkan cakupan yang terdeteksi.
plugin disable
Menonaktifkan plugin tanpa menghapus instalasinya. Untuk plugin yang disinkronkan dari claude.ai, berikan <name>@synced sebagai plugin.
claude plugin disable [plugin] [options]
| Flag | Deskripsi |
|---|---|
-a, --all |
Menonaktifkan setiap plugin yang aktif. Tidak dapat digabungkan dengan nama plugin atau --scope |
-s, --scope <scope> |
Cakupan tempat menonaktifkan: user, project, atau local. Dideteksi otomatis jika dihilangkan |
--json |
Mencetak hasil sebagai satu objek JSON pada baris terakhir stdout, dalam format yang sama dengan plugin install --json. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
Tanpa --scope, cakupan dideteksi otomatis dengan urutan local, project, user yang sama seperti plugin enable.
Jika Anda tidak memberikan nama plugin maupun --all, Claude Code mencetak Please specify a plugin name or use --all to disable all plugins dan keluar dengan 1. Menonaktifkan plugin yang sudah dinonaktifkan mencetak Plugin "formatter" is already disabled dan keluar dengan 1, sama seperti yang dilakukan plugin enable untuk plugin yang sudah diaktifkan.
Perintah gagal untuk plugin yang masih dibutuhkan:
- Plugin aktif lain bergantung pada plugin tersebut: perintah gagal dan menyebutkan plugin dependen yang harus dinonaktifkan terlebih dahulu
- Organisasi Anda mewajibkannya sebagai plugin yang disinkronkan: perintah gagal dan tidak menyimpan apa pun
Nonaktifkan satu plugin:
claude plugin disable formatter
Claude Code mencetak Successfully disabled plugin: formatter (scope: project).
plugin update
Memperbarui plugin ke versi terbaru yang ditawarkan marketplace-nya. Versi baru dimuat pada sesi Anda berikutnya, atau setelah Anda menjalankan /reload-plugins di sesi yang sedang berjalan.
claude plugin update <plugin> [options]
| Flag | Deskripsi |
|---|---|
-s, --scope <scope> |
Cakupan yang diperbarui: user, project, local, atau managed. Dideteksi otomatis jika dihilangkan |
-y, --yes |
Menerima perintah instalasi yang berubah dari plugin command-source, tanpa permintaan konfirmasi. Wajib ketika stdin atau stdout bukan TTY, kecuali Anda memberikan --accept-command. Memerlukan Claude Code v2.1.229 atau yang lebih baru |
--accept-command <sha256> |
Menerima perintah yang dideklarasikan marketplace yang sha256-nya dilaporkan oleh eksekusi --json sebelumnya di shownCommand, sebagai pengganti -y. Tidak dapat digabungkan dengan -y. Memerlukan Claude Code v2.1.271 atau yang lebih baru |
--json |
Mencetak hasil sebagai satu objek JSON pada baris terakhir stdout, dalam format yang sama dengan plugin install --json. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
Perbarui plugin:
claude plugin update formatter@my-marketplace
Claude Code mencetak Checking for updates for plugin "formatter@my-marketplace"…, lalu hasilnya. Jika tidak ada yang lebih baru, Claude Code mencetak formatter is already at the latest version (1.0.0). dan keluar dengan 0, kecuali jika Claude Code mencoba ulang instalasi dependensi plugin dan instalasi tersebut gagal.
Cakupan mana yang diperbarui perintah
Jika Anda menghilangkan --scope, perintah memperbarui plugin di cakupan paling spesifik tempat plugin tersebut terinstal untuk proyek Anda saat ini, dengan memeriksa local, project, user, lalu managed.
Sebelum v2.1.281, perintah menggunakan user ketika Anda menghilangkan --scope, sehingga memperbarui plugin yang hanya terinstal di cakupan project atau local gagal dengan Plugin "<name>" is not installed at scope user. Pada versi tersebut, berikan --scope.
managed adalah satu-satunya cakupan yang dapat Anda perbarui tetapi tidak dapat menjadi tujuan instalasi. Untuk plugin yang diinstal admin, lihat Mengelola plugin untuk organisasi Anda.
Memperbarui dengan nama polos
Anda dapat memberikan nama plugin polos, yang dicocokkan perintah dengan plugin yang terinstal. Ketika plugin terinstal dari marketplace berbeda memiliki nama yang sama, perintah menolak pembaruan dan mencantumkan perintah plugin-name@marketplace-name yang memenuhi syarat untuk dijalankan sebagai gantinya. Memperbarui dengan nama polos memerlukan Claude Code v2.1.246 atau yang lebih baru.
Mencoba ulang instalasi dependensi yang belum selesai
Ketika plugin sudah berada di versi terbarunya, perintah juga dapat mencoba ulang instalasi dependensi yang belum selesai di salinan cache-nya. Untuk kasus-kasus ketika retry tersebut dijalankan atau dilewati, lihat Paket yang dicantumkannya tidak terinstal. Jika retry gagal, outputnya Failed to update plugin "formatter@my-marketplace" beserta alasannya dan exit code-nya 1. Sebelum v2.1.287, perintah melaporkan plugin berada di versi terbarunya tanpa mencoba ulang instalasi.
plugin list
Mencantumkan plugin yang terinstal beserta versi, cakupan, dan statusnya.
claude plugin list [options]
| Flag | Deskripsi |
|---|---|
--json |
Mencetak daftar sebagai JSON |
--available |
Juga mencantumkan plugin yang ditawarkan marketplace Anda yang belum Anda instal. Tidak berpengaruh tanpa --json |
--data-size [plugin] |
Mengukur direktori data tersimpan setiap plugin yang terinstal, atau hanya milik plugin yang disebutkan, yang diberikan sebagai name@marketplace. Tidak berpengaruh tanpa --json. Jika nama tersebut tidak memiliki catatan instalasi, perintah mencetak --data-size names a plugin that is not installed dan keluar dengan 1 alih-alih mencetak daftar. Memerlukan Claude Code v2.1.285 atau yang lebih baru |
Claude Code mengelompokkan output yang dapat dibaca manusia berdasarkan cara setiap plugin dimuat:
Installed plugins:: plugin yang Anda instal dari marketplaceSession-only plugins (--plugin-dir / --plugin-url):: plugin yang dimuat oleh flag tersebut dalam perintah yang sama, seperti padaclaude --plugin-dir ./my-plugin plugin listSkills-directory plugins (.claude/skills/*):: plugin yang ditemukan Claude Code di direktori skillsSynced from claude.ai: plugin yang disinkronkan dari akun claude.ai Anda
Jika tidak ada apa pun di kelompok mana pun, Claude Code mencetak No plugins installed. Use `claude plugin install` to install a plugin.
Output JSON
Dengan --json, Claude Code mencetak array dengan satu objek per instalasi. Setiap objek membawa field di bawah ini. id, version, scope, enabled, dan installPath selalu ada, dan yang lainnya hanya muncul jika relevan.
| Field | Tipe | Deskripsi |
|---|---|---|
id |
string | name@marketplace untuk instalasi, name@inline untuk plugin khusus sesi, name@skills-dir untuk plugin direktori skills, name@synced untuk plugin yang disinkronkan dari claude.ai |
version |
string | Untuk instalasi marketplace, versi yang dihitung Claude Code saat instalasi. Untuk plugin khusus sesi, direktori skills, atau yang disinkronkan, version dari manifes, atau unknown jika manifes tidak mendeklarasikannya |
scope |
string | user, project, local, atau managed untuk instalasi; user atau project untuk plugin direktori skills; session untuk plugin khusus sesi; synced untuk plugin yang disinkronkan dari claude.ai |
enabled |
boolean | Apakah plugin diaktifkan dalam pengaturan gabungan Anda |
installPath |
string | Direktori tempat plugin dimuat, kecuali untuk plugin yang oleh sesi dimuat di tempat dari folder marketplace-nya |
readFromFolder |
string | Untuk plugin yang oleh sesi dimuat di tempat dari folder marketplace-nya, direktori sumber plugin di dalam folder tersebut. Memerlukan Claude Code v2.1.289 atau yang lebih baru |
folderVersion |
string | Bersama readFromFolder, version plugin sebagaimana dimuat Claude Code dari folder tersebut, yang dapat berbeda dari field version di atas. Tidak ada jika plugin tidak dimuat atau tidak mendeklarasikan versi. Memerlukan Claude Code v2.1.289 atau yang lebih baru |
installedAt |
string | Stempel waktu ISO instalasi. Hanya instalasi marketplace |
lastUpdated |
string | Stempel waktu ISO pembaruan terakhir. Hanya instalasi marketplace |
projectPath |
string | Proyek tempat instalasi berada. Hanya cakupan project dan local |
mcpServers |
object | Definisi server MCP plugin, jika plugin yang diinstal dari marketplace memilikinya |
errors |
array of strings | Kesalahan pemuatan, jika plugin gagal dimuat |
notes |
array of strings | Peringatan yang bukan kesalahan pemuatan, seperti masalah penulisan atau paket yang tidak terinstal |
errorDetails |
array of objects | Satu objek per entri errors, yang memberikan type diagnostiknya dan nama-nama yang dirujuknya, seperti plugin, marketplace, server, atau file. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
noteDetails |
array of objects | Objek detail yang sama untuk setiap entri notes. Memerlukan Claude Code v2.1.268 atau yang lebih baru |
hasUserConfig |
boolean | Ada dan bernilai true ketika plugin dimuat dan manifesnya mendeklarasikan opsi userConfig. Tidak ada untuk plugin yang gagal dimuat, apa pun yang dideklarasikan manifesnya. Memerlukan Claude Code v2.1.285 atau yang lebih baru |
projectEnabled |
boolean | Apakah .claude/settings.json bersama milik proyek mengaktifkan plugin. Hanya instalasi marketplace. Memerlukan Claude Code v2.1.285 atau yang lebih baru |
dataDirSize |
object | Bersama --data-size, ukuran direktori data tersimpan plugin sebagai bytes dan human; tidak ada jika direktori tidak ada atau kosong. Hanya instalasi marketplace. Memerlukan Claude Code v2.1.285 atau yang lebih baru |
dataDirUnreadable |
boolean | Bersama --data-size, true ketika direktori data tersimpan ada tetapi tidak dapat diukur. Hanya instalasi marketplace. Memerlukan Claude Code v2.1.285 atau yang lebih baru |
Dengan --json --available, Claude Code mencetak satu objek alih-alih array. Field installed-nya berisi array objek plugin yang terinstal, dan field available-nya berisi satu objek per plugin marketplace yang belum terinstal dengan field di bawah ini.
| Field | Tipe | Deskripsi |
|---|---|---|
pluginId |
string | name@marketplace |
name |
string | Nama plugin di marketplace |
marketplaceName |
string | Marketplace yang menawarkannya |
source |
string or object | Sumber entri marketplace: string untuk path relatif, objek untuk lainnya |
description |
string | Deskripsi entri, jika ada |
version |
string | Versi entri, jika dideklarasikan |
installCount |
number | Jumlah instalasi, jika Claude Code memilikinya untuk plugin tersebut |
plugin details
Menampilkan inventaris komponen plugin dan proyeksi biaya token-nya.
Plugin harus dimuat: terinstal, ditemukan di direktori skills, atau diberikan dengan --plugin-dir atau --plugin-url dalam perintah yang sama. <name> adalah name plugin atau name@marketplace.
claude plugin details <name>
Perintah ini tidak menerima flag selain --help.
Tampilkan apa yang disumbangkan oleh plugin yang terinstal:
claude plugin details formatter
Claude Code mencetak nama, versi, deskripsi, dan sumber plugin, lalu bagian-bagian berikut:
Component inventory: skill, agent, hook, server MCP, dan server LSP milik pluginProjected token cost: token yang selalu aktif yang ditambahkan plugin ke setiap sesiPer-component (rounded): estimasi selalu aktif dan saat dipanggil untuk setiap skill, agent, dan perintah. Dihilangkan jika plugin tidak memilikinya
Untuk arti kedua angka biaya tersebut, lihat Mengukur biaya dan penggunaan plugin.
Untuk plugin yang tidak dimuat, Claude Code mencetak pesan ini dan keluar dengan 1:
Plugin "formatter" not found. Run `claude plugin list` to see installed plugins, or pass --plugin-dir <path> to load one from disk.
ID yang diakhiri dengan @builtin merujuk pada salah satu plugin bawaan Claude Code. Jika Anda memberikan ID seperti itu dan Claude Code tidak menemukan plugin tersebut, pesannya menjadi seperti berikut:
Plugin "<name>@builtin" not found. Built-in plugins don't appear in `claude plugin list`. To see the ones available in a session, run /plugin in Claude Code and open the Installed tab.
plugin configure
Menampilkan opsi userConfig dari plugin yang terinstal dan mana yang sudah ditetapkan, atau menyimpan nilai yang dialirkan melalui stdin. Memerlukan Claude Code v2.1.285 atau yang lebih baru.
claude plugin configure <plugin>
| Flag | Deskripsi |
|---|---|
--values-stdin |
Membaca nilai opsi dari stdin sebagai objek JSON berisi string satu baris dan menyimpannya. Opsi yang tidak Anda sertakan mempertahankan nilai tersimpannya |
--json |
Mencetak hasil sebagai satu objek JSON di stdout. Tanpa --values-stdin, objek membawa schema dan choices opsi, inputs awalnya, serta nama opsi configured dan unconfigured. Dengan --values-stdin, objek membawa nama opsi saved dan, jika dapat dibaca kembali, nama opsi unconfigured |
Tanpa flag, perintah mencantumkan setiap opsi dengan hingga tiga label: required atau optional, lalu sensitive untuk opsi yang dideklarasikan sensitif oleh manifes, lalu set atau not set. Perintah ini tidak mencetak nilai tersimpan. Dengan --json, output menyertakan nilai tersimpan dari opsi yang tidak sensitif, dan tidak pernah menyertakan teks opsi yang sensitif.
Untuk menyimpan nilai, tulis nilai tersebut ke file sebagai objek JSON yang memetakan kunci opsi ke nilai string, lalu berikan file tersebut melalui stdin. Ganti formatter@my-marketplace dengan id plugin Anda sendiri sebagaimana ditampilkan oleh claude plugin list. Contoh ini menetapkan satu opsi bernama api_url dari file values.json yang berisi {"api_url": "https://example.com"}:
claude plugin configure formatter@my-marketplace --values-stdin < values.json
Claude Code memvalidasi setiap nilai terhadap tipe yang dideklarasikan untuk opsi tersebut dan mencetak Configuration saved. Restart Claude Code to apply it. Jika Anda memberikan kunci yang tidak dideklarasikan manifes, atau nilai yang gagal validasi, perintah tidak menyimpan apa pun, mencetak Failed to save configuration: beserta alasannya, dan keluar dengan 1. Dengan --json, nilai yang ditolak juga mencetak objek di stdout yang field refused-nya membawa message dan, jika satu opsi yang bermasalah, kunci option-nya.
Berikan id lengkap name@marketplace plugin, sebagaimana ditampilkan oleh claude plugin list. configure tidak menerima name polos. Jika tidak ada plugin yang dimuat dengan id tersebut, perintah mencetak No installed plugin has the id "<plugin>". dan keluar dengan 1.
Untuk pengaturan server MCP yang dibundel, lihat plugin install --config atau item Configure di /plugin.
plugin prune
Menghapus dependensi yang diinstal otomatis yang tidak lagi dibutuhkan oleh plugin terinstal mana pun. Perintah ini tidak pernah menghapus plugin yang Anda instal sendiri. autoremove adalah alias untuk prune.
claude plugin prune [options]
| Flag | Deskripsi |
|---|---|
-s, --scope <scope> |
Melakukan prune di cakupan: user, project, atau local. Default-nya user |
--dry-run |
Mencantumkan apa yang akan dihapus tanpa menghapusnya |
-y, --yes |
Melewati permintaan konfirmasi. Wajib ketika stdin atau stdout bukan TTY |
Pratinjau apa yang akan dihapus oleh prune:
claude plugin prune --dry-run
Claude Code mencantumkan dependensi yatim dan diakhiri dengan (dry run — nothing removed). Jika tidak ada yang perlu dihapus, Claude Code mencetak baris yang diawali Nothing to prune.
Tanpa --dry-run, perintah menghapus dependensi yatim hanya setelah Anda mengonfirmasi di permintaan konfirmasi atau memberikan -y.
Exit code-nya 0 apa pun jawaban Anda di permintaan konfirmasi.
Apa yang dilakukan prune bergantung pada apakah terminal terpasang dan apakah Anda memberikan -y:
| Terminal dan flag | Yang terjadi |
|---|---|
Terminal interaktif, tanpa -y |
Mencantumkan dependensi yatim dan bertanya Remove? [y/N] |
Terminal apa pun, -y |
Menghapusnya dan mencetak Removed N auto-installed plugins: <names> |
stdin atau stdout non-TTY, tanpa -y |
Mencetak daftar dan Not a TTY — run `claude plugin prune -y` to remove., tanpa menghapus apa pun |
plugin eval
Menjalankan kasus eval plugin dan melaporkan hasil yang dinilai. Memerlukan Claude Code v2.1.269 atau yang lebih baru.
Setiap kasus adalah prompt ditambah grader. Claude Code menjalankannya beberapa kali dalam sesi terisolasi dengan hanya plugin target yang dimuat, dan secara default juga tanpa plugin sehingga laporan menunjukkan perbedaannya.
Lihat Menguji plugin dengan eval untuk format kasus, grader, hasil, dan penggunaan CI.
claude plugin eval [target] [options]
target opsional default-nya adalah direktori saat ini dan menerima salah satu bentuk berikut:
- Direktori plugin
- Satu file
prompt.mdataucase.yaml - Plugin yang terinstal sebagai
nameatauname@marketplace name@skills-dir
Letakkan target sebelum --tag, --allow-tools, dan --json. Masing-masing opsi ini mengambil kata-kata yang mengikutinya sebagai nilainya, sehingga target yang ditulis setelah salah satunya akan dibaca sebagai tag, nama tool, atau path output JSON, bukan sebagai target.
Tabel ini mencantumkan opsi yang digunakan sebagian besar eksekusi. Jalankan claude plugin eval --help untuk set lengkapnya, termasuk --case, --tag, --output-dir, --report, --allow-real-servers, --keep-temp, dan --verbose.
| Opsi | Deskripsi | Default |
|---|---|---|
--runs <n> |
Jumlah eksekusi per kasus di setiap arm | runs dari setiap kasus, selain itu 3 |
-j, --concurrency <n> |
Sesi agent yang dijalankan sekaligus, 1 sampai 8. Sesi-sesi ini berbagi rate limit Anda | 1 |
--model <model> |
Model untuk agent yang diuji | model dari setiap kasus, selain itu ANTHROPIC_MODEL jika ditetapkan, selain itu default Claude Code |
--judge-model <model> |
Model untuk grader llm dan baseline |
Model untuk tugas latar belakang |
--ablation <mode> |
none atau with-without. Lihat Menilai terhadap baseline tanpa plugin |
Diputuskan per kasus, sebagaimana dijelaskan di bagian tersebut |
--threshold <0..1> |
Keluar dengan 1 jika ada kasus yang skornya di bawah nilai ini | 1.0 |
--max-cost-usd <usd> |
Berhenti sebelum eksekusi berikutnya setelah pengeluaran mencapai nilai ini, keluar dengan 2, dan melaporkan hasil parsial | Tanpa batas |
--allow-tools <tools...> |
Memberikan tool di luar set read-only, seperti Bash, Write, Edit, atau "mcp__plugin_<plugin>_<server>__*". Lihat Memberikan tool |
|
--scaffold |
Menjalankan scaffold_script setiap kasus |
Nonaktif |
--trust-plugin |
Melewati permintaan kepercayaan pada eksekusi pertama, untuk CI. Lihat Apa yang dapat diakses oleh eksekusi | Nonaktif |
--mocks <mode> |
record atau off. Lihat Mock server MCP |
record |
--eval-dir <dir> |
Direktori di bawah plugin yang berisi kasus | experimental.evals dari manifes, selain itu evals |
--json [path] |
Mencetak dokumen hasil ke stdout, atau menulisnya ke path .json |
|
--no-publish |
Menyimpan laporan HTML secara lokal |
Exit code melaporkan bagaimana eksekusi berakhir. Untuk menindaklanjutinya dalam pipeline, lihat Menjalankan eval di CI.
| Exit code | Arti |
|---|---|
0 |
Suite lulus: setiap kasus memenuhi ambang batas dan tidak ada hal lain yang menggagalkan eksekusi |
1 |
Kasus yang gagal, kesalahan pemuatan, direktori plugin yang tidak tepercaya, eksekusi yang berakhir karena kesalahan API, atau penyebab lain yang tercantum di Menjalankan eval di CI |
2 |
Eksekusi parsial |
130 |
Diinterupsi |
143 |
Dihentikan |
plugin eval init
Membuat suite eval untuk plugin di direktori saat ini. Memerlukan Claude Code v2.1.269 atau yang lebih baru. Lihat Membuat suite eval pertama Anda.
claude plugin eval init [name] [options]
Jalankan perintah dari folder root plugin, yaitu direktori yang berisi .claude-plugin/plugin.json atau SKILL.md milik skill. Untuk sengaja membuat kerangka suite di direktori lain, berikan --eval-dir.
Di terminal, perintah membuka sesi Claude Code interaktif untuk wawancara penulisan. Dalam wawancara, Claude melakukan hal berikut:
- Membaca plugin
- Menanyakan kepada Anda apa yang harus dilakukan plugin dengan baik
- Mengusulkan kasus dan grader
- Menulis file kasus
- Menjalankan kasus dan meninjau nilai bersama Anda untuk memeriksa bahwa grader menilai seperti yang akan Anda lakukan
Dengan --bare, atau tanpa terminal, perintah menulis templat kosong satu kasus sebagai gantinya. Ketika Claude menjalankan perintah dari dalam sesi Claude Code, perintah mencetak instruksi wawancara untuk diikuti oleh sesi tersebut alih-alih menulis templat.
name opsional adalah nama kasus. Nama ini wajib dengan --bare atau tanpa terminal, karena perintah menulis templat kosong untuk kasus tersebut. Nama kasus diawali dengan huruf atau angka dan hanya berisi huruf, angka, ., _, dan -. Di setiap platform, perintah juga menolak nama yang tidak dapat disimpan Windows, seperti con atau nama yang diakhiri dengan ..
Perintah menerima opsi-opsi berikut:
| Opsi | Deskripsi | Default |
|---|---|---|
--bare |
Menulis prompt.md dan graders/criteria.md kosong untuk <name> alih-alih menjalankan wawancara |
|
-i, --interactive |
Mewajibkan wawancara. Gagal tanpa terminal alih-alih menulis templat | |
--eval-dir <dir> |
Direktori di bawah direktori saat ini tempat kasus ditulis | experimental.evals dari manifes, selain itu evals |
plugin tag
Membuat tag git beranotasi bernama <name>--v<version> untuk rilis plugin. Sebelum memberi tag, perintah memeriksa bahwa plugin.json plugin dan setiap entri marketplace yang mencantumkannya sepakat mengenai versinya.
Untuk kapan memberi tag pada rilis, lihat Menerbitkan plugin.
claude plugin tag [path] [options]
[path] adalah direktori plugin, dengan default direktori saat ini. Perintah menemukan entri marketplace dengan menelusuri ke atas dari direktori tersebut hingga .claude-plugin/marketplace.json yang mencantumkan plugin tersebut.
| Flag | Deskripsi |
|---|---|
--push |
Mendorong tag ke --remote setelah membuatnya |
--dry-run |
Mencetak apa yang akan diberi tag tanpa membuat tag |
-f, --force |
Melewati pemeriksaan working tree kotor dan tag sudah ada |
-m, --message <msg> |
Pesan anotasi tag. %s mewakili versi. Default-nya <name> <version> |
--remote <name> |
Remote tujuan push dengan --push. Default-nya origin |
Pratinjau tag untuk plugin dalam checkout marketplace:
claude plugin tag plugins/formatter --dry-run
Claude Code mencetak rencananya:
- Nama plugin
- Versi dan file asalnya
- Entri marketplace yang cocok, jika ada
- Nama tag
- Perintah
git tagdangit pushyang akan dijalankannya
Tanpa --dry-run, Claude Code mencetak Created tag formatter--v1.0.0 dan Pushed to origin atau perintah push untuk Anda jalankan sendiri. Jika push gagal, tag tetap dibuat secara lokal dan perintah keluar dengan kesalahan.
Perintah keluar dengan 1 dan mencetak alasannya jika tidak dapat memberi tag dengan aman. Alasan yang umum adalah:
- Tidak ada
versiondiplugin.jsonatau entri marketplace - Tag sudah ada
- Working tree kotor
plugin test
Menjalankan pengujian untuk mod, yaitu plugin yang kodenya mendaftarkan event handler. Perintah ini tidak memerlukan sesi, login, atau jaringan. Untuk cara menulis pengujian, lihat Menguji mod.
claude plugin test [directory]
[directory] adalah direktori mod, dengan default direktori saat ini. Perintah menjalankan setiap file di bawahnya yang namanya diakhiri dengan .test.ts atau .test.tsx, dan keluar dengan status 1 jika ada pengujian yang gagal.
Jalankan pengujian untuk mod di ./first-mod:
claude plugin test ./first-mod
plugin validate
Memvalidasi manifes plugin, manifes marketplace, atau skill, agent, dan perintah di dalam direktori, lalu keluar dengan kode yang dapat ditindaklanjuti oleh job CI. Untuk alur kerja membuat, menguji, dan mengedit, lihat Membuat plugin. Untuk apa yang diperiksa validator di setiap manifes, lihat referensi manifes plugin dan referensi marketplace.
claude plugin validate <path> [options]
| Flag | Deskripsi |
|---|---|
--strict |
Memperlakukan peringatan sebagai kesalahan, sehingga field yang tidak dikenali dan metadata yang hilang yang ditoleransi runtime menggagalkan eksekusi |
--json |
Menghasilkan laporan validasi sebagai satu objek JSON dengan exit code yang sama. Memerlukan Claude Code v2.1.259 atau yang lebih baru |
Validasi plugin sebelum melakukan commit:
claude plugin validate ./my-plugin --strict
Memvalidasi direktori
<path> adalah file manifes atau direktori. Jika diberi direktori, Claude Code memilih apa yang divalidasi berdasarkan apa yang ditemukannya di sana:
.claude-plugin/marketplace.json, jika ada- Jika tidak,
.claude-plugin/plugin.json - Jika tidak, file komponen, yang dipilih berdasarkan nama direktori. Memvalidasi file komponen tanpa manifes memerlukan Claude Code v2.1.233 atau yang lebih baru:
- Direktori bernama
skills,agents, ataucommands: file-file di dalamnya - Direktori bernama
.claude: direktoriskills,agents, dancommandsdi dalamnya - Direktori lainnya: ketiga direktori tersebut di bawah
.claude-nya
- Direktori bernama
Ketika direktori berisi .claude-plugin/marketplace.json sekaligus .claude-plugin/plugin.json, Claude Code memvalidasi marketplace dan juga manifes serta file komponen plugin. Ini memerlukan Claude Code v2.1.289 atau yang lebih baru.
Claude Code tidak mengikuti symlink di dalam direktori yang Anda sebutkan. Apa yang dilakukannya bergantung pada letak tautan tersebut:
- Direktori
skills,agents, ataucommandsyang ditautkan di bawah root plugin atau.claude: Claude Code memperingatkan bahwa tidak ada isinya yang dibaca. - Entri yang ditautkan di dalam direktori
skills,agents, ataucommands: Claude Code melewatinya dan memperingatkan, per direktori, berapa banyak entri yang dilewati yang akan dimuat oleh sesi. - Direktori
skills,agents, ataucommandsyang Anda sebutkan itu sendiri adalah symlink, atau direktori induk.claude-nya adalah symlink: Claude Code melaporkan kesalahan dan tidak memeriksa apa pun di dalamnya. Sebutkan direktori yang sebenarnya sebagai gantinya.
Beberapa file tidak dibaca oleh eksekusi validasi:
SKILL.mddi root plugin: ketika Anda menjalankanclaude plugin validateterhadap direktori plugin, Claude Code tidak memeriksaSKILL.mddi root pluginCLAUDE.mddi root plugin: dalam eksekusi plugin, Claude Code juga memperingatkan tentangCLAUDE.mddi root plugin- File plugin dalam eksekusi marketplace: dari direktori marketplace, Claude Code tidak membuka file skill, agent, perintah, atau hook dari plugin yang dicantumkan marketplace di direktori lain, maupun file server MCP yang dibundelnya. Untuk menemukan kesalahan di file-file tersebut, validasi setiap direktori plugin
Memvalidasi file manifes
Ketika file tidak bernama plugin.json atau marketplace.json dan tidak berada di direktori .claude-plugin, Claude Code menentukan jenisnya berdasarkan field-nya. Claude Code memvalidasi file tersebut sebagai marketplace dalam kasus-kasus berikut, dan selain itu sebagai manifes plugin:
pluginsadalah arraypluginsdanownersama-sama ada- File memiliki field yang hanya didefinisikan oleh
marketplace.json, sepertiowner, dan tidak memiliki field yang hanya didefinisikan olehplugin.json, sepertiauthor
Untuk memilih pemeriksaan sendiri, beri nama file plugin.json atau marketplace.json. Claude Code memvalidasi file lain apa pun di direktori .claude-plugin sebagai manifes plugin.
Output dan exit code
Claude Code mencetak file yang divalidasinya, setiap kesalahan dan peringatan beserta path-nya, dan baris putusan. Exit code mengikuti putusan tersebut:
| Exit code | Baris putusan | Arti |
|---|---|---|
0 |
Validation passed atau Validation passed with warnings |
Manifes dapat dimuat. Dengan --strict, juga tanpa peringatan |
1 |
Validation failed atau Validation failed (--strict treats warnings as errors) |
Kesalahan, atau peringatan di bawah --strict. Saran tidak dihitung, dengan atau tanpa --strict |
2 |
Unexpected error during validation: <reason> |
Validator itu sendiri gagal, seperti pada path yang tidak dapat dibaca |
Dengan --json, Claude Code menulis laporan ke stdout sebagai satu objek JSON dengan field tingkat atas berikut:
success: putusan yang sama dengan yang diberikan exit codestrict: apakah eksekusi memperlakukan peringatan sebagai kesalahantarget: path yang telah di-resolve yang divalidasi Claude Codemanifest: hasil manifes itu sendiri, ataunulluntuk eksekusi tanpa manifescontents: hasil per file, masing-masing menyebutkanfile-nya dan membawa arrayerrors,warnings, dannotes. File tanpa kesalahan, peringatan, atau catatan tidak mendapat entri, sehinggacontentskosong jika tidak ada yang perlu dilaporkan. Untuk direktori denganmarketplace.jsondanplugin.json,manifestadalah hasilmarketplace.jsondan hasilplugin.jsondimasukkan kecontentsgatingHooks: apakah setiap hook mod yang dapat menolak suatu tindakan, seperti hooktool.call, memiliki handler.catch. Setiap item memberikanmodule,pattern,hook, danhasCatch. Memerlukan Claude Code v2.1.290 atau yang lebih baru
advice: saran dari eksekusi, masing-masing entri menyebutkan README sebagaifiledan membawamessagesertainstallLineuntuk ditempelkan. Kosong jika tidak ada. Memerlukan Claude Code v2.1.295 atau yang lebih baru
Pada exit 2, perintah tidak menulis apa pun ke stdout. Pesan kesalahan dikirim ke stderr.
Saran pada README
Blok Advice dalam output claude plugin validate berarti README plugin tidak memiliki baris yang menginstal plugin dari marketplace, dan blok tersebut memberi Anda baris untuk ditambahkan. Saran bukan kesalahan maupun peringatan. Saran tidak mengubah baris putusan atau exit code, dengan atau tanpa --strict. Fitur ini memerlukan Claude Code v2.1.295 atau yang lebih baru.
Misalnya, memvalidasi direktori marketplace acme-tools mencetak saran ini untuk plugin deploy-helper-nya:
Validating marketplace manifest: /path/to/acme-tools/.claude-plugin/marketplace.json
ℹ Advice (does not change the verdict):
❯ /path/to/acme-tools/plugins/deploy-helper/README.md: This README has no line that installs "deploy-helper" from a marketplace. Add the install line, which works in one step on Claude Code 2.1.275 or later.
/plugin install deploy-helper --marketplace acme/tools
✔ Validation passed
Untuk menghilangkan saran tersebut, tempelkan baris yang disarankan ke README yang disebutkannya, lalu jalankan claude plugin validate lagi di shell Anda. Blok Advice akan hilang.
Jika baris yang disarankan berisi placeholder <owner>/<repo>, menempelkannya tanpa perubahan tidak akan menghilangkan saran tersebut. Dapatkan sumber yang sebenarnya terlebih dahulu:
- Anda memvalidasi direktori plugin itu sendiri: ketika marketplace mencantumkan plugin dari direktori di dalam direktorinya sendiri, validasi direktori tersebut sebagai gantinya. Ketika marketplace mencantumkan plugin dari tempat lain, seperti repositori GitHub, isi
<owner>/<repo>sendiri - Anda memvalidasi direktori marketplace: Claude Code mengisi sumber dari remote
originmilik direktori.gitdi tingkat teratas direktori tersebut. Ketika Claude Code tidak dapat menggunakan remote tersebut, seperti ketika remote tidak ada, ganti<owner>/<repo>dengan sumber marketplace Anda sendiri
Baris instalasi yang sudah Anda tulis dihitung ketika plugin install, atau bentuk singkatnya plugin i, diikuti pada baris yang sama oleh salah satu dari berikut ini. Penulisan /plugin dan claude plugin sama-sama dihitung:
<plugin>@<marketplace>, seperti/plugin install deploy-helper@acme-tools- Nama plugin dan
--marketplace <source>, seperti/plugin install deploy-helper --marketplace acme/tools
Perintah claude plugin marketplace
Jalankan claude plugin marketplace <subcommand> dari shell Anda untuk menambah, mencantumkan, menyegarkan, dan menghapus marketplace yang Anda instal plugin.
- Kode keluar: subperintah ini mengikuti konvensi kode keluar perintah plugin
- Cakupan: flag
--scopemereka tidak memiliki bentuk pendek-s
Untuk apa marketplace dan bagaimana Claude Code menyimpannya, lihat Referensi pemuatan plugin.
plugin marketplace add
Tambahkan marketplace dari repositori GitHub, URL git, marketplace.json yang dihosting, atau jalur lokal, dan deklarasikan dalam file pengaturan.
Setelah menambahkannya, Claude Code menginstal dependensi apa pun yang hilang dari plugin yang diinstal.
claude plugin marketplace add <source> [options]
| Flag | Deskripsi |
|---|---|
--scope <scope> |
File pengaturan untuk mendeklarasikan marketplace: user, project, atau local. Default ke user |
--sparse <paths...> |
Batasi checkout git ke direktori ini, untuk monorepo. Hanya sumber github dan git |
--claudeai |
Baca argumen sebagai nama marketplace yang dihosting di claude.ai alih-alih sumber. Memerlukan Claude Code v2.1.273 atau lebih baru |
--json |
Cetak apakah perintah berhasil, beserta pesannya, sebagai satu objek JSON pada baris terakhir stdout, dalam format hasil JSON. Tidak berpengaruh bila digunakan dengan --claudeai. Memerlukan Claude Code v2.1.287 atau lebih baru |
<source> mengambil salah satu bentuk dalam tabel di bawah, dan bentuknya memutuskan tipe sumber dan cara Claude Code mengambil marketplace. Untuk objek sumber yang dihasilkan, lihat referensi marketplace.
| Anda ketik | Tipe sumber | Cara Claude Code mengambilnya |
|---|---|---|
owner/repo, owner/repo#ref, atau owner/repo@ref |
github |
Mengkloning repositori GitHub, disematkan ke ref ketika diberikan. Pemilik dan repo harus mengikuti aturan penamaan GitHub |
user@host:path[.git][#ref] |
git |
Mengkloning melalui SSH |
URL http:// atau https:// yang berakhir dengan .git[#ref] atau berisi /_git/, seperti https://example.com/repo.git |
git |
Mengkloning URL, termasuk URL Azure DevOps |
https://github.com/owner/repo atau https://gitlab.com/namespace/project, atau yang sama melalui http:// |
git |
Mengkloning URL setelah menambahkan .git |
URL http:// atau https:// lain, termasuk host git yang dihosting sendiri tanpa .git |
url |
Mengambil URL sebagai marketplace.json. Untuk mengkloning repositori di sana, tambahkan .git |
./path, ../path, /path, atau ~/path ke direktori |
directory |
Membaca direktori di tempat. Di Windows, bentuk .\, ..\, dan C:\ juga berfungsi |
Bentuk jalur yang sama, ke file .json |
file |
Membaca file di tempat |
Untuk host yang URL klonnya tidak membawa akhiran .git, seperti AWS CodeCommit, tambahkan marketplace sebagai entri git dalam extraKnownMarketplaces. Claude Code mengkloning entri git apakah atau tidak URL-nya berakhir dengan .git.
Claude Code juga mengkloning URL gitlab.com dengan subgrup bersarang, seperti https://gitlab.com/group/subgroup/project.
Tambahkan marketplace dan bagikan dengan proyek:
claude plugin marketplace add your-org/your-marketplace --scope project
Claude Code mencetak Successfully added marketplace: your-marketplace (declared in project settings), menggunakan name dari manifest marketplace sendiri. Penambahan berulang atau sumber yang tidak valid mencetak salah satu hasil ini:
- Marketplace sudah di disk: output adalah
Marketplace 'your-marketplace' already on disk — declared in project settingsdan kode keluar adalah0 - Sumber yang tidak dikenali: output adalah
Invalid marketplace source format. Try: owner/repo, https://..., or ./pathdan kode keluar adalah1 - Host telanjang seperti
gitlab.example.com/team/plugins: penambahan gagal sebagai shorthandowner/repoyang tidak valid, dan pesan memberi tahu Anda untuk menambahkanhttps://atau menggunakan jalur lokal
Tambahkan marketplace yang dihosting di claude.ai dengan nama yang dicetak dalam bagian From claude.ai: dari claude plugin marketplace list:
claude plugin marketplace add --claudeai claudeai-organization-library
Dengan --claudeai, perintah menolak --scope dan --sparse. Marketplace dihosting untuk akun Anda, bukan dideklarasikan dalam file pengaturan, jadi Anda tidak dapat membagikannya melalui .claude/settings.json proyek.
plugin marketplace list
Daftar setiap marketplace yang telah Anda tambahkan, dengan sumbernya.
claude plugin marketplace list [options]
| Flag | Deskripsi |
|---|---|
--json |
Cetak daftar sebagai JSON |
Claude Code mencetak Configured marketplaces: dan satu baris Source: per marketplace, atau No marketplaces configured.
Dengan --json, Claude Code mencetak array dengan satu objek per marketplace, membawa field di bawah. Setiap field adalah string.
| Field | Deskripsi |
|---|---|
name |
Nama marketplace |
source |
github, git, url, directory, file, atau claudeai |
repo |
owner/repo. Hanya sumber github |
url |
URL kloning atau pengambilan. Hanya sumber git dan url |
path |
Jalur lokal. Hanya sumber directory dan file |
ref |
Branch atau tag yang disematkan. Sumber github dan git, hanya ketika disematkan |
installLocation |
Di mana Claude Code menyimpan marketplace |
Marketplace claude.ai yang ditambahkan tidak memiliki kloning lokal, jadi entrinya membawa pengidentifikasi claude.ai-nya, marketplaceId dan organizationUuid, sebagai pengganti installLocation. Juga membawa scope ketika satu dicatat, dan status.
Jika sesi terminal Anda menyinkronkan plugin dari akun claude.ai Anda, daftar teks berakhir dengan bagian From claude.ai:. Bagian itu menamai marketplace yang claude.ai daftar untuk akun Anda yang belum Anda tambahkan, baik berbasis git maupun dihosting. Memerlukan Claude Code v2.1.273 atau lebih baru.
Untuk menambahkan marketplace dari bagian itu, lihat Tambahkan marketplace dari claude.ai.
Output --json mencakup marketplace yang dikonfigurasi saja dan meninggalkan bagian.
plugin marketplace remove
Hapus deklarasi marketplace dari pengaturan Anda. rm adalah alias untuk remove.
[!WARNING]
Ketika Anda menghapus marketplace dari cakupan terakhir yang mendeklarasikannya, Claude Code juga menghapus cache dan mencopot setiap plugin yang Anda instal darinya. Juga menghapus opsi dan rahasia yang disimpan dan data di mana pun dapat.
Untuk menyegarkan marketplace tanpa kehilangan plugin, jalankan
plugin marketplace updatesebagai gantinya.
claude plugin marketplace remove <name> [options]
<name> adalah nama marketplace yang ditunjukkan plugin marketplace list, bukan sumber yang Anda lewatkan ke add.
| Flag | Deskripsi |
|---|---|
--scope <scope> |
Hapus deklarasi dari satu cakupan pengaturan: user, project, atau local. Tanpanya, Claude Code menghapus deklarasi dari setiap cakupan |
--json |
Cetak apakah perintah berhasil, beserta pesannya, sebagai satu objek JSON pada baris terakhir stdout, dalam format hasil JSON. Memerlukan Claude Code v2.1.287 atau lebih baru |
Hapus marketplace dari setiap cakupan:
claude plugin marketplace remove your-marketplace
Claude Code mencetak Successfully removed marketplace: your-marketplace. Ketika perintah mencopot plugin, output mencantumkan mereka di bawah baris seperti Also uninstalled 2 plugins from this marketplace:. Untuk menggunakan salah satu dari mereka lagi, tambahkan marketplace kembali dan instal ulang plugin.
Jika Anda membatasi ke file pengaturan yang tidak mendeklarasikan marketplace, perintah gagal dengan Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.
plugin marketplace update
Segarkan satu marketplace, atau setiap marketplace, dari sumbernya untuk mengambil plugin dan versi baru. Marketplace yang ditambahkan dengan branch atau tag ref diperbarui ke commit terbaru dari ref itu, bukan branch default repositori.
claude plugin marketplace update [name] [options]
| Flag | Deskripsi |
|---|---|
--json |
Cetak apakah perintah berhasil, beserta pesannya, sebagai satu objek JSON pada baris terakhir stdout, dalam format hasil JSON. Tanpa nama, perintah menolak --json dan keluar dengan 1. Memerlukan Claude Code v2.1.287 atau lebih baru |
Segarkan satu marketplace:
claude plugin marketplace update your-marketplace
Claude Code mencetak Successfully updated marketplace: your-marketplace. Ketika Anda menghilangkan nama, mencetak hitungan seperti Successfully updated 2 marketplaces.
/plugin dalam sesi
Di dalam sesi interaktif, /plugin membuka panel plugin. Setiap subperintah membuka panel di tab, menjalankan tindakan di sana, atau mencetak hasil inline. /plugins dan /marketplace adalah alias untuk /plugin.
Anda hanya dapat menjalankan perintah ini dalam sesi terminal interaktif. Dalam run non-interaktif seperti claude -p, Claude Code menjawab bahwa /plugin tidak tersedia di lingkungan ini.
Untuk permukaan mana yang memiliki /plugin, cara menginstal tanpanya, dan apa yang ditunjukkan setiap tab panel, lihat Instal dan kelola plugin.
<plugin> adalah plugin name atau name@marketplace.
Tabel di bawah mencantumkan setiap bentuk sesi. Subperintah shell init, update, details, prune, eval, eval init, dan test tidak memiliki bentuk sesi.
| Perintah | Alias | Apa yang dilakukan |
|---|---|---|
/plugin |
Membuka panel di tab Discover. Kata pertama yang tidak dikenali setelah /plugin melakukan hal yang sama |
|
/plugin help |
/plugin --help, /plugin -h |
Menampilkan daftar penggunaan subperintah /plugin |
/plugin list [--enabled|--disabled] |
ls |
Mencetak plugin yang diinstal marketplace Anda inline, dengan versi, cakupan, dan status. Flag filter menampilkan hanya status itu. Plugin yang status aktifnya belum diterapkan ditandai — run /reload-plugins to apply |
/plugin install |
i |
Membuka tab Discover |
/plugin install <plugin> |
i |
Membuka detail plugin di tab Discover. Dengan name@marketplace, membukanya dalam daftar marketplace itu |
/plugin install <source> |
i |
Melaporkan kesalahan marketplace not found dan tidak menginstal apa pun ketika target adalah path, URL, atau owner/repo, bahkan sumber yang sudah Anda tambahkan. Untuk menginstal dari sumber, lihat Tambahkan marketplace dan instal dalam satu perintah |
/plugin install <plugin> --marketplace <source> |
i |
Menambahkan marketplace di <source> ketika Anda belum menambahkannya, meminta Anda mengonfirmasi terlebih dahulu, kemudian membuka detail plugin. Lihat Tambahkan marketplace dan instal dalam satu perintah. Memerlukan Claude Code v2.1.275 atau lebih baru |
/plugin manage |
Membuka tab Installed | |
/plugin stats |
Membuka tab Stats, dalam sesi di mana /skill-doctor tersedia. Di tempat lain membuka panel di tab Discover |
|
/plugin enable <plugin> |
Membuka tab Installed di plugin dan mengaktifkannya | |
/plugin disable <plugin> |
Membuka tab Installed di plugin dan menonaktifkannya | |
/plugin uninstall <plugin> |
Membuka tab Installed di plugin dan mencopot | |
/plugin configure <plugin> |
config |
Membuka dialog userConfig plugin, atau melaporkan bahwa plugin tidak mendeklarasikan |
/plugin validate <path> |
Mencetak laporan yang sama seperti claude plugin validate, inline |
|
/plugin tag [path] [--push] [--dry-run] [--force] |
Membuat tag rilis sebagai claude plugin tag lakukan. Menerima --push, --dry-run, dan --force atau -f; dengan flag lain atau argumen ekstra, Claude Code mencetak penggunaan |
|
/plugin marketplace |
market |
Tidak melakukan apa pun yang terlihat. Lewatkan add, list, update, atau remove |
/plugin marketplace add [source] |
market add |
Dengan sumber, menambahkannya dan melaporkan hasil. Tanpanya, membuka input Add marketplace |
/plugin marketplace list |
market list |
Mencetak nama marketplace Anda inline |
/plugin marketplace update [name] |
market update |
Membuka tab Marketplaces. Dengan nama, menyegarkan marketplace itu di sana |
/plugin marketplace remove [name] |
market remove, market rm, marketplace rm |
Membuka tab Marketplaces. Dengan nama, menghapus marketplace itu di sana |
Jika Anda menamai plugin yang tidak diinstal dalam proyek saat ini dalam /plugin enable, disable, uninstall, atau configure, Claude Code mencetak Plugin "<plugin>" is not installed in this project alih-alih bertindak.
/reload-plugins
Terapkan perubahan plugin yang tertunda ke sesi yang sedang berjalan tanpa memulai ulang. Perubahan yang tertunda adalah plugin yang Anda instal, perbarui, aktifkan, nonaktifkan, atau edit di disk sejak sesi dimulai.
Ketika Anda menutup panel /plugin dengan perubahan yang tertunda yang Anda buat di dalamnya, Claude Code menjalankan /reload-plugins untuk Anda. Jalankan sendiri setelah perubahan plugin yang terjadi di luar panel, seperti perintah claude plugin yang Anda jalankan di terminal lain.
/reload-plugins [--force]
| Flag | Deskripsi |
|---|---|
--force |
Terapkan reload bahkan ketika akan membatalkan cache prompt. force tanpa dash juga berfungsi |
Ringkasan reload
Claude Code memuat ulang setiap plugin aktif dan mencetak satu baris ringkasan, Reloaded: N plugins · N skills · N agents · N hooks · N plugin MCP servers · N plugin LSP servers, menghilangkan hitungan server MCP plugin dalam sesi tanpa terminal interaktif. Ketika plugin apa pun gagal, ringkasan menambahkan N errors during load. Run /plugin for details.
Hitungan skills mencakup setiap skill yang disediakan plugin, baik entri commands/ maupun skill SKILL.md. Hitungan agents adalah jumlah agen yang dimuat dalam sesi, termasuk yang tidak berasal dari plugin.
Ketika dependensi plugin yang dimuat ulang hilang, Claude Code menginstalnya, memuat ulang lagi, dan menambahkan (+ N dependencies: <names>) resolved ke ringkasan.
Reload yang mengubah alat MCP
Ketika reload akan menambah atau menghapus server MCP plugin atau alat LSP, dan perubahan itu akan membatalkan cache prompt, Claude Code tidak menerapkan reload. Mencetak baris seperti This reload changes MCP tools (<server>) — your next message will re-read the whole conversation instead of using the cache. Run /reload-plugins --force to apply. Lewatkan --force untuk menerapkannya.
Sesi tanpa terminal interaktif
/reload-plugins juga berjalan dalam sesi tanpa terminal interaktif, seperti aplikasi desktop, Agent SDK, dan mode non-interaktif dengan -p. Memerlukan Claude Code v2.1.260 atau lebih baru.
Dalam sesi itu, perintah berjalan hanya ketika Anda mengetiknya ke dalam sesi sendiri, seperti dalam prompt -p atau kotak prompt aplikasi desktop. Ketika tiba dengan cara lain, seperti melalui Remote Control atau pesan yang disalurkan dari Slack, perintah menjawab /reload-plugins isn't available over a remote connection in this session. dan memuat ulang tidak ada.
Reload dalam sesi itu tidak menghubungkan atau memutuskan server MCP plugin. Perubahan itu berlaku dalam sesi berikutnya Anda.
Flag yang memuat plugin untuk satu sesi
Dua flag claude memuat plugin untuk satu sesi saja, tanpa menginstalnya. Keduanya dapat diulang.
Penulis plugin menggunakannya untuk menguji plugin sebelum menerbitkan. Untuk alur kerja muat-edit-muat ulang, lihat Kembangkan tanpa marketplace.
| Flag | Deskripsi | Contoh |
|---|---|---|
--plugin-dir <path> |
Muat plugin dari direktori atau arsip .zip darinya. Folder plugin memuat setiap folder anak yang memegang .claude-plugin/plugin.json. Setiap flag mengambil satu jalur |
claude --plugin-dir ./my-plugin --plugin-dir ./other.zip |
--plugin-url <url> |
Ambil arsip plugin .zip dari URL. Ulangi flag, atau lewatkan beberapa URL yang dipisahkan spasi dalam satu nilai yang dikutip |
claude --plugin-url "https://example.com/a.zip https://example.com/b.zip" |
Plugin yang dimuat flag apa pun adalah plugin hanya sesi. claude plugin list menampilkannya hanya ketika flag yang sama mendahului subperintah, seperti dalam claude --plugin-dir ./my-plugin plugin list. Plugin muncul sebagai <name>@inline di bawah judul yang dimulai dengan Session-only plugins, dan --json melaporkan scope sebagai session.
Ketika plugin hanya sesi berbagi nama dengan plugin yang diinstal, Claude Code memuat salinan hanya sesi untuk sesi itu dan melewati yang diinstal. Salinan yang diinstal memuat sebagai gantinya jika Anda menonaktifkan salinan hanya sesi dengan claude plugin disable <name>@inline, atau jika pengaturan terkelola mengunci nama plugin itu. Untuk prioritas, lihat Referensi pemuatan plugin.
Administrator dapat menolak kedua flag, dan folder yang dinamai dalam variabel CLAUDE_CODE_PLUGIN_DIRS, dengan pengaturan terkelola disableSideloadFlags. Claude Code kemudian mencetak bahwa flag dinonaktifkan oleh pengaturan terkelola organisasi Anda dan keluar 1 tanpa memulai.
Dari Agent SDK, opsi plugins adalah setara dengan --plugin-dir.
Langkah berikutnya
- Instal dan kelola plugin: operasi yang sama seperti langkah, dengan apa yang Anda lihat di setiap
- Referensi pemuatan plugin: apa yang diubah setiap perintah di disk dan cakupan mana yang berlaku
- Troubleshoot plugin: pesan kesalahan instal, marketplace, muat, dan validasi dengan perbaikannya
- Referensi manifest plugin: field yang diperiksa
claude plugin validate