diff --git a/crates/agent_servers/src/claude.rs b/crates/agent_servers/src/claude.rs index 9e10542a6dce7cda173fc40cc01e8e4ccd8c478c..2e0eb271b6358e53eb2deb88fb48d9c21ade69bc 100644 --- a/crates/agent_servers/src/claude.rs +++ b/crates/agent_servers/src/claude.rs @@ -414,11 +414,19 @@ impl ClaudeAgentSession { } } SdkMessage::Result { - is_error, subtype, .. + is_error, + subtype, + result, + .. } => { if let Some(end_turn_tx) = end_turn_tx.borrow_mut().take() { if is_error { - end_turn_tx.send(Err(anyhow!("Error: {subtype}"))).ok(); + end_turn_tx + .send(Err(anyhow!( + "Error: {}", + result.unwrap_or_else(|| subtype.to_string()) + ))) + .ok(); } else { end_turn_tx.send(Ok(())).ok(); }