Socket response viewer
Paste newline-delimited JSON socket frames. This viewer groups frames by response and output item, then reconstructs assistant text from content part and text delta events.
Input frames
Paste one JSON event per line.
Reconstructed assistant text
Hello world
Frames
10
Responses
1
Output items
2
Responses
resp_123completedgpt-5.3-codex
Sequences: 0, 1, 9
Output items
output 0reasoningrs_1
output 1messageassistantcommentarycompletedmsg_1
part 0output_textdone
Hello world
Frame timeline
#0response.createdseq 0
{
"type": "response.created",
"response": {
"id": "resp_123",
"status": "in_progress",
"model": "gpt-5.3-codex"
},
"sequence_number": 0
}#1response.in_progressseq 1
{
"type": "response.in_progress",
"response": {
"id": "resp_123",
"status": "in_progress"
},
"sequence_number": 1
}#2response.output_item.addedseq 2output 0
{
"type": "response.output_item.added",
"item": {
"id": "rs_1",
"type": "reasoning",
"summary": []
},
"output_index": 0,
"sequence_number": 2
}#3response.output_item.doneseq 3output 0
{
"type": "response.output_item.done",
"item": {
"id": "rs_1",
"type": "reasoning",
"summary": []
},
"output_index": 0,
"sequence_number": 3
}#4response.output_item.addedseq 4output 1
{
"type": "response.output_item.added",
"item": {
"id": "msg_1",
"type": "message",
"status": "in_progress",
"content": [],
"phase": "commentary",
"role": "assistant"
},
"output_index": 1,
"sequence_number": 4
}#5response.content_part.addedseq 5output 1
{
"type": "response.content_part.added",
"item_id": "msg_1",
"output_index": 1,
"content_index": 0,
"part": {
"type": "output_text",
"text": "Hello"
},
"sequence_number": 5
}#6response.output_text.deltaseq 6output 1
{
"type": "response.output_text.delta",
"item_id": "msg_1",
"output_index": 1,
"content_index": 0,
"delta": " world",
"sequence_number": 6
}#7response.output_text.doneseq 7output 1
{
"type": "response.output_text.done",
"item_id": "msg_1",
"output_index": 1,
"content_index": 0,
"text": "Hello world",
"sequence_number": 7
}#8response.output_item.doneseq 8output 1
{
"type": "response.output_item.done",
"item": {
"id": "msg_1",
"type": "message",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello world"
}
],
"phase": "commentary",
"role": "assistant"
},
"output_index": 1,
"sequence_number": 8
}#9response.completedseq 9
{
"type": "response.completed",
"response": {
"id": "resp_123",
"status": "completed"
},
"sequence_number": 9
}