diff --git a/internal/agent/modes/interactive.go b/internal/agent/modes/interactive.go index 7b4710e..bd7367e 100644 --- a/internal/agent/modes/interactive.go +++ b/internal/agent/modes/interactive.go @@ -719,9 +719,10 @@ func (i *Interactive) redraw() { // drifts every second and shouldn't grab focus. var busyPrefix string if i.busy { - busyPrefix = fmt.Sprintf("%s %s - %s", + busyPrefix = fmt.Sprintf("%s %s %s %s", i.cfg.Theme.FG256(i.cfg.Theme.Assistant, i.spin.Frame()), i.cfg.Theme.FG256(i.cfg.Theme.Assistant, i.spin.Message()), + i.cfg.Theme.FG256(i.cfg.Theme.Muted, "-"), i.cfg.Theme.FG256(i.cfg.Theme.Muted, i.spin.Elapsed().String()), ) } diff --git a/internal/tui/view.go b/internal/tui/view.go index ad36e89..9ae047d 100644 --- a/internal/tui/view.go +++ b/internal/tui/view.go @@ -1374,6 +1374,10 @@ func StatusBar(p StatusBarParams) []string { // segments. Wrapping the whole thing here would override // those choices. The pad itself needs no color (it's spaces). leftBuilder.WriteString(pad + p.BusyPrefix) + // Exactly one pad (2 spaces) between the busy segment and + // the provider/model block. The leading pad above covers + // the left indent. + } else { leftBuilder.WriteString(pad) } leftBuilder.WriteString(pad)