
Terakhir diperbarui: 4 Juni 2026
Claude Code SDK sangat cocok ketika pekerjaannya masih didominasi kode: pemeriksaan CI, code review, output terstruktur, dan otomasi yang sadar MCP. Namun, begitu sebuah alur kerja membutuhkan pencarian, media, publikasi, atau kemampuan non-kode lainnya, Claude Code SDK saja tidak lagi cukup.
Di situlah AnyCap berperan. AnyCap adalah agent CLI yang memperluas coding agent melampaui eksekusi kode, sehingga alur kerja yang sama bisa berpindah dari penalaran atas kode ke riset, pembuatan aset, dan pengiriman hasil.
Ringkasan cepat
- Gunakan Claude Code SDK untuk otomasi yang berfokus pada kode
- Tambahkan AnyCap saat alur kerja membutuhkan pencarian, media, publikasi, atau delivery
- Perlakukan Claude Code SDK sebagai runtime untuk coding
- Perlakukan AnyCap sebagai lapisan kapabilitas di luar kode
Apa itu Claude Code SDK?
Claude Code SDK adalah antarmuka pemrograman yang memungkinkan Anda:
- Menjalankan Claude Code secara non-interaktif dari skrip dan pipeline
- Mengontrol file, direktori, dan alat mana yang ada dalam konteks
- Mengurai output terstruktur untuk pemrosesan lanjutan
- Merangkai Claude Code dengan alat lain dalam alur kerja otomatis
- Membangun UI kustom di atas kemampuan penalaran Claude Code
Tersedia sebagai paket Node.js:
npm install @anthropic-ai/claude-code
Atau jalankan lewat CLI dalam mode non-interaktif:
claude -p "Prompt Anda di sini" --output-format json
Konsep inti SDK
Mode non-interaktif
Kasus penggunaan SDK paling dasar: jalankan Claude Code dengan prompt, dapatkan output, selesai.
# CLI non-interaktif
claude -p "Tinjau src/auth.ts untuk kerentanan keamanan" \
--output-format json \
--max-turns 5
// SDK
const { query } = require('@anthropic-ai/claude-code');
const result = await query({
prompt: "Tinjau src/auth.ts untuk kerentanan keamanan",
options: {
maxTurns: 5,
outputFormat: 'json'
}
});
Konfigurasi alat
Kontrol alat apa saja yang dapat diakses Claude Code dalam panggilan SDK Anda:
const result = await query({
prompt: "Buat test suite untuk src/utils.ts",
options: {
allowedTools: ['Read', 'Write', 'Bash'],
// Nonaktifkan alat yang tidak Anda perlukan:
// disallowedTools: ['WebSearch', 'mcp__custom_tool']
}
});
System prompt kustom
Timpa system prompt bawaan Claude Code untuk perilaku yang lebih spesifik:
const result = await query({
prompt: "Refactor modul ini",
options: {
systemPrompt: `Anda adalah pakar TypeScript yang berfokus pada pola functional programming.
Selalu prioritaskan struktur data immutable. Gunakan tipe Result untuk penanganan error.
Jangan pernah memakai tipe any atau unknown.`,
}
});
Pola SDK yang praktis
1. Code review otomatis di CI
// .github/workflows/code-review.js
const { query } = require('@anthropic-ai/claude-code');
const { execSync } = require('child_process');
const diff = execSync('git diff main...HEAD').toString();
const review = await query({
prompt: `Tinjau diff PR ini untuk: masalah keamanan, masalah performa, dan tes yang hilang.
Keluarkan sebagai JSON dengan kunci: security[], performance[], testing[].
Diff:
${diff}`,
options: {
outputFormat: 'json',
allowedTools: ['Read'], // Hanya baca di CI
maxTurns: 3
}
});
console.log(JSON.parse(review.result));
2. Pembuatan dokumentasi otomatis
const fs = require('fs');
const { query } = require('@anthropic-ai/claude-code');
async function generateDocs(srcPath) {
const result = await query({
prompt: `Buat dokumentasi JSDoc yang lengkap untuk semua fungsi yang diekspor di ${srcPath}.
Tambahkan deskripsi parameter, tipe return, dan contoh penggunaan.
Tulis kembali file yang diperbarui dengan dokumentasi yang ditambahkan.`,
options: {
allowedTools: ['Read', 'Write'],
cwd: process.cwd()
}
});
return result;
}
3. Alur kerja multi-agent dengan kapabilitas eksternal
Di sinilah AnyCap menjadi berguna. Claude Code menangani penalaran kode, sementara AnyCap menangani tugas yang berada di luar runtime coding.
const { query } = require('@anthropic-ai/claude-code');
const { execSync } = require('child_process');
async function buildAndPublishDocs(repoPath) {
// Langkah 1: Claude Code membuat dokumentasi
const docsResult = await query({
prompt: "Buat README yang komprehensif untuk proyek ini dengan instruksi setup, referensi API, dan contoh",
options: {
cwd: repoPath,
allowedTools: ['Read', 'Write', 'Bash']
}
});
// Langkah 2: AnyCap menghasilkan diagram hero
execSync(`anycap image generate \
--prompt "Diagram arsitektur teknis untuk alat developer, gaya minimal bersih" \
--model nano-banana-2 \
-o ${repoPath}/docs/architecture.png`);
// Langkah 3: AnyCap menerbitkan sebagai halaman web
const pageResult = execSync(`anycap page deploy ${repoPath}/docs/`).toString();
return { docs: docsResult, page: JSON.parse(pageResult) };
}
Autentikasi SDK
SDK menggunakan autentikasi yang sama seperti Claude Code. Setel API key Anda:
export ANTHROPIC_API_KEY=your_key_here
Atau untuk lingkungan tim, gunakan konfigurasi spesifik lingkungan:
const { query } = require('@anthropic-ai/claude-code');
// SDK akan mengambil ANTHROPIC_API_KEY secara otomatis
// Atau set secara eksplisit:
process.env.ANTHROPIC_API_KEY = await getSecretFromVault('anthropic-api-key');
Format output
SDK mendukung tiga format output:
| Format | Use case |
|---|---|
text |
Default, output yang mudah dibaca manusia |
json |
Pemrosesan programatis — mencakup hasil, biaya, info sesi |
stream-json |
Output real-time untuk UI dan dashboard |
// Output JSON mencakup metadata
{
"result": "Fungsi ini berpotensi memiliki kerentanan SQL injection...",
"is_error": false,
"session_id": "sess_xxxx",
"cost_usd": 0.0043,
"num_turns": 2
}
Rate limit dan manajemen biaya dalam alur kerja SDK
Otomasi berbasis SDK dapat menghabiskan token lebih cepat daripada penggunaan interaktif. Guardrail bawaan:
const result = await query({
prompt: "...",
options: {
maxTurns: 5, // Batasi iterasi penalaran
timeoutMs: 30000, // Timeout untuk tugas yang berjalan lama
}
});
// Selalu periksa biaya di produksi
if (result.cost_usd > 0.10) {
logger.warn(`Sesi dengan biaya tinggi: $${result.cost_usd}`);
}
Untuk tugas yang sangat membutuhkan kapabilitas tambahan, seperti pembuatan gambar, pembuatan video, atau pencarian web, alihkan ke AnyCap daripada membiarkan Claude Code menanganinya di konteks. Ini membuat biaya SDK tetap dapat diprediksi dan menghindari batas laju Claude untuk tugas non-penalaran.
Memulai
# Instal SDK
npm install @anthropic-ai/claude-code
# Instal AnyCap untuk memperluas kapabilitas
curl -fsSL https://anycap.ai/install.sh | sh
# Tambahkan skill AnyCap ke Claude Code
npx -y skills add anycap-ai/anycap -y
→ AnyCap untuk Claude Code → Panduan menambahkan alat ke Claude Code