‹ BackHN Continuity

Thread

Claude Code reads AGENTS.md only when telemetry is on [fixed]

486 points · 284 comments · pszypowicz

  1. mpoteat · · focus · HN ↗
    Sorry folks, this is a rollout artifact, we needed a way to turn this off remotely via feature flags if it broke something, and with telemetry off you don't get those. It's already been fixed as part of v2.1.281 releasing today.

    The mod is source available here: <a href="https:&#x2F;&#x2F;github.com&#x2F;anthropics&#x2F;claude-code&#x2F;tree&#x2F;main&#x2F;mods&#x2F;agents-md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;anthropics&#x2F;claude-code&#x2F;tree&#x2F;main&#x2F;mods&#x2F;age...

    Apologies again folks, this was a fully human error on my part - I should&#x27;ve found a better way to launch with a kill-switch.

    1. mpoteat · · focus · HN ↗
      The AGENTS.md support was implemented via our new extensibility system for CC, called Mods, which is launching soon-ish. A mod is a plugin with a new type of hook, which we call a function hook.

      If folks play around with it, I would love feedback on the relevant issue: <a href="https:&#x2F;&#x2F;github.com&#x2F;anthropics&#x2F;claude-code&#x2F;issues&#x2F;91870" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;anthropics&#x2F;claude-code&#x2F;issues&#x2F;91870

      Mods allow quite a bit more customizability and control. I really believe in the idea.

      1. rickette · · focus · HN ↗
        The only difference between CLAUDE.md and AGENTS.md is the filename. Do you really need a whole plugin system to support that use case? Feels like this could have been a one line change.
        1. pdpi · · focus · HN ↗
          The plugin system itself was probably already in the making, and they just chose to implement this tiny feature as a plugin to try it out.

          As for the only difference being the file name, that&#x27;s an untested assumption. Up until now, Claude hadn&#x27;t supported AGENTS.md, and it&#x27;s a simple application of Hyrum&#x27;s Law that somebody, somewhere, was taking advantage of that to give one set of instructions to Claude, and a different set of instructions to some other provider. The correct behaviour in the presence of both files is not obvious, either.

          Having a kill switch for the change is a perfectly reasonable safety measure in case something goes horribly wrong.

          1. redox99 · · focus · HN ↗
            That line of thought is the reason why everything gets so overengineered.

            Read CLAUDE.md if it doesn&#x27;t exist read AGENTS.md you don&#x27;t need to overthink it so much.

            1. arcfour · · focus · HN ↗
              This line of thinking is something you will quickly be disabused of once you try supporting software that hundreds of millions of people use.

              And I say this as someone that loves the Unix philosophy dearly.

              1. lunar_mycroft · · focus · HN ↗
                How, exactly, would the proposed solution (combined with a setting to disable it) break, and how would implementing it the way Anthropic did address that? Be specific.
                1. arcfour · · focus · HN ↗
                  Some people might have a different CLAUDE.md and AGENTS.md because they use Claude to do one thing and $other_agent to do another thing. Or because Claude does XYZ by default, and other agents do ABC, and they want to give the correct guidance to both.

                  This is, to me, a completely reasonable and believable use case that could break if you implement this fix without &quot;overengineering&quot; it.

                  A setting to disable what? Be specific. See? Not so simple...

                  1. lunar_mycroft · · focus · HN ↗
                    First, GP&#x27;s proposal already addresses that. If both are present, CLAUDE.md would be used. Second, that is solved with a settings toggle. Read a boolean from .claude&#x2F;settings.json and disable the new behavior if it&#x27;s true (or false, depending on what you want to name the setting). third, you skipped the second part of my question: &quot;how would implementing it the way Anthropic did address that?&quot; Implementing the same behavior through multiple layers of abstraction and an order of magnitude more code doesn&#x27;t solve the issue you mentioned.

                    Bonus forth point: why is this critical to solve for claude code, but not for all the other harnesses which have all converged on AGENTS.md for this purpose?

                    1. arcfour · · focus · HN ↗
                      Okay, so we agree that this fix isn&#x27;t quite as simple as it sounds then, yes? We&#x27;ve just had 3+ paragraphs of discussion around potential edge cases and additional considerations beyond &quot;read one of two files.&quot;
                      1. lunar_mycroft · · focus · HN ↗
                        We&#x27;ve had a long discussion only because you refuse to admit that a very simple solution would work (despite completely failing to show how it wouldn&#x27;t). The problem is that your opinion is not in fact proof that you&#x27;re right.
                        1. arcfour · · focus · HN ↗
                          I see, well I&#x27;m not particularly concerned with being right on this topic (call it a difference of opinion or matter of taste), so I wish you a pleasant day.
Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.