Skema output untuk format teks, JSON, dan stream-JSON
--output-format
saat digunakan bersama --print
. Format ini mencakup format terstruktur untuk penggunaan terprogram (json
, stream-json
) serta format teks sederhana untuk pelacakan progres yang mudah dibaca.
--output-format
adalah stream-json
. Opsi ini hanya berlaku saat melakukan print (--print
) atau ketika mode print diinferensikan (stdout non-TTY atau stdin yang dipipe).json
menghasilkan satu objek JSON (diikuti baris baru) saat run selesai dengan sukses. Delta dan event tool tidak dikeluarkan; teks digabungkan menjadi hasil akhir.
Jika gagal, proses keluar dengan kode non-zero dan menulis pesan error ke stderr. Tidak ada objek JSON yang well-formed yang dikeluarkan dalam kasus kegagalan.
Field | Deskripsi |
---|---|
type | Selalu "result" untuk hasil terminal |
subtype | Selalu "success" untuk completion yang berhasil |
is_error | Selalu false untuk respons yang berhasil |
duration_ms | Total waktu eksekusi dalam milidetik |
duration_api_ms | Waktu request API dalam milidetik (saat ini sama dengan duration_ms ) |
result | Teks respons asisten lengkap (penggabungan semua delta teks) |
session_id | Identifier sesi unik |
request_id | Identifier request opsional (boleh dihilangkan) |
stream-json
menghasilkan JSON yang dipisahkan baris baru (NDJSON). Setiap baris berisi satu objek JSON yang merepresentasikan event real-time selama eksekusi.
Stream berakhir dengan event terminal result
ketika berhasil. Ketika gagal, proses keluar dengan kode non-zero dan stream mungkin berakhir lebih awal tanpa event terminal; pesan error ditulis ke stderr.
tools
dan mcp_servers
mungkin ditambahkan ke event ini.message.content[].text
secara berurutan untuk merekonstruksi respons assistant yang lengkap.tool_call.readToolCall.args
berisi { "path": "file.txt" }
tool_call.readToolCall.result.success
berisi metadata dan konten filetool_call.writeToolCall.args
berisi { "path": "file.txt", "fileText": "content...", "toolCallId": "id" }
tool_call.writeToolCall.result.success
berisi { "path": "/absolute/path", "linesCreated": 19, "fileSize": 942 }
tool_call.function
dengan { "name": "tool_name", "arguments": "..." }
text
ngasih aliran aksi agen yang sederhana dan mudah dibaca. Alih-alih event JSON yang detail, format ini ngeluarin deskripsi teks ringkas tentang apa yang lagi dilakukan agen secara real-time.
Format ini berguna buat ngawasin progres agen tanpa overhead nge-parse data terstruktur, jadi ideal buat logging, debugging, atau pelacakan progres yang simpel.
\n
thinking
disembunyikan dalam mode print dan tidak akan muncul di format output mana punassistant
untuk merekonstruksi respons lengkap