Shopify CEO Tobi Lütke says he is considering banning Claude Code at Shopify until Anthropic supports AGENTS.md, .agents/skills, and similar shared conventions.

I support him.

Claude being added to the AGENTS.md ecosystem

Teams pay for this filename split when they use Claude Code, Codex, Cursor, and other coding agents in the same codebase. Each tool needs the same project context, but Claude Code asks for a separate instruction path.

Developers can fix that with imports, symbolic links, or CI checks. I have used the same workaround:

ln -s AGENTS.md CLAUDE.md
mkdir -p .claude
ln -s ../.agents/skills .claude/skills

The workaround functions. The team still has to repeat it for each new project, maintain it across nested directories, and remember which agent reads which path. Miss one file or skill directory and some developers run an agent with missing or stale instructions.

That is compatibility work the tool should handle.

What Tobi Lütke actually said

Lütke did not announce a ban. He said he was thinking about banning Claude Code at Shopify until Anthropic changed its approach and read AGENTS.md and .agents/skills.

His reason was team consistency. When developers use different coding agents, one group may receive the instructions in AGENTS.md while Claude Code users receive a separate set from CLAUDE.md. Lütke called the result a split-brain problem.

He later clarified that Shopify already knows the common fixes. The company can automate the links and checks. The complaint is that a large monorepo with nested instruction files gives the team more places to miss a copy, link, or update. Automation reduces the risk, but it does not remove the maintenance cost.

Lütke was not asking for help writing a shell command. He was asking for native compatibility.

Why AGENTS.md matters to Codex and other agents

AGENTS.md gives a repository one predictable place for coding-agent instructions. A team can put build commands, test requirements, architecture notes, security boundaries, and review rules in the file. Nested files can add instructions for individual packages.

The format is plain Markdown. It does not require a schema or a vendor-specific parser. The AGENTS.md project describes it as an open format used across a growing set of tools, including OpenAI Codex, Google Jules, Cursor, Factory, and others.

That makes AGENTS.md useful as a shared project layer. A Codex agent and another supported coding agent can begin from the same source of truth even when their internal system prompts, tools, and execution loops differ.

The format is not a mandatory industry specification, and support still varies by product. It is an emerging convention with broad enough adoption that teams now expect new coding agents to recognize it.

Claude Code uses a separate instruction path

Claude Code's documentation is direct: Claude Code reads CLAUDE.md, not AGENTS.md.

Anthropic documents two compatibility options. A project can import AGENTS.md from CLAUDE.md, or it can create a symbolic link when no Claude-specific content is needed. Newer /init and /import flows can also bring instructions from other agent configurations into Claude Code.

Those features help. They still make the repository owner build the bridge.

Skills create a second version of the same problem. Claude Code supports the open Agent Skills format, but project skills live under .claude/skills/. Teams that keep shared skills under .agents/skills/ need another link, copy, or installation step.

This is why the debate reaches beyond one Markdown file. Modern coding agents use several layers of context:

  • Project instructions tell the agent how this repository works.
  • A skill holds a reusable procedure that loads when the task needs it.
  • The product's system prompt defines the harness behavior, tool rules, and model-specific guidance.

Teams can share the first two layers without forcing every model to use the same internal system prompt.

The failure mode is instruction drift

Duplicated agent instructions rarely break in an obvious way. The code still runs. Claude Code still opens. Codex still edits files.

Teams notice the failure when one copy changes and the other does not.

A developer updates the test command in AGENTS.md, but Claude Code still reads the old command from CLAUDE.md. A package adds a security rule in a nested instruction file, but only one tool sees it. A shared skill gains a required verification step, while the copy under another tool-specific directory stays stale.

Different developers then get different agent behavior from the same repository. One agent runs the correct tests. Another skips them. One follows the current deployment rule. Another follows an outdated instruction.

This is the split-brain risk Lütke described. The more projects, packages, and agent tools a team uses, the more compatibility paths the team has to maintain.

I already treat project instructions and skills as part of the codebase, not personal prompt snippets. My Claude Code session guide recommends keeping persistent instructions focused and moving task-specific procedures into skills. That model works best when every coding agent can discover the same files.

Anthropic's system prompt argument is reasonable

Anthropic engineer Thariq Shihipar responded that model families are not interchangeable and that system prompt design can affect performance. Claude models may respond better to different instructions, constraints, or skill formatting than GPT models.

That is a reasonable product concern. Claude Code should optimize its internal system prompt for Claude. Codex should optimize its harness for its own models. A tool may also need optional instructions for behavior that only exists in that product.

The shared project layer does not remove those options.

Claude Code can read AGENTS.md by default and then apply an optional CLAUDE.md overlay. It can discover .agents/skills and still support Claude-specific extensions under .claude/skills. Clear precedence rules and an opt-out would preserve model-specific tuning without forcing every team to duplicate its common instructions.

Shihipar also said Anthropic is working on making Claude Code easier to customize, including easier use of AGENTS.md and other system prompt modifications. Native discovery would finish the work he described.

Developers should not own this compatibility layer

I published the same position in my X post: symbolic links work, but developers should not repeat the setup for every project or carry the risk when the two instruction trees drift apart.

Tool vendors should absorb small compatibility costs when doing so removes repeated work for every team using the product.

Anthropic already supports open standards where they help developers. Claude Code follows the Agent Skills standard. Reading AGENTS.md would follow the same direction.

Keep the Claude-specific system prompt. Keep optional Claude-only instructions. Give teams one shared default for project rules and skills.

It is a filename and a discovery path, Anthropic. Stop dragging this out and join the standard.

Sources