All pages

argus-atlas CLI reference

argus-atlas 0.3.2.dev6+g77cc8fd @ 77cc8fdPyPI (opens in new tab)Source (opens in new tab)Changelog (opens in new tab)

Imported from docs/cli.md on argus-atlas's dev branch at that commit. Fixes go upstream, not here.

Bake a georeferenced fantasy-map overlay from a DEM: GDAL controls -> ComfyUI -> GeoTIFF -> PMTiles.

Usage:

$ argus-atlas [OPTIONS] COMMAND [ARGS]...

Options:

  • -v, --verbose: Show info/debug logs
  • --install-completion: Install completion for the current shell.
  • --show-completion: Show completion for the current shell, to copy it or customize the installation.
  • --help: Show this message and exit.

Commands:

  • doctor: Report GDAL, the tiler, the PMTiles...
  • controls: Warp the DEM to EPSG:3857, write...
  • dem: Clip Copernicus GLO-30 to an AOI into one...
  • osm: Fetch OSM features for an AOI from...
  • presets: List the style presets bake --preset...
  • bake: Paint the controls through ComfyUI and...
  • tiles: Cut XYZ tiles from the aligned GeoTIFF...
  • chunk: One chunk end to end: controls -> seams...
  • chunks: A block of chunks: one DEM and OSM fetch,...
  • mosaic: Lay every chunk of a style into one tile...
  • labels: Place names for the drape: rank and clip a...
  • inspect: Summarise a job's sidecar: grid, controls,...
  • serve: Start the argus-atlas micro-server...

argus-atlas doctor

Report GDAL, the tiler, the PMTiles packer, the backend and the bake flag. Exits 1 if GDAL is missing.

Usage:

$ argus-atlas doctor [OPTIONS]

Options:

  • --json: Machine-readable report
  • --help: Show this message and exit.

argus-atlas controls

Warp the DEM to EPSG:3857, write hillshade/slope(/layers/composite) controls and job.json. No GPU.

Usage:

$ argus-atlas controls [OPTIONS]

Options:

  • --dem <path>: Source DEM GeoTIFF (local path) [required]
  • --bbox <str>: AOI as west,south,east,north in EPSG:4326 degrees [required]
  • -o, --out <path>: Job directory to create (its name is the job id) [required]
  • --land <path>: Land polygon file (any OGR format): the layer named 'land'
  • --layer <str>: name=path: burn any OGR vector file as a 0/255 mask control (repeatable); water/rivers/roads/rail/forest/urban/buildings/glaciers also paint the composite
  • --sea-level <float>: Metres: add a 'sea' mask of DEM cells at or below this (0 for Copernicus coasts)
  • --composite / --no-composite: Paint composite.png from the known layers [default: composite]
  • --resampling <str>: gdalwarp method (bilinear|cubic|cubicspline|lanczos|average); default: auto by upsampling ratio
  • --long-side <int>: Canvas long side in px (default 1024, cap 1536, multiple of 64)
  • --resolution <float>: Explicit metres per pixel instead of --long-side
  • --z-factor <str>: Height scale for hillshade and slope: 'auto' corrects Web Mercator's 1/cos(latitude) stretch at the canvas centre; a number is used as is ('off' = 1, the uncorrected relief before 0.3.0) [default: auto]
  • --vertical-exaggeration, --ve <float range>: Vertical exaggeration on top of --z-factor: final z = z factor x this [default: 1.0; x>=0.0]
  • --help: Show this message and exit.

argus-atlas dem

Clip Copernicus GLO-30 to an AOI into one GeoTIFF for controls --dem. Needs the network (or a mirror).

Usage:

$ argus-atlas dem [OPTIONS]

Options:

  • --bbox <str>: AOI as west,south,east,north in EPSG:4326 degrees
  • -t, --tile <str>: Instead of --bbox: the canvas of chunk z/x/y (with --size/--margin); implies --cover
  • --size <int>: With --tile: the chunk's tile side in px, as for chunk (1024)
  • --margin <int>: With --tile: the chunk's margin in px, as for chunk (128)
  • -o, --out <path>: GeoTIFF to write (provenance in <out>.json beside it) [required]
  • --source <str>: GLO-30 bucket URL, mirror or local dir of <key>/<key>.tif (default $ATLAS_DEM_SOURCE)
  • --allow-missing: Fill tiles the source lacks (all-ocean ones) with 0 m instead of failing
  • --cover: Snap the window outward so the output contains the whole bbox (default: inside it)
  • --max-tiles <int range>: Refuse an AOI touching more GLO-30 tiles than this [default: 16; x>=1]
  • --help: Show this message and exit.

argus-atlas osm

Fetch OSM features for an AOI from Overpass into per-layer GeoJSON for controls --layer. Needs the network.

Usage:

$ argus-atlas osm [OPTIONS]

Options:

  • --bbox <str>: AOI as west,south,east,north in EPSG:4326 degrees [required]
  • -o, --out <path>: Directory for extract.osm, <layer>.geojson and osm.json [required]
  • --layers <str>: Comma-separated OSM layer presets [default: water,roads,forest,urban]
  • -z, --zoom <int range>: Target zoom (the job's native zoom) for scale rules [default: 11; 0<=x<=19]
  • --overpass-url <str>: Overpass endpoint (default $ATLAS_OVERPASS_URL)
  • --help: Show this message and exit.

argus-atlas presets

List the style presets bake --preset accepts.

Usage:

$ argus-atlas presets [OPTIONS]

Options:

  • --json: Machine-readable
  • --help: Show this message and exit.

argus-atlas bake

Paint the controls through ComfyUI and stamp the result to fantasy.tif. Refuses unless ATLAS_ALLOW_BAKE=1.

Usage:

$ argus-atlas bake [OPTIONS] {job}

Arguments:

  • job: Job directory written by controls [required]

Options:

  • -c, --checkpoint <str>: Base checkpoint, named as ComfyUI loads it [required]
  • --lora <str>: Cartography LoRA, named as ComfyUI loads it
  • --lora-weight <float>: [default: 0.8]
  • -o, --out <path>: Bake into this job dir instead (controls are copied there)
  • --preset <str>: Style preset (see argus-atlas presets); explicit flags override
  • --prompt <str>
  • --negative <str>
  • --seed <int>: Random if omitted
  • --steps <int range>: [x>=1]
  • --cfg <float>
  • --denoise <float range>: img2img strength [0.0<=x<=1.0]
  • --models-dir <path>: Where checkpoints/LoRAs are hashed from (default $ATLAS_MODELS_DIR)
  • --workflow <path>: ComfyUI API-format template (default $ATLAS_WORKFLOW or packaged)
  • --comfyui-url <str>: Default $COMFYUI_BASE_URL
  • --help: Show this message and exit.

argus-atlas tiles

Cut XYZ tiles from the aligned GeoTIFF (native-2..native; a chunk's own zoom..native) and pack them as PMTiles.

Usage:

$ argus-atlas tiles [OPTIONS] {source}

Arguments:

  • source: A job dir, or its fantasy.tif [required]

Options:

  • -o, --out <path>: PMTiles path (default <job>/fantasy.pmtiles)
  • --min-zoom <int range>: [x>=0]
  • --max-zoom <int range>: Never finer than the canvas's native zoom [x>=0]
  • --help: Show this message and exit.

argus-atlas chunk

One chunk end to end: controls -> seams from baked neighbours -> bake -> blend -> crop -> tiles, by a recipe.

Usage:

$ argus-atlas chunk [OPTIONS]

Options:

  • -t, --tile <str>: XYZ tile z/x/y to bake as one chunk [required]
  • -r, --recipe <str>: Recipe file, or a name under $ATLAS_RECIPES_DIR [required]
  • --dem <path>: Source DEM (GeoTIFF or VRT) covering the tile and its margin [required]
  • -o, --out <path>: Job directory (default $ATLAS_JOBS_DIR/<recipe>-<z>-<x>-<y>)
  • --neighbours <path>: Where the recipe's other chunk jobs live (default: the parent of --out)
  • --size <int>: Tile side in px: 256, 512 or 1024 (native zoom = z + log2(size/256)) [default: 1024]
  • --margin <int>: Px of neighbour context on every side, a multiple of 32 [default: 128]
  • --mask-feather <int>: Px the seam mask fades over on the neighbours' side, up to the margin (0 = hard) [default: 32]
  • --feather <int>: Px into the tile the remaining seam difference fades over, up to half the tile (0 = off) [default: 64]
  • --tone / --no-tone: Shift the chunk's colours to match its neighbours [default: tone]
  • --land <path>: Land polygon file (any OGR format): the layer named 'land'
  • --layer <str>: name=path vector layer, as for controls (repeatable)
  • --sea-level <float>: Metres: add a 'sea' mask of DEM cells at or below this
  • --composite / --no-composite: Paint composite.png from the known layers [default: composite]
  • --resampling <str>: gdalwarp method; default: auto by upsampling ratio
  • --controls-only: Stop after the controls and seam controls (no GPU, no ATLAS_ALLOW_BAKE)
  • --models-dir <path>: Default $ATLAS_MODELS_DIR
  • --comfyui-url <str>: Default $COMFYUI_BASE_URL
  • --z-factor <str>: Height scale for hillshade and slope: 'auto' corrects Web Mercator's 1/cos(latitude) stretch at the canvas centre; a number is used as is ('off' = 1, the uncorrected relief before 0.3.0); default: the recipe's (auto)
  • --vertical-exaggeration, --ve <float range>: Vertical exaggeration on top of --z-factor: final z = z factor x this; default: the recipe's (1) [x>=0.0]
  • --help: Show this message and exit.

argus-atlas chunks

A block of chunks: one DEM and OSM fetch, seam order, sea and finished chunks skipped. Re-run to resume.

Usage:

$ argus-atlas chunks [OPTIONS]

Options:

  • -t, --tile <str>: Centre tile z/x/y of the block (with --rings)
  • --rings <int range>: With --tile: rings of chunks around it (1 = 3x3, 3 = 7x7) [default: 0; x>=0]
  • --bbox <str>: Instead of --tile: every chunk at --zoom touching this box
  • -z, --zoom <int range>: With --bbox: the chunk zoom [x>=0]
  • -r, --recipe <str>: Recipe file, or a name under $ATLAS_RECIPES_DIR [required]
  • -o, --out <path>: Style dir holding the chunk jobs (default $ATLAS_JOBS_DIR/<recipe>)
  • --inputs <path>: Where the block's DEM and OSM are fetched and reused (default <out>/.block)
  • --dem <path>: Use this DEM (GeoTIFF/VRT covering the block) instead of fetching
  • --dem-source <str>: GLO-30 source for the fetch (default $ATLAS_DEM_SOURCE)
  • --allow-missing: Fill absent (all-ocean) GLO-30 tiles with 0 m
  • --max-tiles <int range>: GLO-30 tile budget for the block's DEM fetch [default: 16; x>=1]
  • --osm-layers <str>: OSM layer presets fetched once for the block and burnt as controls ('' = none) [default: water,rivers,roads,forest,urban]
  • --layer <str>: Extra name=path vector layer, as for chunk (repeatable)
  • --land <path>: Land polygon file: skip chunks with no land in their tile (not burnt as a control)
  • --sea-level <float>: Metres: add a 'sea' mask, as for chunk
  • --labels: Fetch OSM places with the block and label every chunk
  • --size <int>: Tile side in px: 256, 512 or 1024 [default: 1024]
  • --margin <int>: Px of neighbour context on every side, a multiple of 32 [default: 128]
  • --plan: Print the plan (order, sea chunks, done chunks) and stop
  • --controls-only: Stop each chunk after its controls (no GPU, no ATLAS_ALLOW_BAKE)
  • --models-dir <path>: Default $ATLAS_MODELS_DIR
  • --comfyui-url <str>: Default $COMFYUI_BASE_URL
  • --z-factor <str>: Height scale for hillshade and slope: 'auto' corrects Web Mercator's 1/cos(latitude) stretch at the canvas centre; a number is used as is ('off' = 1, the uncorrected relief before 0.3.0); default: the recipe's (auto)
  • --vertical-exaggeration, --ve <float range>: Vertical exaggeration on top of --z-factor: final z = z factor x this; default: the recipe's (1) [x>=0.0]
  • --help: Show this message and exit.

argus-atlas mosaic

Lay every chunk of a style into one tile set, with overview zooms and merged labels.

Usage:

$ argus-atlas mosaic [OPTIONS] {style_dir}

Arguments:

  • style_dir: Style dir holding the chunk jobs of one recipe [required]

Options:

  • -o, --out <path>: XYZ directory, or a .pmtiles file [required]
  • --overview-min <int range>: Coarsest overview zoom built below the chunk zoom [default: 5; 0<=x<=14]
  • --help: Show this message and exit.

argus-atlas labels

Place names for the drape: rank and clip a local places file to GeoJSON. The model never sees them.

Usage:

$ argus-atlas labels [OPTIONS]

Options:

  • -s, --source <path>: Places file: Natural Earth populated places, an OSM .osm/.pbf, or an osm places layer [required]
  • --job <path>: Job dir: label its canvas at its native zoom into labels.geojson, recorded in job.json
  • --bbox <str>: Without --job: west,south,east,north in EPSG:4326 degrees
  • -z, --zoom <int range>: Rank cutoff zoom (default: the job's native) [0<=x<=19]
  • -o, --out <path>: Without --job: the .geojson to write (labels.json beside it)
  • --source-layer <str>: Layer of a multi-layer source (default: first)
  • --help: Show this message and exit.

argus-atlas inspect

Summarise a job's sidecar: grid, controls, bake and tiles state.

Usage:

$ argus-atlas inspect [OPTIONS] {job}

Arguments:

  • job: A job dir (or a file inside it) [required]

Options:

  • --json: Print the sidecar as JSON
  • --help: Show this message and exit.

argus-atlas serve

Start the argus-atlas micro-server (FastAPI) on :8105.

Usage:

$ argus-atlas serve [OPTIONS]

Options:

  • -p, --port <int>: [default: 8105]
  • --host <str>: [default: 0.0.0.0]
  • --cors: Enable CORS for $ATLAS_CORS_ORIGINS (default http://localhost:3000 (opens in new tab))
  • --allow-bake / --no-allow-bake: Enable POST /bake/stream (default: $ATLAS_ALLOW_BAKE)
  • --help: Show this message and exit.