anthropics / anthropics/claude-code

Read tool silently returns partial content for large instruction/rule files; documented 2,000-line default not enforced

Ouverte
#92,979 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
area:tools bug
Langage dominant
Python
Étoiles
145k
Forks
23.1k
Métriques de merge des PR
Métriques de PR en attente

Description

## Summary

Reading a large rules/instruction file -- a `CLAUDE.md` companion, a `.claude/rules` file, or an `--append-system-prompt` target -- truncates inconsistently and can be silent: the model can treat a partial read as the whole file and drop rules in the unread tail, with no error and no operator notice. Two related reports, #6910 (2,000-line default not enforced) and #28783 (silent guardrail loss from Read truncation), were auto-closed as stale without a fix.

## Evidence (current Claude Code 2.1.x)

A 65,800-character / 1,400-line file is read in **full** with no `offset`/`limit` -- so the documented "reads up to 2,000 lines by default" is not applied (matches #6910). Larger files can return partial content, and the truncation is not signaled in a way the model reliably interprets as "content is missing" (#28783), so the agent proceeds confidently on a partial read.

## Impact

Safety-relevant: instructions in the unread portion are silently absent. An operator who placed guardrails in a file and told the agent to read it has no indication they were never loaded.

## Request (any one would help)

1. Make Read truncation unmistakable to the model -- a structured marker such as "showing lines X-Y of Z; use offset/limit for the rest" that cannot be mistaken for end-of-file.
2. Enforce the documented 2,000-line default, or document the actual threshold.
3. Optionally, a setting to raise the inline-read ceiling.

Prior art: #6910, #28783, #22699.

---
_Filed via Claude Code on the user's behalf._

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Start by reproducing the behavior with a large CLAUDE.md or .claude/rules file, and compare reads with an --append-system-prompt target against the documented 2,000-line default. Trace the Read tool entry point and verify that truncated output is unmistakably marked, the default limit is enforced or documented, and tests cover the reported cases.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Domaine
cli
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Active
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.