Curiosity CLI

Installation

curiosity-cli ships as the Curiosity.CLI NuGet package, registered as a dotnet global tool. It targets .NET 10, so make sure the .NET 10 SDK (or a compatible runtime) is installed first.

Install

dotnet tool install Curiosity.CLI --global

The tool installs as the binary curiosity-cli on your PATH (under ~/.dotnet/tools/ on Linux/macOS, %USERPROFILE%\.dotnet\tools\ on Windows). If your shell can't find it, add that directory to PATH.

Verify the install:

curiosity-cli --help

You should see the full list of commands — the same set documented under Commands.

Update

dotnet tool update Curiosity.CLI --global

Keep the CLI roughly in step with your workspace version. Many commands use the Curiosity.Library client under the hood, so a very old CLI can lose features (or stop talking to a much newer workspace).

Uninstall

dotnet tool uninstall Curiosity.CLI --global

Local (per-project) install

For CI/CD or repo-local pinning, install the tool into a local manifest instead of the global cache:

dotnet new tool-manifest        # creates .config/dotnet-tools.json
dotnet tool install Curiosity.CLI

Afterwards invoke the tool with dotnet tool run curiosity-cli ... or, after dotnet tool restore, simply curiosity-cli ... from within the repo.

Use from CI

GitHub Actions, GitLab CI, Azure Pipelines — any CI that has the .NET SDK can install the tool the same way. Typical sequence:

dotnet tool install Curiosity.CLI --global
export PATH="$PATH:$HOME/.dotnet/tools"
curiosity-cli wait-for -s "$WORKSPACE_URL" --max-timeout 600
curiosity-cli test     -s "$WORKSPACE_URL" -t "$CURIOSITY_TOKEN"

See wait-for for the readiness probe used above.

Where to get a Library Token

Most commands need a Library Token. Create one in your workspace under Manage → Tokens → Library.

  • The token grants the same permissions as the user who created it.
  • For CI use, create a dedicated service user with the minimum role required by the commands you intend to run (for example, the upload-front-end command needs Admin rights to manage interfaces).
  • For local development, you can store the token encrypted on disk with store-token and then pass --token auto to other commands.

For JWT-style tokens used to call custom endpoints (a different concept), see Endpoint Tokens.

Source

The CLI is part of the open-source-friendly portion of the Curiosity codebase — its commands live under Library/Curiosity.CLI/ in the workspace repository. Each command has its own Program.<Command>.cs file. If you need a flag that isn't covered here, search the source for the command method (for example UploadFolder for upload-folder) and check the parameter list.

© 2026 Curiosity CLI. All rights reserved.