Hermes
Deployment

Self-hosted and local GIS execution

Run Hermes GIS skills with optional local or private GIS systems while keeping execution boundaries explicit.

The skills can guide workflows against software and services you operate, but the package does not provision that infrastructure.

One possible local stack

ComponentRole
PostgreSQL/PostGISApproved source, analysis, and app-facing spatial data
QGISVisual inspection, projection, geometry, labeling, and cartographic QA
GDAL/OGRDeterministic inspection, transformation, and export
DuckDB SpatialLocal analytics over GeoParquet, GeoJSON, and related files
Tippecanoe/PMTilesStatic vector-tile generation and delivery
Python geoGeoPandas, Shapely, pyproj, Rasterio, Fiona, or OSMnx workflows

Versions and availability are host-specific. None are installed by cloning the skills.

Install behind your boundary

git clone https://github.com/daraobeirnecode/hermes-gis-skills.git \
  "$HOME/.hermes/skills/gis"
python3 "$HOME/.hermes/skills/gis/scripts/validate.py"

A common private deployment keeps Hermes, ArcGIS Enterprise, PostGIS, and local GIS tooling inside the organization's approved network. Configure the model provider, tools, authentication, network access, and logging according to your own security controls.

Read-only first

Use public access or read-only roles for exploration. For databases, prefer approved views or schemas over raw production tables. Bound row counts, query complexity, timeouts, and output fields.

Guidance versus enforcement

The skills instruct the agent to default to read-only work and request approval before publishing or modifying authoritative content. Tool implementations should independently enforce least privilege, input validation, previews, exact write gates, audit records, and rollback.

Suggested data boundaries

source      approved raw inputs; read-only to exploratory agents
staging     controlled load area
analysis    reviewed derived outputs
app_public  intentionally published views or artifacts
audit       provenance and operation records without secret values

These names are examples, not package-created schemas. Verify the real target before any write or publication.

On this page