diff --git a/hive-ag3nt/src/turn.rs b/hive-ag3nt/src/turn.rs index 651f2a7..b9fe6fe 100644 --- a/hive-ag3nt/src/turn.rs +++ b/hive-ag3nt/src/turn.rs @@ -290,6 +290,11 @@ async fn run_claude(prompt: &str, files: &TurnFiles, bus: &Bus) -> Result if line.contains(PROMPT_TOO_LONG_MARKER) { flag_err.store(true, Ordering::Relaxed); } + // Mirror to journald so post-mortems work without the web UI + // or the events sqlite. The bus event is what the dashboard + // renders; the tracing line is what `journalctl -M -b` + // surfaces when claude exits non-zero. + tracing::warn!(line = %line, "claude stderr"); bus_err.emit(LiveEvent::Note(format!("stderr: {line}"))); } });