CDFAM Barcelona 2026 · Barcelona · 9 April 2026
Raven AI: The Future Is In The Spaghetti
Abstract
Twenty years of community-built Grasshopper infrastructure, decades of firm knowledge, scattered documentation, and forum posts that solved your problem in 2011.
The problem has never been capability – it has been access.
Raven is a code agent for Grasshopper that works across 900+ plugins through the native API. Rather than replacing existing tools, it functions as an infrastructure layer: connecting users to what was already there.
Moritz Rietschel walks through what it actually takes to build AI that works with CAD. How do you fit 3D geometry and graph logic into a 1D token stream? How do you handle the points where an LLM’s assumptions and Rhino’s reality diverge? Why do reasoning models sometimes spiral without producing anything useful, and what guardrails keep them on track? He also addresses how Raven draws from both public knowledge and firm-specific context, and what it means to design for recombination when every project demands a unique plugin assembly and every user has a globally unique Grasshopper setup.
This is a technical account of building AI infrastructure for creative engineering workflows – what breaks, what surprised the team, and how they are thinking about AI within existing ecosystems rather than as a replacement for them.
Transcript
From YouTube’s automatic captions, lightly cleaned; expect some errors. Each timestamp opens the video at that moment.
Read the full transcript · 3,150 words
0:15 Hi guys. Welcome to the second session of the morning. I’m glad we have Verena went before me and we had a couple of other graphic projects already. So, I can continue right in that vein. My name is Moritz from Raven and we’re building an AI system for CAD, like many of you, but we actually make the CAD models. So, Okay, the clicker doesn’t work anymore. That’s fine.
0:45 We’re three co-founders from Zurich in Switzerland. We have a background in architecture as well as software engineering and AI. I actually spent my grad school in Berkeley in the US and now came back to Switzerland to build this CAD data system. And this is for context. I put in the slide yesterday cuz there are a lot of the working people I talked to didn’t know what Grasshopper was, but now you should know, so we can move right on.
1:08 The idea is that the problem right now is really fragmentation in CAD and it’s not the you know, the CAD itself that you do is actually good, but it’s all like spaghetti. It’s weird code. It’s some old plugin from back in the day. It’s a bunch of dependencies that don’t talk to each other. And then you see a lot of AI CAD companies that come in and say actually throw all of that away and we’re building it from scratch, right?
1:31 So, let’s make this one CAD meter that will solve everything. And our thesis is basically the opposite of that and we believe that instead of going rebuild CAD from scratch, what we really need is a better way to hook up all the tools together that we already have and make them as interoperable and as easy to connect as possible. And so, this is our hero. It looks like a Grasshopper node and it is Grasshopper node, but here’s why this is the best interface for CAD and AI.
1:59 It only exposes though I mean, Grasshopper was invented for humans to use it, right? Make it an easy authoring tool for humans. So, it only exposes the most important parameter inputs that as data streams and only gives you the most important outputs. In that way, it’s kind of work like an API. And Grasshopper exposes this for all sorts of CAD commands to like make geometries, but then it’s also a platform that is full of plugins that other people wrote that let you run simulations, connect them to other software, and so on.
2:31 And then they all run through the same interface. So, interoperability comes with every plugin. And inside of the node, you can have anything from calling a different CAD software to loading up data, any any content that you already have in your CAD system, running a simulation, getting a signal for how, you know, an evaluation, writing your own custom code nodes. All of these things are bundled into just input and output data streams.
3:02 And in the case of Grasshopper, they also come with semantics. There’s a name and a description for every node. There are inputs and outputs names and descriptions. They’re typed data streams. And this is a perfect setup to then use an LLM not to write the node, but to orchestrate them and hook them together, right? The LLM being the glue in in the all the tools that we’ve been building for 20 years in computational design, not building the tool itself.
3:29 And the best thing about the node is the nodes come in groups and graphs and you know, a a graph allows you to have different levels of abstractness. So, if we have a couple of nodes and we group them into a new you know, higher-level nodes, so we can turn it right back into a single node that only exposes a couple parameter input and outputs. So, you can go back and forth between different levels of complexity and then train them up into really, really big graphs that control really complex things, but only ever expose the relevant parameters at any point.
4:02 That is the core idea why we think the graph-based modeling like Grasshopper or a feature tree are the future of CAD and AI because it’s not about the little bit of code that doesn’t execute, but it’s about how you chain them together and how you make them understandable to a designer and an AI The problem, of course, if you want to work with graphs and LLMs is that graphs are graphs and LLMs work with streams of tokens, right?
4:29 They always, always, always have text or image token inputs. And so, how do you turn a graph into a token stream? And how do you pick the right context to send from a big graph? How do you select the the nodes, the input and output, and the data flows, and the previews and from a graph is sort of the big problem that remains if you want to work with LLMs on a graph.
4:51 But there’s another problem and that is how do you go from this slot machine LLM that is unpredictable and always does something else to a reliable and useful new tools, right? And once you ask an LLM to write a Grasshopper script for you, you will see it comes up with nodes that don’t exist, the connections that don’t make sense. It changed up nodes thinking they can construct a certain geometry, but then they don’t.
5:14 And so, how do you get rid of that? That is the second big challenge. And here we actually put inspiration and this is some work that I used to do back in Cool Auto of connecting the language model that is unreliable with a reliable system like the CAD model. Grasshopper can tell you whether something computes or not. It can tell you what the volume of the resulting geometry is.
5:32 The language model can only guess that, right? And here we take inspiration from a lot of work that was patentable in 2024 like the Alpha Geometry paper right here where you have a language model will strategies to solve a geometry problem or a math problem that you use lean and then you have a symbolic solver that checks the actual steps whether they’re valid or not, right? And using that feedback, language model can creatively come up with solutions.
6:00 Creativity here being the core sort of powerful language model and the solver will check the stuff for validity. And with Grasshopper, you don’t just have this, you know, a common agent looping over a solver, but you also have a computational designer that is exposed to a graphical user interface that was built for the human, right? You can have a graph that lays out the structure of what AI is doing.
6:24 It doesn’t just give you a model. It gives you a workflow to start that model that is perfectly editable and auditable at every step. Every single node in here is from the nodes that you already had in your Grasshopper environment. It draws from whatever plugins you have, whatever custom code you write, but it doesn’t make its own node. So, you can rely on the path commands themselves and you can just audit the connections and you can go in and paint any part of it, right?
6:47 So, it’s a very sort of editable, malleable AI model instead of just being a final model. And that’s also something that we really believe in because as a designer and as an engineer, you iterate over problems. You don’t just one-shot them and neither will an AI agent. And the most important thing is how you interface with them. And you can imagine that over time these kinds of systems that can not only, you know, construct new Grasshopper files but also evaluate them, you can solve them and so on, can become something like this which is already happening in software where if you have an algorithm that you want to optimize and you have a very clear signal at the end, of course, instead of just updating the parameters of your CAD model, you can creatively explore the design space with an AI agent that is grounded in a CAD kernel and using like a simulation solver and like arrive at superhuman performance right with CAD.
7:40 So, the idea is that you map the this problem where an LLM comes up with a, you know, better code and then evaluated into CAD. And using a grass based programming like Grasshopper is the perfect space to do that. This is what happened when Ryan tried Raven. So, here’s what it looks like. He went ahead and wiped added without ever having used Grasshopper without mounting paid, you know, grabbing some of the specification from the web, building building this up similar like that.
8:16 It’s not a hey, Raven, make a thing, you get a thing, but you iterate over it with Raven, you get the graph, everything is auditable, everything’s right there. And then the once you close Raven, you just have your CAD file, you pass it on to the project you did before. And so now I’m going to run you guys through some examples and some anecdotes that we’ve seen having released Raven roughly a year ago and iterated over it since.
8:34 So, you can see it kind of like a chat co-pilot in Grasshopper, but it does so much more. We have people that used to spend five days just point and click CADing, no computation designers, building like deployable clean room structures for aerospace servicing, that started using Raven. This guy was one of the first really adopt Raven and he loved it so much because he started doing all models parametric first.
8:59 Instead of having to go back and remodel something in Rhino, now he does everything with Raven and Grasshopper, never having been trained competitively in Grasshopper or Raven Grasshopper or Rhino at all. Here you can see as an example going from a simple image that is a tensile structure, making a simple CAD model, but then simulating it, right? Bringing physics in and iterating over it with Raven. So, the model you see at the top now is running a kangaroo physics simulation for a tensile structure all within like seconds, right?
9:27 And that’s going to be kind of the theme also for the other things I’ll show you. Most of this work that is done in Raven is obviously super confidential, but we have a bunch of different examples here for example doing a going for a P&P of a cross structure to a fully parametric model in like a minute. And we have people from the biggest architecture firms in the world that have developed their menu in Grasshopper for 15 years, but having an agent looking through their components, coming up with new strategies, looking at their existing script and and and you know, suggesting other strategies is super helpful even for someone who’s very experienced with Grasshopper.
10:03 Of course, the core problem that I haven’t touched on is how do you actually explain what you want to model? Because CAD right now, it’s really you have to sit down, you have to specify everything that you want and at that point you already have the model, right? So, how do you get to the point where you can do CAD modeling without having to specify every little thing and what is the best way to sort of interface?
10:25 And so, here we have an extreme case of just sketching with a little bit of prompt, right? Sketching being a very human, very iconic way to express ideas for 3D shapes. Now that an interface to your like most complex platform, yeah. That’s something we’re really excited about. Of course, it’s not just prompt and image, it is most importantly the existing graph that you go and edit, that you can load up past scripts and all the files you know, that you want to share with Raven.
10:54 And so, in this case we’re modeling a very designy fancy bridge mostly from sketches. And of course, the model is still fully parametric, right? And you can imagine being a company with 20 years of Grasshopper and Rhino history, you probably are redoing a lot of the work that has been done before. So, looking through the past graph databases that you have or your past Grasshopper files and drawing stuff from there, in this case like running a footable tag analysis for the site really is something architects have to do for every building that they do.
11:32 So instead of rewriting all the files, you know, draw them in from what you already have. That’s what Raven does today. And now, I want to pass on the things that are challenging because it’s really important for a technical product like you guys are intended. This is obviously not the you know, a solved problem, but it’s an evolving one. So, I told you guys that we have to squeeze into a token stream all this content and information that we want the model to understand.
11:52 That’s not just a problem of describing your intent, that’s also a problem of how do you curate the signal that the models would see. How do you tell it about orientations and 3D shapes or 1D token into 1D token stream, right? There there is issues with misalignment and things like that. So, if you, you know, if you use Raven, you get better every day, but these are the issues that we see because the language model at the end of the day, even the reasoning models, they’re not trained on CAD problems at all.
12:19 Nodes as API is a really good and simple idea, but it actually breaks down when somebody creates beautiful interfaces like this that lets you change the graph around that actually don’t expose setting different graphs or anything like that. And even something like a rectangle component, changes the point input here is the bottom left corner and not the center of the rectangle. So, there are things that, you know, just as a human learning Grasshopper, you got have to teach Raven specifically because they’re unexpected and they are actually not you know, the same everywhere.
12:52 This is a big thing with plugins. For example, Karamba being a really popular structural analysis plugin has graphic user interface elements on the components that let you set values and materials, which you know, breaks down when with the idea of node first. These are the issues that we still see. At the same time, you know, sometimes I try something for half a day and the next day it finds it in 5 minutes.
13:15 If I were to make the same thing by hand, it would take me 3 months. This is the kind of feedback that we get from our from our users and that refers to another problem. At the end of the day, LLMs today are still kind of a roll of the die. Even with the solver attached to it and all the things that we’ve done to make them reliable, that they’re still every run will give you different results.
13:35 And they will update the model constantly. So as we build a harness that works with a very well with a certain model edition, a month later I think a month after they bring out Gemini 3.0, they brought out Gemini 3.1. It has very different behavior and suddenly you have to adjust your harness to whatever the models have been trained on, right? So if Google open and call this height that a certain paradigm like 20 parallel pool calls is like the best thing for their coding emails, then we have to adopt to that because we need the best reasoning performance to make CAD models.
14:04 And to have the best reasoning performance, we need to work with what is currently out there. So that’s that’s all the talent that we have. Very fast updates means that we have to adjust how our harness works all the time. Still, Raven has been really adopted within our since February last year. Back then we were a little component on your vessel profile screen that you can attach the panel to.
14:29 Now we have Raven in 130 countries. Really exciting. I mean we have a free tier which is you know, an easy way for everybody to get started. We have 12,000 people that signed up. You can see since the start of the year we’ve had rapid growth and this is really something that people are hungry for. It’s something people are using in real work and we believe that it is not something that you know, it just speaks to what we’ve thought of Raven with the note first approach.
14:54 But it really speaks to the ecosystem that we’re unlocking. So many people have heard of Grasshopper, of all the amazing plugins that get presented at conferences like these and so few people can actually utilize them. So the core idea I want you guys to go back home with from the talk is that your tools and all the plugins and all the scripts that you’ve built in the past, they matter in the future and they are core to where CAD and AI go.
15:18 There’s not going to be one monolithic system that solved everything for you. What is the interplay of all the things that all the smart people around the world build together with the LLM and the LLM being the way that you can draw in new information, get to use the plugin that you’ve never used before, and so on. Plus an AI system for engineering cannot be a black box.
15:41 It needs to expose to you the workflow that it that it proposes and it could be maximally auditable and editable. That’s what we call the rebellion, okay? So, here you Raven and Rhino. I heard everyone to build tools that are interoperable, just like all the plugins out of Rhino, because having built AI for Grasshopper means you can build AI for like last year to build AI for Rhino inside Raven.
16:07 We built AI for Karamba structural analysis. We built an AI tool you can use to do hopeful tag analysis and at the same time design a ship hull with it. So, we think that’s really exciting. And if you guys want the Join the Rebellion sticker, come see me after. Thank you. To learn more about the CDFAM Computational Design Symposium, access the archive of previous presentations, interviews with speakers, and information about future events around the world, visit CDFAM.com.
More from CDFAM Barcelona 2026

Artificial Intuition: Building an AI Mind for Electromagnetic Design and Engineering
Mike Frei · ARENA Physica

Design for real world engineering: integrating uncertainty into product assessment
Greg Grigoriadis · Metisec

Large Engineering Models: Reimagining Design, Simulation, and Manufacturing | EMMI AI
Quercus Hernández · Emmi AI

Beyond the Specialist: How Istari + AI Expands Who Gets to Drive Innovation in Hardware
Rebeka Melber · Istari Digital

Digitizing Body-in-White Development with MAS Synera
Juan de Dios Escribano Felguera; Tilman Steininger · SEAT; Synera

HOOPS AI: Correlating CAD Geometry with Manufacturing and Business Process Information
Luis Salazar Betancourt · Tech Soft 3D

SubSimX: Interactive Subdivision-to-FEM for Computational Design
Johannes Müller-Römer · Fraunhofer IGD

Empowering Architects with Early-Stage Environmental Intelligence
Michele Pescatore; Carol Fanjul · AiA Life Designers

Bridging Data to Geometry with Implicit Modeling
Wesley Essink · Siemens Digital Industries Software

An Engineer’s Approach to Integrating Machine Learning in Generative Design Tools
Thomas Rees · ToffeeX

Conjugate Heat Transfer Optimization for Turbine Blade Thermal Performance Using Field-Driven Design
Max Gaedtke; Markus Lempke · nTop; Siemens Energy

NeuralShipper: Generative AI for the Next Generation of Ship Design and Manufacturing
Shahroz Khan · Compute Maritime

Beyond Parametric: Explorable Simulation for Real Design Iterations
Laurence Cook · Generative Engineering

Architected Porosity Informed by Real-World Data for More-Than-Human Thermal Comfort
Maria Claudia Valverde Rojas · University of Stuttgart, IntCDC

Real-time Multi-Physics Collaboration for Real-world Engineering
Nikolas Borrel Jensen; Oliver Littlewood · Pasteur Labs










