[MODEL] Claude Code's AGENTS.md Support: A Local Feature Locked Behind a Remote Switch
Preflight Checklist
- [x] I have searched existing issues for similar behavior reports
- [x] This report does NOT contain sensitive information (API keys, passwords, etc.)
Type of Behavior Issue
Claude modified files I didn't ask it to modify
What You Asked Claude to Do
Let it go!!!!!!!
What Claude Actually Did
Starting with 2.1.277, Claude Code claims support for AGENTS.md — "in a project with no CLAUDE.md, Claude Code reads AGENTS.md instead." But the feature is implemented as a built-in plugin that is off by default and gated behind a remote Anthropic feature flag (Statsig gate tengu_agents_md_mod). If you disable telemetry traffic (CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1), or use Claude Code through a third-party gateway / Bedrock / Vertex, that gate can never evaluate to true — and so reading a local markdown file, an act that requires no network whatsoever, is silently locked away by a server-side switch. No error. No warning. It just doesn't load.
Expected Behavior
Stop doing ewwww thing.
Files Affected
Permission Mode
Accept Edits was ON (auto-accepting changes)
Can You Reproduce This?
Yes, every time with the same prompt
Steps to Reproduce
_No response_
Claude Model
Sonnet
Relevant Conversation
Impact
Critical - Data loss or corrupted project
Claude Code Version
2.1.277
Platform
Other
Additional Context
_No response_
Showing cached comments. Read the full discussion on GitHub ↗
4 Comments
I ran into similar issues with AI coding agents in real projects.
One thing that helped me was making the agent's loaded context visible. For example, some tools show which project rules were loaded before a task starts.
I think showing:
would make agent behavior much more predictable and easier to debug.
I can reproduce this on 2.1.280 on macOS. Here are a few more details.
My test uses a new directory that holds only an
AGENTS.mdwith a canary word. I then askclaude -pfor the word, in two sessions per setup.DISABLE_TELEMETRYalso blocks the feature. With eitherDISABLE_TELEMETRYorCLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICset,AGENTS.mdnever loads. I had to clear both.0keeps the block in place. The env-vars docs say so, but it is easy to miss when you try to turn the feature on.envblock in the project.claude/settings.jsonthat clears both variables does not help, so there is no way to turn the feature on for one repo.claude --settings '{"env":{"DISABLE_TELEMETRY":"","CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC":""}}'works from the second session on, because the first session only fetches the flag.Reading a local file should not depend on telemetry. If the gate has to stay, a startup warning when an
AGENTS.mdis present and skipped would help. For now I use a one-lineCLAUDE.mdwith@AGENTS.md, which works with telemetry off.Confirmed on 2.1.278 with fresh isolated homes: AGENTS.md is skipped in the very first session after install, and skipped every time when feature-flag fetching is disabled (
DISABLE_GROWTHBOOK=1or nonessential traffic off), which is exactly what CI runners do. It loads fine once the flag is cached locally, so this is a rollout-gating gap rather than a parser bug. Could theinstructionFilessetting (or an env var) be honoured without the remote flag, so headless and CI sessions can opt in deterministically?DISABLE_TELEMETRY=0still turns feature-flag fetching off, so native AGENTS.md stays skipped. Live env-vars (dateModified 2026-09-23T01:47:01.480Z): any non-empty value, including0andfalse.DO_NOT_TRACKis the boolean one —0leaves fetching on.Live memory docs (dateModified 2026-09-22T17:25:51.616Z) now name the skip list: no flag fetch (telemetry off, Bedrock and other third-party hosts), the first session after install or upgrade, and a disabled
agents-mdplugin. In those sessions/confighides Project instructions.instructionFilesis ignored in project and local settings files; it only applies in user settings,--settings, or managed settings.A
CLAUDE.mdcontaining@AGENTS.mddoes not wait on the flag. The interactive receipt when the native loader actually ran isno CLAUDE.md found; AGENTS.md loaded: /home/you/repo/AGENTS.md. I did not run 2.1.280.https://bokonon.ai/notes/2026-09-23-zero-still-skips-agents-md/