Blog

Shopify's "split brain" is not a filename dispute. It is drift, and one standard file will not end it.

September 15, 2026untactit

On August 25, 2026, Shopify CEO Tobi Lütke posted that he was "thinking about banning Claude Code at Shopify until they change their mind and read AGENTS.md and .agents/skills." His reason was not taste. It was an operational failure mode: "Insisting on only reading CLAUDE.md sometimes leads to split brain problems when different team members use different tools." (source)

The mechanics, as reported afterwards, are worth spelling out. In a monorepo worked by thousands of developers, some directory always ends up holding one instruction file and not the other. The agents that read the missing one run "with lobotomy." Shopify papers over the gap with automation, which Lütke called "a stupid complexity tax." Anthropic had closed a request for recursive AGENTS.md support as not planned, then said it would make AGENTS.md easier to use. (Shopifreaks, explainx)

Most of the commentary treated this as a standards fight: AGENTS.md (now hosted by the Linux Foundation's Agentic AI Foundation, with Shopify as a gold member) versus a vendor-specific CLAUDE.md. That framing is true and incomplete. The thing that bit Shopify is older and more general than the filename.

What the repositories actually look like

A study published in February 2026 analyzed 2,926 GitHub repositories that use agentic coding tools and catalogued their configuration mechanisms. (arXiv 2602.14690) Three numbers from it matter here:

  • Context files (CLAUDE.md, AGENTS.md, copilot-instructions.md) were the dominant mechanism and often the only one a repository used.
  • The researchers found 4,860 context files across 2,634 repositories. CLAUDE.md was present in 45.4% of repositories, AGENTS.md in 40.6%, copilot-instructions.md in 35.1%.
  • Those percentages sum to well over 100. Many repositories carry two or three instruction files that are supposed to say the same thing.

The study also notes that Cursor deprecated .cursorrules in favor of AGENTS.md, and that repositories which started with copilot-instructions.md frequently added CLAUDE.md or AGENTS.md later, even though Copilot reads all of them. Teams are not converging on one file. They are accumulating files.

Now add the second axis that the study does not measure: machines. Every developer has a copy of those files, plus a user-level copy (~/.claude, ~/.codex, ~/.cursor), plus whatever the Agent Skills standard puts under .agents/skills or .claude/skills. The standard itself is a good thing; SKILL.md is implemented by Claude Code and GitHub Copilot and adopted by Cursor and Gemini CLI, so the same skill folder can travel between tools. But "works unchanged" describes the format, not the copies. A portable file is still a file that gets copied.

Split brain is drift with two names

Here is the sequence that produces Shopify's failure, and it does not require two vendors:

  1. A rule is written once, in one file, in one directory.
  2. Someone copies it, because their tool reads a different filename, or because their subdirectory needs it, or because their laptop needs it.
  3. Someone edits one copy. A build command changes. A test rule is relaxed for one team. A path moves.
  4. Nothing tells anyone that the copies have diverged. The agent reading the stale copy does exactly what it was told, and it is wrong.

Step 4 is the whole problem. Steps 1 to 3 are normal engineering. If the industry standardizes on AGENTS.md tomorrow and Claude Code reads it natively, step 2 still happens across directories and machines, and step 4 still happens silently. You get split brain inside a single filename.

The standardization work is necessary. It removes one multiplier. It does not remove the mechanism.

What removes the mechanism

There are two honest answers, and both are available today without buying anything.

Stop hand-editing the copies. Keep one source of truth per rule and generate every tool-specific file from it. A symlink is the smallest version of this (AGENTS.md -> CLAUDE.md, which is what many teams did the week of Lütke's post). A generator script that writes AGENTS.md, CLAUDE.md, copilot-instructions.md and the skills directory from one YAML or Markdown source is the next step. The rule is simple: if a file is generated, a human never edits it. If a human wants a change, they change the source and regenerate.

Detect when a copy has been touched anyway. People will edit generated files because the fix is urgent and the source is somewhere else. So run a check in CI and on a schedule that hashes every context file and every SKILL.md across the tree, groups the ones that are supposed to be identical, and reports any that have diverged, with the diff. We published a small open-source tool that does exactly this scan across a directory tree, agent-drift. It does not need any service; it reads files and prints which copies of the same document have split. The point is not the tool. The point is that drift becomes a reported event instead of a surprise found by an agent that shipped bad code.

Do those two things and the filename question becomes what it should be: a compatibility detail handled by a generator, not a reason a CEO threatens to ban a tool.

Where this goes next

The Agent Skills standard and AGENTS.md both push in the same direction: instruction files as versioned, shared, inspectable assets rather than personal notes. What is still missing in most teams is the operational layer that every other shared asset already has. Code has a repository and a review. Secrets have a vault and rotation. Instruction files for agents mostly have a copy command.

This is the layer we are building at untactit: one library of skills, memory and instruction files, changes approved by a person, then pushed to every connected tool and machine without anyone editing the copies by hand, with drift detection that reports which copy diverged and when. People decide; propagation is zero-touch. It is in early access and free to start at untactit.com. But the two practices above stand on their own. Adopt them first. If you never need us afterwards, the split brain is still gone.


Sources: Tobi Lütke on X, Aug 25 2026 · Configuring Agentic AI Coding Tools: An Exploratory Study (arXiv 2602.14690) · Agentic AI Foundation · Agent Skills standard · Shopifreaks report

This post is also on DEV.

More on this

Stop guessing what your agents are running.

Connect one workspace and see every skill, rule, and memory your team has in play — in about ten minutes.

Start free Talk to us

No credit card. Works with what you already run.