CLI Usage Guide
Running via uvx
If you prefer not to clone the repository or manage a local virtual environment, uvx can execute the CLI directly from GitHub:
# electricity
uvx --env-file=.env --from git+https://github.com/switchbox-data/tariff_fetch tariff-fetch
# gas
uvx --env-file=.env --from git+https://github.com/switchbox-data/tariff_fetch tariff-fetch-gas
All environment variables (API keys, credentials, etc.) still need to be exported or added to your .env file beforehand.
Electricity CLI (tariff-fetch)
Run uv run tariff-fetch (or python -m tariff_fetch.cli / just cli) to launch the interactive workflow.
Options
--state/-s: two-letter state abbreviation (case-insensitive). If omitted, the CLI prompts you.--providers/-p: repeatable flag for each provider (genability,openei,rateacuity). Leaving it out opens a checkbox prompt so you can select multiple providers at once.--output-folder/-o: directory for exported JSON files. Defaults to./outputs.
Workflow Overview
- Pick a state (option or prompt).
- Choose which providers to fetch (option or interactive checkbox).
- Select a utility from the structured EIA list. The CLI fetches the latest CORE_EIA861 data to help you pick based on name, entity type, sales, revenue, and customer counts.
- For each provider selected,
tariff_fetchruns the corresponding workflow (process_genability,process_openei, orprocess_rateacuity) and writes exports to the chosen output folder. Authentication failures print guidance about the relevant environment variables.
Gas CLI (tariff-fetch-gas)
Run uv run tariff-fetch-gas (or python -m tariff_fetch.cli_gas / just cligas).
Options
--state/-s: gas benchmark state (prompts if omitted).--output-folder/-o: output directory (defaults to./outputs).
Workflow Overview
This command only targets RateAcuity’s gas workflow. After you confirm the state, the CLI launches the Selenium flow via process_rateacuity_gas, exporting the selected schedules. Failures typically mean the RATEACUITY_USERNAME/RATEACUITY_PASSWORD credentials or local Chrome/Chromium installation need attention.