Swmm Params
/install swmm-params
SWMM Params (MVP mapping layer)
Part of Agentic SWMM — install the project first for the executable toolchain (aiswmm CLI, SWMM solver, MCP servers).
What this skill provides
- Transparent CSV-to-JSON mapping for:
- land use class -> SWMM
[SUBCATCHMENTS]+[SUBAREAS]defaults - soil texture/type -> SWMM
[INFILTRATION](Green-Ampt) defaults
- land use class -> SWMM
- Deterministic, auditable outputs with explicit fallback usage and unmatched-key reporting.
- Optional merge step that emits one builder-ready JSON artifact.
Scripts
scripts/landuse_to_swmm_params.py- maps
subcatchment_id + landuse_classto runoff/subarea parameters
- maps
scripts/soil_to_greenampt.py- maps
subcatchment_id + soil_textureto Green-Ampt infiltration parameters
- maps
scripts/merge_swmm_params.py- merges outputs from the two mapping scripts into one JSON package for future
swmm-builder
- merges outputs from the two mapping scripts into one JSON package for future
Default lookup tables
By default, scripts read bundled lookup CSVs:
skills/swmm-params/references/landuse_class_to_subcatch_params.csvskills/swmm-params/references/soil_texture_to_greenampt.csv
You can override lookup paths with CLI flags.
Minimal input format
Land use input CSV:
- required columns:
subcatchment_id,landuse_class
Soil input CSV:
- required columns:
subcatchment_id,soil_texture
Example files are provided under examples/.
Outputs
Each mapper writes explicit JSON containing:
records(row-level audit trail)sections(SWMM-oriented lists keyed by subcatchment)unmatched_*lists (rows that used fallback)countssummary
The merge script writes:
sections(subcatchments,subareas,infiltration)by_subcatchment(combined record per subcatchment ID)incomplete_ids(IDs missing one or more sections)
CLI flags
All three scripts share these optional flags:
--strict— fail instead of using theDEFAULTfallback row when an input key is missing from the lookup table. Useful for auditable production runs where silent fallback would mask a data gap.
landuse_to_swmm_params.py also accepts:
--subcatchment-column \x3Ccol>— override the CSV column used as the subcatchment ID (default:subcatchment_id).--landuse-column \x3Ccol>— override the CSV column used as the land use class (default:landuse_class).
soil_to_greenampt.py also accepts:
--subcatchment-column \x3Ccol>— override the CSV column used as the subcatchment ID (default:subcatchment_id).--soil-column \x3Ccol>— override the CSV column used as the soil texture/type (default:soil_texture).
MCP
MCP wrapper location:
mcp/swmm-params/server.js
Exposed tools:
map_landuse(inputCsvPath, optionallookupCsvPath,outputPath)map_soil(inputCsvPath, optionallookupCsvPath,outputPath)merge_params(landuseJsonPath,soilJsonPath,outputPath)
Quick start:
npm --prefix mcp/swmm-params install
npm --prefix mcp/swmm-params run start
MVP limitations
- Lookup mapping is key-based only (no spatial interpolation or fuzzy matching).
- A fallback row is expected in lookup tables (
DEFAULTfor land use,-orDEFAULTfor soil). - No unit conversion or calibration logic is included here.
- This skill only maps parameters; it does not write a full SWMM
.inp.
Example commands
python3 skills/swmm-params/scripts/landuse_to_swmm_params.py \
--input skills/swmm-params/examples/landuse_input.csv \
--output runs/swmm-params/example_landuse.json
python3 skills/swmm-params/scripts/soil_to_greenampt.py \
--input skills/swmm-params/examples/soil_input.csv \
--output runs/swmm-params/example_soil.json
python3 skills/swmm-params/scripts/merge_swmm_params.py \
--landuse-json runs/swmm-params/example_landuse.json \
--soil-json runs/swmm-params/example_soil.json \
--output runs/swmm-params/example_builder_params.json
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install swmm-params - 安装完成后,直接呼叫该 Skill 的名称或使用
/swmm-params触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Swmm Params 是什么?
Deterministic mapping from land use and soil texture to SWMM runoff/subarea and Green-Ampt infiltration parameters. Use when generating first-pass subcatchme... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 38 次。
如何安装 Swmm Params?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install swmm-params」即可一键安装,无需额外配置。
Swmm Params 是免费的吗?
是的,Swmm Params 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Swmm Params 支持哪些平台?
Swmm Params 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Swmm Params?
由 Zhonghao Zhang(@zhonghao1995)开发并维护,当前版本 v0.7.3。