Getting Started¶
Installation¶
Install from PyPI:
For YAML request file support:
For development (tests, linting, type checking):
Shell Completion¶
Enable tab completion for bash:
Or for zsh:
Restart your shell or run source ~/.bashrc (or ~/.zshrc) to activate.
Prerequisites¶
You need a valid CDS API configuration file at ~/.cdsapirc:
See the CDS API documentation for setup instructions.
First Download¶
1. Create a request file¶
Save the following as requests.json:
[
{
"dataset": "reanalysis-era5-single-levels",
"request": {
"product_type": ["reanalysis"],
"variable": ["2m_temperature"],
"year": ["2024"],
"month": ["01"],
"day": ["01", "02", "03"],
"time": ["12:00"],
"data_format": "grib"
},
"target": "temperature_jan.grib"
},
{
"dataset": "reanalysis-era5-single-levels",
"request": {
"product_type": ["reanalysis"],
"variable": ["total_precipitation"],
"year": ["2024"],
"month": ["01"],
"day": ["01", "02", "03"],
"time": ["12:00"],
"data_format": "grib"
},
"target": "precipitation_jan.grib"
}
]
2. Run the download¶
If your terminal supports it, the interactive TUI will launch automatically. Otherwise cdsswarm falls back to script mode with plain-text output.
3. Check the results¶
Downloaded files appear in the current directory (or in --output-dir if specified). If a download is interrupted, just rerun the same command — cdsswarm resumes from where it left off.
What's Next¶
- CLI Reference — all commands and options
- Configuration — config files and request file formats
- Python API — use cdsswarm as a library
- TUI — interactive terminal UI guide