Skip to content

docs: add AGENTS.md#33

Merged
peterargue merged 5 commits intomainfrom
docs/add-agents-md
Apr 24, 2026
Merged

docs: add AGENTS.md#33
peterargue merged 5 commits intomainfrom
docs/add-agents-md

Conversation

@Aliserag
Copy link
Copy Markdown
Contributor

Summary

Adds AGENTS.md — the open standard (agents.md, Linux-Foundation-backed, adopted by 60K+ repos) that guides AI coding agents (Claude Code, Codex, Cursor, Copilot, Windsurf, Gemini CLI) on a per-repo basis.

How this file was generated

Authored via an evidence-based generator skill with a strict verify-before-claim protocol:

  • Every build/test command traced to an actual target in Makefile / package.json / equivalent
  • Every file path verified via Glob/Read
  • Every version number pulled from go.mod / package.json / foundry.toml / etc.
  • Every count (targets, scripts, directories) re-executed with the precise command before writing
  • Every line-number citation re-read before writing
  • Internal consistency sweep (no contradictions between sections)
  • Iterated with self-scoring on Coverage / Evidence / Specificity / Conciseness until all four axes reached 10/10

What AGENTS.md contains

  • Overview grounded in README + actual source
  • Build and test commands (only ones that exist in the manifest)
  • Architecture map (real directory layout, real contract/module names)
  • Conventions & gotchas (non-obvious rules verified in source)
  • Files not to modify (generated / vendored / lockfiles)

Test plan

  • File renders on GitHub
  • Every command verified against the relevant manifest
  • Every path verified to exist
  • No approximations or invented commands

Adds the AGENTS.md open-standard file for AI coding agents (agents.md).
Every claim evidence-backed against Makefile, package.json, source tree,
or equivalent manifest. Zero fabrication.
@Aliserag Aliserag requested a review from a team as a code owner April 23, 2026 20:37
@Aliserag Aliserag requested a review from peterargue April 23, 2026 20:52
Comment thread AGENTS.md Outdated
Comment on lines +90 to +91
</content>
</invoke> No newline at end of file
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume an agent generated this, but since there are no opening tags, we can probably remove these

@peterargue
Copy link
Copy Markdown
Collaborator

looks like there is also a CLAUDE.md, which is the same in context as the AGENTS.md. I suggest updating AGENTS.md to be the source of truth, then removing CLAUDE.md and symlinking it to AGENTS.md

Per review feedback on the sibling atree PR (onflow/atree#658),
reference the CODEOWNERS file rather than listing its members
inline. The hard-coded list would silently go stale when the team
rotates reviewers, since GitHub enforces CODEOWNERS but nothing
enforces AGENTS.md. Matches the pattern the surrounding bullets
already use for codecov.yml, SECURITY.md, CONTRIBUTING.md, etc.
Per @peterargue's review on PR #33, merge the two agent-facing
files into a single source of truth to avoid drift. AGENTS.md is
now the canonical file; CLAUDE.md is a symlink back to it, so any
tooling still looking for CLAUDE.md (including early Claude Code
versions) finds the same content.

Content merged from CLAUDE.md into AGENTS.md:
- "How Skills Work" — three-level progressive disclosure
- "Skill Routing Guide" — developer-intent → skill table
- "Content Sources" — cadence-rules / flow-cli / Flow docs

The agents.md standard explicitly documents the symlink migration
path. AGENTS.md is natively supported by Claude Code, Codex,
Cursor, Copilot, Windsurf, and Gemini CLI — so making it the source
of truth expands tool coverage without losing anything.
@Aliserag
Copy link
Copy Markdown
Contributor Author

Good call — done in de7f586. Merged CLAUDE.md's unique sections ("How Skills Work", the skill routing table, and content sources) into AGENTS.md, then replaced CLAUDE.md with a symlink pointing to AGENTS.md. Single source of truth; backwards-compatible with anything still checking for CLAUDE.md.

Verification pass caught that cadence-testing was missing from the
skills table, even though it exists in plugins/flow-dev/skills/ and
is referenced by the Skill Routing Guide. Source-of-truth check:

  $ ls plugins/flow-dev/skills/
  cadence-audit       cadence-testing  flow-dev-setup    flow-react-sdk
  cadence-lang        cadence-tokens   flow-cli          flow-tokenomics
  cadence-scaffold    flow-defi        flow-project-setup

That's 11 skills. cadence-testing has 6 reference files under
plugins/flow-dev/skills/cadence-testing/references/.

Updates:
- Overview copy: "ten skills" → "eleven skills"
- Skills table: add cadence-testing | 6 row
Aliserag added a commit to onflow/flow-cli that referenced this pull request Apr 23, 2026
The existing AGENTS.md is a strict superset of CLAUDE.md — every
command, architecture note, and convention in CLAUDE.md is already
covered in AGENTS.md, usually in more detail (16 make targets vs
~5, full feature package list, 11 gotchas vs 6 generic conventions,
plus a Files Not to Modify section CLAUDE.md lacks).

Rather than maintain two files that will drift, symlink CLAUDE.md
to AGENTS.md. The agents.md standard explicitly documents this
migration pattern. AGENTS.md is natively supported by Claude Code,
Codex, Cursor, Copilot, Windsurf, and Gemini CLI — so making it the
source of truth expands tool coverage without losing anything, and
the symlink keeps any tooling still hardcoded to look for CLAUDE.md
working unchanged.

Same pattern applied on onflow/flow-ai-tools#33 per @peterargue's
review.
@Aliserag
Copy link
Copy Markdown
Contributor Author

Following the same pattern here: onflow/flow-cli#2338

Comment thread CLAUDE.md Outdated
Copy link
Copy Markdown
Collaborator

@peterargue peterargue Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was thinking of creating a symbolic link like

ln -s AGENTS.md CLAUDE.md

however, doing it this way is also fine. If you use @filename the agent will automatically load the file. otherwise I think it decides whether or not, so it may be less reliable

Suggested change
@AGENTS.md

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good call — applied in fabe499. Replaced the symlink with a plain-text CLAUDE.md containing @AGENTS.md so Claude Code imports it explicitly rather than relying on symlink-following heuristics. Propagated the same change to the sibling PR on onflow/flow-cli#2338 where we'd also used the symlink pattern.

Per @peterargue's follow-up on PR #33: replace the CLAUDE.md →
AGENTS.md symlink with a plain-text CLAUDE.md whose single line is
the @AGENTS.md import directive.

Claude Code treats @filename as an explicit import that guarantees
the referenced file is loaded into context, whereas symlink
following is heuristic and may not fire in every session. The
@import approach also avoids Windows / non-Unix filesystem
compatibility issues where symlinks degrade to plain-text files
containing the target path.

Functionally equivalent outcome for every other AGENTS.md-adopting
tool (Codex, Cursor, Copilot, Windsurf, Gemini CLI), since they all
read AGENTS.md directly.
@peterargue peterargue merged commit 6d00a6f into main Apr 24, 2026
@peterargue peterargue deleted the docs/add-agents-md branch April 24, 2026 18:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants