Back to Blog

Claude Code Hid the File Names. The Dev Community Noticed.

Anthropic collapsed Claude Code's file output in v2.1.20. Devs pushed back immediately — and they were right. This isn't a UX preference. It's about catching AI mistakes before they cost you.

AIDeveloper ToolsEngineeringClaudeLLMs
February 16, 2026
4 min read

A small version bump on Friday turned into one of the hotter dev tool debates of the week.

Claude Code v2.1.20 changed how it displays file activity. Where you used to see "Reading: src/api/auth.ts (lines 1–140)", you now get "Read 3 files (ctrl+o to expand)." Boris Cherny, head of Claude Code at Anthropic, explained the change on GitHub: they wanted to reduce noise so developers could focus on "diffs and bash/mcp outputs."

The developer community mostly said: no.

The argument for hiding it

I get the intent. Claude is getting more capable. Sessions run longer. The terminal output from a complex agent run is genuinely overwhelming — if you're running a dozen parallel sub-agents, you don't want each one dumping 800 lines of file access logs. At that scale, the noise is the problem.

Cherny noted that Anthropic's own engineers "appreciated the reduced noise." That's probably true. When your agents run autonomously for hours, the final diff is what matters.

Why developers were still right to push back

Most developers using Claude Code today are not running unsupervised agent swarms. They're sitting at a terminal, watching Claude work on a codebase they built and maintain.

For that use case, file visibility isn't noise. It's signal.

Three concrete reasons:

Catching context drift early. If Claude starts reading your entire test suite when you asked it to fix one function, the fastest way to catch that is watching the file list — not after it rewrites twelve files, but in the middle of the run. The file path is the early warning.

Token budgets are real. One comment on the GitHub issue put it plainly: "I can't tell you how many times I benefited from seeing the files Claude was reading." Catching a wrong-track run at token 500 costs nothing. At token 8,000 it costs money. The file list is your circuit breaker.

Security audit trail. When you're working on a codebase that touches user data or secrets, you need to know what the agent read. Not because you don't trust it in theory — because when something breaks, the first question is always "what did it touch?" Scrolling through a session and seeing file names is a cheap audit log. "Read 3 files" tells you nothing.

The mode problem

I think Anthropic made the right call for the wrong default.

The collapsed view shouldn't not exist. The problem is that interactive sessions and autonomous agent runs need different defaults. A developer watching Claude work live needs file paths visible. A CI pipeline running an agent overnight doesn't.

Cherny's final resolution was to repurpose verbose mode to show file paths without full thinking output — a reasonable compromise, but now the useful behavior is behind a flag. That's friction for exactly the use case that needs it most.

The better design is straightforward: default to file paths visible when running interactively (TTY attached), collapse by default when piped or non-interactive. Unix tools have handled this for forty years. The -q flag exists because some users want silence. It's not the default.

What this debate actually reveals

This is worth paying attention to beyond just "does Claude show file names."

Anthropic is making product decisions optimized for autonomous, long-running agents while their actual user base is mostly developers in interactive sessions. Those are different products, with different trust requirements and different failure modes. The gap between "developer watching an AI work" and "fully autonomous agent running overnight" is still enormous.

One HN comment put it well: "None of those wild experiments are running on a real, existing codebase that is more than 6 months old." The developers who are quietly using Claude to clean up test coverage and update docs on ten-year-old production codebases are not the ones asking for less visibility.

The most productive users right now are also the most attentive ones. They catch the drift. They interrupt bad runs. Removing information from them to optimize for a future use case that isn't the current reality gets the tradeoff backwards.

Show the file names. Make the collapsed view an opt-in.

Share

Get new posts in your inbox

Architecture, performance, security. No spam.

Keep reading