Skip to content

[FEATURE]: Make paste summary thresholds configurable #15767

@aspiers

Description

@aspiers

Feature hasn't been suggested before.

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

(I did submit it in #14712 but that got auto-closed before I noticed for not having [FEATURE]: in the title.)

Describe the enhancement you want to request

The paste summary feature is genuinely useful when pasting large chunks of content — it keeps the prompt input clean and manageable. However, the current thresholds (3 lines / 150 characters) are too aggressive for those of us who use voice dictation software (e.g. Whisper Flow, Whispering, others) on a regular basis.

Dictated text frequently exceeds 150 characters in a single utterance, causing it to be immediately collapsed into [Pasted ~1 lines]. This makes it impossible to spot and correct the small transcription errors that dictation software occasionally makes — which is exactly the moment you most want to see what was pasted. This is the scenario described in #3949, where the only workaround offered was experimental.disable_paste_summary: true — a blunt hammer that trades one problem for another: you lose paste summaries entirely, which is painful when you then paste a 200-line config file or a stack trace.

What is needed is the ability to tune the thresholds to match your typical dictation length, so paste summaries kick in only when the content is genuinely large.

Proposed config

{
  "experimental": {
    "paste_min_lines": 6,
    "paste_min_length": 500
  }
}

Both would be optional, defaulting to the current values (3 and 150 respectively), so existing behaviour is preserved for anyone who doesn't set them.

Prior art

PR #1960 attempted this with a nested config structure (experimental.editor.summary_thresholds); this proposal uses flat keys consistent with the existing experimental config style.

Metadata

Metadata

Assignees

Labels

coreAnything pertaining to core functionality of the application (opencode server stuff)

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions