Geoai Skills — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Geoai Skills (Plugin) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
Aggregate score unchanged between these scans.
The primary manifest — the file an agent reads to learn what this artifact does.
A Claude Code plugin that adds GeoAI-powered skills for geospatial data exploration, satellite imagery download, AI-based object detection, and session memory.
Built on the GeoAI Python library.
Add the repository as a plugin source and install:
/plugin marketplace add opengeos/geoai-skills
/plugin install geoai-skills@geoai-skillsThis registers the GitHub repo as a marketplace and installs the plugin. Skills will be available as /geoai-skills:<skill-name> in all future sessions.
To pull the latest version, update the marketplace first and then the plugin:
/plugin marketplace update geoai-skills
/plugin update geoai-skills@geoai-skillsgeoai-py package installed (pip install geoai-py)pip install "geoai-py[extra]"inspect-geoInspect any raster or vector geospatial file -- CRS, bounds, bands, resolution, dtype, attribute summaries, and band statistics. Supports GeoTIFF, Shapefile, GeoJSON, GeoPackage, GeoParquet, and more.
/geoai-skills:inspect-geo dem.tif
/geoai-skills:inspect-geo buildings.gpkg what CRS is this in?
/geoai-skills:inspect-geo landcover.tif how many bands does it have?download-dataDownload NAIP aerial imagery for a bounding box. Specify coordinates as minx,miny,maxx,maxy in WGS84 and optionally a year.
/geoai-skills:download-data -83.5,35.5,-83.4,35.6 --year 2022
/geoai-skills:download-data -122.5,37.7,-122.3,37.8 --output ./naip/search-stacSearch and download satellite imagery from Microsoft Planetary Computer. Browse collections, search by bbox and time range, and download items.
/geoai-skills:search-stac list
/geoai-skills:search-stac sentinel-2-l2a --bbox -83.5,35.5,-83.4,35.6 --datetime 2023-01-01/2023-06-30
/geoai-skills:search-stac naip --bbox -83.5,35.5,-83.4,35.6 --downloadoverture-dataDownload Overture Maps data (buildings, places, roads, land use, water, etc.) for a bounding box.
/geoai-skills:overture-data building --bbox -83.5,35.5,-83.4,35.6
/geoai-skills:overture-data land_use --bbox -122.5,37.7,-122.3,37.8 --output land_use.gpkgprocess-rasterProcess raster data: clip by bounding box, stack multiple bands, mosaic GeoTIFFs, or convert between raster and vector formats.
/geoai-skills:process-raster clip input.tif --bbox -83.5,35.5,-83.4,35.6
/geoai-skills:process-raster mosaic ./tiles/ --output mosaic.tif
/geoai-skills:process-raster stack band1.tif band2.tif band3.tif --output stacked.tif
/geoai-skills:process-raster raster-to-vector classification.tif --output polygons.gpkgdetect-objectsRun pre-trained AI models on geospatial imagery. Detect buildings, cars, ships, solar panels, or use text-prompted segmentation with GroundedSAM.
/geoai-skills:detect-objects buildings naip_image.tif
/geoai-skills:detect-objects cars parking_lot.tif --output car_detections.gpkg
/geoai-skills:detect-objects grounded-sam satellite.tif --text "swimming pools"read-memoriesSearch past Claude Code session logs to recover context from previous conversations -- past decisions, data paths, CRS info, model configurations, and unresolved work.
/geoai-skills:read-memories naip --here
/geoai-skills:read-memories building detection --geoinstall-geoaiVerify that the geoai Python package is installed and functional. Optionally check extra dependencies for deep learning models.
/geoai-skills:install-geoai
/geoai-skills:install-geoai --check
/geoai-skills:install-geoai --extrasSkills can share state through a JSON file per project (state.json), containing information about recently inspected files, downloaded data paths, and working directories. When state is first needed, you will be asked where to store it:
.geoai-skills/state.json) -- colocated with the project, optionally gitignored~/.geoai-skills/<project-id>/state.json) -- keeps the project directory cleanState is used to auto-fill file paths across skills. For example, after downloading NAIP imagery, inspect-geo and detect-objects can reference the downloaded files without re-specifying paths.
Skills reference each other where it makes sense:
inspect-geo suggests process-raster for processing and detect-objects for AI analysisdownload-data, search-stac, and overture-data suggest inspect-geo for examining resultsdetect-objects suggests inspect-geo for examining detection outputinstall-geoai when the geoai package is not availableread-memories with --geo extracts geospatial-specific context from past sessionsA typical workflow:
/geoai-skills:download-data -83.5,35.5,-83.4,35.6 --year 2022
/geoai-skills:inspect-geo naip_image.tif
/geoai-skills:detect-objects buildings naip_image.tif
/geoai-skills:inspect-geo buildings_detections.gpkgTo test skills locally from a clone of this repo:
# 1. Clone the repo
git clone https://github.com/opengeos/geoai-skills.git
cd geoai-skills
# 2. Launch Claude Code with the local plugin directory
claude --plugin-dir .This loads the plugin from disk instead of the marketplace, so any edits to skills/*/SKILL.md take effect immediately -- just start a new conversation (or re-run the slash command) to pick up changes.
These skills have been tested on macOS and Linux. Windows is not yet fully supported -- some shell commands and path handling may not work as expected.
Found a bug or have an idea for improvement? Open an issue at:
https://github.com/opengeos/geoai-skills/issues
For geoai-specific bugs (model loading, data download errors), please include the geoai version (python -c "import geoai; print(geoai.__version__)") and the full error message.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.