diff --git a/hooks/use-auto-resume.ts b/hooks/use-auto-resume.ts index 569a54f..febc4ea 100644 --- a/hooks/use-auto-resume.ts +++ b/hooks/use-auto-resume.ts @@ -36,6 +36,9 @@ export function useAutoResume({ }, [autoResume, initialMessages.at, resumeStream]); useEffect(() => { + if (!autoResume) { + return; + } if (!dataStream) { return; } @@ -43,11 +46,16 @@ export function useAutoResume({ return; } - const dataPart = dataStream[0]; + const dataPart = dataStream[dataStream.length - 1]; if (dataPart.type === "data-appendMessage") { const message = JSON.parse(dataPart.data); - setMessages([...initialMessages, message]); + setMessages((prev) => { + if (prev.some((m) => m.id === message.id)) { + return prev; + } + return [...prev, message]; + }); } - }, [dataStream, initialMessages, setMessages]); + }, [autoResume, dataStream, setMessages]); }