ghul.cli 0.1.0

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global ghul.cli --version 0.1.0
                    
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 ghul.cli --version 0.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=ghul.cli&version=0.1.0
                    
nuke :add-package ghul.cli --version 0.1.0
                    

ghūl CLI

Run a ghūl script directly, without a project file — on Linux, including via a #! shebang line.

#!/usr/bin/env ghul

entry(args: string[]) is
    IO.Std.write_line("hello, {if args.count > 0 then args[0] else "world" fi}");
si
chmod +x greet.ghul
./greet.ghul world
# hello, world

Or run it directly without the shebang:

ghul greet.ghul world

Installing

dotnet tool install -g ghul.cli

On first use, ghul installs its own private copy of ghul.compiler (into ~/.local/share/ghul-cli/tools) if one isn't already there — nothing else to set up first.

How it works

Each script is compiled once per script-content-and-compiler-version pair and the result cached under ~/.cache/ghul-cli/scripts; a later run of an unchanged script skips straight to running the cached build. Everything after the script path is passed through unchanged as the running program's own command-line arguments, and its exit code becomes ghul's own.

There are no reference-assembly options: ghul relies entirely on what ghul.compiler resolves on its own, and doesn't try to add anything it wouldn't already find.

Building from source

dotnet tool restore
dotnet build
dotnet test unit-tests
./tests/smoke.sh
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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
0.3.3 91 9/11/2026
0.3.2 87 9/11/2026
0.3.1 105 9/10/2026
0.3.0 83 9/10/2026
0.2.0 80 9/10/2026
0.1.0 88 9/10/2026