AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Crs Discipline

skill-buildmoonshot-skillpacks-crs-discipline · by buildmoonshot

Use when working with spatial data — before a spatial join, a distance or area measurement, an overlay, or combining two datasets. Makes the agent confirm every dataset's coordinate reference system (CRS), refuse to assume an undefined one, and reproject everything to a common, operation-appropriate CRS first.

No reviews yet
0 installs
36 views
0.0% view→install

Install

$ agentstack add skill-buildmoonshot-skillpacks-crs-discipline

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-buildmoonshot-skillpacks-crs-discipline)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
3mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Crs Discipline? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

CRS Discipline

Coordinate reference systems are the #1 source of silent, serious GIS errors. Before any spatial operation, know the CRS of every dataset, and make them match.

Rules

  1. Determine the CRS of every input before using it. Check it explicitly — the .prj for a shapefile, the SRID in PostGIS, the spatial reference of a feature class, gdf.crs in GeoPandas. Never start a spatial operation on data whose CRS you haven't confirmed.
  1. Treat an undefined CRS as a stop sign, not a default. Data with no embedded CRS — a shapefile missing its .prj, an SRID of 0 or "unknown" — is the classic trap: it lines up perfectly on the author's machine but is meaningless anywhere else. Do not assume it's WGS84. Infer the likely CRS from the coordinate ranges (values in −180..180 → geographic degrees; large numbers in meters or feet → projected) and confirm with the source before proceeding.
  1. Reproject to a common CRS before combining data. Spatial joins, overlays, clips, and distance/area math require all inputs in the same CRS. Align them first — don't let a library silently compare coordinates in two different systems.
  1. Match the CRS to the operation. Use a geographic CRS (e.g., EPSG:4326) for storage and web display; use an appropriate projected CRS (the right UTM zone, State Plane, or an equal-area projection) for distance, area, and buffer calculations. Measuring length or area in degrees is a bug.
  1. Never confuse "define" with "project." Defining a CRS labels data whose coordinates are already correct but unlabeled. Projecting transforms the coordinates. Mixing them up corrupts data: defining a new CRS onto already-correct data teleports it to the wrong place. This is Define Projection vs Project in ArcPy, ST_SetSRID vs ST_Transform in PostGIS, .set_crs() vs .to_crs() in GeoPandas. Know which one the situation calls for.

Why this matters

A CRS mismatch rarely throws an error — it returns confident, wrong answers: features that don't intersect when they should, distances off by orders of magnitude, layers stacked in the wrong hemisphere. These bugs look like valid output, so they pass review and reach the map, where someone in the field catches them. Thirty seconds of CRS checking prevents an entire class of them.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.