Cara kerjanya
Claude Code menetapkan variabel lingkunganCLAUDECODE ke 1 untuk setiap perintah yang dijalankan melalui alat Bash dan PowerShell, dan untuk perintah hook. Dari v2.1.172 juga menetapkan CLAUDE_CODE_CHILD_SESSION ke 1 dalam subproses yang sama. Ketika CLI Anda melihat salah satu variabel ini, itu menulis tag <claude-code-hint /> yang menutup sendiri ke stderr. Dalam perintah hook, tag petunjuk dilepas dan diabaikan. Hanya output alat Bash dan PowerShell yang memicu prompt pemasangan.
Ketika Claude Code menerima output perintah, itu:
- Memindai baris petunjuk dan menghapusnya sebelum output mencapai model
- Memeriksa bahwa petunjuk menargetkan plugin di marketplace Anthropic resmi
- Memeriksa bahwa plugin belum dipasang dan belum diminta sebelumnya
- Menampilkan prompt pemasangan kepada pengguna yang menyebutkan perintah yang mengeluarkan petunjuk
Keluarkan petunjuk
Gerbang emisi pada variabel lingkungan sehingga penanda tidak mungkin muncul ketika manusia menjalankan CLI Anda secara langsung, kemudian tulis tag ke stderr pada barisnya sendiri. Pilih variabel mana yang akan diperiksa:CLAUDECODE: diatur pada setiap versi Claude Code, sehingga mencapai sebagian besar sesi. Ini juga diatur dalam sesi tmux dan subprocess server MCP stdio yang Claude Code mulai. Ekstensi IDE juga mengaturnya di terminal terintegrasi mereka, di mana manusia dapat menjalankan CLI Anda secara langsung.CLAUDE_CODE_CHILD_SESSION: diatur hanya dalam subprocess yang Claude Code sendiri spawn, seperti pemanggilan alat, perintah hook, dan perintah status line, sehingga tag biasanya tidak mencapai terminal manusia. Proses yang berumur panjang yang dimulai di dalam sesi, seperti server tmux, menangkap variabel, sehingga shell yang diluncurkan kemudian dari proses itu masih menampilkan tag mentah. Memerlukan Claude Code v2.1.172 atau lebih baru, sehingga sesi pada versi yang lebih lama melewatkan petunjuk.
CLAUDECODE untuk jangkauan maksimal dan mengeluarkan petunjuk untuk plugin bernama example-cli di marketplace resmi:
example-cli dengan nama plugin Anda di marketplace resmi.
Pilih tempat untuk mengeluarkan
Anda mengontrol jalur kode mana yang mengeluarkan petunjuk. Claude Code menghilangkan duplikat berdasarkan plugin, jadi mengeluarkan pada setiap invokasi tidak memiliki kelemahan. Titik sentuh yang bekerja dengan baik meliputi:| Penempatan | Mengapa itu bekerja |
|---|---|
Output --help | Claude sering menjalankan help saat menjelajahi CLI yang tidak dikenal |
| Kesalahan subperintah yang tidak dikenal | Mencapai momen ketika Claude bingung tentang antarmuka Anda |
| Keberhasilan login atau autentikasi | Pengguna sudah dalam pola pikir pengaturan |
| Pesan sambutan first-run | Momen onboarding yang alami |
Apa yang dilihat pengguna
Ketika petunjuk melewati semua pemeriksaan, Claude Code menampilkan prompt seperti berikut:- Sekali per plugin: setelah prompt ditampilkan, Claude Code mencatat plugin dan tidak pernah memintanya lagi, terlepas dari jawaban pengguna.
- Sekali per sesi: di semua CLI di mesin, paling banyak satu prompt petunjuk muncul per sesi Claude Code.
Format petunjuk
Petunjuk adalah tag yang menutup sendiri dengan tiga atribut yang diperlukan.| Atribut | Diperlukan | Deskripsi |
|---|---|---|
v | Ya | Versi protokol. 1 adalah satu-satunya nilai yang didukung |
type | Ya | Jenis petunjuk. plugin adalah satu-satunya nilai yang didukung |
value | Ya | Pengenal plugin dalam bentuk name@marketplace |
Persyaratan
Claude Code memberlakukan dua kondisi sebelum bertindak atas petunjuk. Petunjuk yang gagal salah satu pemeriksaan dijatuhkan:- Baris sendiri: tag harus menempati barisnya sendiri. Tag yang tertanam di tengah baris, misalnya di dalam pernyataan log, diabaikan. Spasi di awal dan akhir baris diizinkan.
- Marketplace resmi:
valueharus mereferensikan plugin di marketplace yang dikendalikan Anthropic seperticlaude-plugins-official. Petunjuk yang menunjuk ke marketplace lain secara diam-diam dijatuhkan.
- Tulis ke stderr: stderr menjaga tag keluar dari pipa shell seperti
example-cli deploy | jq. Claude Code memindai kedua aliran, jadi stdout juga berfungsi. - Gerbang pada variabel lingkungan: hanya keluarkan ketika
CLAUDECODEatauCLAUDE_CODE_CHILD_SESSIONdiatur. Lihat Emit the hint untuk mengetahui bagaimana kedua variabel berbeda.
Dapatkan plugin Anda ke marketplace resmi
Protokol petunjuk hanya berlaku untuk plugin yang terdaftar di marketplace Anthropic resmi,claude-plugins-official. Anthropic mengkurasi marketplace tersebut atas kebijakannya sendiri, dan formulir pengajuan dalam aplikasi menambahkan plugin ke marketplace komunitas sebagai gantinya, yang protokol petunjuk tidak periksa. Jika Anda bekerja dengan kontak mitra Anthropic, hubungi mereka untuk mengoordinasikan daftar marketplace resmi.
Lihat juga
- Buat plugin: bangun plugin yang direkomendasikan CLI Anda
- Buat dan distribusikan marketplace plugin: host plugin di luar marketplace resmi
- Variabel lingkungan: referensi lengkap untuk
CLAUDECODEdan variabel terkait