Claude Platform Docs
  • Messages
  • Managed Agents
  • Admin

Search...
⌘K
Langkah pertama
Pengenalan ClaudeMulai cepat
Membangun dengan Claude
Ikhtisar fiturMenggunakan Messages APIAlasan berhenti dan fallbackPenolakan dan fallbackKredit fallback
Kemampuan model
Pemikiran diperpanjangPemikiran adaptifUpayaAnggaran tugas (beta)Mode cepat (pratinjau riset)Output terstrukturSitasiStreaming MessagesPemrosesan batchHasil pencarianStreaming penolakanDukungan multibahasaEmbeddings
Alat
IkhtisarCara kerja penggunaan alatTutorial: Membangun agen pengguna alatMendefinisikan alatMenangani panggilan alatPenggunaan alat paralelTool Runner (SDK)Penggunaan alat ketatAlat serverAlat pencarian webAlat pengambilan webAlat eksekusi kodeAlat penasihatAlat pencarian alatAlat memoriAlat BashAlat editor teksAlat penggunaan komputerPemecahan masalah
Infrastruktur alat
Referensi alatMengelola konteks alatKombinasi alatPenggunaan alat dengan caching promptPemanggilan alat terprogramStreaming alat terperinci
Manajemen konteks
Jendela konteksPemadatanPengeditan konteksCaching promptPesan sistem di tengah percakapanMembangun mode orkestrasiDiagnostik cache (beta)Penghitungan token
Bekerja dengan file
Files APIDukungan PDF
Skills
IkhtisarMulai cepatPraktik terbaikSkills untuk enterpriseSkills di API
MCP
Server MCP jarak jauhKonektor MCP
Claude di platform cloud
Amazon BedrockAmazon Bedrock (lama)Claude Platform di AWSGoogle CloudMicrosoft Foundry

Log in
Alat editor teks
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

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

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • 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
  • 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
Messages/Alat

Alat editor teks



Fitur ini memenuhi syarat untuk Zero Data Retention (ZDR). Ketika organisasi Anda memiliki pengaturan ZDR, data yang dikirim melalui fitur ini tidak disimpan setelah respons API dikembalikan.

Claude dapat menggunakan alat editor teks dengan skema Anthropic untuk melihat dan memodifikasi file teks, membantu Anda melakukan debug, memperbaiki, dan meningkatkan kode atau dokumen teks lainnya. Ini memungkinkan Claude untuk berinteraksi langsung dengan file Anda, memberikan bantuan langsung alih-alih hanya menyarankan perubahan.

Untuk dukungan model, lihat Referensi alat.

Kapan menggunakan alat editor teks

Beberapa contoh kapan menggunakan alat editor teks adalah:

  • Debugging kode: Minta Claude mengidentifikasi dan memperbaiki bug dalam kode Anda, mulai dari kesalahan sintaks hingga masalah logika.
  • Refactoring kode: Biarkan Claude meningkatkan struktur, keterbacaan, dan performa kode Anda melalui pengeditan yang ditargetkan.
  • Pembuatan dokumentasi: Minta Claude menambahkan docstring, komentar, atau file README ke basis kode Anda.
  • Pembuatan pengujian: Minta Claude membuat unit test untuk kode Anda berdasarkan pemahamannya terhadap implementasi.

Menggunakan alat editor teks

Sediakan alat editor teks (bernama str_replace_based_edit_tool) kepada Claude menggunakan Messages API.

Anda dapat secara opsional menentukan parameter max_characters untuk mengontrol pemotongan saat melihat file berukuran besar.



max_characters hanya kompatibel dengan text_editor_20250728 dan versi alat editor teks yang lebih baru.

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    tools=[
        {
            "type": "text_editor_20250728",
            "name": "str_replace_based_edit_tool",
            "max_characters": 10000,
        }
    ],
    messages=[
        {
            "role": "user",
            "content": "There's a syntax error in my primes.py file. Can you help me fix it?",
        }
    ],
)

print(response)

Alat editor teks dapat digunakan dengan cara berikut:

  1. 1

    Sediakan alat editor teks dan prompt pengguna kepada Claude

    • Sertakan alat editor teks dalam permintaan API Anda
    • Sediakan prompt pengguna yang mungkin memerlukan pemeriksaan atau modifikasi file, seperti "Bisakah Anda memperbaiki kesalahan sintaks dalam kode saya?"
  2. 2

    Claude menggunakan alat untuk memeriksa file atau direktori

    • Claude menilai apa yang perlu dilihatnya dan menggunakan perintah view untuk memeriksa isi file atau menampilkan daftar isi direktori
    • Respons API akan berisi blok konten tool_use dengan perintah view
  3. 3

    Jalankan perintah view dan kembalikan hasilnya

    • Ekstrak path file atau direktori dari permintaan penggunaan alat Claude
    • Baca isi file atau tampilkan daftar isi direktori
    • Jika parameter max_characters ditentukan dalam konfigurasi alat, potong isi file hingga panjang tersebut
    • Kembalikan hasilnya kepada Claude dengan melanjutkan percakapan menggunakan pesan user baru yang berisi blok konten tool_result
  4. 4

    Claude menggunakan alat untuk memodifikasi file

    • Setelah memeriksa file atau direktori, Claude dapat menggunakan perintah seperti str_replace untuk membuat perubahan atau insert untuk menambahkan teks pada nomor baris tertentu.
    • Jika Claude menggunakan perintah str_replace, Claude menyusun permintaan penggunaan alat yang diformat dengan benar berisi teks lama dan teks baru untuk menggantikannya
  5. 5

    Jalankan pengeditan dan kembalikan hasilnya

    • Ekstrak path file, teks lama, dan teks baru dari permintaan penggunaan alat Claude
    • Lakukan penggantian teks dalam file
    • Kembalikan hasilnya kepada Claude
  6. 6

    Claude memberikan analisis dan penjelasannya

    • Setelah memeriksa dan mungkin mengedit file, Claude memberikan penjelasan lengkap tentang apa yang ditemukannya dan perubahan apa yang dibuatnya

Perintah alat editor teks

Alat editor teks mendukung beberapa perintah untuk melihat dan memodifikasi file:

view

Perintah view memungkinkan Claude memeriksa isi file atau menampilkan daftar isi direktori. Perintah ini dapat membaca seluruh file atau rentang baris tertentu.

Parameter:

  • command: Harus bernilai "view"
  • path: Path ke file atau direktori yang akan dilihat
  • view_range (opsional): Array berisi dua bilangan bulat yang menentukan nomor baris awal dan akhir yang akan dilihat. Nomor baris dimulai dari 1, dan -1 untuk baris akhir berarti membaca hingga akhir file. Parameter ini hanya berlaku saat melihat file, bukan direktori.

str_replace

Perintah str_replace memungkinkan Claude mengganti string tertentu dalam file dengan string baru. Ini digunakan untuk membuat pengeditan yang presisi.

Parameter:

  • command: Harus bernilai "str_replace"
  • path: Path ke file yang akan dimodifikasi
  • old_str: Teks yang akan diganti (harus cocok persis, termasuk spasi dan indentasi)
  • new_str: Teks baru yang akan disisipkan menggantikan teks lama

create

Perintah create memungkinkan Claude membuat file baru dengan konten yang ditentukan.

Parameter:

  • command: Harus bernilai "create"
  • path: Path tempat file baru akan dibuat
  • file_text: Konten yang akan ditulis ke file baru

insert

Perintah insert memungkinkan Claude menyisipkan teks pada lokasi tertentu dalam file.

Parameter:

  • command: Harus bernilai "insert"
  • path: Path ke file yang akan dimodifikasi
  • insert_line: Nomor baris setelahnya teks akan disisipkan (0 untuk awal file)
  • insert_text: Teks yang akan disisipkan

Contoh: Memperbaiki kesalahan sintaks dengan alat editor teks

Contoh ini mendemonstrasikan bagaimana Claude menggunakan alat editor teks untuk memperbaiki kesalahan sintaks dalam file Python.

Pertama, aplikasi Anda menyediakan alat editor teks dan prompt untuk memperbaiki kesalahan sintaks kepada Claude:

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    tools=[{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}],
    messages=[
        {
            "role": "user",
            "content": "There's a syntax error in my primes.py file. Can you help me fix it?",
        }
    ],
)

print(response)

Claude menggunakan alat editor teks terlebih dahulu untuk melihat file:

Output
{
  "id": "msg_01XAbCDeFgHiJkLmNoPQrStU",
  "model": "claude-opus-4-8",
  "stop_reason": "tool_use",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "I'll help you fix the syntax error in your primes.py file. First, let me take a look at the file to identify the issue."
    },
    {
      "type": "tool_use",
      "id": "toolu_01AbCdEfGhIjKlMnOpQrStU",
      "name": "str_replace_based_edit_tool",
      "input": {
        "command": "view",
        "path": "primes.py"
      }
    }
  ]
}

Aplikasi Anda kemudian harus membaca file dan mengembalikan isinya kepada Claude:

response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    tools=[{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}],
    messages=[
        {
            "role": "user",
            "content": "There's a syntax error in my primes.py file. Can you help me fix it?",
        },
        {
            "role": "assistant",
            "content": [
                {
                    "type": "text",
                    "text": "I'll help you fix the syntax error in your primes.py file. First, let me take a look at the file to identify the issue.",
                },
                {
                    "type": "tool_use",
                    "id": "toolu_01AbCdEfGhIjKlMnOpQrStU",
                    "name": "str_replace_based_edit_tool",
                    "input": {"command": "view", "path": "primes.py"},
                },
            ],
        },
        {
            "role": "user",
            "content": [
                {
                    "type": "tool_result",
                    "tool_use_id": "toolu_01AbCdEfGhIjKlMnOpQrStU",
                    "content": '1: def is_prime(n):\n2:     """Check if a number is prime."""\n3:     if n <= 1:\n4:         return False\n5:     if n <= 3:\n6:         return True\n7:     if n % 2 == 0 or n % 3 == 0:\n8:         return False\n9:     i = 5\n10:     while i * i <= n:\n11:         if n % i == 0 or n % (i + 2) == 0:\n12:             return False\n13:         i += 6\n14:     return True\n15: \n16: def get_primes(limit):\n17:     """Generate a list of prime numbers up to the given limit."""\n18:     primes = []\n19:     for num in range(2, limit + 1)\n20:         if is_prime(num):\n21:             primes.append(num)\n22:     return primes\n23: \n24: def main():\n25:     """Main function to demonstrate prime number generation."""\n26:     limit = 100\n27:     prime_list = get_primes(limit)\n28:     print(f"Prime numbers up to {limit}:")\n29:     print(prime_list)\n30:     print(f"Found {len(prime_list)} prime numbers.")\n31: \n32: if __name__ == "__main__":\n33:     main()',
                }
            ],
        },
    ],
)

print(response)


Nomor baris

Dalam contoh di atas, hasil alat view menyertakan isi file dengan nomor baris yang ditambahkan di awal setiap baris (misalnya, "1: def is_prime(n):"). Nomor baris tidak wajib, tetapi sangat penting untuk berhasil menggunakan parameter view_range guna memeriksa bagian tertentu dari file dan parameter insert_line untuk menambahkan konten pada lokasi yang tepat.

Claude mengidentifikasi kesalahan sintaks dan menggunakan perintah str_replace untuk memperbaikinya:

Output
{
  "id": "msg_01VwXyZAbCdEfGhIjKlMnO",
  "model": "claude-opus-4-8",
  "stop_reason": "tool_use",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "I found the syntax error in your primes.py file. In the `get_primes` function, there is a missing colon (:) at the end of the for loop line. Let me fix that for you."
    },
    {
      "type": "tool_use",
      "id": "toolu_01PqRsTuVwXyZAbCdEfGh",
      "name": "str_replace_based_edit_tool",
      "input": {
        "command": "str_replace",
        "path": "primes.py",
        "old_str": "    for num in range(2, limit + 1)",
        "new_str": "    for num in range(2, limit + 1):"
      }
    }
  ]
}

Aplikasi Anda kemudian harus melakukan pengeditan dan mengembalikan hasilnya:

response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    tools=[{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}],
    messages=[
        # Pesan-pesan sebelumnya...
        {
            "role": "assistant",
            "content": [
                {
                    "type": "text",
                    "text": "I found the syntax error in your primes.py file. In the `get_primes` function, there is a missing colon (:) at the end of the for loop line. Let me fix that for you.",
                },
                {
                    "type": "tool_use",
                    "id": "toolu_01PqRsTuVwXyZAbCdEfGh",
                    "name": "str_replace_based_edit_tool",
                    "input": {
                        "command": "str_replace",
                        "path": "primes.py",
                        "old_str": "    for num in range(2, limit + 1)",
                        "new_str": "    for num in range(2, limit + 1):",
                    },
                },
            ],
        },
        {
            "role": "user",
            "content": [
                {
                    "type": "tool_result",
                    "tool_use_id": "toolu_01PqRsTuVwXyZAbCdEfGh",
                    "content": "Successfully replaced text at exactly one location.",
                }
            ],
        },
    ],
)

print(response)

Terakhir, Claude memberikan penjelasan lengkap tentang perbaikan tersebut:

Output
{
  "id": "msg_01IjKlMnOpQrStUvWxYzAb",
  "model": "claude-opus-4-8",
  "stop_reason": "end_turn",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "I've fixed the syntax error in your primes.py file. The issue was in the `get_primes` function at line 19. There was a missing colon (:) at the end of the for loop line.\n\nHere's what I changed:\n\nFrom:\n```python\nfor num in range(2, limit + 1)\n```\n\nTo:\n```python\nfor num in range(2, limit + 1):\n```\n\nIn Python, a colon is required at the end of statements that start a new code block, such as for loops, if statements, function definitions, etc. Without the colon, Python raises a syntax error because it doesn't know where the code block begins.\n\nYour code should now run correctly. The function will properly generate a list of prime numbers up to the specified limit."
    }
  ]
}

Mengimplementasikan alat editor teks

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

Tipe alat adalah type: "text_editor_20250728" untuk model Claude 4.

  1. 1

    Inisialisasi implementasi editor Anda

    Buat fungsi pembantu untuk menangani operasi file seperti membaca, menulis, dan memodifikasi file. Pertimbangkan untuk mengimplementasikan fungsionalitas cadangan untuk memulihkan dari kesalahan.

  2. 2

    Tangani panggilan alat editor

    Buat fungsi yang memproses panggilan alat dari Claude berdasarkan tipe perintah:

    def handle_editor_tool(tool_call):
        input_params = tool_call.input
        command = input_params.get("command", "")
        file_path = input_params.get("path", "")
    
        if command == "view":
            # Baca dan kembalikan isi file
            pass
        elif command == "str_replace":
            # Ganti teks dalam file
            pass
        elif command == "create":
            # Buat file baru
            pass
        elif command == "insert":
            # Sisipkan teks di lokasi
            pass
  3. 3

    Implementasikan langkah-langkah keamanan

    Tambahkan validasi dan pemeriksaan keamanan:

    • Validasi path file untuk mencegah directory traversal
    • Buat cadangan sebelum membuat perubahan
    • Tangani kesalahan dengan baik
    • Implementasikan pemeriksaan izin
  4. 4

    Proses respons Claude

    Ekstrak dan tangani panggilan alat dari respons Claude:

    # Proses penggunaan alat dalam respons Claude
    for content in response.content:
        if content.type == "tool_use":
            # Jalankan alat berdasarkan perintah
            result = handle_editor_tool(content)
    
            # Kembalikan hasil ke Claude
            tool_result = {
                "type": "tool_result",
                "tool_use_id": content.id,
                "content": result,
            }


Saat mengimplementasikan alat editor teks, perhatikan hal-hal berikut:

  1. Keamanan: Alat ini memiliki akses ke sistem file lokal Anda, jadi implementasikan langkah-langkah keamanan yang tepat.
  2. Cadangan: Selalu buat cadangan sebelum mengizinkan pengeditan pada file penting.
  3. Validasi: Validasi semua input untuk mencegah perubahan yang tidak diinginkan.
  4. Pencocokan unik: Pastikan penggantian cocok dengan tepat satu lokasi untuk menghindari pengeditan yang tidak diinginkan.

Menangani kesalahan

Saat menggunakan alat editor teks, berbagai kesalahan dapat terjadi. Berikut adalah panduan tentang cara menanganinya:

Ikuti praktik terbaik implementasi


Harga dan penggunaan token

Alat editor teks menggunakan struktur harga yang sama dengan alat lain yang digunakan bersama Claude. Alat ini mengikuti harga token input dan output standar berdasarkan model Claude yang Anda gunakan.

Selain token dasar, token input tambahan berikut diperlukan untuk alat editor teks:

AlatToken input tambahan
text_editor_20250429 (Claude 4.x)700 token

Untuk informasi lebih detail tentang harga alat, lihat Harga penggunaan alat.

Mengintegrasikan alat editor teks dengan alat lain

Alat editor teks dapat digunakan bersama alat Claude lainnya. Saat menggabungkan alat, pastikan Anda:

  • Mencocokkan versi alat dengan model yang Anda gunakan
  • Memperhitungkan penggunaan token tambahan untuk semua alat yang disertakan dalam permintaan Anda

Log perubahan

TanggalVersiPerubahan
28 Juli 2025text_editor_20250728Rilis alat editor teks yang diperbarui yang memperbaiki beberapa masalah dan menambahkan parameter opsional max_characters. Selain itu, identik dengan text_editor_20250429.
29 April 2025text_editor_20250429Rilis alat editor teks untuk Claude 4. Versi ini menghapus perintah undo_edit tetapi mempertahankan semua kemampuan lainnya. Nama alat telah diperbarui untuk mencerminkan arsitektur berbasis str_replace.
13 Maret 2025text_editor_20250124Pengenalan dokumentasi alat editor teks mandiri. Versi ini dioptimalkan untuk Claude Sonnet 3.7 tetapi memiliki kemampuan yang identik dengan versi sebelumnya.
22 Oktober 2024text_editor_20241022Rilis awal alat editor teks dengan Claude Sonnet 3.5 (dihentikan). Menyediakan kemampuan untuk melihat, membuat, dan mengedit file melalui perintah view, create, str_replace, insert, dan undo_edit.

Langkah selanjutnya

Berikut adalah beberapa ide tentang cara menggunakan alat editor teks dengan cara yang lebih praktis dan canggih:

  • Integrasikan dengan alur kerja pengembangan Anda: Bangun alat editor teks ke dalam alat pengembangan atau IDE Anda
  • Buat sistem tinjauan kode: Minta Claude meninjau kode Anda dan membuat perbaikan
  • Bangun asisten debugging: Buat sistem di mana Claude dapat membantu Anda mendiagnosis dan memperbaiki masalah dalam kode Anda
  • Implementasikan konversi format file: Biarkan Claude membantu Anda mengonversi file dari satu format ke format lain
  • Otomatisasi dokumentasi: Siapkan alur kerja agar Claude secara otomatis mendokumentasikan kode Anda

Alat editor teks memungkinkan Claude bekerja langsung dengan basis kode Anda, mendukung alur kerja mulai dari debugging hingga dokumentasi otomatis.


Ikhtisar penggunaan alat

Pelajari cara mengimplementasikan alur kerja alat untuk digunakan dengan Claude.

Alat Bash

Jalankan perintah shell dengan Claude.

Was this page helpful?

  • Kapan menggunakan alat editor teks
  • Menggunakan alat editor teks
  • Perintah alat editor teks
  • Contoh: Memperbaiki kesalahan sintaks dengan alat editor teks
  • Mengimplementasikan alat editor teks
  • Menangani kesalahan
  • Ikuti praktik terbaik implementasi
  • Harga dan penggunaan token
  • Mengintegrasikan alat editor teks dengan alat lain
  • Log perubahan
  • Langkah selanjutnya