ScriptParasite for Grasshopper
(by arendvw)
Allows editting of Grasshopper C# scripts in external editors
Support Email

Offers two-way synchronisation between a C# component and an external C# file. When enabled, the script parasite component watches the C# component it’s grouped with, and writes the changes to the file [Nickname].cs in the selected folder. By default this is the folder “GrasshopperScripts” in my documents.


  • Rhino 6 on Windows using Package manager: using the command TestPackageManager, and select ScriptParasite
  • Rhino 7 on Windows using Package manager: Type the command PackageManager, and select ScriptParasite
  • Rhino 6 on Mac is currently not working, but will be fixed in future releases.
  • Rhino 7 on Mac: download the rhino for mac .zip file, the packagemanger version is currently broken, and will be fixed in future releases.
  • Manual installation for all versions: Download the latest .zip file, and place in rhino's plugin and grasshopper component folder.

Getting started

  • Add the script component in a group with the C# component you want to edit
  • Set enabled to true
  • Head over to your My Documents\GrasshopperScripts
  • With Visual Studio Code: Open the folder.
  • With Visual Studio Community or Rider, open the GrasshopperScripts.csproj file.
  • That’s it!

For support regarding this plugin, please do not use the comments below, but use the grasshopper and rhino forum at with the tag scriptparasite.

For bugs, please use the github issue tracker


  • An IDE. If you have none installed I recommend you Visual Studio Code (free, also works for the Mac)
  • In Rhino make sure COFF loading is disabled, or set the loading mechanism for the ScriptComponents is set to Disk in "File > Preferences > Solver"

The folder that is last successfully written to will be saved as the default export folder for all future times you use the component.

If the folder does not contain a .csproj file (used by Visual Studio, Visual Studio code, and all C# ide’s), a new csproj file is created for you with the correct references to Rhino and Grasshopper.

Watching for changes
The following changes to the component are synced and written to the C# file:

  • Added parameters (input/output)
  • Changed parameter name (input/output)
  • Changed parameter type and list type (input)

I’ve tested with Visual Studio 2017 (needs a bit of a recent update to work with the new csproj format), Visual Studio Code, and Rider.

Grasshopper for Mac
This plugin is reported to have been working for mac.

Source code / Licence / Contributing
The plugin is open source (MIT Licence) and available on Github. If you have suggestions or improvements, send an issue/pull request on github, and I'll get back to you.

Arend van Waart

Andrew Heumann, Anton Kerezov, Zac Zhang for kindly contributing code improvements