The whole hunk
from line 1213, old and new numbered
/
lines
from line 1213
12131213 session_id: session.id,
12141214 });
12151215
1216 for await (const event of stream) {
1217 if (event.type === "agent.message") {
1218 for (const block of event.content) {
1219 if (block.type === "text") {
1220 process.stdout.write(block.text);
1216 loop: for await (const event of stream) {
1217 switch (event.type) {
1218 case "agent.message":
1219 for (const block of event.content) {
1220 if (block.type === "text") {
1221 process.stdout.write(block.text);
1222 }
12211223 }
1222 }
1223 } else if (event.type === "session.thread_status_idle") {
1224 break;
1224 break;
1225 case "session.thread_status_idle":
1226 break loop;
12251227 }
12261228 }
12271229 ```
from line 1278
12761278 thread.id(),
12771279 EventStreamParams.builder().sessionId(session.id()).build()
12781280 )) {
1281 loop:
12791282 for (var event : (Iterable<BetaManagedAgentsStreamSessionThreadEvents>) streamResponse.stream()::iterator) {
1280 if (event.isAgentMessage()) {
1281 for (var block : event.asAgentMessage().content()) {
1282 block.text().ifPresent(textBlock -> IO.print(textBlock.text()));
1283 switch (event.type().value()) {
1284 case AGENT_MESSAGE -> {
1285 for (var block : event.asAgentMessage().content()) {
1286 block.text().ifPresent(textBlock -> IO.print(textBlock.text()));
1287 }
12831288 }
1284 } else if (event.isSessionThreadStatusIdle()) {
1285 break;
1289 case SESSION_THREAD_STATUS_IDLE -> {
1290 break loop;
1291 }
12861292 }
12871293 }
12881294 }
from line 1301
12951301 );
12961302
12971303 foreach ($stream as $event) {
1298 if ($event->type === 'agent.message') {
1299 foreach ($event->content as $block) {
1300 if ($block->type === 'text') {
1301 echo $block->text;
1304 switch (true) {
1305 case $event instanceof \Anthropic\Beta\Sessions\Events\ManagedAgentsAgentMessageEvent:
1306 foreach ($event->content as $block) {
1307 if ($block instanceof \Anthropic\Beta\Sessions\Events\ManagedAgentsTextBlock) {
1308 echo $block->text;
1309 }
13021310 }
1303 }
1304 } elseif ($event->type === 'session.thread_status_idle') {
1305 break;
1311 break;
1312 case $event instanceof \Anthropic\Beta\Sessions\Events\ManagedAgentsSessionThreadStatusIdleEvent:
1313 break 2;
13061314 }
13071315 }
13081316 ```
from line 1317
13091317
13101318 ```ruby Ruby
13111319 client.beta.sessions.threads.events.stream_events(thread.id, session_id: session.id).each do |event|
1312 case event.type
1313 when :"agent.message"
1320 case event
1321 when Anthropic::Beta::Sessions::BetaManagedAgentsAgentMessageEvent
13141322 event.content.each do |block|
1315 print block.text if block.type == :text
1323 print block.text if block.is_a?(Anthropic::Beta::Sessions::BetaManagedAgentsTextBlock)
13161324 end
1317 when :"session.thread_status_idle"
1325 when Anthropic::Beta::Sessions::BetaManagedAgentsSessionThreadStatusIdleEvent
13181326 break
13191327 end
13201328 end