AI Coding Tools Integration๐
AI coding assistants generate better code when they have project-specific context. Each tool reads a different configuration file at session start. EDA provides ready-to-use files for both, generated directly from the extractor source code.
-
CLAUDE.md
Context file for Claude Code (Anthropic). Drop it in your repo root โ auto-loaded at session start.
-
AGENTS.md
Context file for Codex, Cursor, Aider and any tool supporting the AGENTS.md standard.s
-
llms.txt
Full AI context bundle hosted on the docs site. Use as a URL reference or Claude connector.
Overview๐
| Tool | Config file | Auto-loaded | Also read by |
|---|---|---|---|
| Claude Code (Anthropic) | CLAUDE.md |
โ Yes | Claude Code only |
| Codex CLI / Agent (OpenAI) | AGENTS.md |
โ Yes | Cursor ยท Aider ยท Builder.io |
Two files, not one
Neither tool reads the other's configuration file. If your team uses both Claude Code
and Codex, place both CLAUDE.md and AGENTS.md in your repo root.
EDA ships both โ they share the same core content.
What the Files Contain๐
Both files share the same core structure. Content is generated from source โ never manually edited, always in sync with the codebase.
# EDA Extractors โ AI Context
## Architecture
# BaseExtractor โ EDAuthenticator, loguru, ThreadPoolExecutor
# All extractors follow: .authenticate() โ .extract(aoi, date_range, ...)
## Extractor Index
- CoverageExtractor # Crop area coverage % per field
- EmergenceExtractor # Planting emergence timing
- VegetationExtractor # NDVI / vegetation health
- DiseaseRiskExtractor # Daily disease risk scores
- TillageExtractor # Tillage practice detection
... all extractors with docs + notebook links
## Common Patterns
# aoi: GeoJSON polygon or [xmin, ymin, xmax, ymax]
# date_range: ("2024-01-01", "2024-12-31") โ always ISO strings
# Output: GeoDataFrame unless as_dataframe=False
## Per-Extractor Sections
# Parameters, example snippet, output schema, raises
## Error Reference
# EDAuthError ยท ExtractionError ยท GeometryError ยท ...
Tool Compatibility๐
| Tool | CLAUDE.md |
AGENTS.md |
MCP connector | llms.txt via URL |
|---|---|---|---|---|
| Claude Code | โ Native | โ | โ Native | โ
Via CLAUDE.md ref |
| Claude.ai (web) | โ | โ | โ Settings โ Connectors | โ Paste URL in chat |
| Codex CLI / Agent | โ | โ Native | โก stdio only | โ
Via AGENTS.md ref |
| Cursor | โ | โ Native | โ | โ Paste URL |
| Aider | โ | โ Native | โ | โก Manual |
| GitHub Copilot | โ | โ | โ | โก Manual paste |
Setup in 3 Steps๐
1. Download and place the file(s) in your repo root
Drop CLAUDE.md for Claude Code, AGENTS.md for Codex/Cursor, or both if your team
uses multiple tools. No other configuration is required โ each tool picks up its file
automatically at session start.
2. Start your AI session as normal
Run claude or codex in your project directory. The tool loads the context file before
your first prompt. Verify it was read by asking:
"What extractors does EDA provide?"
3. Optionally add the Claude connector for persistent access
In Claude.ai, go to Settings โ Connectors โ Add custom connector and enter
https://docs.eda.com/mcp. This gives every Claude conversation live access to EDA
extractor knowledge without needing any file in the repo.
Keeping Files Current๐
Both files are generated by scripts/generate_ai_context.py on every push that touches
the extractors or documentation. You never need to update them manually.
on:
push:
paths:
- 'src/extractors/**'
- 'docs/**'
- 'notebooks/**'
jobs:
update-ai-context:
steps:
- run: python scripts/generate_ai_context.py
# Writes CLAUDE.md, AGENTS.md, llms.txt, and report.md
- run: git commit -am "chore: update AI context" && git push
Documentation gap tracking
The same script generates ai_context/report.md โ a per-extractor completeness
report showing which classes are missing descriptions, examples, or output schemas.
View documentation report โ
Where Files Live๐
Depending on your setup, files can live in the extractor repo, in the client's project repo, or just as a hosted URL โ they don't all need to be in the same place.
| Artifact | Lives in | Maintained by | Updated |
|---|---|---|---|
CLAUDE.md / AGENTS.md |
Client's repo | Client (one-time copy) | On major EDA API changes |
llms.txt bundle |
EDA docs site | EDA CI pipeline | Automatically on every build |
| MCP connector | Claude settings | Each developer, once | Never โ always live |
Info
The bundle is the single source of truth. The config files are lightweight wrappers
that reference it. Once the MCP connector is added to Claude settings, CLAUDE.md
becomes optional โ Claude already has full context before the repo is opened.