Without CLAUDE.md, Claude Code 2.1.277 reads AGENTS.md

Claude Code 2.1.277 takes its project instructions from AGENTS.md in any project that has no CLAUDE.md, according to the release notes on GitHub from September 18. If your team already keeps one AGENTS.md for Codex, Cursor or GitHub Copilot, Claude Code now follows that file too, with no CLAUDE.md beside it, except on Bedrock, Vertex and Foundry, where the fallback has not arrived yet.
Anthropic’s documented way to share AGENTS.md with Claude Code was a one-line @AGENTS.md import at the top of CLAUDE.md: Claude loads the imported file at session start and then appends the rest of CLAUDE.md, which leaves room for Claude-only notes. With nothing Claude-specific to add, the alternative was a symlink, ln -s AGENTS.md CLAUDE.md, and since creating one on Windows requires Administrator privileges or Developer Mode, the import was the route there.
A CLAUDE.md that is only that symlink or that import line can now be deleted, and Claude Code reads AGENTS.md on its own. The file still has a job if anyone on the team runs Claude Code through Bedrock, Vertex or Foundry, or if it carries Claude-only notes: the fallback covers only a project with no CLAUDE.md, so a CLAUDE.md without the import still leaves AGENTS.md unread. The behavior itself can be changed under “Project instructions” in /config.
On December 9, 2025, the Linux Foundation announced the Agentic AI Foundation with three founding contributions, Anthropic’s Model Context Protocol, Block’s goose and OpenAI’s AGENTS.md, and with both Anthropic and OpenAI among its Platinum members. By then more than 60,000 open source projects and agent frameworks had adopted AGENTS.md, Codex, Cursor, Gemini CLI, GitHub Copilot and VS Code among them. Claude Code reads the file only now. The request for exactly this fallback became the most-upvoted issue in the claude-code repository, with 5,146 thumbs-up and 394 comments over about 13 months.
Headless runs and CI
claude -p and Agent SDK sessions could hang with no result after an internal error; they now report the error and exit with code 1, so a pipeline that checks exit codes sees the failure. The first turn of SDK and headless sessions no longer waits on the per-directory CLAUDE.md lookup, and claude -p runs launched outside an SDK or IDE skip the background Haiku auto-title request.
A headless resume (claude -p --resume, the SDK, a VS Code extension window reload) used to start the session’s cost and usage totals at zero. Headless sessions now save their totals at exit.
TaskOutput and the sandbox glob
Claude Code drops the deprecated TaskOutput tool: a background task’s output is now read from its file with Read, and the taskOutputMaxChars setting and TASK_MAX_OUTPUT_LENGTH no longer have any effect. When a background task finishes while a panel such as /tasks is open, a line now says its update is waiting.
A sandbox.excludedCommands glob used to exempt an entire compound Bash command from the sandbox when only one part matched. Every part must now match, so a chained command whose other parts fall outside the glob is no longer exempt. Enterprise admins get a policy fix as well: one malformed strictKnownMarketplaces or blockedMarketplaces entry no longer silently disables the whole enterprise marketplace policy.
Logouts, empty blocks, cache misses
Running an older Claude Code build on the same machine as the current one, for example the CLI an IDE extension bundles, no longer logs you out unexpectedly. Conversations that failed every request with “text content blocks must be non-empty”, because an earlier assistant turn held an empty text block beside other content, are fixed, including after --resume. So are messages typed while Claude is still working that the model sometimes ignored, and Grep and Glob now return an error when a search cannot start for lack of processes, memory or file handles, where they used to report no matches.
Sessions continued after /clear (restart, --continue, --resume) lost part of their first message when a SessionStart hook printed output, which meant a full prompt-cache miss. Attachments recorded earlier in a conversation were re-rendered after a resume or relaunch, dropping extended thinking and missing the cache, and resumed subagents and teammates re-rendered the MCP tool definitions they had loaded, which broke caching for that agent. All three are fixed; the fix in 2.1.265 for resumed subagents covered their changed tool list and system prompt prefix.
For gateway admins
For Claude apps gateways whose only egress is a forward proxy, CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY=1 has every outbound request hand the proxy the hostname instead of resolving it locally. Gateway upstreams take an optional headers: map, for static headers sent to a proxy you run in front of a provider. The gateway’s telemetry relay no longer ignores a collector hostname or domain listed in NO_PROXY when a proxy is set, and its loopback error messages name CLAUDE_GATEWAY_ALLOW_LOOPBACK.
What reaches the model
Invisible Unicode formatting and tag characters are now removed from a prompt, and the cleaned prompt is shown for review before it is sent. On Bedrock, Vertex and Foundry, the prompts that workflow scripts compute for agent() reach the subagent framed as script-authored text, so the safety classifier does not read them as the user. Subagent results now reach the main agent under a header that marks them as subagent output, with the result indented, so that text in a subagent’s result cannot pass as the session’s own instructions.
Up next
Anthropic’s new wet lab puts Claude in charge of robots
In a Bay Area wet lab, Claude is directing robotic units through physical biology experiments. Anthropic confirmed the setup to Reuters, aiming at preclinical work big pharma finds “financially unattractive”.
Related stories
- In Claude Code, one CLAUDE.md silently kills your AGENTS.md
- Your claude.ai skills follow you into Claude Code 2.1.275
- Claude Code 2.1.274 warns before memory turns critical
- Claude Code stops billing API users for the auto mode check
- Claude Code 2.1.318: login expiry warning, runner log change
- Claude Code 2.1.312 stops overwriting big CLAUDE.md files
Comments
No comments yet. Be the first.
Join the conversation
Sign in to leave a comment. It appears after moderation.

