# assistant2: Summarize threads in context and continue long ones \(\#27851\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/d26c477d868dc86f135653f90bd296647260f138)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: d26c477d868dc86f135653f90bd296647260f138

Requested commit: d26c477d868dc86f135653f90bd296647260f138

Commit: d26c477d868dc86f135653f90bd296647260f138

Tree: 4ecc5526660dc70640e493a22380fce5113c4eac

Author: Agus Zubiaga

Committer: GitHub

## Message

```
assistant2: Summarize threads in context and continue long ones (#27851)

We'll now prompt the user to start a new thread when the active one gets
too long.

<img width=500
src="https://github.com/user-attachments/assets/91445bc0-3e81-422f-aa4a-b8f0741f9d9a"></img>


When they click "Start New Thread", will create a new one with the
previous one added as context.

<img width=500
src="https://github.com/user-attachments/assets/c3b4223f-5bdd-4ba4-956f-5a5880d5e2c3"></img>

Instead of including the full thread text, we'll now add summarized
versions of threads to the context, allowing you to continue the
conversation even if it was near the token limit.

- Thread summaries are cached and persisted. 
- A cached summary is invalidated if the thread is continued.
- We start generating the thread summary as soon as it's selected from
the picker. Most times, the summary will be ready by the time the user
sends the message.
- If the summary isn't ready by the time a message is sent, the user
message will be displayed in the thread immediately, and a "Summarizing
context..." indicator will appear. After the summaries are ready, we'll
start generating the response and show the usual "Generating..."
indicator.

Release Notes:

- N/A

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Marshall Bowers <git@maxdeviant.com>
```

## Parents

- [16f625bd07eacd071ce21f669b6baf4847e20ab6](https://git.cafe/gitcafe/zed/commit/16f625bd07eacd071ce21f669b6baf4847e20ab6?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/d26c477d868dc86f135653f90bd296647260f138?format=markdown)
