agentleFS
AbhinavbwjAbhinavbwj/Skills-Architects/skills/architect-calculator/SKILL.md

architect-calculator

Skill291 starsChanged 7 months agoMITView on GitHub

Seven Python-based architectural calculators for common design computations: area and density calculations (GFA, NGA, unit count, population, parking), thermal U-value analysis for multi-layer constructions, daylight factor estimation using BRE methodology, egress compliance checking (occupant load, exit width, travel distance), structural gravity load and tributary area calculations, annual energy demand estimation via degree-day method, and construction cost estimation by building type, quality, and region.

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    All scripts are located in the scripts/ directory and can be run with:

    line 20
  2. Very specific:

    Add --json to any command for structured JSON output suitable for piping into other tools or automation workflows.

    line 26
  3. Distinctive:

    All calculators validate inputs and provide clear error messages:

    line 363

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Architect Calculator

A suite of seven command-line Python calculators for rapid architectural design computations. Each calculator accepts parameters via command-line arguments, validates inputs, and produces either human-readable or JSON-structured output.

All scripts are located in the scripts/ directory and can be run with:

python scripts/<calculator_name>.py [arguments]

Add --json to any command for structured JSON output suitable for piping into other tools or automation workflows.


1. Area Calculator (area_calculator.py)

Calculates development density metrics from site area and floor area ratio (FAR), including gross floor area, net usable area, residential unit count, estimated population, and parking requirement.

Parameters

ParameterFlagDefaultUnitDescription
Site Area--site-areaRequiredm2Total site/plot area
Floor Area Ratio--farRequiredratioPermitted FAR / plot ratio
Net-to-Gross Ratio--ntg-ratio0.80ratioNGA as fraction of GFA (0.0-1.0)
Avg Unit Size--avg-unit-size85m2Average residential unit area
Persons per Unit--persons-per-unit2.5personsAverage household size
Parking Ratio--parking-ratio1.0spacesParking spaces per dwelling unit

Example

python scripts/area_calculator.py --site-area 5000 --far 2.5 --ntg-ratio 0.82

Sample Output

=== Area & Density Calculator ===
Site Area:            5,000.00 m2
Floor Area Ratio:     2.50
---------------------------------------
Gross Floor Area:     12,500.00 m2
Net-to-Gross Ratio:   0.82
Net Gross Area:       10,250.00 m2
---------------------------------------
Average Unit Size:    85.00 m2
Estimated Units:      120
Persons per Unit:     2.50
Estimated Population: 300
---------------------------------------
Parking Ratio:        1.00 spaces/unit
Parking Spaces:       120

2. U-Value Calculator (uvalue_calculator.py)

Calculates the thermal transmittance (U-value) of a multi-layer wall, roof, or floor construction by summing thermal resistances of each layer plus surface resistances.

Parameters

ParameterFlagDefaultUnitDescription
Layers--layersRequiredJSON stringArray of layer objects
Rsi Internal--rsi-internal0.13m2K/WInternal surface resistance
Rsi External--rsi-external0.04m2K/WExternal surface resistance

Each layer object: {"name": "...", "thickness_mm": N, "conductivity": N}

Example

python scripts/uvalue_calculator.py --layers '[
  {"name": "Brick", "thickness_mm": 102, "conductivity": 0.77},
  {"name": "Cavity air gap", "thickness_mm": 50, "conductivity": 0.18},
  {"name": "Mineral wool", "thickness_mm": 100, "conductivity": 0.035},
  {"name": "Concrete block", "thickness_mm": 140, "conductivity": 1.13},
  {"name": "Plaster", "thickness_mm": 13, "conductivity": 0.16}
]'

Sample Output

=== U-Value Calculator ===
Layer                Thickness(mm)  Conductivity(W/mK)  R-value(m2K/W)
---------------------------------------------------------------------------
Rsi (internal)       --             --                   0.1300
Brick                102            0.770                0.1325
Cavity air gap       50             0.180                0.2778
Mineral wool         100            0.035                2.8571
Concrete block       140            1.130                0.1239
Plaster              13             0.160                0.0813
Rse (external)       --             --                   0.0400
---------------------------------------------------------------------------
Total R-value:       3.6425 m2K/W
U-value:             0.2745 W/m2K

Passive House target (wall):   0.15 W/m2K  -- DOES NOT MEET
Typical code target (wall):    0.30 W/m2K  -- MEETS TARGET

3. Daylight Calculator (daylight_calculator.py)

Estimates average daylight factor for a side-lit room using the BRE simplified formula.

Parameters

ParameterFlagDefaultUnit
Room Width--room-widthRequiredm
Room Depth--room-depthRequiredm
Room Height--room-heightRequiredm
Window Width--window-widthRequiredm
Window Height--window-heightRequiredm
Window Sill Height--window-sill-heightRequiredm
Glazing Transmittance--glazing-transmittance0.65ratio
Average Reflectance--average-reflectance0.50ratio

Example

python scripts/daylight_calculator.py \
  --room-width 4.0 --room-depth 6.0 --room-height 3.0 \
  --window-width 2.5 --window-height 1.8 --window-sill-height 0.9

Sample Output

=== Daylight Factor Calculator ===
Room:     4.00m W x 6.00m D x 3.00m H
Window:   2.50m W x 1.80m H (sill at 0.90m)
---------------------------------------
Window Area:             4.50 m2
Total Room Surface Area: 96.00 m2
Window-to-Floor Ratio:   18.75%
Glazing Transmittance:   0.65
Average Reflectance:     0.50
Visible Sky Angle:       60.1 deg
---------------------------------------
Average Daylight Factor: 2.34%

Assessment: ADEQUATE (target >= 2.0% for habitable rooms)

4. Egress Calculator (egress_calculator.py)

Calculates occupant load, required number of exits, minimum exit widths, and travel distance compliance per IBC.

Parameters

ParameterFlagDefaultDescription
Floor Area--floor-areaRequiredNet floor area in m2
Occupancy Type--occupancy-typeRequiredIBC occupancy (A-1 to U)
Sprinklered--sprinkleredFalseFlag: building is sprinklered
Num Stories--num-stories1Number of stories

Example

python scripts/egress_calculator.py --floor-area 800 --occupancy-type B --sprinklered --num-stories 4

Sample Output

=== Egress Calculator ===
Floor Area:        800.00 m2
Occupancy Type:    B (Business)
Sprinklered:       Yes
Number of Stories: 4
---------------------------------------
Occupant Load Factor:   9.3 m2/person
Occupant Load:          86 persons
---------------------------------------
Required Exits:         2
Min Exit Width (total): 1,376 mm
Width per Exit:         688 mm
Min Door Width:         813 mm (32 inches)
---------------------------------------
Max Travel Distance:    91.0 m (300 ft) [sprinklered]
Max Common Path:        23.0 m (75 ft)
Max Dead End:           15.0 m (50 ft)

COMPLIANCE: Review travel distances on plans.

5. Structural Load Calculator (structural_load_calculator.py)

Calculates tributary area gravity loads for preliminary structural sizing.

Parameters

ParameterFlagDefaultUnitDescription
Tributary Area--tributary-areaRequiredm2Column tributary area
Num Floors--num-floorsRequiredintegerNumber of supported floors
Dead Load--dead-load4.5kN/m2Dead load per floor
Live Load--live-loadautokN/m2Live load (auto per occ.)
Occupancy Type--occupancy-typeofficestringFor auto live load selection

Example

python scripts/structural_load_calculator.py --tributary-area 36 --num-floors 8 --occupancy-type office

Sample Output

=== Structural Load Calculator ===
Tributary Area:    36.00 m2
Number of Floors:  8
---------------------------------------
Dead Load:         4.50 kN/m2 per floor
Live Load:         2.50 kN/m2 per floor (office)
Total per Floor:   7.00 kN/m2
---------------------------------------
Load per Floor:    252.00 kN
Total Column Load: 2,016.00 kN (8 floors)
Factored Load:     2,822.40 kN (1.2D + 1.6L)
---------------------------------------
Preliminary Column: ~400x400 mm RC (fc'=35 MPa)

6. Energy Calculator (energy_calculator.py)

Estimates annual heating and cooling energy demand using the degree-day method.

Parameters

ParameterFlagDefaultUnitDescription
Floor Area--floor-areaRequiredm2Conditioned floor area
Envelope Area--envelope-areaRequiredm2Total envelope area
Average U-value--average-u-valueRequiredW/m2KArea-weighted average U
Heating Degree Days--heating-degree-daysRequiredKdAnnual HDD (base 18C)
Cooling Degree Days--cooling-degree-daysRequiredKdAnnual CDD (base 24C)
Ventilation Rate--ventilation-rate0.5ACHAir changes per hour
Internal Gains--internal-gains5.0W/m2Internal heat gains

Example

python scripts/energy_calculator.py \
  --floor-area 500 --envelope-area 800 --average-u-value 0.35 \
  --heating-degree-days 3000 --cooling-degree-days 500

Sample Output

=== Energy Calculator ===
Floor Area:           500.00 m2
Envelope Area:        800.00 m2
Average U-value:      0.35 W/m2K
---------------------------------------
Heating Degree Days:  3,000 Kd
Cooling Degree Days:  500 Kd
Ventilation Rate:     0.50 ACH
Internal Gains:       5.00 W/m2
---------------------------------------
Transmission Loss:    6,720.00 kWh/yr
Ventilation Loss:     4,050.00 kWh/yr
Internal Gains:       -2,190.00 kWh/yr
Heating Demand:       8,580.00 kWh/yr
---------------------------------------
Cooling Demand:       2,356.00 kWh/yr
---------------------------------------
Total Demand:         10,936.00 kWh/yr
EUI:                  21.87 kWh/m2/yr

Passive House target: 15 kWh/m2/yr -- DOES NOT MEET

7. Cost Calculator (cost_calculator.py)

Estimates construction cost based on building type, quality level, and geographic region.

Parameters

ParameterFlagDefaultDescription
GFA--gfaRequiredGross floor area in m2
Building Type--building-typeRequiredresidential/office/retail/hospital/school/hotel
Quality--qualitystandardbasic/standard/premium
Region--regionnorth-americanorth-america/europe/middle-east/asia/australia
Include External--include-externalFalseFlag: include site works

Example

python scripts/cost_calculator.py --gfa 5000 --building-type office --quality premium --region europe

Sample Output

=== Construction Cost Calculator ===
Gross Floor Area:   5,000.00 m2
Building Type:      Office
Quality Level:      Premium
Region:             Europe
---------------------------------------
Base Cost Rate:     2,800.00 USD/m2
Construction Cost:  14,000,000 USD
---------------------------------------
Professional Fees (12%):  1,680,000 USD
Contingency (7.5%):       1,050,000 USD
External Works:           --
---------------------------------------
Total Development Cost:   16,730,000 USD
Cost per m2 (total):      3,346.00 USD/m2

Methodology Reference

Detailed formulas and methodology for each calculator are documented in references/calculator-reference.md.

Error Handling

All calculators validate inputs and provide clear error messages:

  • Missing required parameters display usage help
  • Out-of-range values are rejected with explanatory messages
  • Invalid occupancy types list accepted values
  • Malformed JSON input shows expected format

Integration

JSON output (--json flag) enables integration with:

  • Other scripts in the pipeline
  • Spreadsheet tools (parse JSON)
  • Web dashboards
  • Automated reporting systems
  • BIM parameter injection

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.