Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Impertio-Studio/QGIS-Claude-Skill-Package --skill qgis-agents-map-generatorgit clone --depth 1 https://github.com/Impertio-Studio/QGIS-Claude-Skill-PackageWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/impertio-studio/qgis-claude-skill-package/qgis-agents-map-generator)<a href="https://agentmods.dev/skills/impertio-studio/qgis-claude-skill-package/qgis-agents-map-generator"><img src="https://agentmods.dev/badge/skills/impertio-studio/qgis-claude-skill-package/qgis-agents-map-generator/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/impertio-studio/qgis-claude-skill-package/qgis-agents-map-generator"><img src="https://agentmods.dev/badge/skills/impertio-studio/qgis-claude-skill-package/qgis-agents-map-generator.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00104 | $0.04021 |
| Opus 5.5 | $0.00042 | $0.01608 |
| Sonnet 5.5 | $0.00021 | $0.00804 |
| Haiku 4.5 | $0.00010 | $0.00402 |
Grade A, and why
qgis-agents-map-generator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 457 lines — stays where its author put it; the contents beside it link to each section on GitHub.
qgis-agents-map-generator
Quick Reference
Map Generation Pipeline
| Step | Action | Key Classes |
|---|---|---|
| 1. Data Loading | Load vector/raster layers, validate | QgsVectorLayer, QgsRasterLayer |
| 2. CRS Setup | Set project CRS, reproject if needed | QgsCoordinateReferenceSystem, QgsProject |
| 3. Symbology | Apply renderer matching data type | QgsCategorizedSymbolRenderer, QgsGraduatedSymbolRenderer |
| 4. Labeling | Configure label placement and format | QgsPalLayerSettings, QgsTextFormat |
| 5. Layout | Create print layout with map items | QgsPrintLayout, QgsLayoutItemMap |
| 6. Cartographic Elements | Add legend, scale bar, north arrow, title | QgsLayoutItemLegend, QgsLayoutItemScaleBar |
| 7. Export | Export to PDF/PNG/SVG | QgsLayoutExporter |
Export Format Decision
| Format | When to Use |
|---|---|
| Print-ready output, multi-page documents, atlas exports | |
| PNG | Web display, raster-only output, fixed resolution |
| SVG | Editable vector output, post-processing in Illustrator/Inkscape |
Critical Warnings
NEVER export a layout without first setting the map extent — this produces blank or mispositioned maps. ALWAYS call map_item.zoomToExtent() or map_item.setExtent() before export.
ALWAYS call layout.initializeDefaults() after creating a new QgsPrintLayout — without this, the layout has no pages and export fails silently.
NEVER export without checking the result code from QgsLayoutExporter — result 0 means success; any other value indicates a specific failure (memory, file, print, SVG layer, or iterator error).
ALWAYS call layer.triggerRepaint() after changing symbology or labeling — without this, the map canvas and layout exports render stale styles.
NEVER use QgsRandomColorRamp for thematic maps — random colors destroy visual hierarchy and make maps unreadable. ALWAYS select a color ramp matching the data type (sequential, diverging, or qualitative).
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 457 lines · 104 tokens per session scan A 3158d0fed510
qgis-agents-map-generator is a skill published in the GitHub repository Impertio-Studio/QGIS-Claude-Skill-Package (36 stars, last pushed 3mo ago), licensed MIT. It adds 104 tokens to every session and 4,021 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
opengis-all
Use when navigating end-to-end GIS workflows — GDAL CLI/API (ogr2ogr, gdalwarp, gdalcalc.py), qgisprocess and PyQGIS analysis, GeoServer REST publishing, and OpenLayers/CesiumJS visualization. One-stop index covering the complete open-source GIS data pipeline.
opengis-daf
Use when building JSON-plan GIS analysis or QC pipelines with OpenGisDAF (.NET 10 / C# 14) — daf validate/run, operators buffer/clip/intersectcheck/containmentcheck/coordinatetransform, DAG upstream bindings, GeoJSON/Shapefile/PostGIS sinks, qcMode QC reports, AssemblyLoadContext plugins; also for "zero tests ran"…
gdal
Use when processing geospatial raster/vector data via GDAL/OGR CLI — ogr2ogr format conversion (Shapefile/GeoPackage/GeoJSON), gdalwarp reprojection, gdaltranslate, gdalcalc.py NDVI, COG, mosaicking, DEM contours, gdalinfo -json checks — or diagnosing "not recognized as a supported file format"; also covers the 3.11+…
proj
Use when transforming coordinates or inspecting CRS definitions from the command line — cs2cs, projinfo -s/-t, proj projection math, cct, EPSG lookup, datum shift with grid files, WKT/PROJJSON export, or debugging "Cannot find proj.db" and latitude-first axis order. PROJ 9.9.0: the OSGeo engine behind GDAL/QGIS, with…
gis-skills
Use when processing geospatial data, publishing map services, querying spatial databases, performing geometry operations, running desktop or cloud-native GIS apps, or building web map applications. Index of 40 skills: GDAL, GeoServer, QGIS, PostGIS, DuckDB Spatial, SpatiaLite, JTS, GeoPandas, Shapely, CesiumJS…
swmm-calibration
Calibration and validation scaffold for EPA SWMM. Use when an agent needs to (1) compare simulated vs observed flow, (2) evaluate candidate parameter sets, (3) rank explicit candidates by an objective, (4) run a bounded random / LHS / adaptive search for the best-fitting parameters, (5) run a publication-grade SCE-UA…