You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
v1.2.9 — Revit Failures Without Dialogs, IFC Read-Back, Readable Installer
Fixed — a Revit failure dialog no longer hangs every command
Seen live during the demo recordings: a command or exec snippet that made Revit post an error
("Spot Dimension does not lie on its reference", "One or more Spot Dimension references are no
longer valid") or a warning in a transaction without a handler ("Highlighted walls overlap" — wall already dismissed warnings, so most likely an exec snippet's own transaction) opened
Revit's modal failure dialog. It was invisible with Revit minimized or driven headless, the
request timed out after 30 s, every following command timed out too, and the chat turn ended
with "Revit hangt in een dialoog".
VibeModel now handles failures itself while a command runs (RevitFailurePolicy): warnings are
dismissed and reported (-- revit warning: …). An error whose only failing elements are
view-specific spot dimensions, dimensions or tags is resolved with Revit's "Delete Element(s)",
which keeps the change (-- revit resolved: … → deleted 1 annotation: <id> (Spot Elevations)).
Any other error rolls back and returns ERROR: Revit rolled the change back: <Revit's reason>
with a Hint: line (join keeps its own refusal report, with that reason in it). When one
failure forces a rollback, nothing else of that pass is applied. JSON gets an additive revit
object, also per batch command. This covers VibeModel's own transactions (preprocessor) and
transactions an exec snippet opens itself (Application.FailuresProcessing, only while a
command runs — over HTTP or the file-based fallback; your own work in Revit keeps the normal
dialogs).
A transaction Revit rolled back during commit is now an error instead of a success (the commit
status used to be ignored). Live example: set <wall> "Unconnected Height" 1 reported success while
Revit silently undid it; it now says Revit rolled the change back: Revit gave no reason ….
Any dialog that still opens during a command is logged with its id.
A failure Revit keeps re-posting after it was resolved is rolled back after 10 rounds instead of
looping (FailureLoopGuard); a snippet whose many transactions each resolve a different
annotation is not mistaken for such a loop.
Fixed — "the IFC has no piles"
export ifc reads its own file back. The piles were there: Revit 2023's default IFC class
table (exportlayers-ifc-IAI.txt) maps Structural Foundations to IfcSlab BASESLAB, so 510 piles
arrived as slabs and a search for IFCPILE/IFCFOOTING found nothing. The response now lists per
category how many Revit elements went in and as which IFC class, which model elements in scope are
missing (with the usual causes: a category mapped to Not Exported, Export to IFC = Don't Export,
the export phase), and names the foundation mapping with the fix (Export Type to IFC As).
Changed — shorter chat answers
Answers ran to 6–8 lines: a closing list of 2–3 next steps (asked for by two older prompt lines)
and, in nearly every answer, the reminder that the work view is on the existing phase. The rules
now count notes, warnings and offers in the 5 lines, allow ONE closing offer line (the quick-reply
chips turn it into buttons), mention the view's phase only when this turn's work is hidden by it,
and drop the "converted to m" and "one Ctrl+Z" restatements.
Fixed — installer that could not be read ("I ran install.ps1 and see no tab")
A colleague downloaded GitHub's Source code (zip) — the only zip on the releases page, since no
release since v1.2.1 had an add-in zip attached — ran install.ps1, and the window closed on
the "Cannot find VibeModel.dll" error before it could be read. The installer now stays open at the
end and after every error, recognizes the source-code zip and names the right download, asks to
close a running Revit (it keeps the DLL locked), and verifies afterwards that every file is in
place and unblocked. The API-key prompt says Claude Code users just press Enter, and saving a key
no longer overwrites the other settings or pins an old model id.
scripts/package-release.ps1 builds and packs release/VibeModel-v<version>-Revit<year>.zip
(add-in, PdfText helper, install.cmd/.ps1, README.txt with the three steps) — the asset every
release gets from now on. README: download that zip under Assets, double-click install.cmd.
Docs
CLAUDE.md: examples for filter, measure, whereused, zoomto, isolate/unisolate, hide/show, colorsplash and chatlog (the only commands without one).
chatlog gets its step label in both languages; a test now checks every registered command has one.