Langsung ke konten utama
API sesi V2 tidak lagi didukung. TypeScript Agent SDK 0.3.142 menghapus unstable_v2_createSession, unstable_v2_resumeSession, unstable_v2_prompt, dan tipe SDKSession serta SDKSessionOptions.Untuk bermigrasi, gunakan API query() dan opsi sesi yang diterimanya. Lewatkan AsyncIterable<SDKUserMessage> untuk percakapan multi-turn, atau options.resume untuk melanjutkan sesi yang disimpan. Halaman ini disimpan untuk referensi jika Anda mempertahankan kode pada Agent SDK 0.2.x atau lebih awal.
V2 adalah API sesi eksperimental yang menghilangkan kebutuhan untuk async generators dan koordinasi yield. Alih-alih mengelola status generator di seluruh turn, setiap turn adalah siklus send()/stream() terpisah. Permukaan API berkurang menjadi tiga konsep:
  • createSession() / resumeSession(): Mulai atau lanjutkan percakapan
  • session.send(): Kirim pesan
  • session.stream(): Dapatkan respons

Instalasi

Agent SDK 0.2.x adalah versi terakhir yang menyertakan antarmuka V2. Versi paket melompat dari 0.2.x langsung ke 0.3.142, jadi versi penghapusan di atas dan pin instalasi di bawah menggambarkan batas yang sama. Untuk menginstal rilis terakhir yang kompatibel dengan V2, pin versi mayor dan minor:
SDK menggabungkan binary Claude Code asli untuk platform Anda sebagai dependensi opsional, jadi Anda tidak perlu menginstal Claude Code secara terpisah.

Mulai cepat

Prompt sekali jalan

Untuk kueri single-turn sederhana di mana Anda tidak perlu mempertahankan sesi, gunakan unstable_v2_prompt(). Contoh ini mengirim pertanyaan matematika dan mencatat jawabannya:

Sesi dasar

Untuk interaksi di luar prompt tunggal, buat sesi. V2 memisahkan pengiriman dan streaming menjadi langkah-langkah yang berbeda:
  • send() mengirimkan pesan Anda
  • stream() mengalirkan respons kembali
Pemisahan eksplisit ini memudahkan untuk menambahkan logika antar turn (seperti memproses respons sebelum mengirim tindak lanjut). Contoh di bawah membuat sesi, mengirim “Hello!” ke Claude, dan mencetak respons teks. Ini menggunakan await using (TypeScript 5.2+) untuk secara otomatis menutup sesi ketika blok keluar. Anda juga dapat memanggil session.close() secara manual.

Percakapan multi-turn

Sesi mempertahankan konteks di seluruh pertukaran berganda. Untuk melanjutkan percakapan, panggil send() lagi pada sesi yang sama. Claude mengingat turn sebelumnya. Contoh ini mengajukan pertanyaan matematika, kemudian mengajukan tindak lanjut yang mereferensikan jawaban sebelumnya:

Lanjutkan sesi

Jika Anda memiliki ID sesi dari interaksi sebelumnya, Anda dapat melanjutkannya nanti. Ini berguna untuk alur kerja yang berjalan lama atau ketika Anda perlu mempertahankan percakapan di seluruh restart aplikasi. Contoh ini membuat sesi, menyimpan ID-nya, menutupnya, kemudian melanjutkan percakapan:

Pembersihan

Sesi dapat ditutup secara manual atau otomatis menggunakan await using, fitur TypeScript 5.2+ untuk pembersihan sumber daya otomatis. Jika Anda menggunakan versi TypeScript yang lebih lama atau mengalami masalah kompatibilitas, gunakan pembersihan manual sebagai gantinya. Pembersihan otomatis (TypeScript 5.2+):
Pembersihan manual:

Referensi API

unstable_v2_createSession()

Membuat sesi baru untuk percakapan multi-turn.

unstable_v2_resumeSession()

Melanjutkan sesi yang ada berdasarkan ID.

unstable_v2_prompt()

Fungsi kenyamanan sekali jalan untuk kueri single-turn.

Antarmuka SDKSession

Ketersediaan fitur

API sesi V2 tidak mendukung setiap fitur V1. Berikut ini memerlukan SDK V1:
  • Session forking (opsi forkSession)
  • Beberapa pola input streaming lanjutan

Lihat juga