Software

Projects

Open-source, agent-driven tools that turn my hydrology research into software anyone can run. I design the architecture, write the engines, and ship the interfaces, from a live map you draw on to natural-language runtimes that drive industrial modelling software end-to-end.

The ecosystem

The Agentic Hydrology Platform

One natural-language interface over hydrological modelling, across river basins, cities, and the countryside. You describe the goal in plain language; an agentic runtime selects the data, picks the right engine, runs the simulation, and explains the result. Every step is deterministic, audited, and reproducible. The platform composes the projects below into a single workflow.

INTERFACE Ask in plain language Claude · Codex · Hermes · OpenClaw Agent Skills · MCP servers RUNTIME aiswmm Natural-language orchestration Verification-first audit Reproducible execution Provenance + modelling memory SWMMCanada Model build from open data · live web app Agentic SWMM Urban drainage · LID · EPA SWMM 5.2 Agentic MIKE+ DHI commercial engine · headless LSTM engine Basin streamflow forecasting · NSE 0.87 OPEN-DATA FOUNDATION · CIS Rainfall · Terrain · Land cover · Soil · Storm networks
Architecture: a plain-language interface feeds the aiswmm runtime, which orchestrates four interchangeable engines over one shared open-data foundation. Diagram by the author.
Python PyTorch MCP servers Agent Skills EPA SWMM 5.2 DHI MIKE+ Open data
Inside the platform

The pieces I built

The Agentic SWMM live demo at aiswmm.com: the Greenwich Peninsula network on a map while an AI agent runs SWMManywhere synthesis, a swmm5 run, an audit, and a render, end to end in the browser
Flagship · Live demo · v0.9.3

Agentic SWMM

My signature open-source project: a verification-first agentic runtime (aiswmm) that drives EPA SWMM end-to-end with Agent Skills and the Model Context Protocol. Every run is auditable and reproducible, with provenance tracking and modelling memory. Now a stable, installable product (v0.9.3 on PyPI, one-line installers, Docker) with an interactive session, ten LLM provider routes, calibration, and climate-scenario batches. One English sentence fetches a real municipal storm network from SWMMCanada, runs SWMM, audits the result, screens it against a design rulebook, and exports a Word report. Try the Greenwich Peninsula demo end to end in the browser. Published in AI for Engineering (2026).

Agent Skills MCP EPA SWMM 5.2 Provenance Reproducible Calibration
v0.9.3 · PyPI + Docker Peer-reviewed · AI for Engineering MIT licensed
SWMMCanada: a boundary drawn on a map with an automatically generated storm-sewer network of conduits and junctions
Open data · open-source service · v0.5.0

SWMMCanada

Draw a boundary anywhere in Canada and build a ready-to-run EPA SWMM model straight from Canadian open data: real published storm networks for 35 cities (34 Canadian municipalities plus Reykjavík), synthesized networks anywhere else, with MIKE+ and InfoWorks ICM exports. Checked against a real flow gauge: an uncalibrated model of Ottawa's 22 km² Graham Creek basin reproduced all 12 summer-2024 rainfall events on the correct days. Now the upstream model builder for Agentic SWMM. Preprint on EarthArXiv (2026).

Python · FastAPI React · MapLibre geopandas Docker
35 cities MIT licensed
The MIKE+ Sirius_RTC example network with 568 nodes and 576 links, rendered as a dense mesh of pipes
Commercial engine · headless

Agentic MIKE+

A headless, natural-language automation layer for DHI MIKE+. Agents inspect, edit, run, and visualize hydraulic models without ever opening the GUI. Worker-isolated, deterministic, and license-flexible (read & plot run license-free).

MCP server mikeio · mikeio1d Python 3.11
568 nodes verified 10+ tools
Observed versus LSTM-predicted streamflow hydrograph on held-out test years, annotated NSE 0.871 and KGE 0.880
Basin forecasting · deep learning

LSTM streamflow engine

A data-driven rainfall-runoff model that learns long-range dependencies (snowpack, soil moisture, groundwater) to forecast catchment streamflow and floods. Reaches NSE ≈ 0.87 on held-out test years. Ships inside the platform.

PyTorch LSTM Rainfall-runoff
NSE 0.87 test KGE 0.88
Also

Earlier tools

Fuzzy-HydroGPT-RTC v2.0

Desktop app · PyQt6

Hydrological modelling and uncertainty quantification in one PyQt6 interface, with Real-Time Control (RTC) for near-instant (<10 s) GPT-based peak-flow predictions. Generalizable beyond hydrology.

HydroGPT-Fuzzy v1.0

Data-processing platform

A rapid hydrological & climate data processor: Canadian weather scraping, GPT-based JSONL conversion, triangular/trapezoidal fuzzy membership functions, and NSE model evaluation.

Zhonghao's AI Avatar

Ask me about my research & background
Hello! I am Zhonghao's digital avatar. You can ask me about my research in AI Hydrology, Green Infrastructure, or my publications.