Skip to content

Commit 9548b2e

Browse files
committed
fix(ui): prevent duplicate answer rendering in ask --answer
Stop streaming raw answer text to stdout in TUI mode. Show spinner during LLM generation, then render the styled boxed answer once. Streaming is still used for JSON output mode.
1 parent 31dda50 commit 9548b2e

1 file changed

Lines changed: 9 additions & 7 deletions

File tree

cmd/ask.go

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,17 +86,19 @@ func runAsk(cmd *cobra.Command, args []string) error {
8686
opts.GenerateAnswer = generateAnswer
8787
opts.Workspace = workspace
8888

89-
if generateAnswer {
89+
// Only stream raw text for JSON mode; for TUI we show spinner then styled output
90+
if generateAnswer && isJSON() {
9091
opts.StreamWriter = os.Stdout
9192
}
9293

93-
// Show spinner during LLM query (non-JSON mode only)
94+
// Show spinner during query (non-JSON mode only)
9495
var spin *ui.Spinner
95-
if !isJSON() && generateAnswer {
96-
spin = ui.NewSpinner("Generating answer...")
97-
spin.Start()
98-
} else if !isJSON() {
99-
spin = ui.NewSpinner("Searching knowledge...")
96+
if !isJSON() {
97+
if generateAnswer {
98+
spin = ui.NewSpinner("Generating answer...")
99+
} else {
100+
spin = ui.NewSpinner("Searching knowledge...")
101+
}
100102
spin.Start()
101103
}
102104

0 commit comments

Comments
 (0)