Absolutely, brackets { } are breaking the internal JSON format, so the output is wrong. I’ll have to handle this case. → Link to issue
This might be because each model has a different maximum length for the returned value. In long lists you might be getting to the limit, so the list is not as long as expected. I’ll think about if it is possible to automatically ask the AI for more results until the “count” is reached. → Link to issue
Also, AI Text List Generate is designed to return text. Since you were asking for points, Grasshopper is automatically converting text to points. I’m planning to add more components like AI Point List Generate, AI Number List Generate, etc. to ensure the output is correct. But it requires time
I have to say this is one of the most fun plugins I’ve ever used!
To have an easy to use integration btw AI and Grasshopper/Rhino 3d design is exciting for me anyway. I downloaded the colors gh (Thanks Dfytz1!) and played with it. Used gpt 4o mini and solved the text to numbers issue in the prompt. Now I’ll move on to building something of my own. Good work!
For image generation seed would be great, but i am not sure openai gives you control over that.
Right now if you want to generate same prompt twice, you need to generate something else first, that is not very convenient. NoiseSmartHopper_00.gh (2.4 MB)
Overall great component, waiting for future updates!
Thanks for reporting @lander. There was a bug in the first initialization of the settings file. This bug didn’t affect people who already had SmartHopper installed before. I’m sorry for the trouble. The bug has been fixed in 0.5.2-alpha.
I guess the issue is with the new gpt-5 model. It was released 10 days ago and it might have introduced some breaking changes from previous api. 4o-mini and older models were verified and working fine.
Hi @lander , I checked and confirmed a small incompatibility between gpt-5 and the script_new tool (the one that adds new script components to the canvas). It is now addressed in 0.5.3-alpha (just released).
On models: gpt-5 is very capable but can be resource‑intensive. In my tests, occasional empty responses were likely due to external API rate limiting. As a lighter alternative, gpt-5-mini has been more consistent for me—you might find it performs better in this workflow.
Regarding auto‑connecting components you suggest in the screenshot: that’s a great idea. There isn’t a dedicated tool for this yet, so I’ve added it to the roadmap.
You can already try script_new by asking the chat to create a new script component for a specific purpose. It’s still under development: the overall logic is often good, but inputs/outputs may still need manual tweaks (types, names) and sometimes small code adjustments. Your examples are helpful and will guide improvements.
Thanks again for the feedback. I’ll share an update as the fixes and enhancements land.
After 2.5 months of hard work, I’m excited to announce that SmartHopper has reached version 1.0! This update is packed with new features, bug fixes, and stability improvements - all thanks to your feedback that guided me on the way. Thank you all!
Let’s dive in:
Canvas Button
Say hello to the new Canvas Button in the top-left corner of your canvas! Click it to launch SmartHopper Assistant, your AI companion designed to help with Grasshopper tasks. Don’t worry if it’s not your thing—you can hide it in the settings.
Ever wondered if a model is compatible with a component? Now you’ll know before running it, thanks to the new badges. Look out for the special tick badge for verified models: gpt-5-mini from OpenAI and mistral-small-latest from MistralAI. And if you try to use an incompatible model, we’ve got you covered with an automatic replacement.
I’ve made lots of under-the-hood improvements to boost stability and security. What might affect you: Your API keys are now encrypted with an individualized key, so your settings file will get a makeover on the first run.
Feedback
Your feedback is invaluable. Share your work with SmartHopper in this forum or on GitHub > Discussions > Show and Tell.