Konfigurasi baris status
Buat baris status kustom untuk Claude Code untuk menampilkan informasi kontekstual
Jadikan Claude Code milik Anda dengan baris status kustom yang ditampilkan di bagian bawah antarmuka Claude Code, mirip dengan cara kerja prompt terminal (PS1) di shell seperti Oh-my-zsh.
Buat baris status kustom
Anda dapat:
-
Jalankan
/statusline
untuk meminta Claude Code membantu Anda mengatur baris status kustom. Secara default, ini akan mencoba mereproduksi prompt terminal Anda, tetapi Anda dapat memberikan instruksi tambahan tentang perilaku yang Anda inginkan kepada Claude Code, seperti/statusline show the model name in orange
-
Langsung tambahkan perintah
statusLine
ke.claude/settings.json
Anda:
Cara Kerjanya
- Baris status diperbarui ketika pesan percakapan diperbarui
- Pembaruan berjalan paling banyak setiap 300ms
- Baris pertama stdout dari perintah Anda menjadi teks baris status
- Kode warna ANSI didukung untuk menata gaya baris status Anda
- Claude Code meneruskan informasi kontekstual tentang sesi saat ini (model, direktori, dll.) sebagai JSON ke skrip Anda melalui stdin
Struktur Input JSON
Perintah baris status Anda menerima data terstruktur melalui stdin dalam format JSON:
Contoh Skrip
Baris Status Sederhana
Baris Status yang Menyadari Git
Contoh Python
Contoh Node.js
Pendekatan Fungsi Pembantu
Untuk skrip bash yang lebih kompleks, Anda dapat membuat fungsi pembantu:
Tips
- Jaga agar baris status Anda ringkas - harus muat dalam satu baris
- Gunakan emoji (jika terminal Anda mendukungnya) dan warna untuk membuat informasi mudah dipindai
- Gunakan
jq
untuk parsing JSON di Bash (lihat contoh di atas) - Uji skrip Anda dengan menjalankannya secara manual dengan input JSON tiruan:
echo '{"model":{"display_name":"Test"},"workspace":{"current_dir":"/test"}}' | ./statusline.sh
- Pertimbangkan untuk menyimpan operasi yang mahal (seperti status git) jika diperlukan
Pemecahan Masalah
- Jika baris status Anda tidak muncul, periksa bahwa skrip Anda dapat dieksekusi (
chmod +x
) - Pastikan skrip Anda mengeluarkan output ke stdout (bukan stderr)