Guide · Agent skill
How to use the GeoPandas agent skill: install and examples
Updated · written with AI from the project's own documentation and checked against our catalogue data
The GeoPandas agent skill gives an AI agent detailed guidance for Python code that uses GeoPandas on vector geographic data such as points, lines and polygons. This guide explains what the skill changes in the agent's behaviour, how to install it from a ZIP file or the Claude apps, how to trigger it with plain requests, and what it needs and does not do. It is written for readers who have never installed an agent skill before.
Quick start
- 1Download and unzip the skill. Download the geopandas ZIP from this page and unzip it so you have a geopandas folder containing SKILL.md, references and scripts.
- 2Place the folder in the skills directory. Move the geopandas folder to ~/.claude/skills/ for all projects, or to .claude/skills/ inside one project. Alternatively, upload it in the Claude apps under Settings, Capabilities, Skills.
- 3Prepare the Python environment. Create a Python 3.12 or newer environment with uv and install GeoPandas and its pinned dependencies as the skill describes.
- 4Ask for a task in plain language. Describe the GeoPandas task, name your local file and say what you need, such as a CRS check, a join audit or a sharing review.
- 5Review the output before sharing. Check the agent's source hashes, CRS, join counts and export plan, then write and reopen any output yourself before publishing.
What the GeoPandas skill makes the agent do
The skill is a set of instructions and reference notes that the agent reads when your task involves GeoPandas objects such as GeoSeries and GeoDataFrame, spatial operations, or reading and writing vector files. Once installed, the agent follows explicit correctness checks: it confirms the coordinate reference system (CRS), checks geometry validity, states the expected join cardinality, and defines what the output must look like before it reports a result.
The skill also includes six bundled local scripts. They inspect files, plan reprojections and exports, audit joins and geometry, and flag privacy-sensitive location fields. They are planning and reporting tools. They do not transform your data, and writing the actual analysis output remains a separate step.
Install the GeoPandas skill from a ZIP file
Download the ZIP for the geopandas skill from this page and unzip it. The folder inside should be named geopandas and contain SKILL.md, a references folder and a scripts folder.
For a personal install that applies to all your projects, place the geopandas folder in ~/.claude/skills/. For a project-only install, place it in the .claude/skills/ folder inside that project. Start a new agent session afterwards so the skill is picked up.
- Personal install: ~/.claude/skills/geopandas/
- Project install: .claude/skills/geopandas/ inside your project folder
- Claude apps: open Settings, go to Capabilities, then Skills, and upload the skill
Check the requirements before you start
The skill targets a pinned GeoPandas stack under Python 3.12 or newer. The source recommends uv to create the environment, then install GeoPandas together with its pinned dependencies: NumPy, pandas, Shapely, pyproj, pyogrio, pyarrow and packaging. Keep optional plotting and PostGIS packages pinned in your project lock as well, and do not mix binary geospatial packages from incompatible package channels.
You need local input files such as shapefiles, GeoPackages or GeoParquet files. The bundled scripts need no API keys or accounts, and they do not use the network.
- Python 3.12 or newer
- uv (recommended for the pinned environment)
- GeoPandas and its pinned dependencies
- Local input files
uv venv --python 3.12Trigger the skill with natural requests
You do not need a special command. Describe the GeoPandas task in plain language and name the data you are working with. The skill applies when the work directly uses GeoPandas objects, spatial operations or vector I/O.
Good requests name the file, the goal and any sharing constraint. For example, ask the agent to check the CRS of a local GeoPackage before computing areas, or to audit a spatial join between two local layers and report how many rows matched more than once. If you need a quick web map or a hosted GIS service with no Python analysis, the skill is not the right fit.
- Check whether this shapefile has a CRS and plan a reprojection to a suitable projected CRS for area measurement.
- Audit the spatial join between these two GeoPackages and report unmatched and multiplied rows.
- Before I publish this map, check the point coordinates for sensitive location fields and suggest how to generalize them.
Understand the bundled scripts and the workflow
The agent follows a six-step workflow and uses the scripts at specific points. Each script reports and plans; none of them writes your final analysis output.
- vector_inventory.py inspects a vetted local layer and supports retaining source hashes.
- crs_reprojection_plan.py lists candidate transformations. You then run the transformation yourself with to_crs() or pyproj.
- geometry_validity_report.py audits geometry and can simulate repairs before any new GeoPackage is requested.
- spatial_join_audit.py measures join cardinality. It does not export joined features or dissolve geometries.
- export_plan.py inspects the proposed output contract. A successful plan has not written a file, so write and reopen the output separately.
- sensitive_coordinates_checklist.py helps review disclosure and generalization before you share derived maps or geodata.
Safety notes: scripts, network and untrusted data
The skill runs scripts, so read them before you trust a run and keep the agent's permissions to what the task needs; the skill declares Read, Write, Bash, Glob and Grep as allowed tools. The bundled CLIs are local-only and use an extension allowlist that rejects archives.
The skill does not automatically load URLs, cloud paths, GDAL virtual paths, archives or addresses. Any remote data needs explicit approval, a checked hash and an unpacked local copy. GDAL, PROJ, GEOS and related libraries are native code that parses input, so process untrusted files in a sandbox. Database passwords should come from a secret manager or scoped environment variable, never from a URL or source file.
- Exact coordinates, addresses, parcel boundaries and small-area joins are treated as sensitive by default.
- Macro-enabled office files and nested archives are not opened through permissive drivers.
- PostGIS and tile-provider calls were reviewed against upstream contracts but not tested against a live service.
Tips for getting reliable results
Give the agent the CRS you know from source metadata rather than guessing from coordinate ranges. The skill will not infer a CRS from numbers that look like longitude and latitude, and it will not treat geographic coordinates as metres for buffers, distances or areas.
Ask for a result record. The skill expects source hashes, CRS, operation parameters, predicate, join cardinality and row-count checks for any derived artifact, so requesting them up front saves a round trip.
- Name the expected join type (one-to-one, one-to-many or many-to-many) before a merge or spatial join.
- Keep the original file and write outputs to a new path.
- Reopen every exported file and compare row counts and geometry types.
What people use it for
- Checking whether a local shapefile has a CRS and choosing a suitable projected CRS before measuring areas.
- Auditing a spatial join between two GeoPackage layers to find unmatched and multiplied rows.
- Inspecting a GeoParquet file for null, empty or invalid geometries before a Python analysis.
- Reviewing a point dataset for exact coordinates and generalizing them before publishing a map.
Frequently asked questions
Is the GeoPandas agent skill free to use?
The skill is published under the MIT licence, as stated in its source. The source does not list any price, and the bundled scripts need no API keys or accounts.
What do I need to run the GeoPandas skill?
You need Python 3.12 or newer, uv recommended for the pinned environment, GeoPandas with its pinned dependencies and local input files such as shapefiles, GeoPackages or GeoParquet. The bundled scripts do not use the network.
Where do I put the skill folder for Claude?
Place the geopandas folder in ~/.claude/skills/ for a personal install or in .claude/skills/ inside a project for a project install. You can also upload it in the Claude apps under Settings, Capabilities, Skills.
Does the skill transform my data or write output files?
No. The bundled scripts plan and report. Reprojection, joins, exports and writing files are separate steps that you or the agent run, and the export plan does not write a file.
Can the skill work with raster or satellite imagery?
No. The skill covers planar vector data only, and GeoPandas does not handle raster imagery or gridded data. Use a raster tool for those files.
How is this different from using GeoPandas without the skill?
Without the skill, the agent may use GeoPandas without the extra checks. With the skill, it follows explicit correctness gates for CRS, geometry validity, join cardinality and output contracts, and can run the bundled audit scripts.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits analysts and developers who write Python with GeoPandas on local vector files and teams that need an audit trail before sharing geospatial results. It is also useful for anyone who must check location data for privacy before publishing maps. If you work with raster data, hosted GIS services or quick web-map styling, or you must analyse untrusted files without a sandbox, pick a different tool.
Download the skill