Advanced

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:

  1. Perencanaan (Planning) — Memecah instruksi pengguna menjadi langkah-langkah yang diperlukan
  2. Pemilihan Tool (Tool Selection) — Memilih tool optimal dari yang tersedia
  3. Eksekusi (Execution) — Menjalankan tool dan menangkap hasil
  4. Evaluasi (Evaluation) — Memeriksa apakah tujuan telah tercapai
  5. 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.

#Claude Code #Agent SDK #Agen AI #Otomasi #TypeScript

Tingkatkan alur kerja Claude Code kamu

50 template prompt yang sudah teruji, siap copy-paste ke Claude Code sekarang juga.

Gratis

PDF Gratis: Cheatsheet Claude Code dalam 5 Menit

Perintah penting, pintasan, dan contoh prompt dalam satu halaman siap cetak.

Unduh PDF
M

Tentang Penulis

Masa

Engineer yang aktif menggunakan Claude Code. Mengelola claudecode-lab.com, media teknologi 10 bahasa dengan lebih dari 2.000 halaman.