Automatisiertes
BIM
Python · Flask · Claude API · IFC — Code als Werkzeug für architektonische Effizienz
Scroll
CS50P · Harvard · 2026

Werkzeuge &
Projekte

Python-Automatisierung, BIM-Workflows und KI-Integration — eingesetzt in realen Projekten von Arka Atelier bis SILVIA.

Werkzeuge
01
Aktiv

BIM-Automatisierung

Python-Skripte für Revit-API, IFC-Extraktion und automatisierte Modellprüfung. Eingesetzt bei ROCKO/LOTTO für die Reduktion von 340 auf 20 Clashes.

PythonRevit APIIFCifcopenshell
02
Aktiv

SILVIA Agent

Flask-Backend mit Twilio-Webhook für WhatsApp-Datenerfassung. Claude API verarbeitet Eingaben zu TRI-Scores. Cloudflare Tunnel für stabile öffentliche URL.

FlaskTwilioClaude APICloudflare
03
In Entwicklung

Spatial Data Workflows

GIS-Integration für territoriale Analysen mit GeoPandas. Obsidian Knowledge Graph als digitale Zwillingsbasis.

GISGeoPandasObsidianSpatial
04
Experimentell

KI-Bauantragsanalyse

Claude API für automatisierte Bauantragsanalyse und DIN/BauNVO-Validierung. Proof of Concept für kleine Architekturbüros in München.

Claude APIBauNVODINKalkulation
CS50P Abschlussprojekt · Harvard 2026
SILVIA —
Live in Produktion
WhatsApp-Nachrichten werden in Echtzeit zu TRI-Scores verarbeitet. Die Architektur läuft auf Apple Silicon mit Flask und Cloudflare Tunnel.
TRI Score — Shadow Stable0.811
TRI Score — Shadow Critical0.439
StackFlask · Twilio · Claude API
Zenodo DOI10.5281/zenodo.19151384
Code — Beispiele
# BIM-Automatisierung — IFC Extraktion import ifcopenshell import pandas as pd def extract_elements(ifc_path, ifc_type="IfcWall"): model = ifcopenshell.open(ifc_path) data = [{"GlobalId": e.GlobalId, "Type": e.is_a(), "Name": e.Name} for e in model.by_type(ifc_type)] return pd.DataFrame(data) # ISO 19650 · Eingesetzt bei ROCKO/LOTTO
# SILVIA Agent — WhatsApp Webhook from flask import Flask, request from twilio.twiml.messaging_response import MessagingResponse from tri_engine import compute_tri app = Flask(__name__) @app.route("/webhook", methods=["POST"]) def silvia_webhook(): body = request.form.get("Body", "") tri = compute_tri(body, role="community_leader") resp = MessagingResponse() resp.message(f"TRI Score: {tri:.3f}") return str(resp) # Live PoC: 0.811 Shadow Stable
# TRI Engine — Territorial Regeneration Index def compute_tri(observation, role="observer"): IIS_WEIGHTS = {"community_leader":1.0, "local_resident":0.7, "observer":0.4} scores = _score_via_claude(observation) ESD = scores["ecological_diversity"] TCI = scores["connectivity"] * 0.30 RAR = scores["resource_autonomy"] * 0.35 IIS = IIS_WEIGHTS.get(role, 0.4) * 0.10 return ESD * TCI * RAR * IIS # TRI = ƒ(ESD · TCI · RAR · IIS)
Zertifikate
2026
CS50P
Harvard University · Python Programming
2026
Foundation Entry Level
buildingSMART International · openBIM
2024
BIM Coordinator
Graphisoft · ArchiCAD