Gambaran Umum
Mode headless memungkinkan Anda menjalankan Claude Code secara programatis dari skrip baris perintah dan alat otomatisasi tanpa UI interaktif apa pun.Penggunaan Dasar
Antarmuka baris perintah utama untuk Claude Code adalah perintahclaude
. Gunakan flag --print
(atau -p
) untuk berjalan dalam mode non-interaktif dan mencetak hasil akhir:
Opsi Konfigurasi
Mode headless memanfaatkan semua opsi CLI yang tersedia di Claude Code. Berikut adalah yang utama untuk otomatisasi dan skrip:Flag | Deskripsi | Contoh |
---|---|---|
--print , -p | Jalankan dalam mode non-interaktif | claude -p "query" |
--output-format | Tentukan format output (text , json , stream-json ) | claude -p --output-format json |
--resume , -r | Lanjutkan percakapan berdasarkan ID sesi | claude --resume abc123 |
--continue , -c | Lanjutkan percakapan terbaru | claude --continue |
--verbose | Aktifkan logging verbose | claude --verbose |
--append-system-prompt | Tambahkan ke system prompt (hanya dengan --print ) | claude --append-system-prompt "Custom instruction" |
--allowedTools | Daftar alat yang diizinkan dipisahkan spasi, atau string daftar alat yang diizinkan dipisahkan koma | claude --allowedTools mcp__slack mcp__filesystem claude --allowedTools "Bash(npm install),mcp__filesystem" |
--disallowedTools | Daftar alat yang ditolak dipisahkan spasi, atau string daftar alat yang ditolak dipisahkan koma | claude --disallowedTools mcp__splunk mcp__github claude --disallowedTools "Bash(git commit),mcp__github" |
--mcp-config | Muat server MCP dari file JSON | claude --mcp-config servers.json |
--permission-prompt-tool | Alat MCP untuk menangani prompt izin (hanya dengan --print ) | claude --permission-prompt-tool mcp__auth__prompt |
Percakapan Multi-turn
Untuk percakapan multi-turn, Anda dapat melanjutkan percakapan atau melanjutkan dari sesi terbaru:Format Output
Output Teks (Default)
Output JSON
Mengembalikan data terstruktur termasuk metadata:Output JSON Streaming
Mengalirkan setiap pesan saat diterima:init
awal, diikuti oleh daftar pesan pengguna dan asisten, diikuti oleh pesan sistem result
akhir dengan statistik. Setiap pesan dipancarkan sebagai objek JSON terpisah.
Format Input
Input Teks (Default)
Input JSON Streaming
Aliran pesan yang disediakan melaluistdin
di mana setiap pesan mewakili giliran pengguna. Ini memungkinkan beberapa giliran percakapan tanpa meluncurkan ulang biner claude
dan memungkinkan memberikan panduan kepada model saat sedang memproses permintaan.
Setiap pesan adalah objek JSON ‘Pesan pengguna’, mengikuti format yang sama dengan skema pesan output. Pesan diformat menggunakan format jsonl di mana setiap baris input adalah objek JSON lengkap. Input JSON streaming memerlukan -p
dan --output-format stream-json
.
Contoh Integrasi Agent
Bot Respons Insiden SRE
Review Keamanan Otomatis
Asisten Hukum Multi-turn
Praktik Terbaik
-
Gunakan format output JSON untuk parsing respons secara programatis:
-
Tangani error dengan baik - periksa kode keluar dan stderr:
- Gunakan manajemen sesi untuk mempertahankan konteks dalam percakapan multi-turn
-
Pertimbangkan timeout untuk operasi yang berjalan lama:
- Hormati batas rate saat membuat beberapa permintaan dengan menambahkan jeda antara panggilan
Sumber Daya Terkait
- Penggunaan CLI dan kontrol - Dokumentasi CLI lengkap
- Alur kerja umum - Panduan langkah demi langkah untuk kasus penggunaan umum