multi_tool_streaming_claude-sonnet-4.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_0187V18q2Hm2atsKZf2PT1JR","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_01XmAjSozdWpZr5YL5qMH9La","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_01C3hLiMRwSQPofrTZnX42En","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\":"}  }
 74
 75            event: content_block_delta
 76            data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":" 2"}     }
 77
 78            event: content_block_delta
 79            data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":", \"b\""}   }
 80
 81            event: content_block_delta
 82            data: {"type":"content_block_delta","index":2,"delta":{"type":"input_json_delta","partial_json":": 3}"} }
 83
 84            event: content_block_stop
 85            data: {"type":"content_block_stop","index":2            }
 86
 87            event: message_delta
 88            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}            }
 89
 90            event: message_stop
 91            data: {"type":"message_stop"     }
 92
 93        headers:
 94            Content-Type:
 95              - text/event-stream; charset=utf-8
 96        status: 200 OK
 97        code: 200
 98        duration: 1.001479417s
 99  - id: 1
100    request:
101        proto: HTTP/1.1
102        proto_major: 1
103        proto_minor: 1
104        content_length: 1358
105        host: ""
106        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_01XmAjSozdWpZr5YL5qMH9La","input":{"a":2,"b":3},"name":"add","type":"tool_use"},{"id":"toolu_01C3hLiMRwSQPofrTZnX42En","input":{"a":2,"b":3},"name":"multiply","type":"tool_use"}],"role":"assistant"},{"content":[{"tool_use_id":"toolu_01XmAjSozdWpZr5YL5qMH9La","content":[{"text":"5","type":"text"}],"type":"tool_result"},{"tool_use_id":"toolu_01C3hLiMRwSQPofrTZnX42En","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}'
107        headers:
108            Accept:
109              - application/json
110            Content-Type:
111              - application/json
112            User-Agent:
113              - Anthropic/Go 1.10.0
114        url: https://api.anthropic.com/v1/messages
115        method: POST
116    response:
117        proto: HTTP/2.0
118        proto_major: 2
119        proto_minor: 0
120        content_length: -1
121        body: |+
122            event: message_start
123            data: {"type":"message_start","message":{"id":"msg_01U3pancfKwkBiGZF8LTrL8Q","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":1,"service_tier":"standard"}} }
124
125            event: content_block_start
126            data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}             }
127
128            event: content_block_delta
129            data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"The"} }
130
131            event: content_block_delta
132            data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" results are:\n- 2 + 3 = "}         }
133
134            event: ping
135            data: {"type": "ping"}
136
137            event: content_block_delta
138            data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"5\n- 2 × "}}
139
140            event: content_block_delta
141            data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"3 = 6"}             }
142
143            event: content_block_stop
144            data: {"type":"content_block_stop","index":0              }
145
146            event: message_delta
147            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}        }
148
149            event: message_stop
150            data: {"type":"message_stop"}
151
152        headers:
153            Content-Type:
154              - text/event-stream; charset=utf-8
155        status: 200 OK
156        code: 200
157        duration: 1.344912792s