From b83565d5de5f0db9dfd3ba612f1c6b7411de8475 Mon Sep 17 00:00:00 2001 From: syui Date: Sat, 28 Feb 2026 15:10:46 +0900 Subject: [PATCH] fix bot err log --- src/commands/bot.rs | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/commands/bot.rs b/src/commands/bot.rs index d454bd5..a691640 100644 --- a/src/commands/bot.rs +++ b/src/commands/bot.rs @@ -36,6 +36,7 @@ impl ClaudeSession { .arg("stream-json") .arg("--output-format") .arg("stream-json") + .arg("--verbose") .arg("--dangerously-skip-permissions") .current_dir(&work_dir) .stdin(Stdio::piped()) @@ -153,14 +154,10 @@ impl ClaudeSession { .context("failed to write to claude stdin")?; self.stdin.flush().await?; - // Wait for response with timeout - let response = tokio::time::timeout( - std::time::Duration::from_secs(120), - self.response_rx.recv(), - ) - .await - .context("claude response timed out after 120s")? - .context("claude session closed unexpectedly")?; + // Wait for response (no timeout — claude may use tools) + let response = self.response_rx.recv() + .await + .context("claude session closed unexpectedly")?; if response.is_empty() { anyhow::bail!("claude returned empty response"); @@ -419,8 +416,8 @@ async fn poll_once( eprintln!( "bot: processing notification from @{}: {}", notif.author_handle, - if notif.text.len() > 50 { - format!("{}...", ¬if.text[..50]) + if notif.text.chars().count() > 50 { + format!("{}...", notif.text.chars().take(50).collect::()) } else { notif.text.clone() }