Generates a CSV report of all projects and branches in your Meterian account, including security advisory counts and status.
- Python 3.12+
- uv package manager
- A Meterian API token (requires a paid plan — generate one at https://meterian.com/account/#tokens)
With uv (recommended):
uv syncWith pip:
pip install -r requirements.txtuv run report.py [OPTIONS]Set your API token via environment variable:
export METERIAN_API_TOKEN=your-token-here
uv run report.pyOr pass it directly:
uv run report.py --token your-token-here| Flag | Short | Default | Description |
|---|---|---|---|
--token |
-t |
$METERIAN_API_TOKEN |
API token |
--days |
-d |
30 |
Only include projects updated within this many days |
--tag |
-g |
(all projects) | Filter projects by tag |
--tool |
-T |
(all tools) | Filter by tool: BOSS, BOSSC, ISAAC, SELENE, SASHA, OTHER |
--output |
-o |
meterian_report.csv |
Output CSV file path |
--log |
-l |
warning |
Log level: debug, info, warning, error, critical |
# All projects updated in the last 90 days
uv run report.py
# Last 30 days only
uv run report.py --days 30
# Filter by tag, write to a custom file
uv run report.py --tag my-team --output my-team.csv
# Filter by tool
uv run report.py --tool BOSS
# Combine filters
uv run report.py --tag production --tool ISAAC --days 60 --output prod.csv
# Debug mode
uv run report.py --log debugThe CSV contains one row per project/branch combination:
| Column | Description |
|---|---|
url |
Project repository URL |
branch |
Branch name |
status |
Security outcome: PASS, FAIL, or UNDECLARED |
critical |
Number of CRITICAL advisories |
high |
Number of HIGH advisories |
medium |
Number of MEDIUM advisories |
low |
Number of LOW advisories |
tags |
Associated tags |
last_updated |
Timestamp of the last report (UTC) |