mirror of
https://github.com/charmbracelet/crush.git
synced 2026-05-30 18:47:33 +00:00
While a model is streaming a reply, we used to re-render the entire message text every time a new chunk arrived. Now we keep the rendered output of the parts that are clearly finished and only render the trailing piece on each update. The check for what counts as a finished part is conservative on purpose, so anything risky (open code blocks, lists, tables, html blocks, link references) still falls back to a full render. The visible output is the same. Co-Authored-By: Charm Crush <crush@charm.land>