Skip to main content
Both watchChat and streamChat emit Cell snapshots. A cell is re-sent as it evolves (e.g. token-by-token markdown) — upsert by cell.id. Use complete and lifecycle as described below to determine when a cell is finished.

Shape in TypeScript

Knowing When a Cell Is Finished

Treat complete: true as authoritative even when the lifecycle still reads CREATED — text cells never pass through an “executing” phase, so their lifecycle may never advance.