Skip to content

docs: add AGENTS.md guidance for AI agents#984

Merged
andrew-coleman merged 1 commit into
substrait-io:mainfrom
nielspardon:docs/add-agents-md
Jul 3, 2026
Merged

docs: add AGENTS.md guidance for AI agents#984
andrew-coleman merged 1 commit into
substrait-io:mainfrom
nielspardon:docs/add-agents-md

Conversation

@nielspardon

Copy link
Copy Markdown
Member

Adds AGENTS.md — practical, codebase-specific guidance for AI coding agents — covering:

  • Project overview & module layout, including build-logic (the substrait.java-conventions included build), isthmus-cli (GraalVM native image), the Spark multi-version variants (shared source compiled against Spark 3.4/3.5 on Scala 2.12 and Spark 4.0 on Scala 2.13), and the inputs sourced from the substrait submodule (proto, ANTLR grammars, extension YAMLs, validation schemas).
  • The core patterns most changes follow: Immutables POJOs, the model-wide double-dispatch visitors (expressions, relations, types, function args), the <Thing>ProtoConverter / Proto<Thing>Converter pairs, and the in-enum toProto()/fromProto() mappings.
  • Build/test/format workflow: PMD (fails the build), the JDK 17 vs GraalVM-25 native-image toolchain split, build-logic daemon-heap/--no-build-cache notes, and the CI-vs-local task gaps (javadoc, submodule tags).
  • Conventions: conventional commits, no issue/PR references in source, spec-version tracking, and a note on the macOS native-image job being the long pole of PR CI.

CLAUDE.md simply imports it (@AGENTS.md) so Claude Code and other AGENTS.md-aware tools read the same instructions from a single source, without duplication.

🤖 Generated with AI

Document the codebase for AI coding agents in AGENTS.md: project overview and
module layout (including build-logic, isthmus-cli, the Spark multi-version
variants, and the inputs sourced from the substrait submodule), the core
patterns most changes follow (Immutables POJOs, model-wide visitors, the
ProtoConverter pairs, and in-enum proto mappings), the build/test/format
workflow (PMD, the JDK 17 vs GraalVM native-image toolchain split, CI-vs-local
task gaps), and conventions.

CLAUDE.md imports it (@AGENTS.md) so Claude Code and other AGENTS.md-aware
tools read the same instructions from a single source.
@andrew-coleman andrew-coleman merged commit cb581d9 into substrait-io:main Jul 3, 2026
14 checks passed
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