Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Opus 5.5: let a client opt into summarized thinking instead of forced progress updates

Aperta Adatta ai principianti
#7,728 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@lidge-jun ci sta già lavorando.

Dal 28/10/2026.

  • #7881 di @lidge-jun — aperta

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
75/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
api, backend

Direzione di ricerca

Inizia da progressUpdates e dall’eccezione per Opus 5.5 in src/adapters/anthropic.ts, poi leggi i test di regressione mirati in tests/adapters/anthropic/anthropic-progress-updates.test.ts. Verifica come vengono gestiti reasoning.summary e hideThinkingSummary nell’adapter. Il lavoro è completato quando le richieste esplicite detailed o concise usano una visualizzazione riepilogativa senza la beta updates, mentre l’assenza di un valore o auto mantiene gli updates; l’issue menziona anche di documentare il comportamento in guides/providers.md.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement
Area

Provider adapters (anthropic)

What are you trying to accomplish?

We run a Responses client (gjc, an ACP/coding-agent host with a mobile front end) through OpenCodex against anthropic/claude-opus-5-5 on api.anthropic.com. The client shows reasoning summaries in a "thinking" view. We want Opus 5.5 reasoning summaries to show there, like they do for every other Claude model behind the same adapter.

What prevents this today?

Since #7143 (fixes #7108), the adapter forces thinking: {type: "adaptive", display: "updates"} plus the thinking-display-updates-2026-08-18 beta whenever usesNativeAnthropicEndpoint(provider) and the model is Opus 5.5 (src/adapters/anthropic.ts, progressUpdates around line 1084, override at line 1151). The override runs after, and ignores, everything the request said about reasoning display:

Measured on main (9f0d40a2, 2.92.0) with createAnthropicAdapter(...).buildRequest(parseRequest(...)):

model request reasoning sent thinking
claude-opus-5-5 {effort:"high"} {"type":"adaptive","display":"updates"} + beta
claude-opus-5-5 {effort:"high", summary:"detailed"} {"type":"adaptive","display":"updates"} + beta
claude-sonnet-5-5 {effort:"high"} {"type":"adaptive","display":"summarized"}
claude-sonnet-5-5 {effort:"high", summary:"detailed"} {"type":"adaptive","display":"summarized"}

Observed effect through a 2.88.0 deployment:

  • In one session, 756 of 828 reasoning items on the Opus 5.5 lane carried empty summary text.
  • A probe turn spent 275 reasoning tokens and returned summary_text: "". The only visible text was progress commentary (phase: "commentary").
  • The same client talking to Anthropic directly (display: "summarized") had 47 of 47 thinking blocks with text.

I understand this is intentional. The provider guide explains that under display: "summarized" Anthropic cannot tell progress updates apart from reasoning, and the updates mode is the better default for Codex. So this is not a request to revert #7143.

What should OpenCodex do?

Keep display: "updates" as the default for Opus 5.5. Let a client that explicitly asks for reasoning summaries get them:

  • Request reasoning.summary is "detailed" or "concise": send {type: "adaptive", display: "summarized"} without the updates beta. This is the same body Sonnet 5.5 / Opus 5 get today.
  • "auto" or absent: unchanged (display: "updates").
  • hideThinkingSummary keeps its current meaning.

A client opting in accepts the trade-off the guide describes: progress updates may arrive folded into reasoning summaries instead of as separate commentary.

Example usage or interface
{ "model": "anthropic/claude-opus-5-5", "reasoning": { "effort": "high", "summary": "detailed" } }

→ thinking: {"type":"adaptive","display":"summarized"}, no thinking-display-updates-2026-08-18 beta.

Alternatives or workarounds
  • A provider-level config flag (e.g. opus55ThinkingDisplay: "updates" | "summarized"). It is less flexible than per-request, but it would also work for clients that always send summary: "auto".
  • Patching the deployment locally. We are avoiding that.
Additional context

Happy to send the PR with focused regression tests in tests/adapters/anthropic/anthropic-progress-updates.test.ts (the opt-in path sends summarized and no beta; auto and absent stay on updates). The docs change would go in guides/providers.md. Before writing it, I'd like to confirm which shape you prefer (per-request reasoning.summary vs. provider flag).

Checks
  • I searched existing issues and documentation.
  • This request describes a concrete OpenCodex workflow rather than merely naming a desired technology.
  • I removed secrets and personal data.
Lingua principale
TypeScript
Stelle
16.9k
Fork
1.3k
Merge medio
15h 24m
PR unite (30g)
678

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di lidge-jun/opencodex

Tutte le issue di lidge-jun/opencodex

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.