GhVersionManager 2.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global GhVersionManager --version 2.0.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local GhVersionManager --version 2.0.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=GhVersionManager&version=2.0.1
                    
nuke :add-package GhVersionManager --version 2.0.1
                    

GhTools

GhTools is a .NET 8 CLI tool for reading and writing Grasshopper .gh and .ghx files. It is designed for automation, CI/CD and team workflows, and is distributed as a NuGet package for easy integration. It is the successor of GhVersionManager, which remains available under its own package name with the same command line.

Usage

dotnet tool install --global GhTools
Command What it does
ghtools <file> print the version panel value (exit 2 if there is none)
ghtools <file> -v 1.2.3 set the version panel (created if missing)
ghtools verify <file> check the file; JSON report; exit 1 on errors
ghtools weigh <file> [--top N] list objects by size, heaviest first
ghtools strip <file> [--only dead] remove internalised data from parameters; wiring is kept
ghtools delete <file> --name "Image Sampler" remove objects by type name, nickname or instance GUID
ghtools clone <file> --guid G --donor lib.gh --at x,y add a copy of an object from this or another file
ghtools connect <file> --from G --to G / disconnect wire or unwire parameters
ghtools set <file> --guid G --nick N --text T --data v... rename, set panel text, set persistent values
ghtools replace <file> --guid old --with G [--donor lib.gh] swap an object for another and keep the wires
ghtools ghx <in.gh> <out.ghx> export the XML form for inspection or diffing
ghtools attest <before> <after> -r report.json before/after check; --auto-only for pipelines

Commands that change a file write a new file next to the input by default (--in-place overwrites and keeps a .bak), write a JSON report with -r, and verify the result before returning 0.

Exit codes

0 ok, 1 error or invalid result, 2 usage error or nothing found, 3 selector matched nothing or write failed.

Notes

  • Windows support (due to Grasshopper dependencies).
  • An example GitHub Actions workflow is in the project repository.

License

MIT License. See LICENSE.txt for details.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
2.0.2 83 9/21/2026
2.0.1 89 9/20/2026
1.0.4-beta 580 7/3/2025
1.0.3-beta 231 7/3/2025
1.0.2-beta 209 7/3/2025
1.0.1-beta 221 7/3/2025
1.0.0-beta 206 7/1/2025