[infra] Add CLAUDE.md importing AGENTS.md#910
Merged
Conversation
Claude Code reads CLAUDE.md, not AGENTS.md, so it currently picks up nothing from the repository guide. Add a one-line CLAUDE.md that imports AGENTS.md (@AGENTS.md), keeping a single source of truth while remaining portable to contributors on Windows, where a checked-in symlink degrades to a plain text file under core.symlinks=false. Exempt CLAUDE.md from Apache RAT alongside AGENTS.md, since a one-line import file cannot carry a license header.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Linked issue: #894
Purpose of change
Item 4 of #894: give Claude Code a pointer to the repository guide.
Claude Code reads
CLAUDE.md, notAGENTS.md, so today it picks up nothing fromAGENTS.md. This adds a one-lineCLAUDE.mdthat imports the guide via@AGENTS.md, keeping a single source of truth with no duplicated content.Following the issue discussion, this uses an
@AGENTS.mdimport rather than a checked-in symlink. Both keep one source of truth and the symlink has Apache precedent (spark/airflow/superset/datafusion all check inCLAUDE.mdas a symlink toAGENTS.md), but a symlink degrades on Windows: withcore.symlinks=falsegit checks it out as a plain text file whose entire content is the stringAGENTS.md, so an agent reading it gets nothing. The@AGENTS.mdimport is a real one-line file that works on every platform and leaves room for Claude-specific content later.CLAUDE.mdis added totools/.rat-excludesalongsideAGENTS.md, since a one-line import file cannot carry an Apache license header.Tests
Not applicable — a one-line documentation pointer with no logic.
Ran
./tools/check-license.shwith the change: RAT passes, confirmingCLAUDE.mdis correctly excluded. The@AGENTS.mdline is Claude Code's documented memory-import syntax (https://code.claude.com/docs/en/memory).API
No. No public API change.
Documentation
doc-included