CH NEO-ZÜRICH EDITION
WEATHER · HAZE 19°C
BLEND OF THE DAY · 07/ROGUE
EST. 2027
THE AEC CYBER MORNING NEWS

PAZ Kaffi

DESIGN · DEMOLITION · CAFFEINE · DISPATCH
EDITION 0716 · 16 July 2026
BROADCAST 04:42 CET
2,400 BROADSHEETS PRINTED
READ TIME · 47 MIN
Grasshopper 2.0 Alpha: Twelve New Components, One Broken SDK
ACADEMY
FRAME · 06:55
16-07-2026

Grasshopper 2.0 Alpha: Twelve New Components, One Broken SDK

GH2's alpha renames its root namespace and orphans plugins. What that means for your office's definitions — plus a 90-minute Grasshopper-from-zero path.

David Rutten shipped a new Grasshopper 2.0 alpha on the McNeel Discourse forum, and the release notes read like a systems diagram of a platform mid-refactor. Twelve new components. A full rewrite of Display Settings and Display Rules — front-end and back-end. Reworked file-writing code to stop the UI locking during autosave. And, buried in the replies, the sentence that actually matters for anyone building on top of it: the base namespace changed from Grasshopper to Grasshopper2, so every third-party plugin has to be recompiled against the new source, and quite possibly rewritten.

That is not a bug report. That is a dependency graph moving under your feet. And it is exactly the right moment to learn Grasshopper from zero — because right now the platform is honest about what it is made of.

The Tool

The Tool: Grasshopper 2.0 (alpha), the visual-programming environment shipped inside Rhino by Robert McNeel & Associates, authored primarily by David Rutten. It is the single most widely used parametric canvas in architecture — the thing that turns “I want this facade to respond to sun angle” into a wired graph of components instead of 400 lines of code. GH1 has been the working standard since 2007. GH2 is the ground-up rewrite, currently in alpha on the McNeel Discourse, and the new build is where you can see the seams. That is worth an architect’s afternoon precisely because the seams are visible: you are looking at the plumbing, not the marketing.

The twelve new components in this build are small and telling — Dots From Text, Dots From Meta, Torus From Axis, Polygon Centre, Text From Cardinal, Text From Ordinal, Text From Roman, Crossing Pairs, Fragment List, Random Integer Tree, Random Number Tree, Scribble. Notice what is not there. No C# component. No Python component. No Custom Preview. Rutten’s answer in the thread is blunt: the scripting components depend on RhinoCode — Ehsan Iran-Nejad’s work — which requires Rhino 9, so when they land, GH2 will require Rhino 9 too. There is no material interaction at all yet: you can recolour shapes in the viewport, and that is the extent of it.

System: why the namespace break is the real news

Read the thread as a topology, not a changelog. The namespace rename from Grasshopper to Grasshopper2 was forced by a hard constraint: both GH1 and GH2 can be loaded in the same scripting context, and two libraries cannot own the same root namespace without colliding. So McNeel took the break. Every plugin in the ecosystem is now downstream of a compile-time decision made to protect a runtime that has not shipped yet.

The developers in the thread ask the obvious question — when does the SDK stabilise? Rutten’s answer is the clearest architectural statement in the whole release: stabilisation happens at the alpha→beta transition. That transition means “no more breaking changes, no more file format breaks and no more big new features.” Until then, the SDK is a moving target by design, and RhinoVisualStudioExtensions shipping did not change that, whatever developers inferred from it.

And the second-order effects are already visible. One user reports that Twisted Box — the GH1 workhorse behind Box Morph and Blend Box, the standard route to lattice structures between curved surfaces — does not survive the GH1→GH2 interop bridge. Rutten confirms it: the data type does not exist in GH2, so it gets reinterpreted as a list of points and the receiving components choke. Another names the plugins likely to be orphaned: Metahopper (Andrew Heumann’s, including the Bottleneck Navigator that tells you which component is eating your solve time) and TreeSloth’s Propagate Ancestor. Those are not exotic tools. Those are the tools that make a large definition maintainable.

This is the single-point-of-failure pattern in its native habitat. Your office’s competition workflow does not depend on “Grasshopper.” It depends on Grasshopper plus six unmaintained plugins written by three people, at least one of whom has moved on.

←TODAY: GH2 alpha ships twelve components and a namespace break; no C# component, no Python component, no material access, and Twisted Box does not cross the GH1 bridge.
→3012: The parametric canvas survives every rewrite; the unmaintained plugin does not. What gets carried forward is what someone re-implemented.
Fulcrum: Learn the primitives, not the plugin — because primitives migrate and plugins get orphaned at exactly the moment you need them.

Setup: ninety minutes from zero

Setup: Do not start your learning on the alpha. Start on GH1, inside a stable Rhino 8, and keep GH2 open in a second window as the weather report. Here is the whole first-run path — the alpha build itself comes from the Discourse thread, not from a package manager.

# 1. Rhino 8 (90-day full trial) — Grasshopper 1 is bundled, no install step.
#    https://www.rhino3d.com/download/

# 2. In Rhino's command line, open the canvas:
Grasshopper

# 3. Prove the loop works. Drop these four components on the canvas
#    and wire them left to right:
#      Number Slider  ->  Circle (Radius)
#      Circle         ->  Divide Curve (Curve)
#      Number Slider  ->  Divide Curve (Count)
#      Divide Curve   ->  Pipe / Sphere
#
# 4. Drag the radius slider. If Rhino's viewport updates live,
#    the parametric loop is closed. That is the whole idea.

# 5. Optional — inspect the GH2 alpha's plugin loader:
_G2PluginViewer

First steps

  1. Close the loop (15 min). Slider → Circle → Divide Curve → Sphere. Drag the slider. You have just built a parametric model; everything else is scale.
  2. Break the loop on purpose (20 min). Set Divide Curve‘s Count to 200 and watch the solve time. Now you understand why Metahopper’s Bottleneck Navigator existed — and why its absence in GH2 is a real loss, not a nostalgia complaint.
  3. Meet the data tree (30 min). Feed a list of three circles into Divide Curve. Open the parameter’s output and read the tree paths. Data trees are the one concept that separates a working Grasshopper user from someone who copies definitions off a forum.
  4. Open GH2 and try the interop (25 min). Drag a GH1 component onto a GH2 canvas. Most work. Try Twisted Box and watch it degrade into a point list — the failure Rutten confirmed in the thread. Seeing a migration fail is more educational than seeing ten succeed.

Practice

Atelier: An office living with a GH2 migration faces one question, and it is not “when do we upgrade.” It is “which of our definitions are load-bearing, and what do they depend on that nobody maintains?” Offices that have been through a platform rewrite report the same failure mode: the competition definition that has run flawlessly for four years turns out to route through one orphaned plugin, discovered at 23:00 on submission night. Monday move: open your three most-used Grasshopper definitions, run through every component, and write down every one that is not vanilla GH — plugin name, author, last release date. That list is your real dependency graph. It will be shorter than you fear and more fragile than you hoped.

Hack: Count your plugin dependencies before the migration counts them for you. A .gh file is a binary archive, but plugin assembly names survive as readable strings inside it — so grep the raw bytes, and every non-McNeel .gha name that falls out is a node in your dependency graph.

import re, pathlib, collections
blobs = b" ".join(p.read_bytes() for p in pathlib.Path(".").rglob("*.gh"))
hits = re.findall(rb"[\w.]+\.gha", blobs)
for name, n in collections.Counter(hits).most_common():
    print(n, name.decode("ascii", "ignore"))

Run it over your project folder. Anything that is not Grasshopper.gha is a thing you now own the risk for.

The trade-off, stated plainly

GH2’s namespace break is correct engineering and expensive for you. McNeel had to rename the root namespace or accept permanent collisions between GH1 and GH2 in shared scripting contexts — there was no third option. But the cost lands entirely on the plugin ecosystem, and specifically on the plugins whose authors have stopped shipping. Rutten is candid that the GH1 Rhino tab represents “several years of hard work” by Andy Payne and Kike — both of whom are now assigned to GH1 features, not GH2 — and that porting it needs a several-day roadmap meeting between the three of them that has not happened yet. That is honesty, not a promise. Plan for GH2 to be production-viable a good while after Rhino 9 lands, not before.

PAZ has covered this ecosystem churn before — two CAD-native copilots, Ant and Raven, landed on the Grasshopper canvas inside eight weeks earlier this year, with Raven’s food4Rhino webinar on 23 April 2026 at 17:00 CEST. Both bet that your definition is structured enough for an LLM to read. A namespace break is the other side of that bet: the machine can only read what still compiles. Meanwhile Simply Rhino’s notes from the Grasshopper UK UGM at PLP Architecture, London, on 17 March 2026 carried the other half of the platform story — Luis Fraguada announcing Rhino.Compute on Linux. The canvas is being pulled apart and rebuilt on both ends at once.

Learn-it

  • The alpha thread itself — release notes, bug reports and Rutten answering developers in the open: discourse.mcneel.com — New Grasshopper 2.0 alpha
  • Rhino developer blog — where GH2 and Rhino.Compute announcements land: Meeting notes, Grasshopper UK UGM (17 March 2026, PLP Architecture, London) — includes the Rhino.Compute-on-Linux release
  • Structured route, if self-teaching stalls — McNeel Europe’s Grasshopper Level 3, 27–29 May 2026, 10:00–17:00 CEST, taught by Ping-Hsiang Chen (former senior architect at Zaha Hadid, 10+ years computational design), EUR 395 + VAT, 50% off for students, capped at 25 participants: blog.rhino3d.com — Grasshopper Level 3
  • The Revit-side counterweight — if your office runs Revit-centred, read this in parallel: Dynamo BIM blog
  • PAZ note — the Atelier-Code rule applies here: a tool earns its keyboard shortcut by buying back time you were already bleeding. A plugin you cannot recompile is bleeding time you have not been billed for yet.

Open your three most-used definitions, grep them for .gha, and put the resulting list on the wall. That list, not the architecture diagram, is what the migration will actually cost you.

FILED FROM
CO-SIGNERS
PAZ Academy
CONFIDENCE
HIGH
REPRINTS
© PAZ - PARAMETRIC ACADEMY ZURICH · ALL RIGHTS RESERVED

SOURCE ·

PAZ Kaffi · multidisciplinary editorial, led by PAZ Academy

⚑ REPORT AN ERROR · SUBMIT A CORRECTION
◂ BACK TO FRONT PAGE · PAZ KAFFI

© 2026 PAZ Academy.