The naming is the only difference
CLAUDE.md, AGENTS.md, GEMINI.md — three names, one pattern. Each is a markdown file the agent reads at session start. Each supports the same hierarchy (global → project → nested). Each merges files closer-to-CWD on top of files closer-to-root. The differences are at the margins (override files, fallback names, max bytes), not in the core idea.
The cross-tool reality: most teams use multiple CLIs. The pragmatic move is to pick one canonical file (often AGENTS.md, since Codex demands it and Gemini falls back to it) and configure the others to use the same file. Codex naturally reads AGENTS.md; Gemini reads it via contextFileName fallback; Claude Code can be told to read it via a symlink or a small CLAUDE.md that imports the AGENTS.md content.