multi_tool_streaming.yaml

  1---
  2version: 2
  3interactions:
  4- id: 0
  5  request:
  6    proto: HTTP/1.1
  7    proto_major: 1
  8    proto_minor: 1
  9    content_length: 812
 10    host: ""
 11    body: '{"max_tokens":4000,"messages":[{"content":[{"text":"Add and multiply the number 2 and 3","type":"text"}],"role":"user"}],"model":"claude-sonnet-4-20250514","system":[{"text":"You are a helpful assistant. Always use both add and multiply at the same time.","type":"text"}],"tool_choice":{"disable_parallel_tool_use":false,"type":"auto"},"tools":[{"input_schema":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"},"name":"add","description":"Add two numbers"},{"input_schema":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"},"name":"multiply","description":"Multiply two numbers"}],"stream":true}'
 12    headers:
 13      Accept:
 14      - application/json
 15      Content-Type:
 16      - application/json
 17      User-Agent:
 18      - Anthropic/Go 1.10.0
 19    url: https://api.anthropic.com/v1/messages
 20    method: POST
 21  response:
 22    proto: HTTP/2.0
 23    proto_major: 2
 24    proto_minor: 0
 25    content_length: -1
 26    body: |+
 27      event: message_start
 28      data: {"type":"message_start","message":{"id":"msg_01Sp6xSRhhVGg9eCXwHHDK4H","type":"message","role":"assistant","model":"claude-sonnet-4-20250514","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":502,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":0},"output_tokens":4,"service_tier":"standard"}}             }
 29
 30      event: content_block_start
 31      data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}    }
 32
 33      event: content_block_delta
 34      data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I'll add an"} }
 35
 36      event: content_block_delta
 37      data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d multiply the numbers 2 and 3 for"}             }
 38
 39      event: ping
 40      data: {"type": "ping"}
 41
 42      event: content_block_delta
 43      data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you."}         }
 44
 45      event: content_block_stop
 46      data: {"type":"content_block_stop","index":0        }
 47
 48      event: content_block_start
 49      data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01GrN36ErVgy85ECZ6pbzBL4","name":"add","input":{}}           }
 50
 51      event: content_block_delta
 52      data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""}       }
 53
 54      event: content_block_delta
 55      data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{\"a\": "}            }
 56
 57      event: content_block_delta
 58      data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"2"}   }
 59
 60      event: content_block_delta
 61      data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \"b\": 3}"}             }
 62
 63      event: content_block_stop
 64      data: {"type":"content_block_stop","index":1     }
 65
 66      event: content_block_start
 67      data: {"type":"content_block_start","index":2,"content_block":{"type":"tool_use","id":"toolu_0113xQa4VtccyoXcHaukkzom","name":"multiply","input":{}}}
 68
 69      event: content_block_delta
 70      data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":""}          }
 71
 72      event: content_block_delta
 73      data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":"{\"a\": 2"}     }
 74
 75      event: content_block_delta
 76      data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":", \"b\":"}     }
 77
 78      event: content_block_delta
 79      data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":" 3}"}          }
 80
 81      event: content_block_stop
 82      data: {"type":"content_block_stop","index":2 }
 83
 84      event: message_delta
 85      data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"input_tokens":502,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":137}   }
 86
 87      event: message_stop
 88      data: {"type":"message_stop"            }
 89
 90    headers:
 91      Content-Type:
 92      - text/event-stream; charset=utf-8
 93    status: 200 OK
 94    code: 200
 95    duration: 1.85757275s
 96- id: 1
 97  request:
 98    proto: HTTP/1.1
 99    proto_major: 1
100    proto_minor: 1
101    content_length: 1358
102    host: ""
103    body: '{"max_tokens":4000,"messages":[{"content":[{"text":"Add and multiply the number 2 and 3","type":"text"}],"role":"user"},{"content":[{"text":"I''ll add and multiply the numbers 2 and 3 for you.","type":"text"},{"id":"toolu_01GrN36ErVgy85ECZ6pbzBL4","input":{"a":2,"b":3},"name":"add","type":"tool_use"},{"id":"toolu_0113xQa4VtccyoXcHaukkzom","input":{"a":2,"b":3},"name":"multiply","type":"tool_use"}],"role":"assistant"},{"content":[{"tool_use_id":"toolu_01GrN36ErVgy85ECZ6pbzBL4","content":[{"text":"5","type":"text"}],"type":"tool_result"},{"tool_use_id":"toolu_0113xQa4VtccyoXcHaukkzom","content":[{"text":"6","type":"text"}],"type":"tool_result"}],"role":"user"}],"model":"claude-sonnet-4-20250514","system":[{"text":"You are a helpful assistant. Always use both add and multiply at the same time.","type":"text"}],"tool_choice":{"disable_parallel_tool_use":false,"type":"auto"},"tools":[{"input_schema":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"},"name":"add","description":"Add two numbers"},{"input_schema":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"},"name":"multiply","description":"Multiply two numbers"}],"stream":true}'
104    headers:
105      Accept:
106      - application/json
107      Content-Type:
108      - application/json
109      User-Agent:
110      - Anthropic/Go 1.10.0
111    url: https://api.anthropic.com/v1/messages
112    method: POST
113  response:
114    proto: HTTP/2.0
115    proto_major: 2
116    proto_minor: 0
117    content_length: -1
118    body: |+
119      event: message_start
120      data: {"type":"message_start","message":{"id":"msg_015VFFpA2pw4T7BRXd2sXMNL","type":"message","role":"assistant","model":"claude-sonnet-4-20250514","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":700,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":0},"output_tokens":2,"service_tier":"standard"}}               }
121
122      event: content_block_start
123      data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}
124
125      event: content_block_delta
126      data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"The results"}           }
127
128      event: content_block_delta
129      data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" are:\n- 2 + 3 = "}          }
130
131      event: ping
132      data: {"type": "ping"}
133
134      event: content_block_delta
135      data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"5\n- 2 × 3 = 6"}     }
136
137      event: content_block_stop
138      data: {"type":"content_block_stop","index":0   }
139
140      event: message_delta
141      data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"input_tokens":700,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":31}        }
142
143      event: message_stop
144      data: {"type":"message_stop"     }
145
146    headers:
147      Content-Type:
148      - text/event-stream; charset=utf-8
149    status: 200 OK
150    code: 200
151    duration: 1.874751333s