Anthropic · 2026-10-05 · major
Claude Code 2.1.290 — WebFetch reads past 100K characters, /loop survives compaction
Claude Code 2.1.290 fixes WebFetch silently dropping page text past 100,000 characters and makes scheduled /loop tasks keep firing after compaction. WebSearch now refills at 100 calls an hour instead of stopping after 200.
Claude Code stops losing long web pages and scheduled tasks, and gives mods more to read.
Quick facts
| Version | v2.1.290 |
|---|---|
| Maker | Anthropic |
| Released | 2026-10-05 |
| WebFetch | Reports unread text past 100K chars, new offset to read on |
| WebSearch budget | Refills at 100 calls/hour (was a 200-call cap) |
| New commands | claude attach <name>, claude logs <name> |
What is it?
WebFetch in Claude Code 2.1.290 no longer cuts a page off at 100,000 characters without saying so. It now reports how much text was unread and takes an offset, so the agent can read the rest of a long page. Scheduled tasks set with /loop also keep coming back after a conversation is compacted or handed to the background.
How does it work?
The interactive session's WebSearch budget becomes a refilling one: 100 calls per hour, set by CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR, where 0 turns refilling off. For plugin and mod authors, the turn.step hook now lists the tool calls the API ran itself, tool.check carries the subagent's agentId and the approval ceiling an organization requires, and claude attach and claude logs accept part of a session name.
Why does it matter?
Agents that research from long docs pages or changelogs were quietly working from a truncated copy; this release makes the gap visible and readable. Long-running /loop jobs no longer stop after compaction, and several Bash permission checks that auto-approved wildcard-expanding read-only commands such as rg or git grep now ask first.
Who is it for?
Claude Code users, plugin and mod authors, admins of managed machines
Frequently asked questions
- How do I read a long page with WebFetch in Claude Code 2.1.290?
- Claude Code 2.1.290 makes WebFetch say how much of a page past 100,000 characters was not read, instead of dropping it silently. The tool now accepts an offset, so Claude can call WebFetch again on the same URL and continue from where the first answer stopped until the whole page has been read.
- Did Claude Code 2.1.290 change the WebSearch limit?
- Claude Code 2.1.290 changes the interactive session's WebSearch budget to refill over time at 100 calls per hour, instead of ending for good after 200 calls. The CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR environment variable sets the refill rate, and setting it to 0 turns refilling off.
- Which permission fixes are in Claude Code 2.1.290?
- Claude Code 2.1.290 makes Bash permission checks ask before running some read-only commands, such as rg or git grep, whose arguments the shell would still expand as wildcards. pyright and more forms of ps now ask too, and a deny rule no longer misses a name set through declare, typeset, export or readonly prefixes.
- Is there a newer Claude Code release than 2.1.290?
- Claude Code 2.1.291 followed on October 6, 2026 with two regression fixes: cloud sessions dropping answers to permission prompts, a bug introduced in 2.1.290, and the last messages of a session being lost on quit, a bug from 2.1.288. The new features described here all arrived in 2.1.290.
Try it
npm i -g @anthropic-ai/claude-code@2.1.290