Loading...
    • Panduan Pengembang
    • Referensi API
    • MCP
    • Sumber daya
    • Catatan Rilis
    Search...
    ⌘K
    Langkah pertama
    Pengenalan ClaudeMulai cepat
    Model & harga
    Ikhtisar modelMemilih modelApa yang baru di Claude 4.5Migrasi ke Claude 4.5Penghentian modelHarga
    Bangun dengan Claude
    Ikhtisar fiturMenggunakan Messages APIJendela konteksPraktik terbaik prompting
    Kemampuan
    Prompt cachingPengeditan konteksExtended thinkingUsahaStreaming MessagesPemrosesan batchKutipanDukungan multibahasaPenghitungan tokenEmbeddingsVisiDukungan PDFFiles APIHasil pencarianOutput terstruktur
    Alat
    IkhtisarCara mengimplementasikan penggunaan alatPenggunaan alat yang efisien tokenStreaming 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
    IkhtisarTypeScript SDKPython 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 (prompting multishot)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.

    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

    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."}
        ]
    )

    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."
    
    # Claude's tool uses:
    # 1. Install package
    {"command": "pip install requests"}
    
    # 2. Create script
    {"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. Run script
    {"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 dibangun ke dalam model Claude dan tidak dapat dimodifikasi.

    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):
          # Send command to bash
          self.process.stdin.write(command + '\n')
          self.process.stdin.flush()
          
          # Capture output with 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)
              
              # Return result to 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):
          # Block dangerous commands
          dangerous_patterns = ['rm -rf /', 'format', ':(){:|:&};:']
          for pattern in dangerous_patterns:
              if pattern in command:
                  return False, f"Command contains dangerous pattern: {pattern}"
          
          # Add more validation as needed
          return True, None

    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:

    • 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 ulimit untuk 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

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

    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

    Alat editor teks

    Lihat dan edit file teks dengan Claude

    • 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