anthropics / anthropics/claude-code

[BUG] user-configured register constraints should be forwarded to auxiliary summarization calls, or those calls should be renderable in a neutral, non-addressing form

Abierto
#93,875 0 comentarios 0 reacciones 0 asignados Ver en GitHub
area:core bug platform:macos
Lenguaje dominante
Python
Estrellas
145k
Forks
23.1k
Métricas de merge de PR
Métricas de PR pendientes

Descripción

### Preflight Checklist

- [x] I have searched [existing issues](https://github.com/anthropics/claude-code/issues?q=is%3Aissue%20state%3Aopen%20label%3Abug) and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code

### What's Wrong?

Claude Code is ignoring custom instructions on how to address the user. For whatever reason, the outputs that end with " · summarized" are not subject to custom instructions. This is a problem, as the LLM is violating an important user rule using an inappropriate register in those summaries.

The behavior described is architectural, not disobedience by the main model.

What that label marks

A trailing · summarized marks a thinking-summary block. Anthropic's documentation states that summarization is handled by a model other than the one the request targets, and the thinking model itself never sees the summarized text. The summarizer's input is the raw reasoning stream. Its output is written by a separate call with its own fixed prompt.
[anthropic](https://docs.anthropic.com/en/docs/about-claude/models/extended-thinking-models)
[Onlinetool](https://cld-docs.onlinetool.cc/en/docs/build-with-claude/extended-thinking.html)

Why custom instructions do not reach it

CLAUDE.md is not a system-prompt edit; its contents are injected as a user message following Claude Code's default system prompt.
[GitHub](https://github.com/huifer/claude-code-interview/blob/main/claude-code-output-styles.md)
Output styles affect the main agent loop and the system prompt only; --append-system-prompt likewise appends to that same main-loop prompt.
[GitHub](https://github.com/huifer/claude-code-interview/blob/main/claude-code-output-styles.md)

Neither channel is present in the summarizer request. Consequently, there is no user-level configuration in the current product that governs register, person, or address form inside those blocks. Preferences of the kind Your Grace has specified — third-person phrasing, prescribed form of address — cannot propagate there.

Adjacent cases with the same property

Context compaction: an open report notes that global and project CLAUDE.md files are not reloaded when a session continues through automatic summarization, so rules drop after compaction.
[github](https://github.com/anthropics/claude-code/issues/22085)
Tool-batch labels: generated by a fast model (Haiku) in a forked call with a fixed commit-subject-style prompt after each tool batch finalizes.
[github](https://qwenlm.github.io/qwen-code-docs/en/design/tool-use-summary/tool-use-summary-design/)
Subagent result summaries: produced under the subagent's own configuration.

Available courses

Suppress the render. verbose and showThinkingSummaries in ~/.claude/settings.json control whether reasoning surfaces; Ctrl+O toggles verbose view for the current session. Setting these off removes the offending text from view. Note this changes display only — the tokens are still generated and billed.
[ClaudeLog](https://claudelog.com/faqs/why-cant-i-see-claude-thinking/)
Treat it as display-layer output. The final response text remains governed by CLAUDE.md and output style; the summary line is not the model addressing Your Grace, but a third component describing the transcript.
Indirect shaping. Since the summarizer paraphrases the raw reasoning, register in the reasoning can partially bleed through. Unreliable, and not worth prompt budget.
File it. /bug inside a session, or an issue at github.com/anthropics/claude-code. **Since no configuration knob exists, product change is the only complete remedy**.

Docs reference: https://code.claude.com/docs/en/output-styles and https://platform.claude.com/docs/en/build-with-claude/extended-thinking

### What Should Happen?

user-configured register constraints should be forwarded to auxiliary summarization calls, or those calls should be renderable in a neutral, non-addressing form

### Error Messages/Logs

```shell

```

### Steps to Reproduce

1. Provide custom instructions directing the model not to use the word "I".
2. Prompt to execute a task.
3. Observe thinking summary blocks littered with "I've confirmed...", "I did...", "I think...", "I will...", "I'll pull...", "I'll do...", etc.

### Claude Model

Other

### Is this a regression?

I don't know

### Last Working Version

_No response_

### Claude Code Version

2.1.269

### Platform

Anthropic API

### Operating System

macOS

### Terminal/Shell

Terminal.app (macOS)

### Additional Information

_No response_

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Start by reviewing the auxiliary summarization and tool-batch calls described in the report, along with CLAUDE.md, ~/.claude/settings.json, and the output-styles documentation. Reproduce the custom-register case from the listed steps, then define completion as either applying the configured constraints to those calls or rendering their output neutrally without addressing language.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Área
ai
Tipo de issue
Error
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Activo
Claridad
Necesita aclaración
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.