aec-benchaec-bench

Library Catalogue

The library catalogue is the versioned JSON export that lets the website display current public templates and proposed seed tasks from the aec-bench library.

The catalogue is the public data bridge between the Python library and this site. It contains built templates and proposed seed tasks without exposing local run artefacts or internal task directories.

Export

From the aec-bench library checkout:

uv run aec-bench library export --pretty

The default output is:

artefacts/library-catalogue.json

Use stdout for CI or inspection:

uv run aec-bench library export --stdout --pretty

The current synced catalogue contains 184 built templates and 284 proposed seeds:

DisciplineBuilt templatesProposed seeds
Civil5730
Electrical5292
Ground103
Mechanical5092
Structural1567

Schema

The v1 export has top-level metadata, counts, templates, and seeds:

{
  "schema_version": 1,
  "generated_at": "2026-06-02T01:02:52.270976Z",
  "library_version": "0.1.0",
  "library_commit": "ea6194f",
  "counts": {
    "total_templates": 184,
    "total_seeds": 284,
    "by_discipline": {
      "civil": { "templates": 57, "seeds": 30 }
    }
  },
  "templates": [],
  "seeds": []
}

Each entry includes:

FieldMeaning
task_idStable slug used by docs and discipline pages
disciplineOne of civil, electrical, ground, mechanical, structural
categoryMachine-readable category slug
task_nameDisplay title
description and long_descriptionShort and expanded public descriptions
standardsNamed standards or method references when available
inputs and outputsPublic IO contract, units, and tolerances where known
statusbuilt for templates, proposed for seed tasks
difficulty_tiersSupported easy, medium, hard presets for built templates
tool_modeWhether generated tasks expose tools
archetype_countNumber of sampling archetypes for built templates

Site sync

From the site checkout:

pnpm sync:catalogue

The script reads ../aec-bench/artefacts/library-catalogue.json by default, validates it with the site Zod schema, and writes:

data/library-catalogue.json

Override the library checkout path when needed:

AEC_BENCH_ROOT=/path/to/aec-bench pnpm sync:catalogue

Public scope

The catalogue is for public library documentation. It should describe:

  • Built-in templates and proposed seed tasks
  • Engineering discipline, category, standards, inputs, outputs, and difficulty
  • Reproducible generation and benchmark metadata

It should not include local run outputs, private customer material, scratch workspaces, or task families that are intentionally kept outside the public benchmark surface.

Versioning

schema_version protects the site build. If the library changes the catalogue shape, update the site schema and docs in the same change. If only counts or entries change, regenerate and sync the JSON artefact.

On this page