Ikhtisar
Alat bash menyediakan Claude dengan:- Sesi bash persisten yang mempertahankan status
- Kemampuan untuk menjalankan perintah shell apa pun
- Akses ke variabel lingkungan dan direktori kerja
- Kemampuan perantaian perintah dan skrip
Kompatibilitas model
| Model | Versi Alat |
|---|---|
| Model Claude 4 dan Sonnet 3.7 (deprecated) | bash_20250124 |
Versi alat yang lebih lama tidak dijamin kompatibel mundur dengan model yang lebih baru. Selalu gunakan versi alat yang sesuai dengan versi model Anda.
Kasus penggunaan
- Alur kerja pengembangan: Jalankan perintah build, tes, dan alat pengembangan
- Otomasi sistem: Jalankan skrip, kelola file, otomatisasi tugas
- Pemrosesan data: Proses file, jalankan skrip analisis, kelola dataset
- Penyiapan lingkungan: Instal paket, konfigurasi lingkungan
Mulai cepat
Cara kerjanya
Alat bash mempertahankan sesi yang persisten:- Claude menentukan perintah apa yang akan dijalankan
- Anda menjalankan perintah di shell bash
- Kembalikan output (stdout dan stderr) ke Claude
- Status sesi bertahan di antara perintah (variabel lingkungan, direktori kerja)
Parameter
| Parameter | Diperlukan | Deskripsi |
|---|---|---|
command | Ya* | Perintah bash yang akan dijalankan |
restart | Tidak | Atur ke true untuk memulai ulang sesi bash |
restart
Contoh penggunaan
Contoh penggunaan
Contoh: Otomasi multi-langkah
Claude dapat merantai perintah untuk menyelesaikan tugas kompleks:Implementasikan alat bash
Alat bash diimplementasikan sebagai alat tanpa skema. Saat menggunakan alat ini, Anda tidak perlu menyediakan skema input seperti alat lainnya; skema dibangun ke dalam model Claude dan tidak dapat dimodifikasi.1
Siapkan lingkungan bash
Buat sesi bash persisten yang dapat berinteraksi dengan Claude:
2
Tangani eksekusi perintah
Buat fungsi untuk menjalankan perintah dan menangkap output:
3
Proses panggilan alat Claude
Ekstrak dan jalankan perintah dari respons Claude:
4
Implementasikan langkah-langkah keamanan
Tambahkan validasi dan pembatasan:
Tangani kesalahan
Saat mengimplementasikan alat bash, tangani berbagai skenario kesalahan:Waktu tunggu eksekusi perintah
Waktu tunggu eksekusi perintah
Jika perintah memakan waktu terlalu lama untuk dijalankan:
Perintah tidak ditemukan
Perintah tidak ditemukan
Jika perintah tidak ada:
Izin ditolak
Izin ditolak
Jika ada masalah izin:
Ikuti praktik terbaik implementasi
Gunakan waktu tunggu perintah
Gunakan waktu tunggu perintah
Implementasikan waktu tunggu untuk mencegah perintah yang menggantung:
Pertahankan status sesi
Pertahankan status sesi
Jaga sesi bash tetap persisten untuk mempertahankan variabel lingkungan dan direktori kerja:
Tangani output besar
Tangani output besar
Potong output yang sangat besar untuk mencegah masalah batas token:
Catat semua perintah
Catat semua perintah
Simpan jejak audit perintah yang dijalankan:
Sanitasi output
Sanitasi output
Hapus informasi sensitif dari output perintah:
Keamanan
Alat bash menyediakan akses sistem langsung. Implementasikan langkah-langkah keamanan penting ini:
- Berjalan di lingkungan terisolasi (Docker/VM)
- Mengimplementasikan pemfilteran perintah dan daftar izin
- Menetapkan batas sumber daya (CPU, memori, disk)
- Mencatat semua perintah yang dijalankan
Rekomendasi utama
- Gunakan
ulimituntuk menetapkan batasan sumber daya - Filter perintah berbahaya (
sudo,rm -rf, dll.) - Jalankan dengan izin pengguna minimal
- Pantau dan catat semua eksekusi perintah
Harga
The bash tool adds 245 input tokens to your API calls. Additional tokens are consumed by:- Command outputs (stdout/stderr)
- Error messages
- Large file contents
Pola umum
Alur kerja pengembangan
- Menjalankan tes:
pytest && coverage report - Membangun proyek:
npm install && npm run build - Operasi Git:
git status && git add . && git commit -m "message"
Operasi file
- Memproses data:
wc -l *.csv && ls -lh *.csv - Mencari file:
find . -name "*.py" | xargs grep "pattern" - Membuat cadangan:
tar -czf backup.tar.gz ./data
Tugas sistem
- Memeriksa sumber daya:
df -h && free -m - Manajemen proses:
ps aux | grep python - Penyiapan lingkungan:
export PATH=$PATH:/new/path && echo $PATH
Keterbatasan
- Tidak ada perintah interaktif: Tidak dapat menangani
vim,less, atau prompt kata sandi - Tidak ada aplikasi GUI: Hanya baris perintah
- Cakupan sesi: Bertahan dalam percakapan, hilang di antara panggilan API
- Batas output: Output besar mungkin dipotong
- Tidak ada streaming: Hasil dikembalikan setelah selesai