__ _ ___ ___ ___ _ _(_) | |___
/ _` |/ _ \/ _ \/ __|| |/ / | | / __|
| (_| | __/ (_) \__ \| <| | | \__ \
\__, |\___|\___/|___/|_|\_\_|_|_|___/
|___/
Minimal agent skills for geodata science and geospatial data work.
This repository follows the same basic pattern used by Anthropic's skills repository: each skill lives in its own folder and includes a SKILL.md file with YAML frontmatter plus task-specific instructions.
skills/
geodata-intake/
SKILL.md
crs-and-reprojection/
SKILL.md
geodata-qaqc/
SKILL.md
global-crs-selection/
SKILL.md
geospatial-ml/
SKILL.md
snowflake-geospatial/
SKILL.md
postgis-geospatial/
SKILL.md
template/
geo-skill-template/
SKILL.md
Use for first-pass inspection of new geospatial datasets. Focuses on format, CRS, schema, extent, geometry type, and immediate risks.
Use when the task involves projections, EPSG codes, datum mismatches, unit confusion, or reprojection decisions.
Use for basic quality control of vector or raster datasets before analysis, delivery, or publication.
Use when choosing projections for world-scale or near-global work. Covers task-based selection across EPSG:4326, EPSG:3857, Equal Earth, LAEA, compromise projections, antimeridian handling, and polar edge cases.
Use for geospatial SQL workflows in Snowflake, including GEOGRAPHY, spatial joins, distance filters, and warehouse-aware query planning.
Use for geospatial SQL workflows in PostgreSQL/PostGIS, including geometry versus geography choices, indexing, SRID handling, and spatial query tuning.
Use when applying machine learning to geospatial data. Covers spatial feature engineering with geopandas, momepy, osmnx, and pysal; raster feature extraction with rasterio and torchgeo; spatial cross-validation; and common pitfalls like autocorrelation-driven data leakage.
- Keep skills narrow and task-shaped.
- Make the
descriptionconcrete so an agent can discover the skill reliably. - Prefer checklists and output formats over long prose.
- Put reusable domain guidance in the skill, not only in examples.
- Add scripts or reference assets only when the workflow actually needs them.
- Copy
template/geo-skill-templateto a new folder underskills/. - Rename the folder to a lowercase, hyphenated identifier.
- Set
nameto match the folder name exactly. - Rewrite
descriptionso it includes the phrases a user would naturally say. - Replace the template sections with a concrete workflow, examples, and constraints.
These folders are source material for agent skills. They are not auto-discovered by Claude Code or Codex from this repo layout alone. To use a skill, copy or symlink the specific skill folder into the tool's skill directory structure.
- Project scope: copy a skill folder to
.claude/skills/<skill-name>/SKILL.md - Personal scope: copy a skill folder to
~/.claude/skills/<skill-name>/SKILL.md - Claude can load a skill automatically when the
descriptionmatches your request. - You can also invoke it directly with
/skill-name
Example:
.claude/
skills/
global-crs-selection/
SKILL.md
Then ask a natural question such as:
Which CRS should I use for a world choropleth?
Or invoke it directly:
/global-crs-selection world choropleth of country-level emissions
- Repository scope: copy a skill folder to
.agents/skills/<skill-name>/SKILL.md - Codex can invoke skills implicitly when the
descriptionmatches the task. - You can inspect or invoke skills explicitly from the CLI or IDE skill picker using
/skillsor by mentioning the skill with$ - Use
AGENTS.mdfor broad repository instructions, and useSKILL.mdfolders for focused, reusable workflows like CRS selection, QAQC, or feature engineering.
Example:
.agents/
skills/
global-crs-selection/
SKILL.md
Example prompt:
Use the global-crs-selection skill to recommend a projection for a world population map.
If you want these skills available everywhere, place them in your personal skill directory for the relevant tool instead of keeping them only in a single repository.
spatial-join-planningraster-preprocessingremote-sensing-index-selectionopenstreetmap-feature-extractiongeodata-documentation
Contributions are welcome! Here's how to get involved:
- New skill — copy
template/geo-skill-template, follow the design rules above, and open a pull request with a clear description of the skill's scope. - Improve an existing skill — edit the relevant
SKILL.mdand explain what gap or inaccuracy the change addresses. - Report an issue — open a GitHub issue describing the problem, the context (tool, model, dataset type), and what behaviour you expected.
The repository also includes AGENTS.md, which defines the validation and review standard future agents should apply when creating or editing Markdown files in this repo.
- One skill per pull request keeps reviews focused.
- Keep the
descriptionfront-matter concrete and trigger-phrase rich — this is what agents use for discovery. - Prefer checklists and structured output formats over free-form prose.
- Do not add external dependencies unless they are truly unavoidable.
- Follow the validation checklist in AGENTS.md before finishing Markdown changes.
- All contributions are released under the MIT License.
These starter skills are intentionally lightweight. They are meant to establish a clean structure and a consistent writing style before adding more advanced geospatial workflows.