← ClaudeAtlas

swmm-networklisted

Build, validate, and route SWMM pipe-network models for urban drainage from raw municipal shapefiles or structured CAD/GIS exports. Use when handling junctions, conduits, outfalls, xsections, network field-mapping configs, or wiring subcatchments to upstream nodes. Requires real pipe data (SHP / CAD / structured GeoJSON). For data-scarce areas where only a bbox is available and no pipe inventory exists, use `swmm-anywhere` instead.
Zhonghao1995/agentic-swmm-workflow · ★ 8 · AI & Automation · score 71
Install: claude install-skill Zhonghao1995/agentic-swmm-workflow
# SWMM Network (pipe-system layer) ## What this skill provides - A stable JSON schema for SWMM drainage-network structure. - Two complementary import paths: - **Raw municipal shapefile path** (`prepare_storm_inputs` → `infer_outfall` → `reorient_pipes` → `import_city_network` → `qa`) for typical city storm-pipe + manhole layers that arrive as bare LineString shapefiles. - **Structured asset-DB path** (`import_city_network` directly, or `import_network` for a fully field-mapped GeoJSON/CSV) when the source already contains explicit from/to nodes, inverts, and diameters. - A subcatchment-to-network wiring step (`assign_subcatchment_outlets`) that ensures surface runoff actually enters the pipe network at a real upstream junction rather than dumping straight to the outfall. - Topology / hydraulic-attribute QA (`qa`). - Lightweight introspection (`summary`). - Export from network JSON to core SWMM INP sections (`export_inp`). ## When to use this skill Use when a SWMM model needs a real pipe network. Specifically: - You have municipal storm-pipe shapefile(s) and want them imported into a SWMM-ready network.json. - You have a structured CAD/asset-DB export (CSV / GeoJSON with explicit topology) and want the same. - You need to attach subcatchments to upstream junctions instead of letting them dump to the outfall. - You need to QA an existing network.json before handing it to `swmm-builder`. Do **not** use this skill when the user only wants subcatchment delineation (use `