Loading...
    • Panduan Pengembang
    • Referensi API
    • MCP
    • Sumber daya
    • Catatan Rilis
    Search...
    ⌘K
    Langkah pertama
    Pengenalan ClaudeMulai cepat
    Model & harga
    Ikhtisar modelMemilih modelYang baru di Claude 4.5Migrasi ke Claude 4.5Penghentian modelHarga
    Bangun dengan Claude
    Ikhtisar fiturMenggunakan Messages APIJendela konteksPraktik terbaik prompting
    Kemampuan
    Prompt cachingPengeditan konteksExtended thinkingUpayaStreaming MessagesPemrosesan batchKutipanDukungan multibahasaPenghitungan tokenEmbeddingsVisiDukungan PDFFiles APIHasil pencarianOutput terstruktur
    Alat
    IkhtisarCara mengimplementasikan penggunaan alatStreaming alat berbutir halusAlat BashAlat eksekusi kodePemanggilan alat terprogramAlat penggunaan komputerAlat editor teksAlat pengambilan webAlat pencarian webAlat memoriAlat pencarian alat
    Keterampilan Agen
    IkhtisarMulai cepatPraktik terbaikMenggunakan Keterampilan dengan API
    Agent SDK
    IkhtisarMulai cepatTypeScript SDKTypeScript V2 (pratinjau)Python SDKPanduan Migrasi
    MCP di API
    Konektor MCPServer MCP jarak jauh
    Claude di platform pihak ketiga
    Amazon BedrockMicrosoft FoundryVertex AI
    Rekayasa prompt
    IkhtisarGenerator promptGunakan template promptPenyempurna promptJadilah jelas dan langsungGunakan contoh (multishot prompting)Biarkan Claude berpikir (CoT)Gunakan tag XMLBerikan Claude peran (prompt sistem)Isi sebelumnya respons ClaudeRantai prompt kompleksTips konteks panjangTips extended thinking
    Uji & evaluasi
    Tentukan kriteria kesuksesanKembangkan kasus ujiMenggunakan Alat EvaluasiMengurangi latensi
    Perkuat penjaga
    Kurangi halusinasiTingkatkan konsistensi outputMitigasi jailbreakStreaming penolakanKurangi kebocoran promptJaga Claude tetap dalam karakter
    Administrasi dan pemantauan
    Ikhtisar Admin APIAPI Penggunaan dan BiayaClaude Code Analytics API
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    Alat

    Alat bash

    Alat bash memungkinkan Claude untuk menjalankan perintah shell dalam sesi bash yang persisten, memungkinkan operasi sistem, eksekusi skrip, dan otomasi baris perintah.
    • Ikhtisar
    • Kompatibilitas model
    • Kasus penggunaan
    • Mulai cepat
    • Cara kerjanya
    • Parameter
    • Contoh: Otomasi multi-langkah
    • Implementasikan alat bash
    • Tangani kesalahan
    • Ikuti praktik terbaik implementasi
    • Keamanan
    • Rekomendasi utama
    • Harga
    • Pola umum
    • Alur kerja pengembangan
    • Operasi file
    • Tugas sistem
    • Keterbatasan
    • Menggabungkan dengan alat lain
    • Langkah berikutnya

    Alat bash memungkinkan Claude untuk menjalankan perintah shell dalam sesi bash yang persisten, memungkinkan operasi sistem, eksekusi skrip, dan otomasi baris perintah.

    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

    ModelVersi 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:

    1. Claude menentukan perintah apa yang akan dijalankan
    2. Anda menjalankan perintah di shell bash
    3. Kembalikan output (stdout dan stderr) ke Claude
    4. Status sesi bertahan di antara perintah (variabel lingkungan, direktori kerja)

    Parameter

    ParameterDiperlukanDeskripsi
    commandYa*Perintah bash yang akan dijalankan
    restartTidakAtur ke true untuk memulai ulang sesi bash

    *Diperlukan kecuali menggunakan restart

    Contoh: Otomasi multi-langkah

    Claude dapat merantai perintah untuk menyelesaikan tugas kompleks:

    # Permintaan pengguna
    "Install the requests library and create a simple Python script that fetches a joke from an API, then run it."
    
    # Alat Claude menggunakan:
    # 1. Instal paket
    {"command": "pip install requests"}
    
    # 2. Buat skrip
    {"command": "cat > fetch_joke.py << 'EOF'\nimport requests\nresponse = requests.get('https://official-joke-api.appspot.com/random_joke')\njoke = response.json()\nprint(f\"Setup: {joke['setup']}\")\nprint(f\"Punchline: {joke['punchline']}\")\nEOF"}
    
    # 3. Jalankan skrip
    {"command": "python fetch_joke.py"}

    Sesi mempertahankan status di antara perintah, jadi file yang dibuat di langkah 2 tersedia di langkah 3.


    Implementasikan alat bash

    Alat bash diimplementasikan sebagai alat tanpa skema. Saat menggunakan alat ini, Anda tidak perlu menyediakan skema input seperti alat lainnya; skema sudah tertanam dalam model Claude dan tidak dapat dimodifikasi.

    Tangani kesalahan

    Saat mengimplementasikan alat bash, tangani berbagai skenario kesalahan:

    Ikuti praktik terbaik implementasi

    Keamanan

    Alat bash menyediakan akses sistem langsung. Implementasikan langkah-langkah keamanan penting ini:

    • Menjalankan di lingkungan terisolasi (Docker/VM)
    • Mengimplementasikan penyaringan perintah dan daftar izin
    • Menetapkan batas sumber daya (CPU, memori, disk)
    • Mencatat semua perintah yang dieksekusi

    Rekomendasi utama

    • Gunakan ulimit untuk menetapkan batasan sumber daya
    • Saring 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

    Lihat harga penggunaan alat untuk detail harga lengkap.

    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 permintaan 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

    Menggabungkan dengan alat lain

    Alat bash paling kuat ketika digabungkan dengan editor teks dan alat lainnya.

    Langkah berikutnya

    Ikhtisar penggunaan alat

    Pelajari tentang penggunaan alat dengan Claude

    import anthropic
    
    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=1024,
        tools=[
            {
                "type": "bash_20250124",
                "name": "bash"
            }
        ],
        messages=[
            {"role": "user", "content": "List all Python files in the current directory."}
        ]
    )
    1. 1

      Siapkan lingkungan bash

      Buat sesi bash persisten yang dapat berinteraksi dengan Claude:

      import subprocess
      import threading
      import queue
      
      class BashSession:
          def __init__(self):
              self.process = subprocess.Popen(
                  ['/bin/bash'],
                  stdin=subprocess.PIPE,
                  stdout=subprocess.PIPE,
                  stderr=subprocess.PIPE,
                  text=True,
                  bufsize=0
              )
              self.output_queue = queue.Queue()
              self.error_queue = queue.Queue()
              self._start_readers()
    2. 2

      Tangani eksekusi perintah

      Buat fungsi untuk menjalankan perintah dan menangkap output:

      def execute_command(self, command):
          # Kirim perintah ke bash
          self.process.stdin.write(command + '\n')
          self.process.stdin.flush()
          
          # Tangkap output dengan timeout
          output = self._read_output(timeout=10)
          return output
    3. 3

      Proses panggilan alat Claude

      Ekstrak dan jalankan perintah dari respons Claude:

      for content in response.content:
          if content.type == "tool_use" and content.name == "bash":
              if content.input.get("restart"):
                  bash_session.restart()
                  result = "Bash session restarted"
              else:
                  command = content.input.get("command")
                  result = bash_session.execute_command(command)
              
              # Kembalikan hasil ke Claude
              tool_result = {
                  "type": "tool_result",
                  "tool_use_id": content.id,
                  "content": result
              }
    4. 4

      Implementasikan langkah-langkah keamanan

      Tambahkan validasi dan pembatasan:

      def validate_command(command):
          # Blokir perintah berbahaya
          dangerous_patterns = ['rm -rf /', 'format', ':(){:|:&};:']
          for pattern in dangerous_patterns:
              if pattern in command:
                  return False, f"Command contains dangerous pattern: {pattern}"
          
          # Tambahkan validasi lebih lanjut sesuai kebutuhan
          return True, None

    Alat editor teks

    Lihat dan edit file teks dengan Claude