Features and effort

State 25.10.2026 19:15. Written by tools/effort.py from documentation/open-tasks.md, documentation/scoring.md and the Claude Code session records; do not edit by hand.

Measured 15.10.2026 to 25.10.2026: 99 requests, the lead 23.1 h active, agents 3.1 h, 16.5 M new tokens (input, cache writes, output) and 982.7 M tokens read from the cache; the tables show new tokens. Active time counts every pause as at most 5 minutes. Built features from before 15.10.2026 have no figures. Agents started by hand, outside a workflow, count under the lead; an agent that worked on several features counts in each of their rows, the bold totals count it once. Loops: a checking agent (reviewer, checker) after a building one (developer, builders). Estimates: S about 1 h and 0.5 M tokens, M about 2.5 h and 1.5 M, L about 6 h and 4 M (open-tasks.md).

OverallFeaturesEstimateMeasured timeAgentsLoopsTokens
Built6541.0 h, 23.5 M20.3 h––9.2 M
In progress and planned44124.0 h, 77.2 M2.2 h––2.2 M
All requests measured109165.0 h, 100.8 M26.2 h (lead 23.1 h, agents 3.1 h)26716.5 M

Pointcloud2Revit

Built (20)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Slice-weighted storeys (walls 0.3-0.7 m, windows 1.1-1.3 m)Function4–1.8 h––234 k
Slice route: walls, doors, windows, rooms, floor from two 20 cm slices (slice2d)Function4–1.6 h––531 k
Slabs and levels from vertical sections (sections), refined where neighbours differFunction3–1.3 h––173 k
F16 External parts of the point cloud (pointcloud/facade.py): exterior walls measured, slab outline from the facade ring (closed stepwise), edge on the walls' outer face, courtyards as voidsFunction5M (~2.5 h, ~1.5 M tokens)49 min––859 k
F3 Room separation lines where the slice route's rooms have no wallFunction4M (~2.5 h, ~1.5 M tokens)43 min––970 k
Slab regions per floor from horizontal slices: outlines, voids (shafts, stairwells, courtyards), galleriesFunction4–39 min––120 k
F14 Slab outlines with straight, square edges instead of the 10 cm raster (fewer Revit warnings)Function3S (~1 h, ~0.5 M tokens)16 min––84 k
A4 Scan coverage per storey: share of every wall and of the outline seen, coverage imageFunction4M (~2.5 h, ~1.5 M tokens)12 min5 (9 min) / 5 (2 min) / –5210 k
Curved wallsFunction4–––––
Door swing and hinge sideFunction4–––––
Doors and windows from holes in the facesFunction4–––––
E57 reader (real scans, in blocks)Function4–––––
External scans (drone, facade) in the survey frame (facade): exterior walls seen from inside get their measured thickness, slab outlines from the facade ring, courtyards as voidsFunction4–––––
Ghost points (glass, mirrors)Function3–––––
Large scans: thinning to 2 cmFunction4–––––
Levels and storeys from the scanFunction5–––––
Rooms, floor outlineFunction4–––––
Stairs, slab openingsFunction4–––––
Storeys merged in the survey frame, vertical checkFunction4–––––
Straight walls (faces, thickness, squaring, joins)Function4–––––
Total built (20)8.5 h, 5.0 M7.4 h1053.2 M

Planned (12)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Apartment scan with floor plan (test 25.10.2026, public sample of a scanner vendor, one storey, 8.9 M points): the outline and the large room fit (58.75 m2 against 60.5 m2 of the vendor's floor plan), but most interior walls are missed although the scan shows them: 2814 wall-face pairs rejected for floor or ceiling points between the faces; the floor spreads 7.8 cm (tilt or scans not aligned), the floor and ceiling bands reach into the walls. In Revit 22 of 25 checks: the rooms are placed but not enclosedGap5M (~2.5 h, ~1.5 M tokens)26 min––877 k
Car parks and halls (test 25.10.2026 on a public car park scan, one scan position, 28 M points, 125 x 130 m): the slice route finds wall fragments only (46 pieces, 39 under 1 m), no columns, the room follows the scanner's line of sight; the floor falls 35 cm and comes out as five levels; outer walls 30-40 m from the scanner are thin in pointsGap4L (~6 h, ~4 M tokens)5 min––24 k
F12 Sloped elements: sloped roofs and ceilings, knee walls from the scan; slice route: measured opening heights, one wall from its upper and lower faceFunction4M (~2.5 h, ~1.5 M tokens)1 min––6 k
LAS / LAZ scans: laspy[lazrs] installed, a chunked reader with the 2 cm voxel thinning (as for E57), input report and slice route on LAS; first test file the Kladno station (6.5 GB, CC BY, test-data-sources.md)Function3S (~1 h, ~0.5 M tokens)1 min––3 k
Doors and windows: few found on real floorsGap3M (~2.5 h, ~1.5 M tokens)––––
F1 Wall detection on densely partitioned real floors: real project data (details private)Function5L (~6 h, ~4 M tokens)––––
F13 Stairs and ramps in the voids of the slab regions (steps in thin horizontal slices)Function4M (~2.5 h, ~1.5 M tokens)––––
Galleries: missed at 3 m section spacing, not built as their own Revit level yetGap3M (~2.5 h, ~1.5 M tokens)––––
Memory: large real storeys still take much memory on the full route real project data (details private)Gap2M (~2.5 h, ~1.5 M tokens)––––
Slab voids under 5 m2 are not cutGap2S (~1 h, ~0.5 M tokens)––––
Stairs: straight runs only; curved walls: circular arcs onlyGap2L (~6 h, ~4 M tokens)––––
Two more test scans (a house, one scan station; an office floor, two stations) are Trimble RealWorks projects (.rwp, scans .rwcx, a closed format): no reader here; needs an E57 export from Trimble RealWorks (Create tzf Scan, then Export E57 structured)Task3S (~1 h, ~0.5 M tokens)––––
Total planned (12)36.0 h, 22.5 M34 min0–910 k

Pointcloud2Revit: still to do estimated 36.0 h, 22.5 M; measured so far 8.1 h and 4.1 M tokens (features and other requests).

Other requests on Pointcloud2Revit (status, documentation, runs, fixes not tied to one feature): 4, 9 min, 8 k tokens.

IFC2Revit

Built (10)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
A3 IFC pre-check: what Revit will refuse (degenerate arcs, short pieces, duplicates), fixed where safe, reportedFunction4S (~1 h, ~0.5 M tokens)27 min13 (13 min) / 7 (2 min) / 5 (1 min)7409 k
F7 Slab holes and openings from the IFCFunction3M (~2.5 h, ~1.5 M tokens)27 min13 (13 min) / 7 (2 min) / 5 (1 min)7409 k
F10 Door swing from the IFC: single-swing doors from the placement (opens towards local +Y) and the operation type (hinge side)Function2S (~1 h, ~0.5 M tokens)11 min––66 k
Revit test of the whole real IFC building through pyRevit (0.7)Task5S (~1 h, ~0.5 M tokens)11 min––66 k
All storeys in one model (merge.py)Function4–––––
One storey to native Revit (ifc.py)Function5–––––
Openings on the right wall piece, panes left outFunction4–––––
Pre-check of what Revit refuses (ifc/precheck.py), wall pieces at their base offset, slab holesFunction4–––––
Rooms without IfcSpace (cells between the walls)Function4–––––
Synthetic IFC example and testsFunction4–––––
Total built (10)5.5 h, 3.0 M1.3 h5014948 k

Planned (8)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Doors on locked (fire-rated) families keep their size real project data (details private)Gap4S (~1 h, ~0.5 M tokens)––––
F5 Stairs with landings (IFC flights; also for scans)Function3L (~6 h, ~4 M tokens)––––
F6 Wall types by the IFC type nameFunction3M (~2.5 h, ~1.5 M tokens)––––
F8 Columns and beamsFunction3M (~2.5 h, ~1.5 M tokens)––––
F9 Curtain walls with their doors and windowsFunction3L (~6 h, ~4 M tokens)––––
IFC wall pieces assigned to a storey they do not stand in (base offsets of a whole storey up or down): built at their true height they no longer bound that level's roomsGap4S (~1 h, ~0.5 M tokens)––––
IFC: a few walls and their openings Revit refuses ("Wand kann nicht erstellt werden"), doors in curved wallsGap3M (~2.5 h, ~1.5 M tokens)––––
Rooms without IfcSpace: areas off where walls overlapGap2M (~2.5 h, ~1.5 M tokens)––––
Total planned (8)24.0 h, 15.0 M–0––

IFC2Revit: still to do estimated 24.0 h, 15.0 M; measured so far 1.3 h and 959 k tokens (features and other requests).

Other requests on IFC2Revit (status, documentation, runs, fixes not tied to one feature): 1, 4 min, 11 k tokens.

Plans2Revit

Built (14)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Raster plans through plan-extract (fpx.py)Function4–40 min––152 k
Plan sheets with several storeys (plans/sheet.py): drawings split, storey labels, ordered bottom first, alignedFunction5M (~2.5 h, ~1.5 M tokens)28 min––127 k
Room stamps: name, unit as Revit department, number storey.unit.nn, a room at every stampFunction4–28 min––127 k
Plan sheets: small symbols drawn in wall colour outside the building became wall stubs; a door beside a window in one gap got only the windowGap3S (~1 h, ~0.5 M tokens)11 min––66 k
Walls drawn as filled areas, openings where the wall colour is absent, swings from chains of short linesFunction4–9 min––92 k
Clutter filter (built-in units, sanitary, text masks, annotation), list in the guideline and plans/filters.jsonFunction4–6 min––73 k
plan-extract run locallyFunction1–2 min––9 k
CAD sheet with several storeys (sheet.py): drawings split, storey labels, scale from the title blockFunction4–––––
Clutter filter: built-in units, sanitary, text masks, annotation; list in the modelling guideline, machine list plans/filters.jsonFunction4M (~2.5 h, ~1.5 M tokens)––––
DXF and vector PDFFunction4–––––
Own raster readerFunction0–––––
Rooms with the data of their stamps: name, unit (Revit "Abteilung"), number storey.unit.nn; a room at every stampFunction5M (~2.5 h, ~1.5 M tokens)––––
Several storeys, alignedFunction4–––––
Walls drawn as filled areas in vector PDFs: wall rectangles, openings where the rendered wall colour is absent, swings from chains of short linesFunction4S (~1 h, ~0.5 M tokens)––––
Total built (14)9.5 h, 5.5 M2.1 h0–647 k

In progress (1)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Storey heights from the elevations sheet (levels and heights instead of the assumed storey height)Function4M (~2.5 h, ~1.5 M tokens)12 min5 (9 min) / 5 (2 min) / –5210 k
Total in progress (1)2.5 h, 1.5 M12 min105210 k

Planned (8)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Rooms on a real sheet not all closed by walls: real project data (details private) after the corner joins, stub and jog fixes and knee walls (24.10.2026)Gap3S (~1 h, ~0.5 M tokens)12 min5 (9 min) / 5 (2 min) / –5210 k
plan-extract run locally: blocked, the segmenter model is not publicGap2–2 min––9 k
F11 Own raster reader instead of plan-extractFunction3L (~6 h, ~4 M tokens)––––
F4 Raster PDF (scanned plan) into Revit: postponed (22.10.2026)Function4S to L (1-6 h, 0.5-4 M tokens)––––
Handwritten measurements on a scanned plan (other ink) as checks, kept out of the geometryFunction3M (~2.5 h, ~1.5 M tokens)––––
Knee walls under a sloping roof built as wide as the drawn band (thickness and height flagged assumed)Gap3S (~1 h, ~0.5 M tokens)––––
Orientation and scale from the sheet: scale from the title block ("1 : 100") done; turning a sheet whose text is not upright not built yetFunction5S (~1 h, ~0.5 M tokens)––––
plan-extract results: one room the walls do not close; never run on a real resultGap2S (~1 h, ~0.5 M tokens)––––
Total planned (8)16.0 h, 9.8 M13 min105219 k

Plans2Revit: still to do estimated 18.5 h, 11.2 M; measured so far 2.6 h and 1.5 M tokens (features and other requests).

Other requests on Plans2Revit (status, documentation, runs, fixes not tied to one feature): 1, 6 min, 419 k tokens.

Shared: core, Revit side, agent team

Built (21)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
Images: a plan per level and a 3D view, JPEGFunction4–2.1 h––473 k
Revit through the pyRevit agent runtime (stages, read back, checks)Function4–1.4 h––206 k
End-to-end runner (start, calls, checks, report)Function4–1.3 h––229 k
Unattended runs: failure dialogs answered and loggedFunction5–54 min––224 k
Agent team: 9 agents, workflow with gates, phase tool for one modelFunction3–35 min– / – / 1 (0 min)–963 k
A1 Machine-readable input reports for every route (verdict per item)Function4M (~2.5 h, ~1.5 M tokens)27 min13 (13 min) / 7 (2 min) / 5 (1 min)7409 k
S1 Agent scoreboard: actions, findings, defects found and fixed, gate verdicts and check scores per agent and project, summed up over projectsFunction5M (~2.5 h, ~1.5 M tokens)27 min13 (13 min) / 7 (2 min) / 5 (1 min)7409 k
V1 Rule ids in the modelling guideline, each rule with its Revit check; R2 table rule -> checkFunction4M (~2.5 h, ~1.5 M tokens)27 min13 (13 min) / 7 (2 min) / 5 (1 min)7409 k
V2 Comparison with a reference (an IFC of the same building) as a standard checker step, LOA tolerancesFunction4M (~2.5 h, ~1.5 M tokens)27 min13 (13 min) / 7 (2 min) / 5 (1 min)7409 k
Revit API check (tools/api_check.py)Function4–22 min––22 k
Room tags (Raumstempel) with the area in every floor plan of a room's level, room data of the input (name, number, unit, use, finishes), the rooms' interior fill shown in the floor plans (rule G-9.6)Function4S (~1 h, ~0.5 M tokens)14 min––68 k
R1 Rule proposals: agents propose guideline changes in their handover, the project manager collects them, the user approvesFunction4S (~1 h, ~0.5 M tokens)12 min5 (9 min) / 5 (2 min) / –5210 k
V3 Each Revit run compared with the previous one: checks gained, lost, still failingFunction3S (~1 h, ~0.5 M tokens)12 min5 (9 min) / 5 (2 min) / –5210 k
F15 Modelling guideline: phase "Existing" for every element, a parameter measured / assumed on walls, floors, doors and windowsFunction3S (~1 h, ~0.5 M tokens)11 min––66 k
F27 Browser viewer with That Open Company libraries (ifc.js: @thatopen/components, web-ifc): model, scan slices and deviation colours on localhost, for the review loop and the fact reviewFunction4M (~2.5 h, ~1.5 M tokens)8 min––72 k
Agent team bookkeeping: scoreboard, rule ids with checks, rule proposals, run comparisonFunction3–7 min––66 k
Comparison with a reference plan per LOA class (core/compare.py)Function3–––––
Door and window types for every sizeFunction4–––––
Input reports with verdicts (core/inputs.py), scan coverageFunction3–––––
Unattended runs: check that the pyRevit agent host answers Revit's failure dialogs like the old add-inTask4S (~1 h, ~0.5 M tokens)––––
Wall types for every thicknessFunction4–––––
Total built (21)17.5 h, 10.0 M9.6 h121384.4 M

In progress (1)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
F24 Agent team phases updated for drawings first (phase 2a, alignment 2c, review at gate 1, drawn vs measured in the check)Task4S (~1 h, ~0.5 M tokens)––––
Total in progress (1)1.0 h, 500 k–0––

Planned (14)

FeatureKindValueEstimateTimeAgents (building / checking / other)LoopsTokens
F22 Local LLM helper (local-llm.md): text classification, build-up parsing, raster reading; always proposed facts, checked by codeFunction3M (~2.5 h, ~1.5 M tokens)20 min8 (4 min) / 2 (1 min) / 5 (1 min)2210 k
Agent team: first model built in Revit, phase by phase with its gatesTask4M (~2.5 h, ~1.5 M tokens)15 min8 (4 min) / 2 (1 min) / 5 (1 min)2199 k
F17 Facts from drawings: catalogue of 29 information types from plans, sections, elevations, build-up legends, schedules, site plans into facts.json per project (drawings-and-scans.md)Function5L (~6 h, ~4 M tokens)15 min8 (4 min) / 2 (1 min) / 5 (1 min)2199 k
GitHub sources: licence and security check before any skill or code is taken; pinned and listed (github-sources.md)Task3S (~1 h, ~0.5 M tokens)15 min8 (4 min) / 2 (1 min) / 5 (1 min)2199 k
F25 Deviation analysis: the built model against the scan, per element (signed median, 95 %, LOA share, coverage, verdict pass / fail / not verifiable), missed-element candidates, bias per class, coloured images per storey (deviation-and-review.md 1)Function5L (~6 h, ~4 M tokens)1 min––6 k
F26 Review and correction as one loop: flagged items shown with scan and deviation, a person accepts, moves, changes, deletes or adds, the plan is edited, the stages and checks run again, every decision on the scoreboard (deviation-and-review.md 2); planned agent: review manFunction5L (~6 h, ~4 M tokens)1 min––6 k
F28 Meshing: not in the modelling routes (research 25.10.2026, deviation-and-review.md 3); possibly for the viewer and as reference surface of non-planar elementsTask2S (~1 h, ~0.5 M tokens)1 min––6 k
F18 Review page: a person accepts, corrects or rejects every fact at gate 1, crops of the drawing beside each valueFunction5M (~2.5 h, ~1.5 M tokens)––––
F19 Drawings aligned to the scan frame per storey (2D fit of wall axes, person confirms)Function5M (~2.5 h, ~1.5 M tokens)––––
F2 A door and a window family with free size in the blank project (the template)Function4S (~1 h, ~0.5 M tokens)––––
F20 Drawn facts as priors in modelling: levels, thickness of one-sided walls, slab thickness, opening heights, room names on scan rooms, drawn walls as hypotheses for the slice routeFunction5L (~6 h, ~4 M tokens)––––
F21 Checker: drawn vs measured for every accepted fact, unused facts listedFunction4M (~2.5 h, ~1.5 M tokens)––––
F23 Build-ups (floor, wall, roof) parsed into layers and thicknesses; slab thickness from themFunction4M (~2.5 h, ~1.5 M tokens)––––
Point clouds from Autodesk ReCap (RCP / RCS): link into the Revit copy, read the slices with point cloud filters through pyRevit, on into the slice routeFunction3M (~2.5 h, ~1.5 M tokens)––––
Total planned (14)44.5 h, 28.0 M1.2 h608826 k

Shared: still to do estimated 45.5 h, 28.5 M; measured so far 14.2 h and 10.0 M tokens (features and other requests).

Other requests on Shared (status, documentation, runs, fixes not tied to one feature): 34, 3.4 h, 4.7 M tokens.

Tasks with agents

DateTaskSub-projectLeadAgentRoleTimeTokensCache reads
17.10.2026Agent teamshared35 min, 913 kproject-managerinput / lead0 min50 k278 k
1 agents, 0 loops0 min50 k278 k
24.10.2026Feature round: developers and reviewersshared6 min, 232 kdev:agentsbuilding19 min310 k10.1 M
dev:inputsbuilding17 min271 k9.8 M
dev:ifcbuilding24 min389 k21.1 M
dev:plansbuilding32 min481 k26.5 M
dev:checkerbuilding11 min167 k3.9 M
review:checkerchecking4 min96 k1.3 M
review:inputschecking4 min77 k1.2 M
review:agentschecking4 min108 k2.0 M
review:ifcchecking3 min80 k1.0 M
review:planschecking4 min98 k1.0 M
10 agents, 5 loops2.0 h2.1 M78.0 M
24.10.2026Plans (drawings first, local LLM, GitHub); merge of the feature round; team testshared1.5 h, 584 kproject-managerinput / lead1 min39 k185 k
point-cloud-maninput / lead6 min141 k2.9 M
project-managerinput / lead1 min48 k147 k
structure-manbuilding5 min99 k1.6 M
family-manbuilding2 min61 k1.1 M
loadbearing-manbuilding4 min93 k1.7 M
project-managerinput / lead3 min80 k447 k
fit-manbuilding2 min75 k1.2 M
checkerchecking3 min114 k1.4 M
loadbearing-manbuilding5 min85 k1.8 M
structure-manbuilding8 min108 k2.6 M
family-manbuilding8 min137 k3.6 M
fit-manbuilding6 min86 k1.8 M
checkerchecking3 min110 k1.3 M
project-managerinput / lead4 min126 k1.7 M
15 agents, 2 loops1.0 h1.4 M23.4 M