Computer-Use Agent Taxonomy中文
R07.06.01.03 · TASK CLASS

Geoprocessing workflows & model builders

Run vector/raster analyses, alone or as visual models, to a correct output layer.

20 project-authored proposals · taxonomy v1.1 · 0 new benchmark runs. Verifiers and partial-credit rules below are designs, not executed results.

Typical applications
QGIS Processing · ArcGIS ModelBuilder · GDAL
Class GUI-need label
HY · Hybrid

Task proposals · 20

Expand to inspect the complete original wording and proposed checks. Original proposal text remains English in both interfaces.

R07.06.01.03-T01 Count residential parcels within 500 m of schools per district

Original instruction

In QGIS with fixtures/city.gpkg (layers schools, parcels, districts; EPSG:3857 input), reproject to EPSG:32610, buffer schools by 500 m (dissolved), select parcels with landuse='RES' whose centroid falls in the buffer, and write out/res_near_schools.csv with district_id and count, sorted by district_id.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing · GeoPandas
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click code · Code & commands
Work product
WP02 · Records/table
Conditions
None declared
Proposed difficulty
2 / 5

Proposed verifier

CSV rows equal grader recompute (counts exact per district) using metric CRS; a common error (buffering in EPSG:3857 metres) yields different counts and fails.

Proposed partial credit

25% correct CRS; 25% buffer/selection; 50% counts per district

R07.06.01.03-T02 Compute slope zonal statistics per watershed into a GeoPackage

Original instruction

From input/dem_10m.tif (EPSG:25833) compute slope in degrees, then zonal mean, max and std of slope per polygon in input/watersheds.gpkg, writing out/watershed_slope.gpkg with fields ws_id, slope_mean, slope_max, slope_std.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing · GDAL
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click code · Code & commands
Work product
WP04 · 3D/spatial model
Conditions
None declared
Proposed difficulty
3 / 5

Proposed verifier

Per watershed values within 0.5° (mean/std) and 1° (max) of grader's gdaldem+rasterstats; geometry and ws_id preserved; degrees not percent.

Proposed partial credit

30% slope raster in degrees; 50% zonal values; 20% output schema

R07.06.01.03-T03 Reproject and clip a land-cover raster to a county and tabulate class areas

Original instruction

With GDAL CLI only, reproject input/landcover_conus.tif (Albers, 30 m, categorical) to EPSG:26915 with nearest-neighbour at 30 m, clip to the county polygon in input/county.gpkg (cutline, crop to cutline), and write out/lc_county.tif and out/class_area_ha.csv.

Platforms
lin · Linux mac · macOS win · Windows
Applications
GDAL
Interfaces
term · Terminal
GUI need · task setting
CL · CLI-sufficient
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
code · Code & commands
Work product
WP02 · Records/table
Conditions
None declared
Proposed difficulty
2 / 5

Proposed verifier

Raster CRS 26915, 30 m, nearest (no new class values); extent within one pixel of cutline bbox; class areas within 0.5% of reference.

Proposed partial credit

25% reprojection; 25% clip; 50% class areas

R07.06.01.03-T04 Build a ModelBuilder tool that clips and merges every feature class in a GDB

Original instruction

In ArcGIS Pro ModelBuilder create model 'ClipMergeAll' in fixtures/tools.atbx: iterate feature classes in an input geodatabase (parameter), clip each to a clip-boundary parameter, collect values, and merge into one output feature class (parameter), adding the source name field. Run it on fixtures/regions.gdb with input/study_area.shp.

Platforms
win · Windows
Applications
ArcGIS ModelBuilder
Interfaces
desk · Desktop GUI
GUI need · task setting
G2 · GUI-essential
GUI need · ordinary access
G2 · GUI-essential
Interaction primitives
drag · Drag & drop click · Point & click type · Text & forms
Work product
WP06 · Code/engineering
Conditions
licensed · Licensed pro app
Proposed difficulty
3 / 5

Proposed verifier

Parse model XML in .atbx: Iterate Feature Classes → Clip → Collect Values → Merge chain; 3 model parameters; grader reruns tool on a hidden GDB and compares output (feature count, area within 0.1%, source field). ArcGIS Pro Python window, Notebooks and ArcPy are disabled for the agent, and Python script tools in the .atbx are rejected.

Proposed partial credit

35% model structure; 20% parameters; 30% hidden rerun matches; 15% source field

R07.06.01.03-T05 Create a QGIS Graphical Modeler model with a parameterized buffer

Original instruction

In QGIS Graphical Modeler create model 'flood_exposure' with inputs rivers (line) and buildings (polygon) and numeric parameter buffer_m (default 100). It buffers rivers, extracts intersecting buildings and outputs them plus a count. Save out/flood_exposure.model3 and run it with buffer_m=250 on fixtures/town.gpkg.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing
Interfaces
desk · Desktop GUI
GUI need · task setting
G2 · GUI-essential
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
drag · Drag & drop click · Point & click type · Text & forms
Work product
WP06 · Code/engineering
Conditions
None declared
Proposed difficulty
3 / 5

Proposed verifier

Parse .model3: 2 layer inputs + numeric param wired to buffer distance; algorithms native:buffer and native:extractbylocation; grader runs model via qgis_process with hidden inputs and buffer values: outputs match reference. QGIS Python console, Processing script editor and qgis_process are disabled for the agent; a .model3 written by any process other than QGIS is flagged by a file audit log.

Proposed partial credit

35% model graph; 20% parameter wiring; 30% hidden reruns; 15% run with 250

R07.06.01.03-T06 Add preconditions so a ModelBuilder model skips empty inputs

Original instruction

fixtures/tools.atbx/ProcessParcels fails when an input feature class in the iteration is empty. Add Get Count and a Calculate Value/If-Then logic so empty inputs are skipped (preconditions), log skipped names to an output table, and keep all other outputs unchanged. Run on fixtures/county_parts.gdb (3 of 14 are empty).

Platforms
win · Windows
Applications
ArcGIS ModelBuilder
Interfaces
desk · Desktop GUI
GUI need · task setting
G2 · GUI-essential
GUI need · ordinary access
G2 · GUI-essential
Interaction primitives
drag · Drag & drop click · Point & click type · Text & forms
Work product
WP06 · Code/engineering
Conditions
licensed · Licensed pro app
Proposed difficulty
4 / 5

Proposed verifier

Model XML has Get Count + If logic with preconditions on downstream tools; run completes without error; output equals reference on 11 non-empty; log table lists the 3 empty names. ArcGIS Pro Python window, Notebooks and ArcPy are disabled for the agent, and Python script tools in the .atbx are rejected.

Proposed partial credit

35% logic structure; 25% runs without error; 25% outputs correct; 15% skip log

R07.06.01.03-T07 Run a weighted-overlay site suitability analysis and rank parcels

Original instruction

For a solar farm siting study, combine slope (<5°=10 … >15°=0), distance to substations (fuzzy linear 0-5 km), land cover suitability table input/lc_scores.csv and exclusion mask input/protected.gpkg, with weights 0.4/0.35/0.25. Output out/suitability.tif (0-10) and out/top5_parcels.csv of parcels ≥20 ha with highest mean score.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing · GDAL
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click code · Code & commands
Work product
WP04 · 3D/spatial model
Conditions
None declared
Proposed difficulty
4 / 5

Proposed verifier

Suitability raster vs reference: mean abs diff ≤0.2 and exclusion pixels 0; top5 parcel IDs equal reference (order-insensitive, ≥4/5 for partial).

Proposed partial credit

30% slope & distance scoring; 30% land cover & exclusion; 40% top-5 parcels

R07.06.01.03-T08 Spatially join a million GPS points to census tracts and compute rates

Original instruction

With GeoPandas (or DuckDB spatial), join input/trips_2026_09.parquet (1.2M pickup points, WGS84) to input/tracts.gpkg, compute pickups per 1,000 residents per tract, and write out/tract_rates.csv (GEOID, pickups, rate) for tracts with pop > 0. The run must finish under 5 minutes.

Platforms
lin · Linux mac · macOS win · Windows
Applications
GeoPandas
Interfaces
term · Terminal
GUI need · task setting
CL · CLI-sufficient
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
code · Code & commands
Work product
WP02 · Records/table
Conditions
None declared
Proposed difficulty
3 / 5

Proposed verifier

Counts per GEOID exact; rates within 0.01; runtime ≤300 s on grader box; boundary points handled by 'within' (documented ties).

Proposed partial credit

60% counts exact; 25% rates; 15% runtime

R07.06.01.03-T09 Build 10-minute walking isochrones from clinics and count population covered

Original instruction

Using fixtures/roads.gpkg (walkable network, 4.8 km/h) and fixtures/clinics.gpkg in QGIS, compute 10-minute service areas from each clinic (QGIS Network Analysis or ORS Tools offline backend), dissolve, and compute population covered from input/pop_100m.tif. Write out/isochrones.gpkg and out/coverage.json (covered, total, pct).

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click code · Code & commands
Work product
WP04 · 3D/spatial model
Conditions
None declared
Proposed difficulty
4 / 5

Proposed verifier

Isochrone polygon IoU with reference ≥0.85 (same concave-hull method allowed tolerance); covered population within 3%; non-walkable roads excluded.

Proposed partial credit

20% network setup; 40% isochrone IoU; 40% coverage numbers

R07.06.01.03-T10 Run a hot-spot analysis on incidents aggregated to a hexagon grid

Original instruction

In ArcGIS Pro aggregate input/incidents_2025.csv (XY in EPSG:4326) to 250 m hexagons over fixtures/city.gdb/Boundary, then run Hot Spot Analysis (Getis-Ord Gi*) with fixed distance band 750 m and FDR correction. Save out/hotspots.gdb/hex_gi and write count of 99%-confidence hot hexes to out/summary.txt.

Platforms
win · Windows
Applications
ArcGIS Pro
Interfaces
desk · Desktop GUI
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click type · Text & forms code · Code & commands
Work product
WP04 · 3D/spatial model
Conditions
licensed · Licensed pro app
Proposed difficulty
3 / 5

Proposed verifier

Hex grid 250 m covering boundary; counts per hex exact; Gi_Bin values match reference ≥98% of hexes; summary count exact.

Proposed partial credit

25% hex aggregation; 50% Gi* bins; 25% summary

R07.06.01.03-T11 Build a cloud-masked NDVI median composite from five Sentinel-2 dates

Original instruction

From input/s2/ (five L2A scenes, bands B04, B08, SCL at 10/20 m) compute NDVI per date, mask SCL classes 3, 8, 9, 10, 11 (resampled nearest to 10 m), take the per-pixel median over valid dates, and write out/ndvi_median.tif (float32, nodata -9999) plus a valid-count raster.

Platforms
lin · Linux mac · macOS win · Windows
Applications
GDAL · rasterio
Interfaces
term · Terminal
GUI need · task setting
CL · CLI-sufficient
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
code · Code & commands
Work product
WP04 · 3D/spatial model
Conditions
None declared
Proposed difficulty
4 / 5

Proposed verifier

Pixel-wise comparison with reference: ≥99% pixels within 0.01; nodata where valid count 0; count raster exact; correct scale/offset of L2A reflectance applied.

Proposed partial credit

20% NDVI per date; 25% SCL mask; 40% median composite; 15% count raster

R07.06.01.03-T12 Delineate a watershed and stream network from a DEM for a gauge outlet

Original instruction

From input/dem_25m.tif, fill sinks, compute D8 flow direction and accumulation, extract streams with contributing area ≥1 km², snap the gauge point input/gauge.gpkg to the highest-accumulation cell within 100 m, and delineate its watershed. Output out/streams.gpkg, out/watershed.gpkg and area km² in out/ws.json.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing · GRASS GIS
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click code · Code & commands
Work product
WP04 · 3D/spatial model
Conditions
None declared
Proposed difficulty
4 / 5

Proposed verifier

Watershed IoU ≥0.95 vs reference; area within 2%; stream network buffer-F1 ≥0.9; snapped outlet within 25 m of reference outlet.

Proposed partial credit

20% conditioning/flow; 25% streams; 15% snapping; 40% watershed & area

R07.06.01.03-T13 Compute the combined viewshed of three proposed turbines over a protected area

Original instruction

In ArcGIS Pro, from input/dsm_5m.tif and three turbine points (hub 120 m, observer offset 120 m, target 1.7 m) compute a cumulative viewshed (0-3 visible turbines). Report the area (ha) of fixtures/park.gdb/Protected from which at least one turbine is visible in out/viewshed.json and save the raster.

Platforms
win · Windows
Applications
ArcGIS Pro
Interfaces
desk · Desktop GUI
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click type · Text & forms
Work product
WP04 · 3D/spatial model
Conditions
licensed · Licensed pro app
Proposed difficulty
3 / 5

Proposed verifier

Viewshed raster matches reference ≥97% of cells; visible area within 3%; offsets applied correctly (a run without offsets differs by >30%).

Proposed partial credit

30% offsets configured; 40% viewshed raster; 30% area answer

R07.06.01.03-T14 Find the nearest hospital for every village with a KNN query in PostGIS

Original instruction

Load input/villages.gpkg and input/hospitals.gpkg into the provided PostGIS database (docker compose up), and write SQL that returns for each village the nearest hospital id and great-circle distance (km) using a KNN index (<-> operator). Save the query in out/nearest.sql and results in out/nearest.csv.

Platforms
lin · Linux mac · macOS
Applications
PostGIS · GDAL
Interfaces
term · Terminal
GUI need · task setting
CL · CLI-sufficient
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
code · Code & commands
Work product
WP02 · Records/table
Conditions
None declared
Proposed difficulty
3 / 5

Proposed verifier

nearest.csv: hospital ids exact for all villages; distances within 0.1 km (geography); EXPLAIN shows index scan with KNN.

Proposed partial credit

20% data loaded; 50% correct nearest ids; 20% distances; 10% KNN index used

R07.06.01.03-T15 Batch-clean twelve municipal layers with a looping Graphical Modeler model

Original instruction

Build QGIS model 'clean_muni.model3' that fixes geometries, reprojects to EPSG:2154, dissolves by insee_code and exports with the input file name to an output folder, then run it in batch mode over the 12 shapefiles in input/muni/ writing out/clean/*.gpkg.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing
Interfaces
desk · Desktop GUI
GUI need · task setting
G2 · GUI-essential
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
drag · Drag & drop click · Point & click type · Text & forms
Work product
WP09 · Files & folders
Conditions
None declared
Proposed difficulty
4 / 5

Proposed verifier

Model graph has fixgeometries → reproject → dissolve → output; 12 outputs exist with CRS 2154, valid geometries, one feature per insee_code, areas within 0.01% of reference. QGIS Python console, Processing script editor and qgis_process are disabled for the agent; a .model3 written by any process other than QGIS is flagged by a file audit log.

Proposed partial credit

35% model graph; 30% 12 outputs; 35% outputs correct

R07.06.01.03-T16 Export a ModelBuilder model to Python and make it run standalone

Original instruction

Export fixtures/tools.atbx/FloodZones to a Python script, clean it so it runs standalone with arcpy (parameterized paths via argparse, overwrite enabled, workspace set), and verify it reproduces the model's output on fixtures/test.gdb. Save out/flood_zones.py.

Platforms
win · Windows
Applications
ArcGIS ModelBuilder · arcpy
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
G2 · GUI-essential
Interaction primitives
click · Point & click code · Code & commands
Work product
WP06 · Code/engineering
Conditions
licensed · Licensed pro app
Proposed difficulty
3 / 5

Proposed verifier

Grader runs script with hidden paths: exit 0; output feature class equals model output (count, area within 0.01%); no hard-coded paths.

Proposed partial credit

20% exported; 40% standalone runs; 40% output equality

R07.06.01.03-T17 Interpolate rainfall with IDW and kriging and pick the better by cross-validation

Original instruction

From 84 gauges in input/rain_2026_08.gpkg (field mm) interpolate monthly rainfall to a 1 km grid over input/region.gpkg using IDW (power 2) and ordinary kriging (spherical, fitted). Run leave-one-out cross-validation for both and write RMSE to out/cv.json; save the better surface as out/rain_best.tif.

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing · GRASS GIS · SAGA
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
click · Point & click code · Code & commands
Work product
WP07 · Simulation result
Conditions
None declared
Proposed difficulty
3 / 5

Proposed verifier

cv.json RMSEs within 5% of grader's LOOCV; chosen method matches lower RMSE; raster grid/extent correct; values at 10 holdout points plausible within reference ±5%.

Proposed partial credit

25% IDW; 30% kriging fit; 30% cross-validation; 15% choice & output

R07.06.01.03-T18 Model June solstice irradiance on roofs with GRASS r.sun

Original instruction

In a GRASS location EPSG:32632 import input/dsm_1m.tif, compute slope/aspect, run r.sun for day 172 (global irradiation, Linke turbidity 3.0, albedo 0.2), and report mean Wh/m²/day for each roof polygon in input/roofs.gpkg to out/roof_irr.csv.

Platforms
lin · Linux mac · macOS win · Windows
Applications
GRASS GIS
Interfaces
term · Terminal
GUI need · task setting
CL · CLI-sufficient
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
code · Code & commands
Work product
WP07 · Simulation result
Conditions
None declared
Proposed difficulty
2 / 5

Proposed verifier

Per roof mean within 3% of grader's r.sun run with same params; all roofs present.

Proposed partial credit

30% r.sun parameters; 50% per-roof values; 20% output

R07.06.01.03-T19 Reallocate tract population to new districts by area-weighted and dasymetric methods

Original instruction

Redistribute population from input/tracts.gpkg to proposed districts input/districts_v3.gpkg (a) by area weighting and (b) dasymetrically using residential land cover from input/lc.tif (classes 21-24 weights 0.1/0.3/0.6/0.9). Output out/district_pop.csv with both estimates and validate (b) against block-level truth input/blocks_pop.gpkg (report MAPE).

Platforms
mac · macOS win · Windows lin · Linux
Applications
QGIS Processing · GeoPandas
Interfaces
desk · Desktop GUI term · Terminal
GUI need · task setting
HY · Hybrid
GUI need · ordinary access
CL · CLI-sufficient
Interaction primitives
code · Code & commands click · Point & click
Work product
WP02 · Records/table
Conditions
long · Long-horizon
Proposed difficulty
5 / 5

Proposed verifier

Area-weighted values within 0.5% of reference; dasymetric within 2%; totals conserved (sum equals tract total); MAPE value within 0.5 points of grader.

Proposed partial credit

30% area-weighted; 40% dasymetric; 10% conservation; 20% MAPE

R07.06.01.03-T20 Build an iterating ModelBuilder change-detection model over annual rasters

Original instruction

In ArcGIS Pro ModelBuilder build 'ForestLoss' that iterates over annual land-cover rasters 2018-2025 in fixtures/lc.gdb, computes forest→non-forest transitions between consecutive years with Raster Calculator, tabulates area per district (Tabulate Area) and appends rows (year, district, loss_ha) to one table. Run it.

Platforms
win · Windows
Applications
ArcGIS ModelBuilder
Interfaces
desk · Desktop GUI
GUI need · task setting
G2 · GUI-essential
GUI need · ordinary access
G2 · GUI-essential
Interaction primitives
drag · Drag & drop click · Point & click type · Text & forms
Work product
WP06 · Code/engineering
Conditions
licensed · Licensed pro app long · Long-horizon
Proposed difficulty
5 / 5

Proposed verifier

Model XML: Iterate Rasters + previous-year handling + Raster Calculator + Tabulate Area + Append; output table 7 years × N districts, loss_ha within 0.5% of reference; ArcGIS Pro Python window, Notebooks and ArcPy are disabled for the agent, and Python script tools in the .atbx are rejected.

Proposed partial credit

35% model structure; 15% iteration correctness; 40% loss table values; 10% runs cleanly

Mapped research references

Existing benchmark-to-class links from the research catalog. They are not record-level annotations, executions or product endorsements.

In this workflow family