[FEATURE]: Configuration option to disable message summary generation #3898

Open
opened 2026-02-16 17:41:52 -05:00 by yindo · 2 comments
Owner

Originally created by @milesfrain on GitHub (Dec 26, 2025).

Originally assigned to: @thdxr on GitHub.

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

Is it possible to opt-out of the additional summarization calls that occur per message? I was hoping to see a configuration option skip these requests.

In this example, I send 2 requests to devstral, and opencode inserts an additional 3 requests for summary generation to haiku. (this is a screenshot of Helicone, which I'm using to monitor requests from opencode)

Image

A summary is requested for every user message. And an additional summary request generates the session title, which is essentially a duplicate of the first message summary request.

I see the session summary in the TUI, but don't see any message summaries. So the message summaries don't seem to be adding any value for TUI users.

The message summaries are used in the web/desktop app, but I'm not using this app, and even if I did, I would prefer to downgrade the message summaries to just the first few words of each message in order to avoid the additional summarization requests.

Image

summarizeMessage is the function that makes these requests. It populates userMsg.summary.title.
https://github.com/sst/opencode/blob/f53ebafbab35348b131edee238ec16a848094fa2/packages/opencode/src/session/summary.ts#L64-L111

Originally created by @milesfrain on GitHub (Dec 26, 2025). Originally assigned to: @thdxr on GitHub. ### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. ### Describe the enhancement you want to request Is it possible to opt-out of the additional summarization calls that occur per message? I was hoping to see a configuration option skip these requests. In this example, I send 2 requests to `devstral`, and opencode inserts an additional 3 requests for summary generation to `haiku`. (this is a screenshot of Helicone, which I'm using to monitor requests from opencode) <img width="3395" height="570" alt="Image" src="https://github.com/user-attachments/assets/c558b422-099a-48bb-8fdd-8eba90a21a5d" /> A summary is requested for every user message. And an additional summary request generates the session title, which is essentially a duplicate of the first message summary request. I see the session summary in the TUI, but don't see any message summaries. So the message summaries don't seem to be adding any value for TUI users. The message summaries are used in the web/desktop app, but I'm not using this app, and even if I did, I would prefer to downgrade the message summaries to just the first few words of each message in order to avoid the additional summarization requests. <img width="1718" height="331" alt="Image" src="https://github.com/user-attachments/assets/6195cc02-09cd-40f8-86d1-cea8f8ba0d27" /> `summarizeMessage` is the function that makes these requests. It populates `userMsg.summary.title`. https://github.com/sst/opencode/blob/f53ebafbab35348b131edee238ec16a848094fa2/packages/opencode/src/session/summary.ts#L64-L111
yindo added the discussion label 2026-02-16 17:41:52 -05:00
Author
Owner

@milesfrain commented on GitHub (Dec 26, 2025):

A workaround to prevent all summaries is to set small_model to a non-existent model, like this:

"small_model": "skip"

https://opencode.ai/docs/config/#models

Although it would be nice to keep some summaries, like the session summary.

@milesfrain commented on GitHub (Dec 26, 2025): A workaround to prevent _all_ summaries is to set `small_model` to a non-existent model, like this: ```json "small_model": "skip" ``` https://opencode.ai/docs/config/#models Although it would be nice to keep _some_ summaries, like the session summary.
Author
Owner

@Nindaleth commented on GitHub (Dec 27, 2025):

Another, hopefully more targeted, possible workaround is to disable the title agent:

"agent": {
    "title": {
      "disable": true
    }
  },

However that, too, will result in a generic session name not reflecting the initial user prompt.

@Nindaleth commented on GitHub (Dec 27, 2025): Another, hopefully more targeted, possible workaround is to disable the title agent: ``` "agent": { "title": { "disable": true } }, ``` However that, too, will result in a generic session name not reflecting the initial user prompt.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#3898