SSD Nodes Learn Hosting plans →
Panduan Matt ConnorOleh Matt Connor · Diperbarui 2026-08-28

Cara Membangun Agent AI dengan Claude di VPS

Pelajari cara menggabungkan Messages API, tool use, dan MCP agar Claude menjadi otak agent, sementara VPS Anda menjalankan tool dan datanya sendiri.

Arti membangun agent dengan Claude

Membangun agent dengan Claude berarti menggunakan Claude sebagai inti penalaran, sementara loop, tool, dan data berada di server Anda sendiri. Claude menentukan tindakan yang perlu dilakukan; VPS Anda menjalankannya. Anda mengirimkan tugas dan status saat ini kepada Claude. Claude membalas dengan jawaban atau permintaan untuk menggunakan salah satu tool Anda. Kode Anda menjalankan tool tersebut dan mengirimkan hasilnya kembali. Loop berlanjut sampai tugas selesai. Kecerdasan tersebut tersedia sebagai layanan yang Anda panggil melalui Internet. Semua komponen di sekitarnya adalah milik Anda.

Pemisahan ini menjadi keunggulannya. Anda mendapatkan kemampuan penalaran tingkat frontier tanpa harus mengoperasikan model. Anda juga tetap memiliki kendali penuh atas hal-hal yang dapat diakses agent karena tool berjalan pada perangkat keras milik Anda. Jika Anda sudah membuat program Claude pertama, panduan aplikasi Claude pertama pada VPS membahas dasar-dasar yang digunakan oleh panduan ini.

Claude adalah otaknya: Messages API

Setiap pemanggilan Claude dilakukan melalui satu endpoint, yaitu Messages API. Anda mengirim percakapan hingga saat ini dan daftar alat yang boleh digunakan agen. Claude mengembalikan pesan berikutnya. Pesan tersebut berupa jawaban akhir atau permintaan untuk memanggil alat. Dalam pendekatan membangun sendiri, tidak ada “agent API” terpisah. Penggunaan alat merupakan fitur dari endpoint tunggal ini, sedangkan loop di sekitarnya harus Anda jalankan sendiri.

Claude tidak memiliki state antar-pemanggilan. Artinya, Claude tidak mengingat apa pun secara mandiri. Setiap request membawa seluruh percakapan. Kode Anda menyimpan riwayat tersebut dan mengirimkannya pada setiap giliran. Inilah alasan setiap giliran dalam sesi panjang membutuhkan lebih banyak token daripada giliran sebelumnya. Ini bukan sekadar keterbatasan, melainkan pilihan desain. Karena state berada di server Anda, Anda dapat menentukan secara tepat hal yang dilihat Claude, dan tidak ada informasi tentang tugas yang disimpan di tempat yang tidak Anda kendalikan. Namun, prompt akan terus bertambah panjang. Claude dapat menangani pertumbuhan tersebut dengan baik melalui context window-nya, tetapi model lokal dalam loop yang sama tidak dapat melakukannya. Karena itu, Ollama memerlukan num_ctx yang lebih besar agar tidak lagi memotong prompt panjang.

Siklus penggunaan tool adalah loop agen

Loop agen dengan Claude mudah dijelaskan. Anda mengirim request yang menyertakan tool Anda. Claude membaca tugas tersebut. Jika perlu bertindak, Claude membalas dengan request penggunaan tool yang menyebutkan nama tool dan mengisi inputnya. Kode Anda menjalankan tool tersebut. Setelah itu, kode mengirimkan hasilnya kembali kepada Claude dalam request berikutnya. Claude membaca hasil tersebut, lalu meminta tool lain atau menulis balasan final. Saat Claude berhenti meminta tool, tugas selesai.

Anda dapat menulis loop tersebut secara manual hanya dalam beberapa baris. Banyak orang melakukan ini karena alurnya mudah dilihat dan dikendalikan. SDK resmi juga menyediakan tool runner yang menjalankan loop tersebut untuk Anda. Anda menyediakan fungsi tool, lalu SDK menangani proses bolak-balik: memanggil Claude, menjalankan tool Anda, dan mengirimkan hasilnya kembali sampai Claude selesai. Apa pun pendekatan yang digunakan, bentuknya tetap sama. Runner hanya menghindarkan Anda dari keharusan menulis loop itu sendiri. Jika loop tersebut masih terasa abstrak, tulis loop minimal terlebih dahulu sebelum menggunakan runner. Langkah inilah yang menjadi dasar untuk semua hal berikutnya dalam jalur bertahap untuk mempelajari AI agent dari awal.

Tiga cara membangun agent, dan mana yang sesuai untuk VPS

Ada tiga cara untuk membangun agent Claude. Perbedaannya terletak pada seberapa banyak komponen yang Anda jalankan sendiri.

Cara pertama adalah menggunakan kode Anda sendiri untuk memanggil Claude API dengan tools Anda sendiri. Anda menulis loop tersebut atau menggunakan tool runner dari SDK, lalu menjalankan seluruhnya pada VPS Anda. Ini adalah pilihan yang umum karena memberi Anda kendali penuh atas tools, data, dan keamanan. Program tersebut juga berjalan seperti program biasa pada server Anda. Sebagian besar panduan ini mengasumsikan pendekatan ini.

Cara kedua adalah Claude Agent SDK. Ini adalah Claude Code, yaitu coding agent, yang dikemas sebagai library yang dapat Anda gunakan sebagai dasar pengembangan. SDK ini menyediakan loop agent lengkap dan tools bawaan untuk membaca serta menulis file, menjalankan shell command, dan melakukan pencarian. Dengan demikian, Anda tidak perlu merakit semua komponen tersebut dari awal. SDK ini juga berjalan pada server Anda sendiri. Karena itu, SDK ini sangat sesuai untuk VPS jika Anda menginginkan agent yang mampu bekerja dengan file dan shell tanpa harus membangun harness sendiri. Agent yang membaca file dan menjalankan shell command memerlukan containment sebelum dapat bekerja tanpa pengawasan. Menjalankan Claude Code dengan aman pada server membahas sistem permission, sandbox, dan opsi isolasi.

Cara ketiga adalah Managed Agents. Dalam pendekatan ini, Anthropic menjalankan loop dan menyediakan sandbox tempat tools agent dieksekusi. Ini adalah opsi dengan pengelolaan paling sedikit. Namun, workspace agent berada pada infrastruktur Anthropic, bukan pada VPS Anda. Pilih opsi ini jika Anda ingin meminimalkan pekerjaan operasional dan tidak memerlukan tools berjalan pada mesin Anda sendiri. Pada dua cara lainnya, server Anda menjadi tempat agent berjalan. Itulah yang dibahas dalam bagian lain pada panduan ini.

Menghubungkan tool dengan MCP

Apa pun jalur yang Anda pilih, Anda perlu menghubungkan agen ke sistem nyata. Model Context Protocol adalah cara yang terstruktur untuk melakukannya. MCP merupakan standar terbuka untuk menyediakan tool dan data bagi agen. Daripada menulis kode integrasi secara manual untuk setiap service, arahkan Claude ke MCP server yang sudah menyediakan kemampuan tersebut sebagai tool. Anda dapat menjalankan MCP server sebagai service kecil pada VPS yang sama. Setiap server hanya diberi akses yang diperlukan. Penjelasan tentang hal ini tersedia di menjalankan MCP server pada VPS.

Memilih model

Claude tersedia dalam beberapa model. Pemilihannya merupakan kompromi antara kemampuan, kecepatan, dan biaya. Saat ini, pilihan utama adalah Claude Opus 4.8 (claude-opus-4-8), model default yang mumpuni untuk penalaran sulit dan eksekusi agen dalam durasi panjang; Claude Sonnet 5 (claude-sonnet-5), opsi seimbang yang lebih murah dan cepat, tetapi tetap mendekati Opus untuk banyak tugas; serta Claude Haiku 4.5 (claude-haiku-4-5), model tercepat dan termurah untuk langkah sederhana dengan volume tinggi. Di atas model-model tersebut terdapat Claude Fable 5 (claude-fable-5), model dengan kemampuan tertinggi untuk pekerjaan yang paling menuntut. Gunakan pengenal model yang tepat dalam kode Anda dan jangan menambahkan tanggal ke dalamnya.

Pola yang praktis adalah menggabungkan model-model tersebut. Biarkan model yang lebih murah menangani pemanggilan tool rutin, dan gunakan model yang lebih kuat untuk menangani keputusan sulit. Karena model hanya berupa string dalam request Anda, penggantiannya cukup dilakukan dengan mengubah satu baris. Jadi, mulailah dengan model default yang mumpuni, lalu gunakan model yang lebih sederhana jika kecepatan atau biaya lebih penting daripada peningkatan kualitas terakhir.

Jalankan sebagai service yang diperkuat di VPS

Agent hanya berguna jika tetap berjalan, dan hanya aman jika dibatasi. Di VPS, kedua hal tersebut dicapai dengan menjalankan agent sebagai service system yang diperkuat, bukan sebagai program yang Anda jalankan secara manual di terminal. Sebagai service, agent akan berjalan saat boot, dimulai ulang jika mengalami crash, dan mencatat log ke journal. Dengan konfigurasi yang diperkuat, agent berjalan sebagai user tanpa hak istimewa dan hanya memperoleh akses yang diperlukan. Dengan demikian, bug atau instruksi yang berbahaya memiliki dampak yang terbatas. Unit service hanya dapat membatasi resource yang boleh diakses proses. Pembatasan lainnya harus diterapkan di dalam agent harness itu sendiri. Itulah fungsi plugin DeepSeek Harness yang layak diinstal pada stack yang berbeda: batas pengeluaran, aturan izin per tool, dan pemindaian prompt injection.

Aturan yang paling penting adalah menyimpan Claude API key di sisi server. Key tersebut membayar dan mengotorisasi setiap panggilan. Karena itu, simpan key dalam file yang hanya dapat dibaca oleh user agent, muat ke dalam service sebagai environment variable, dan jangan pernah menempatkannya di dalam kode, repository, atau lokasi mana pun yang dapat dijangkau browser. Buat service unit yang lengkap dan diperkuat untuk agent Anda di sini:

ToolRun your agent as a hardened service

Selanjutnya, amankan server itu sendiri. Gunakan SSH hanya dengan key dan batasi account yang digunakan untuk administrasi, seperti dijelaskan dalam penguatan SSH di VPS. Jika Anda ingin mengendalikan agent dari sesi interaktif selama proses pembuatannya, menjalankan Claude Code di VPS dengan tmux dapat digunakan sebagai pendamping. Setelah sesi kedua terbuka pada server yang sama, keduanya dapat saling meneruskan pekerjaan sehingga Anda tidak perlu memindahkan setiap instruksi dari satu pane ke pane lainnya. Jika Anda ingin memahami konsep di balik semua ini tanpa mengaitkannya dengan satu model tertentu, panduan terkait tentang membangun agent AI sendiri di VPS menjelaskan dasar-dasarnya.

Jika yang Anda perlukan adalah asisten coding di terminal, menjalankan agent AI coding di VPS membahas Aider dan Goose.

FAQ

Model Claude mana yang sebaiknya saya gunakan untuk membuat agent?

Mulai dengan Claude Opus 4.8 (claude-opus-4-8), sebagai default yang mumpuni, lalu sesuaikan dari sana. Claude Sonnet 5 (claude-sonnet-5) lebih murah dan lebih cepat untuk sebagian besar pekerjaan, Claude Haiku 4.5 (claude-haiku-4-5) paling sesuai untuk langkah sederhana dalam jumlah besar, sedangkan Claude Fable 5 (claude-fable-5) paling mumpuni untuk tugas yang paling sulit. Pola yang umum adalah menggunakan model yang lebih murah untuk langkah rutin dan model yang lebih kuat untuk keputusan sulit, karena penggantiannya hanya memerlukan satu baris perubahan.

Apakah seluruh agent dijalankan di VPS saya, atau oleh Anthropic?

Hal ini bergantung pada pendekatannya. Jika Anda menulis loop sendiri menggunakan Claude API, atau menggunakan Claude Agent SDK, agent berjalan sepenuhnya di VPS Anda dan hanya pemanggilan model yang dikirim ke Anthropic. Jika Anda menggunakan Managed Agents, Anthropic menjalankan loop dan menyediakan sandbox tempat tool dieksekusi, sehingga lebih sedikit komponennya yang berjalan di server Anda. Untuk agent yang berjalan di mesin Anda sendiri, gunakan salah satu dari dua opsi pertama.

Apa perbedaan antara Claude API dan Claude Agent SDK?

Claude API adalah endpoint Messages mentah: Anda mengirim percakapan dan tool, lalu menulis loop agent di sekitarnya, atau menggunakan tool runner milik SDK untuk menggerakkannya. Claude Agent SDK adalah library tingkat lebih tinggi, yaitu Claude Code yang dikemas untuk digunakan dalam pembangunan agent, yang menyediakan loop lengkap serta tool bawaan untuk file, shell, dan pencarian. Gunakan API jika Anda ingin mendefinisikan semuanya sendiri, dan gunakan Agent SDK jika Anda menginginkan agent yang mumpuni tanpa harus merakit harness.

Bagaimana cara menjaga keamanan Claude API key di server?

Simpan key di sisi server dan jauhkan dari kode Anda. Simpan key dalam file yang hanya dapat dibaca oleh account yang menjalankan agent, muat key ke dalam service sebagai environment variable, dan jangan pernah melakukan commit key ke repository atau mengeksposnya ke browser. Karena setiap request ke Claude berasal dari server Anda, key tidak perlu sampai ke perangkat pengguna. Hal ini membuat agent yang berjalan di server lebih mudah diamankan daripada agent yang disematkan dalam aplikasi client.

Apakah saya perlu melakukan self-host model untuk membuat agent dengan Claude?

Tidak. Pada Claude, model merupakan service yang di-host dan dipanggil melalui API, sehingga tidak ada komponen yang perlu dijalankan pada GPU. VPS Anda menjalankan loop agent, tool, dan data, sedangkan proses penalaran berlangsung di sisi Anthropic. Inilah yang memungkinkan server dengan sumber daya terbatas menjalankan agent yang mumpuni. Jika Anda menginginkan model yang sepenuhnya lokal, gunakan jalur self-host yang dibahas dalam panduan pendamping tentang cara membuat AI agent sendiri.