Pengantar Claude Code Agent SDK — Bangun Agen Otonom dengan Cepat
Pelajari cara membangun agen AI otonom dengan Claude Code Agent SDK. Mencakup setup, definisi tool, dan eksekusi multi-langkah dengan contoh kode praktis.
Apa itu Agent SDK?
Claude Code Agent SDK adalah framework untuk membangun agen otonom yang didukung oleh model Claude. Berbeda dengan panggilan API sederhana, agen menerima tujuan, memilih tool secara mandiri, mengevaluasi hasil, dan menjalankan loop penalaran multi-langkah untuk mencapai solusi.
Chatbot tradisional bekerja dalam satu siklus permintaan-respons. Dengan Agent SDK, Anda dapat menyelesaikan workflow kompleks — membaca file, mengidentifikasi masalah, menerapkan perbaikan, menjalankan tes, dan melaporkan hasil — semuanya dari satu instruksi.
Setup
Inisialisasi proyek Anda dan instal SDK.
mkdir my-agent && cd my-agent
npm init -y
npm install @anthropic-ai/claude-code --save
Untuk pengembangan TypeScript, tambahkan juga definisi tipe.
npm install typescript @types/node --save-dev
npx tsc --init
Set variabel environment ANTHROPIC_API_KEY, dan Anda siap memulai.
export ANTHROPIC_API_KEY="sk-ant-..."
Agen Minimal
Berikut adalah agen sederhana yang dapat berinteraksi dengan sistem file.
import { Claude } from "@anthropic-ai/claude-code";
const agent = new Claude({
model: "claude-sonnet-4-20250514",
maxTurns: 10,
});
async function main() {
const result = await agent.run(
"Daftarkan semua komentar TODO di direktori src dan urutkan berdasarkan prioritas"
);
console.log(result.text);
}
main();
Parameter maxTurns membatasi jumlah maksimum langkah yang dapat dijalankan agen. Selalu atur ini sebagai pengaman terhadap loop tak terbatas.
Mendefinisikan Custom Tool
Kekuatan sejati Agent SDK terletak pada custom tool. Dengan memberi agen akses ke API eksternal atau database, Anda membuka otomasi yang jauh lebih praktis.
import { Claude, Tool } from "@anthropic-ai/claude-code";
const fetchIssueTool: Tool = {
name: "fetch_github_issue",
description: "Mengambil issue GitHub",
parameters: {
type: "object",
properties: {
owner: { type: "string", description: "Pemilik repository" },
repo: { type: "string", description: "Nama repository" },
number: { type: "number", description: "Nomor issue" },
},
required: ["owner", "repo", "number"],
},
async execute({ owner, repo, number }) {
const res = await fetch(
`https://api.github.com/repos/${owner}/${repo}/issues/${number}`,
{ headers: { Authorization: `token ${process.env.GITHUB_TOKEN}` } }
);
return await res.json();
},
};
const agent = new Claude({
model: "claude-sonnet-4-20250514",
tools: [fetchIssueTool],
maxTurns: 15,
});
Dengan definisi ini, agen memanggil fetch_github_issue saat diperlukan dan memutuskan tindakan selanjutnya berdasarkan informasi yang diperoleh.
Cara Kerja Eksekusi Multi-Langkah
Secara internal, Agent SDK menjalankan loop berikut:
- Perencanaan (Planning) — Memecah instruksi pengguna menjadi langkah-langkah yang diperlukan
- Pemilihan Tool (Tool Selection) — Memilih tool optimal dari yang tersedia
- Eksekusi (Execution) — Menjalankan tool dan menangkap hasil
- Evaluasi (Evaluation) — Memeriksa apakah tujuan telah tercapai
- Ulangi atau Selesai — Kembali ke langkah 1 jika belum selesai, atau menghasilkan jawaban akhir
Loop ini menghilangkan kebutuhan untuk meng-hardcode setiap prosedur di awal, memungkinkan pemrosesan fleksibel yang beradaptasi dengan situasi.
Contoh Praktis: Agen Review PR Otomatis
Mari bangun kasus penggunaan nyata — agen review Pull Request otomatis.
const agent = new Claude({
model: "claude-sonnet-4-20250514",
tools: [fetchIssueTool, readFileTool, postCommentTool],
maxTurns: 20,
systemPrompt: `Anda adalah ahli code review.
Baca diff PR dan review berdasarkan:
- Potensi bug
- Risiko keamanan
- Masalah performa
- Saran perbaikan`,
});
const result = await agent.run(
"Review PR #42 dan tinggalkan komentar jika ada masalah"
);
Dengan menentukan peran agen dan kriteria evaluasi di systemPrompt, Anda mendapatkan review yang konsisten dan dapat diandalkan.
Penanganan Error dan Retry
Penanganan error yang robust sangat penting untuk lingkungan produksi.
const agent = new Claude({
model: "claude-sonnet-4-20250514",
maxTurns: 10,
onError: (error, context) => {
console.error(`Error di langkah ${context.turn}:`, error.message);
if (context.turn >= 3) {
return "abort"; // Hentikan setelah 3 kegagalan
}
return "retry"; // Coba lagi jika tidak
},
});
Ringkasan dan Langkah Selanjutnya
Dengan Agent SDK, Anda dapat mengotomasi tugas kompleks multi-langkah alih-alih mengandalkan respons AI sekali jalan. Mulailah dengan tugas kecil seperti pengorganisasian file atau analisis log, lalu secara bertahap tambahkan tool untuk memperluas kemampuan agen Anda.
Untuk dasar-dasar Claude Code, lihat Panduan Memulai. Untuk pengembangan berbasis API, lihat Panduan Pengembangan API. Untuk integrasi CLI, lihat Pengembangan Tool CLI.
Untuk detail lebih lanjut, kunjungi dokumentasi resmi Anthropic dan repository GitHub Claude Code.
Tingkatkan alur kerja Claude Code kamu
50 template prompt yang sudah teruji, siap copy-paste ke Claude Code sekarang juga.
PDF Gratis: Cheatsheet Claude Code dalam 5 Menit
Perintah penting, pintasan, dan contoh prompt dalam satu halaman siap cetak.
Tentang Penulis
Masa
Engineer yang aktif menggunakan Claude Code. Mengelola claudecode-lab.com, media teknologi 10 bahasa dengan lebih dari 2.000 halaman.
Artikel Terkait
Panduan Lengkap Teknik Manajemen Konteks di Claude Code
Pelajari teknik praktis untuk memaksimalkan context window Claude Code. Mencakup optimasi token, pembagian percakapan, dan penggunaan CLAUDE.md.
Setup MCP Server Claude Code dan Use Case Praktis
Panduan lengkap tentang kemampuan MCP server Claude Code. Pelajari cara menghubungkan tool eksternal, mengonfigurasi server, dan contoh integrasi dunia nyata.
Menguasai Claude Code Hooks: Auto-Format, Auto-Test, dan Lainnya
Pelajari cara menyiapkan auto-formatting dan auto-testing dengan Claude Code hooks. Dilengkapi contoh konfigurasi praktis dan use case dunia nyata.