Yak CLI Reference

A reference for the Yak command line tool.

The Yak command line tool is included with Rhino 6. On Windows the tool is located at C:\Program Files\Rhino 6\System\yak.exe.

Build

  • Since 0.2: Command added
  • Since 0.4: Supports multiple .gha files, .rhp files or anything else for that matter

When run in a directory containing a valid manifest.yaml file, creates a package containing all files in the directory.

yak build

Install

Since 0.1

Installs a package (optionally with a specific version).

yak install [--source=URL] <package> [<version>]

List

Since 0.2

Lists the packages installed on the machine.

yak list

Login

Since 0.2

Authenticates with Rhino Accounts and stores a time-limited OAuth2 access token so that the user can use commands which require authentication.

yak login

On macOS, credentials are stored in ~/.mcneel/yak.yml. On Windows, they are stored in %appdata%\McNeel\yak.yml.

Push

Since 0.1

Pushes a package to the server.

yak push [--source=URL] <filename>
  • Since 0.1: Command added
  • Since 0.5: Adds --all and --prerelease flags

Searches the server for packages which match query.

Usage: yak search [options] <query>

  Options:
    --prerelease      Display prerelease package versions
    -a, --all         Display all package versions
    -s, --source URL  Package repository location
    -h, --help        Get help (equivalent to `yak help search`)

Spec

  • Since 0.2: Command added
  • Since 0.4: Adds support for inspecting .rhp files (RhinoCommon only)

Creates a skeleton manifest.yml file based on the contents of the current directory. When run in a directory containing a Grasshopper assembly (.gha) or a RhinoCommon plug-in (.rhp) the file will be inspected and used to pre-populate the manifest.yml file.

yak spec

Uninstall

Since 0.1

Uninstalls a package.

yak uninstall <package>

Yank

Since 0.6

Removes a version from the package index.

yak yank <package> <version>

Yanked versions do not appear in searches but can still be installed if the exact package version is known. To all intents and purposes they are hidden.