Claude Code v2.1.210: live counter for long tools and permission rules migrated
Anthropic ships Claude Code v2.1.210 with two usability improvements: a elapsed time counter on tools taking more than a few seconds, and a startup notice for permission rules Write(path), NotebookEdit(path), and Glob(path), which now migrate to Edit(path) or Read(path). It’s the fourth update in as many days, as we covered on July 14 for v2.1.209: a pace that signals prioritization of polish and stability.
The counter solves an interface problem many users reported: when an agent called a slow tool (package installation, search across a large codebase, network operation), the summary line stayed still and seemed frozen. Now time flows visibly, and you know it’s working. It’s a small detail that matters: agents need UX designed for long sessions, where the user isn’t watching the screen at every step.
The permission rule deprecation affects those who configured custom access policies: the old rules still work, but on startup the system warns they’re obsolete and suggests the new names. This is managed breakage you see when a tool exits initial chaos and stabilizes its foundations.
Among fixes: subagents isolated in worktree can no longer run git-mutating commands against the main repository (that was a security hole), the ultracode keyword no longer triggers on automated inputs like webhooks or re-read PR comments, and various crashes on paste markers, attach, and UI rendering.
In detail
Context: Claude Code matures toward sustained use
Claude Code launched in public beta in late May 2026 and Anthropic has maintained a weekly release cadence, often daily when major fixes land. v2.1.210 arrives four days after 2.1.206, which introduced opt-in screen reader mode and fixed stability crashes. It’s a pattern you see in tools exiting the demo phase: first the proof of concept, then months tackling edge cases reported by real users.
The live counter solves an interface problem anyone using agents over long sessions knows well: when an agent calls a tool taking dozens of seconds (pip package install, full-text search across a 200k-line codebase, slow external API call), the UI would collapse the tool line and sit there motionless. No way to know if it was working or stuck, and many users reported killing sessions still running because they thought they’d frozen. A scrolling counter is tiny, but it kills that doubt: if the number goes up, it’s running.
Permission rules migrated: managed breakage
The deprecation of three rules—Write(path), NotebookEdit(path), and Glob(path)—affects those who set custom access policies in their workspace (most users run defaults and won’t notice). The three rules now show a startup warning and invite migration to Edit(path) or Read(path), more coherent with the rest of the system. This is the kind of change you make when rebuilding foundations without breaking existing code: old rules still work, change is announced, and time is given to adapt.
Security and stability fixes
The most relevant fix covers subagents isolated in worktree: the previous version let them run git-mutating commands (commit, push, merge) against the main repository instead of just the isolated worktree. It was a security hole letting a subagent alter repo state even when launched with isolation: 'worktree'. v2.1.210 closes it and adds periodic sweeps to release git locks left by abruptly killed sessions.
Another fix: the ultracode keyword (triggering a more powerful but costlier model) no longer fires on non-human input like webhook payloads or GitHub PR comments re-read by automation, preventing unintended spend on automations.
Minor fixes cover UI crashes (paste markers ending up in external editors, bigint rendering exploding React components), attach errors (job not found during session transitions), and a bug making a plan approval appear modified when the user hadn’t touched anything.
Implications
The rapid, focused release sequence on usability and stability signals Claude Code is moving from “prove it works” to “make it work every day for many people.” The live counter is a clear signal: agents need different UX than chat, because sessions run longer, the user isn’t always watching, and waits without feedback read as hangs. Plugins like Mr. Meeseeks (sound alert when the agent waits for input) spring from the same need.
The permission rule deprecation shows maturity: instead of changing them outright and breaking existing configs, Anthropic warns and gives time. That’s the kind of management expected from a tool entering enterprise use, where silent breakage costs.