¿Qué hace cli-anything-qgis?
Usa esta habilidad cuando necesites inspeccionar o modificar proyectos de QGIS desde el terminal a través del runtime real de QGIS.
Requisitos
- QGIS instalado con
qgis_processenPATH - PyQGIS importable desde el entorno Python que ejecuta el CLI
- Python 3.10+
Guía para el agente
- Prefiere
--jsonpara todos los usos automatizados. - Para comandos únicos, pasa
--project <ruta>al operar sobre un proyecto existente. - Ejecutar
cli-anything-qgissin subcomando inicia un REPL con estado. - La exportación de diseños utiliza algoritmos reales de procesamiento de QGIS:
native:printlayouttopdfnative:printlayouttoimage
Qué cubre este CLI
- crear, abrir, guardar e inspeccionar proyectos
.qgs/.qgz - crear capas vectoriales editables respaldadas por GeoPackage
- agregar funcionalidades mediante geometría WKT y atributos tipados
clave=valor - crear diseños de impresión y agregar elementos de mapa/etiqueta
- exportar diseños a PDF o imagen
- inspeccionar y ejecutar algoritmos genéricos de
qgis_process - inspeccionar el estado y el historial de la sesión
Grupos de comandos
project
new -o/--output [--title] [--crs]open RUTAsave [RUTA]infoset-crs CRS
layer
create-vector --name --geometry --crs [--field nombre:tipo ...]listinfo CAPAremove CAPA
feature
add --layer CAPA --wkt WKT [--attr clave=valor ...]list --layer CAPA [--limit N]
layout
create --name [--page-size] [--orientation]listinfo DISEÑOremove DISEÑOadd-map --layout DISEÑO --x --y --width --height [--extent xmin,ymin,xmax,ymax]add-label --layout DISEÑO --text TEXTO --x --y --width --height [--font-size N]
export
presetspdf SALIDA --layout DISEÑO [--dpi] [--force-vector] [--force-raster] [--georeference/--no-georeference] [--overwrite]image SALIDA --layout DISEÑO [--dpi] [--overwrite]
process
listhelp ID_ALGORITMOrun ID_ALGORITMO [--param CLAVE=VALOR ...]
session
statushistory [--limit N]
Ejemplos
Crear un proyecto y agregar una capa editable
cli-anything-qgis --json project new -o demo.qgz --title "Demo" --crs EPSG:4326
cli-anything-qgis --json --project demo.qgz layer create-vector \
--name lugares \
--geometry point \
--field nombre:string \
--field puntuacion:int
Agregar funcionalidades e inspeccionarlas
cli-anything-qgis --json --project demo.qgz feature add \
--layer lugares \
--wkt "POINT(1 2)" \
--attr nombre=Sede \
--attr puntuacion=5
cli-anything-qgis --json --project demo.qgz feature list --layer lugares --limit 10
Crear y exportar un diseño
cli-anything-qgis --json --project demo.qgz layout create --name Principal
cli-anything-qgis --json --project demo.qgz layout add-map --layout Principal --x 10 --y 20 --width 180 --height 120
cli-anything-qgis --json --project demo.qgz layout add-label --layout Principal --text "Mapa demo" --x 10 --y 8 --width 100 --height 10
cli-anything-qgis --json --project demo.qgz export pdf salida.pdf --layout Principal --overwrite
Inspeccionar o ejecutar algoritmos de procesamiento
cli-anything-qgis --json process help native:buffer
cli-anything-qgis --json --project demo.qgz process run native:buffer \
--param INPUT=/tmp/demo_data.gpkg|layername=lugares \
--param DISTANCE=1 \
--param SEGMENTS=8 \
--param END_CAP_STYLE=0 \
--param JOIN_STYLE=0 \
--param MITER_LIMIT=2 \
--param DISSOLVE=false \
--param OUTPUT=/tmp/buffer.geojson
REPL
cli-anything-qgis
Ejemplo de flujo interactivo:
project new -o demo.qgz --title "Demo"
layer create-vector --name lugares --geometry point --field nombre:string
feature add --layer lugares --wkt "POINT(1 2)" --attr nombre=Sede
layout create --name Principal
session status
quit