@@ -276,6 +276,13 @@ func (a *sessionAgent) Run(ctx context.Context, call SessionAgentCall) (*fantasy
276 return a.messages.Update(genCtx, *currentAssistant)
276 return a.messages.Update(genCtx, *currentAssistant)
278 OnTextDelta: func(id string, text string) error {
278 OnTextDelta: func(id string, text string) error {
279+ // Strip leading newline from initial text content. This is is
280+ // particularly important in non-interactive mode where leading
281+ // newlines are very visible.
282+ if len(currentAssistant.Parts) == 0 && strings.HasPrefix(text, "\n") {
283+ text = strings.TrimPrefix(text, "\n")
279 currentAssistant.AppendContent(text)
286 currentAssistant.AppendContent(text)
280 return a.messages.Update(genCtx, *currentAssistant)
287 return a.messages.Update(genCtx, *currentAssistant)